Commit Graph

199 Commits (1b504197bee82c8a706b815d62d744f437164f7b)

Author SHA1 Message Date
HD Moore 804df25240 Initial overhaul of the HTTP client api. This removes nearly all of the client evasion methods, but leaves the code in a great state to reimplement them with less issues.
git-svn-id: file:///home/svn/framework3/trunk@4222 4d416f70-5f16-0410-b530-b9f4589650da
2006-12-19 07:11:55 +00:00
Matt Miller f1fb05690f misc bugfixes in the http subsystem
git-svn-id: file:///home/svn/framework3/trunk@4019 4d416f70-5f16-0410-b530-b9f4589650da
2006-10-11 09:27:39 +00:00
Matt Miller abf2e057c8 apache chunked encoding win32 port
git-svn-id: file:///home/svn/framework3/trunk@4017 4d416f70-5f16-0410-b530-b9f4589650da
2006-10-11 08:31:54 +00:00
Matt Miller 7bd26e4925 fixed bug in service manager hardcore alias, new passivex dll/proj files
git-svn-id: file:///home/svn/framework3/trunk@3807 4d416f70-5f16-0410-b530-b9f4589650da
2006-08-08 03:29:26 +00:00
Spoon M df32aedf44 added parens to fix precedence/void context bug
git-svn-id: file:///home/svn/framework3/trunk@3747 4d416f70-5f16-0410-b530-b9f4589650da
2006-07-18 17:32:09 +00:00
Matt Miller 1a61d3d2fb changes to support native win32
git-svn-id: file:///home/svn/incoming/trunk@3654 4d416f70-5f16-0410-b530-b9f4589650da
2006-06-08 20:53:15 +00:00
HD Moore 1a54cc810a Fixed numerous issues involving smb/dcerpc interaction
Fixed 'bad' use of method definition (space after method name, will be depreciated soon)


git-svn-id: file:///home/svn/incoming/trunk@3626 4d416f70-5f16-0410-b530-b9f4589650da
2006-04-30 19:49:27 +00:00
bmc df49cfabb0 * add SSL TCP server support, using runtime generated/signed keys
* add HTTPS support

note, SSL service tests don't work.  Right now, the tests just bail early.  The
client spins forever trying to get data.  When the client & server are in
seperate processes, this isn't a problem.  A threaded test implementation is
closer, as data sent from the client gets to the server just fine.


git-svn-id: file:///home/svn/incoming/trunk@3616 4d416f70-5f16-0410-b530-b9f4589650da
2006-04-24 18:49:00 +00:00
bmc 5b675262be properlly support responses when we get a request like this:
(echo "GET / HTTP/1.0"; echo ) |nc IP PORT


git-svn-id: file:///home/svn/incoming/trunk@3566 4d416f70-5f16-0410-b530-b9f4589650da
2006-03-09 19:51:37 +00:00
bmc 279abda264 * uri encoding is now part of Rex::Text
* add junk param start
* add junk URI end


