Commit Graph

140 Commits

Author SHA1 Message Date
Spencer McIntyre 4c004d51a7 Add an exploit for CVE-2020-0618 2020-03-06 16:21:37 -05:00
William Vu fda8b6df3c Note that unsetting HttpTraceColors disables color 2020-02-21 14:39:38 -06:00
William Vu 83e06ab59e DRY send_request_cgi into using send_request_raw 2020-02-21 14:36:58 -06:00
William Vu 0a1313f183 Show both color and banners and refactor code
This is the best of both worlds for visibility and copy/pasted output.
2020-02-21 14:18:58 -06:00
William Vu e315e207f1 Refactor HttpTrace and add color and headers only 2020-02-14 17:13:11 -06:00
William Vu 0aca3f0712 Switch back to if statement 2020-02-14 15:07:12 -06:00
William Vu 137fee2570 Make first pass at colorized HttpTrace output 2020-02-14 15:07:09 -06:00
William Vu 92de0b132f Make HttpClientTimeout a float, f'ing finally 2020-01-13 22:25:18 -06:00
William Vu f302df31aa Add note about opts['headers'] 2019-10-31 12:24:04 -05:00
William Vu b9baa80823 Refactor to use config hash and new option 2019-10-31 11:11:43 -05:00
William Vu b268feda73 Allow partial response due to timeout 2019-10-29 21:25:21 -05:00
Brent Cook bd90241192 set opts['SSL'] above for consistency 2019-08-20 04:03:10 -05:00
James Lee 3b7abfcaf2 Use correct case for SSL option 2019-08-06 15:25:34 -05:00
William Vu a22ad9ad42 Templatize HttpRawHeaders with ERB 2019-07-24 21:23:22 -05:00
William Vu 1ba0d1ee5b Once more, with feeling 2019-07-24 14:59:12 -05:00
William Vu 7730b510c1 Update HttpHeaders to HttpRawHeaders to match desc 2019-07-24 14:52:56 -05:00
William Vu 800737690a Add HttpHeaders file advanced option to HttpClient 2019-07-24 13:15:44 -05:00
Brent Cook 433af12942 add deregister_http_client_options 2019-03-06 19:37:56 -06:00
William Vu d55fbdfbe5 Add VHOST support to full_uri 2019-02-25 14:45:26 -06:00
Kent 'picat' Gruber bcf78e6067 use tr instead of gsub 2018-09-17 09:45:52 -04:00
William Vu 8e6a1d203b Futureproof FingerprintCheck until we delete it 2018-07-25 21:39:02 -05:00
William Vu 25ef422168 Handle connection errors and fail_with in check
Also fix FingerprintCheck to tell us when it doesn't receive a response.
2018-07-25 21:11:40 -05:00
Green-m f5b8b4dd7c Update send_request_cgi/raw 2018-07-12 23:51:41 -04:00
Green-m 65627e06e2 Update send_request_cgi/raw 2018-07-12 23:51:18 -04:00
Christian Mehlmauer f17140bdc3 fix nil error in HttpTrace 2018-05-26 10:04:26 +02:00
William Vu 2565ad6a27 Handle IPv6 addresses in full_uri (add brackets) 2017-12-07 12:56:55 -06:00
RageLtMan a3912e4913 Provide disconnect option to send_request_cgi
The HTTP client mixin provides a #send_request_cgi method which
forcibly disconnects the client after receiving a response. This
terminates certain types of resulting sessions which depend on the
connection from the client to maintain a subprocess housing the
shell invocation.

Provide a disconnect boolean option to #send_request_cgi which
is checked in the disconnect(c) call after receiving the response.

Testing:
  Locally tested on in-house exploit module written for disclosure
report.

TODO:
  Discuss possibility of implementing fully asynchronous methods
