File tree Expand file tree Collapse file tree 1 file changed +15
-6
lines changed
modules/auxiliary/scanner/http Expand file tree Collapse file tree 1 file changed +15
-6
lines changed Original file line number Diff line number Diff line change @@ -215,12 +215,21 @@ def try_user_pass(opts)
215
215
else
216
216
# The authentication info is in the cookies on this response
217
217
cookies = res . get_cookies
218
- sessionid_value = cookies . split ( 'sessionid=' ) [ 1 ]
219
- sessionid_value = sessionid_value . to_s . split ( '; ' ) [ 0 ]
220
- sessionid_header = "sessionid=#{ sessionid_value } "
221
- cadata_value = cookies . split ( 'cadata=' ) [ 1 ]
222
- cadata_value = cadata_value . to_s . split ( '; ' ) [ 0 ]
223
- cadata_header = "cadata=#{ cadata_value } "
218
+ cookie_header = 'PBack=0'
219
+ %w( sessionid cadata ) . each do |necessary_cookie |
220
+ if cookies =~ /#{ necessary_cookie } =([^;]+)/
221
+ cookie_header << "; #{ Regexp . last_match ( 1 ) } "
222
+ else
223
+ print_error ( "#{ msg } Missing #{ necessary_cookie } cookie. This is not OWA 2010" )
224
+ return :abort
225
+ end
226
+ end
227
+ sessionid_value = cookies . split ( 'sessionid=' ) [ 1 ]
228
+ sessionid_value = sessionid_value . to_s . split ( '; ' ) [ 0 ]
229
+ sessionid_header = "sessionid=#{ sessionid_value } "
230
+ cadata_value = cookies . split ( 'cadata=' ) [ 1 ]
231
+ cadata_value = cadata_value . to_s . split ( '; ' ) [ 0 ]
232
+ cadata_header = "cadata=#{ cadata_value } "
224
233
headers [ 'Cookie' ] = 'PBack=0; ' << sessionid_header << '; ' << cadata_header
225
234
end
226
235
You can’t perform that action at this time.
0 commit comments