git-svn-id: file:///home/svn/incoming/trunk@3546 4d416f70-5f16-0410-b530-b9f4589650da
2006-02-27 19:55:22 +00:00
bmc 524c0a3f74 * add 'none' encoding
git-svn-id: file:///home/svn/incoming/trunk@3521 4d416f70-5f16-0410-b530-b9f4589650da
2006-02-10 15:44:15 +00:00
bmc 1351ceed1c * add support to hex/%u encode a URI
git-svn-id: file:///home/svn/incoming/trunk@3517 4d416f70-5f16-0410-b530-b9f4589650da
2006-02-06 22:48:57 +00:00
bmc 0f6055c73c support both POST and SEARCH as basic post request types.
git-svn-id: file:///home/svn/incoming/trunk@3512 4d416f70-5f16-0410-b530-b9f4589650da
2006-02-06 20:23:52 +00:00
bmc 05b9aacbc1 'none' is an ok content-encoding, just does nothing... (passed in from the exploit mixin)
git-svn-id: file:///home/svn/incoming/trunk@3475 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-30 17:31:32 +00:00
bmc 20fec01d68 * add junk pipelined request support
* fix socket creation on pipelined requests
* when a server says that the connection should be closed (Connection: closed), then close the connection, since its going to regardless, and we don't want to loose our state
* support non-standard line termination in headers.  ie \n instead of \r\n
* add junk headers (X-rand: rand)
* add header folding (for evasion)
* add parse_header_re (still leaving parse_header around, though its dead code ATM) that does the right thing on non-standard line endings
* move 'gzip' to a 'compression' option
* add 'deflate' compression option (really, just raw zlib, and only firefox does deflate right)
* fix a bunch of TE:chunked decoding bugs based based on the fact that Apache doesn't always close chunks appropriately
* modify parse_body to not return state, since it doesn't always do that, and the return isn't used... self.state is.
* add TE:chunked request support
* normalize URIs in requests before saving them
* Move params out of the URI, but when the uri is requested, and the method is GET, and there are params, return a URI that has the params that are approrpiately encoded (needed for junk_params, see below)
* move request.to_s support of params to use the request params array when a POST, allows use of junk params support (see below).  NOTE:  If the body is provided, use the body instead of params, in case you want to hardcode the params in a POST request, eg: php_xmlrpc_eval.rb
* Add junk params when building a param list, eg: a=b becomes asdfasdf=asdrt32a&asdfad=okhgasd&a=b&hjklasdf=hkasgd
* add URI junk slash support (eg: /////foo.html)
* param splitting now supports both '&', and ';', which CGI.pm and PHP both allow
* add URI junk directory support, eg: /asdf/../foo.html
* add param encoding support, eg: param A with value '=' is  A=%3d
* add URI junk self referring directory support, eg: /././foo.html


git-svn-id: file:///home/svn/incoming/trunk@3457 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-27 21:57:44 +00:00
HD Moore b4ad4a5d75 Tabs vs Spaces
git-svn-id: file:///home/svn/incoming/trunk@3453 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-27 05:33:08 +00:00
bmc a1db0b6196 space to tab (happy skape?)
git-svn-id: file:///home/svn/incoming/trunk@3445 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-25 21:57:30 +00:00
bmc 55ba865f30 * few cleanups plus addition of self referring directories (eg: /././././)
git-svn-id: file:///home/svn/incoming/trunk@3437 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-23 23:57:50 +00:00
bmc 52fa0da439 * add support for inserting junk directories, slashes, and params
git-svn-id: file:///home/svn/incoming/trunk@3436 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-23 21:58:53 +00:00
bmc 9913f6d953 * add SSL support to the client (pass another arg to enable)
git-svn-id: file:///home/svn/incoming/trunk@3411 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-20 18:59:24 +00:00
HD Moore 737a1cb711 Pass socket context to child sockets from server, pass context from http mixin to socket
git-svn-id: file:///home/svn/incoming/trunk@3402 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-17 04:35:44 +00:00
Matt Miller 0b27b07a5d possible fix for header parsing issue
git-svn-id: file:///home/svn/incoming/trunk@3390 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-16 16:29:22 +00:00
Matt Miller 679d192173 patch to allow non-default server name
git-svn-id: file:///home/svn/incoming/trunk@3369 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-11 22:16:20 +00:00
Matt Miller ae5c816e85 various enhancements to support passivex, seems to be functional, somewhat
git-svn-id: file:///home/svn/incoming/trunk@3322 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-07 10:04:30 +00:00
HD Moore 8049b32cbc Patches from <anon>
git-svn-id: file:///home/svn/incoming/trunk@3310 4d416f70-5f16-0410-b530-b9f4589650da
2006-01-05 22:20:28 +00:00
HD Moore 88658064df /usr/bin/ruby vs /usr/bin/env ruby
git-svn-id: file:///home/svn/incoming/trunk@3242 4d416f70-5f16-0410-b530-b9f4589650da
2005-12-17 06:46:23 +00:00
HD Moore e79c9f8658 Something is still breaking, use w3who, show payloads, exploit, breaks
git-svn-id: file:///home/svn/incoming/trunk@3218 4d416f70-5f16-0410-b530-b9f4589650da
2005-12-14 00:21:23 +00:00
Matt Miller 947f53518a some cleanup
git-svn-id: file:///home/svn/incoming/trunk@3191 4d416f70-5f16-0410-b530-b9f4589650da
2005-12-08 05:55:44 +00:00
Matt Miller 9e217054dc fix for erb thing
git-svn-id: file:///home/svn/incoming/trunk@3173 4d416f70-5f16-0410-b530-b9f4589650da
2005-12-05 15:22:17 +00:00
HD Moore 526b9f199d Changes from Brian Caswell
git-svn-id: file:///home/svn/incoming/trunk@3165 4d416f70-5f16-0410-b530-b9f4589650da
2005-12-02 02:35:30 +00:00
Matt Miller bd70905c03 escape
git-svn-id: file:///home/svn/incoming/trunk@3095 4d416f70-5f16-0410-b530-b9f4589650da
2005-11-25 04:16:43 +00:00
Matt Miller 8580264110 more exploits msfweb stuff
git-svn-id: file:///home/svn/incoming/trunk@3078 4d416f70-5f16-0410-b530-b9f4589650da
2005-11-24 05:51:20 +00:00
Matt Miller 68e661065d more msfweb foo
git-svn-id: file:///home/svn/incoming/trunk@3077 4d416f70-5f16-0410-b530-b9f4589650da
2005-11-24 05:13:40 +00:00
Matt Miller a19e98757d more hackery on msfweb
git-svn-id: file:///home/svn/incoming/trunk@3076 4d416f70-5f16-0410-b530-b9f4589650da
2005-11-24 04:23:43 +00:00
Matt Miller adc09f4aa1 hacking on msfweb
git-svn-id: file:///home/svn/incoming/trunk@3069 4d416f70-5f16-0410-b530-b9f4589650da
2005-11-24 03:31:23 +00:00
Matt Miller fc9376d385 enhanced http server crap
git-svn-id: file:///home/svn/incoming/trunk@3063 4d416f70-5f16-0410-b530-b9f4589650da
2005-11-24 02:02:10 +00:00
Matt Miller 2dc8cd66d3 added dir resource, fixed body parsing issue
git-svn-id: file:///home/svn/incoming/trunk@3060 4d416f70-5f16-0410-b530-b9f4589650da
2005-11-23 17:06:16 +00:00
Matt Miller 22542607cf very basic start to msfweb
git-svn-id: file:///home/svn/incoming/trunk@3056 4d416f70-5f16-0410-b530-b9f4589650da
2005-11-22 03:20:09 +00:00
Matt Miller 95f8210853 major doc update
git-svn-id: file:///home/svn/incoming/trunk@3029 4d416f70-5f16-0410-b530-b9f4589650da
2005-11-15 05:22:13 +00:00
Matt Miller 6a5870ddcd updated comments to be more uniformed in class definition
git-svn-id: file:///home/svn/incoming/trunk@3004 4d416f70-5f16-0410-b530-b9f4589650da
2005-11-02 16:49:45 +00:00
Matt Miller fe0a151d7e ported ie object type, more work on http stuff
git-svn-id: file:///home/svn/incoming/trunk@2861 4d416f70-5f16-0410-b530-b9f4589650da
2005-09-22 03:24:32 +00:00
Matt Miller 811789fa01 back from the dead, ignore service manager stuff for now, it sux
git-svn-id: file:///home/svn/incoming/trunk@2860 4d416f70-5f16-0410-b530-b9f4589650da
2005-09-21 04:48:37 +00:00
HD Moore 63f67869de Updates to HTTP:
* chunked transfer support
	* generic Request factory Client.request
	* runtime configuration via Client.config

Still busted:
	* Enforcement of max_data length
	* Error handling on incomplete responses


git-svn-id: file:///home/svn/incoming/trunk@2849 4d416f70-5f16-0410-b530-b9f4589650da
2005-09-15 23:37:38 +00:00
Matt Miller 654b7f034c service allocation draft
git-svn-id: file:///home/svn/incoming/trunk@2844 4d416f70-5f16-0410-b530-b9f4589650da
2005-08-22 04:34:40 +00:00
Matt Miller 2b82d4c4c4 fixed up the ol' http server
git-svn-id: file:///home/svn/incoming/trunk@2843 4d416f70-5f16-0410-b530-b9f4589650da
2005-08-22 02:36:09 +00:00
Matt Miller 934c50c878 rex proto stuff
git-svn-id: file:///home/svn/incoming/trunk@2826 4d416f70-5f16-0410-b530-b9f4589650da
2005-07-25 02:44:07 +00:00
Matt Miller 342c9f1cbf evil ruby ownage
git-svn-id: file:///home/svn/incoming/trunk@2825 4d416f70-5f16-0410-b530-b9f4589650da
2005-07-25 02:39:14 +00:00
Matt Miller cfe5d10a48 http server stuff
git-svn-id: file:///home/svn/incoming/trunk@2824 4d416f70-5f16-0410-b530-b9f4589650da
2005-07-25 02:18:37 +00:00
Matt Miller ba794cc6d8 added some http protocol stuff, ruby's builtin stuff sucks
git-svn-id: file:///home/svn/incoming/trunk@2823 4d416f70-5f16-0410-b530-b9f4589650da
2005-07-24 20:53:54 +00:00