like #send_request_cgi_async which won't bother getting a response
for cases such as the module mentioned above which is a command
injection via unfiltered POST var.
2017-10-19 21:22:31 -04:00
Brent Cook 5d05ca154a added http client 'download' method and updates to pdf author module from @bcoles 2017-08-14 01:08:53 -04:00
RageLtMan 7e487ec745 fix request_ops per bcoles 2017-07-13 01:16:27 -04:00
RageLtMan 5473b2132d Implement :request_url for Msf HttpClient mixin
To round out implementation of a simple path for users to access
HttpClient like Open or Net::HTTP, create :request_url method which
takes a single URL parameter, uses :request_opts_from_url to build
the request configuration for Rex::Proto::Http::Client, executes
a GET request with it, and disconnects the client unless keepalive
is specified as the second parameter to :request_url.

Example usage of functionality is implemented in http_pdf_authors.
2017-07-11 16:07:13 -04:00
RageLtMan df697aa23c Implement HttpClient options generation from URL
To address the complexity which comes with the flexibility offered
by Rex::Proto::Http::Client and its Msf mixin descendant, a simple
process needs to be implemented for issuing a request using only
the URL string in order to provide ease of access to users who may
not have the time to study how these clients work in detail.

Implement :request_opts_from_url in Msf's HttpClient mixin such as
to extract the options required for :send_request_* from a URL
string passed into the method. This approach reduces HTTP requests
in the mixin to `send_request_raw(request_opts_from_url(url))` when
`url` is just a string.

Implement this approach in the http_pdf_authors gather module to
further reduce infrastructure complexity around the simple need to
acquire PDF files via HTTP/S.

Testing:
  Local to this module only, and in Pry of course. Seems to work...
2017-07-10 04:19:26 -04:00
Jeffrey Martin 63b6ab5355 simplify valid credential storage 2017-05-04 22:51:40 -05:00
Christian Mehlmauer 3c260ea452 fix #7921, HttpTrace and chunked encoding 2017-04-05 22:58:11 +02:00
William Vu b06895b604 Hide RPORT more intelligently 2017-02-08 09:40:42 -06:00
William Vu 31f93de150 Update HttpClient and WordPress mixins 2017-02-06 04:40:26 -06:00
wchen-r7 180795f209 Fix #7743, nil @cnonce in rex/proto/http/client.rb
Fix #7743
2017-01-04 11:50:31 -06:00
Jin Qian 9f4784354a Disconnect after making the HTTP transaction in send_request_cgi
Add a disconnect call after cgi is done.
2016-11-23 11:20:10 -06:00
Brendan a30711ddcd Land #7279, Use the rubyntlm gem (again) 2016-09-07 16:33:35 -05:00
Pearce Barry 226ded8d7e Land #6921, Support basic and form auth at the same time 2016-08-25 16:31:26 -05:00
William Vu 61f1e7e9c2 Add server_port to HTTP fingerprint
MS-1982
2016-08-24 13:24:24 -05:00
James Lee 91417e62a8 Cleanup docs 2016-08-18 10:40:32 -05:00
wchen-r7 498657ab35 Fix #3860, tearing down TCP connection for send_request_cgi
Fix #3860
2016-08-15 15:45:52 -05:00
wchen-r7 4055fd1930 Do e.message instead of e.to_s 2016-08-05 14:12:50 -05:00
wchen-r7 d59b6d99ee Make the debug output more readable 2016-08-05 13:20:53 -05:00
wchen-r7 a8d9a5c02c Print exceptions if needed 2016-08-04 18:14:22 -05:00
wchen-r7 7538b3dcf8 Fix #7170, Add HttpTrace option for HttpClient
Fix #7170
2016-08-04 16:09:17 -05:00
James Lee cfb56211e7 Revert "Revert "Land #7009, egypt's rubyntlm cleanup""
This reverts commit 1164c025a2.
2016-07-07 15:00:41 -05:00
James Lee 1164c025a2 Revert "Land #7009, egypt's rubyntlm cleanup"
This reverts commit d90f0779f8, reversing
changes made to e3e360cc83.
2016-07-05 15:22:44 -05:00
James Lee 4b3f6c5d29 Use rubyntlm for mssql login scanner 2016-06-22 10:15:22 -05:00
wchen-r7 61f9cc360b Correct casing - should be HttpUsername and HttpPassword 2016-05-27 18:31:54 -05:00