Commit Graph

93 Commits (9f53aa15a542754d14b00e2d1f0070730b2ffac8)

Author SHA1 Message Date
HD Moore 2c3e85af05 Major cleanups to the session manager, serialized processing of incoming connections, concurrent processing (up to a max scheduler thread count) of meterpreter initialization/scripts. This is to avoid a potential deadlock in openssl and ensure consistent, reliable session staging. This commit also fixes a bug that would mark database sessions as closed too early.
git-svn-id: file:///home/svn/framework3/trunk@12485 4d416f70-5f16-0410-b530-b9f4589650da
2011-04-30 18:51:50 +00:00
HD Moore c28ad8ea0c Minor improvements and corner case bug fixes to session handling. This fixes issues that can come up when a stream is shut down
git-svn-id: file:///home/svn/framework3/trunk@11371 4d416f70-5f16-0410-b530-b9f4589650da
2010-12-18 03:00:26 +00:00
HD Moore 04f9aec2d8 Pass framework into the TcpReverseDoubleSessionChannel class
git-svn-id: file:///home/svn/framework3/trunk@11100 4d416f70-5f16-0410-b530-b9f4589650da
2010-11-22 19:18:24 +00:00
HD Moore a12d9f8dbf This patch adds detailed thread tracking across the metasploit framework, along with a new console command (threads) to manage these. This level of tracking is required to accurately monitor background tasks, assist with debugging, and kill orphaned threads.
git-svn-id: file:///home/svn/framework3/trunk@11003 4d416f70-5f16-0410-b530-b9f4589650da
2010-11-12 06:19:49 +00:00
HD Moore 9e01b0f4e5 Fix a race condition in concurrent session handling
git-svn-id: file:///home/svn/framework3/trunk@10596 4d416f70-5f16-0410-b530-b9f4589650da
2010-10-08 04:46:53 +00:00
HD Moore 2e9138ebbc This commit overhauls much of the meterpreter timeouts and staging processes. This fixes a bug with concurrent session handling, reduces CPU load by caching a single SSL certificate for all sessions, increases all of the critical timeouts, and generally makes mass ownage work better. We still need to limit the maximum number of concurrent on_session() threads to something sane to prevent sesssion spikes from dragging out the process even longer. The C-side meterpreter change is minimal and will only help with future compatibility if we move to non-blocking fd's for the SSL socket.
git-svn-id: file:///home/svn/framework3/trunk@10595 4d416f70-5f16-0410-b530-b9f4589650da
2010-10-08 04:11:47 +00:00
HD Moore adeae9fdec Expose ReverseListenerComm to the reverse_https and passivex handlers as well
git-svn-id: file:///home/svn/framework3/trunk@10535 4d416f70-5f16-0410-b530-b9f4589650da
2010-10-04 02:17:09 +00:00
HD Moore 1b4190df38 This commit brings configurability to TCP Servers as to which Comm they use. The ReverseListenerComm and ListenerComm advanced options can be used to prevent a given listener from trying to bind a listener over the pivoted routed. This is useful for a number of situations and not possible to configure explicitly before.
git-svn-id: file:///home/svn/framework3/trunk@10534 4d416f70-5f16-0410-b530-b9f4589650da
2010-10-04 02:11:22 +00:00
HD Moore faf58c2b62 Allows 0.0.0.0/::0 to be used in place of the real "any" address regardless of socket type when the bind address is specified
git-svn-id: file:///home/svn/framework3/trunk@10473 4d416f70-5f16-0410-b530-b9f4589650da
2010-09-25 03:28:19 +00:00
HD Moore 3b31f56894 This commit adds a new option to all reverse handlers: ReverseListenerBindAddress. This setting determines exactly what address is bound on the local system
git-svn-id: file:///home/svn/framework3/trunk@10472 4d416f70-5f16-0410-b530-b9f4589650da
2010-09-25 03:25:09 +00:00
Joshua Drake 33b479e696 adjust https handler status message
git-svn-id: file:///home/svn/framework3/trunk@9872 4d416f70-5f16-0410-b530-b9f4589650da
2010-07-20 00:17:58 +00:00
HD Moore 914a90a714 Fix the print lins
git-svn-id: file:///home/svn/framework3/trunk@9068 4d416f70-5f16-0410-b530-b9f4589650da
2010-04-14 02:46:43 +00:00
HD Moore 52d17d73da Show the URL, print an OK error for unknown requests
git-svn-id: file:///home/svn/framework3/trunk@9058 4d416f70-5f16-0410-b530-b9f4589650da
2010-04-13 16:05:37 +00:00
HD Moore 32b8f366de Do not try to bind to LHOST
git-svn-id: file:///home/svn/framework3/trunk@9057 4d416f70-5f16-0410-b530-b9f4589650da
2010-04-13 15:38:01 +00:00
HD Moore c8defe9716 Size tweaks to bring the ssl stager + encoder + target_id to exactly 400 bytes
git-svn-id: file:///home/svn/framework3/trunk@8998 4d416f70-5f16-0410-b530-b9f4589650da
2010-04-03 07:48:53 +00:00
HD Moore eac38aaa23 Allow alphanumeric targetid's
git-svn-id: file:///home/svn/framework3/trunk@8996 4d416f70-5f16-0410-b530-b9f4589650da
2010-04-03 06:21:00 +00:00
HD Moore 949874e541 Remove close message
git-svn-id: file:///home/svn/framework3/trunk@8995 4d416f70-5f16-0410-b530-b9f4589650da
2010-04-03 06:14:58 +00:00
HD Moore e98af96779 Revert - sort out a bug
git-svn-id: file:///home/svn/framework3/trunk@8994 4d416f70-5f16-0410-b530-b9f4589650da
2010-04-03 06:14:10 +00:00
HD Moore 84e30cd71e Switch from int to string, no reason not to
git-svn-id: file:///home/svn/framework3/trunk@8993 4d416f70-5f16-0410-b530-b9f4589650da
2010-04-03 06:11:45 +00:00
HD Moore 3c4024a0c6 Expose the server client list, set the keepalive
git-svn-id: file:///home/svn/framework3/trunk@8992 4d416f70-5f16-0410-b530-b9f4589650da
2010-04-03 06:05:06 +00:00
HD Moore 32f50fac66 Woops. Add the missing base class:
git-svn-id: file:///home/svn/framework3/trunk@8987 4d416f70-5f16-0410-b530-b9f4589650da
2010-04-03 05:37:40 +00:00
HD Moore c6c956ab46 Small patch to enable a new stager
git-svn-id: file:///home/svn/framework3/trunk@8984 4d416f70-5f16-0410-b530-b9f4589650da
2010-04-03 05:21:15 +00:00
HD Moore aaea62bb92 Report the correct local/peer names for the session information. Fix a return value check
git-svn-id: file:///home/svn/framework3/trunk@8765 4d416f70-5f16-0410-b530-b9f4589650da
2010-03-10 07:13:18 +00:00
HD Moore 6bd2a954cf Lots of small changes, the big one is moving from sysread -> readpartial in the stream base class
git-svn-id: file:///home/svn/framework3/trunk@8764 4d416f70-5f16-0410-b530-b9f4589650da
2010-03-10 06:43:46 +00:00
Stephen Fewer 300cede801 Fix for #291, Meterpreter over PassiveX now working again :)
git-svn-id: file:///home/svn/framework3/trunk@8653 4d416f70-5f16-0410-b530-b9f4589650da
2010-02-26 05:13:58 +00:00
Joshua Drake 85cd572df1 minor cleanups
git-svn-id: file:///home/svn/framework3/trunk@8506 4d416f70-5f16-0410-b530-b9f4589650da
2010-02-15 22:38:25 +00:00
Stephen Fewer fd2469db24 Commit the Ruby end for TCP server channels, the modified TCP client channels and the support for pivoting a reverse_tcp meterpreter.
git-svn-id: file:///home/svn/framework3/trunk@8384 4d416f70-5f16-0410-b530-b9f4589650da
2010-02-06 17:59:25 +00:00
James Lee 7e177962bf tell the user what port we're listening on
git-svn-id: file:///home/svn/framework3/trunk@7452 4d416f70-5f16-0410-b530-b9f4589650da
2009-11-10 17:39:51 +00:00
HD Moore 00b2915554 Fixes #342. Set ReverseConnectRetries to a value between 1 and 255 (default is 5). On failure it will ExitProcess (still better than a cpu spin)
git-svn-id: file:///home/svn/framework3/trunk@7217 4d416f70-5f16-0410-b530-b9f4589650da
2009-10-20 20:31:14 +00:00
HD Moore ee9a8f4f76 Adds support for the reverse_tcp_allports stager for Windows. This payload tries to connect back on all ports, one at a time, from LPORT to 65535. This is incredibly slow (depends on the default socket timeout) and requires the user to forward all TCP ports of LHOST to a single listening port in the handler. Inspired by a few user requests and this blog post: http://clinicallyawesome.com/post/196352889/blind-connect-back-through-restrictive-firewall
git-svn-id: file:///home/svn/framework3/trunk@7058 4d416f70-5f16-0410-b530-b9f4589650da
2009-09-25 05:44:50 +00:00
HD Moore 069144f56a Dont print the bind message for the any address
git-svn-id: file:///home/svn/framework3/trunk@7057 4d416f70-5f16-0410-b530-b9f4589650da
2009-09-24 20:52:58 +00:00
HD Moore cdbfe74b1b Fixes #273. Move the passivex default port to 8000 so it doesnt conflict with the default HttpServer port
git-svn-id: file:///home/svn/framework3/trunk@7044 4d416f70-5f16-0410-b530-b9f4589650da
2009-09-20 19:46:08 +00:00
James Lee 71bf0a12a1 remove the dll option from passivex. users shouldn't ever have to change this
git-svn-id: file:///home/svn/framework3/trunk@6964 4d416f70-5f16-0410-b530-b9f4589650da
2009-08-18 18:13:38 +00:00
James Lee 96c8f6127c Replace += with << for Strings in a bunch of places.
git-svn-id: file:///home/svn/framework3/trunk@6318 4d416f70-5f16-0410-b530-b9f4589650da
2009-03-08 07:55:47 +00:00
natron 10f44dd364 Updated passivex to work with IE7/IE8. Launches multiple processes on IE8; will debug later.
git-svn-id: file:///home/svn/framework3/trunk@6261 4d416f70-5f16-0410-b530-b9f4589650da
2009-02-27 23:13:53 +00:00
James Lee 077c201f10 try any before specific LHOST
git-svn-id: file:///home/svn/framework3/trunk@6177 4d416f70-5f16-0410-b530-b9f4589650da
2009-01-23 23:03:53 +00:00
HD Moore cb327d40fc Fix up the dialup code
git-svn-id: file:///home/svn/framework3/trunk@6150 4d416f70-5f16-0410-b530-b9f4589650da
2009-01-14 05:46:10 +00:00
HD Moore 5600b0b67d Try harder to verify the socket if its a modem connection
git-svn-id: file:///home/svn/framework3/trunk@6139 4d416f70-5f16-0410-b530-b9f4589650da
2009-01-13 06:52:23 +00:00
druid 0d1ca42ed6 Adds support for exploitation over dialup via the new Telephony library.
git-svn-id: file:///home/svn/framework3/trunk@6120 4d416f70-5f16-0410-b530-b9f4589650da
2009-01-11 06:09:02 +00:00
kris 248f1e9fc3 Remove "#{xxx.to_s}" redundancies ('s/\(#{[^}]*\)\.to_s}/\1}/g')
git-svn-id: file:///home/svn/framework3/trunk@6022 4d416f70-5f16-0410-b530-b9f4589650da
2008-12-19 07:11:08 +00:00
James Lee 9bb814a9d1 fix typo in comment
git-svn-id: file:///home/svn/framework3/trunk@5974 4d416f70-5f16-0410-b530-b9f4589650da
2008-11-21 23:44:45 +00:00
James Lee 4b082a77a8 un-break reverse handler for ipv6
git-svn-id: file:///home/svn/framework3/trunk@5972 4d416f70-5f16-0410-b530-b9f4589650da
2008-11-21 05:34:39 +00:00
James Lee b76d3e1560 better handling of LHOST vs 0.0.0.0; fixes #262 again
git-svn-id: file:///home/svn/framework3/trunk@5971 4d416f70-5f16-0410-b530-b9f4589650da
2008-11-21 05:12:31 +00:00
James Lee fec1533b50 revert r5969 which breaks behind nat
git-svn-id: file:///home/svn/framework3/trunk@5970 4d416f70-5f16-0410-b530-b9f4589650da
2008-11-21 02:01:43 +00:00
James Lee f1e71237e4 bind to LHOST instead of 0.0.0.0, fixes #262
git-svn-id: file:///home/svn/framework3/trunk@5969 4d416f70-5f16-0410-b530-b9f4589650da
2008-11-21 01:09:17 +00:00
HD Moore bc8e5669bd Fixes #238. Exposes the RHOST option to the payload and fixes the MSFGUI display of payload options
git-svn-id: file:///home/svn/framework3/trunk@5852 4d416f70-5f16-0410-b530-b9f4589650da
2008-11-08 19:25:25 +00:00
Ramon de C Valle f124597a56 Code cleanups
git-svn-id: file:///home/svn/framework3/trunk@5773 4d416f70-5f16-0410-b530-b9f4589650da
2008-10-19 21:03:39 +00:00
James Lee 36a06e7576 initial commit of php findsock. This patch makes all http connections global and removes the "close if (!pipelining)" checks, so beware of bugs.
git-svn-id: file:///home/svn/framework3/trunk@5678 4d416f70-5f16-0410-b530-b9f4589650da
2008-09-24 04:41:51 +00:00
HD Moore d53dd66701 Adds initial support for IPv6, including two stager. Tested Meterpreter over IPv6 stages on XP and Vista. Using this is still tricky, I will add a wiki page tomorrow to explain the ScopeID stuff for link-local testing. This commit also includes the raw (oversized) assembler for the stagers as well as the entire old metasploit assembly set (useful for development).
git-svn-id: file:///home/svn/framework3/trunk@5635 4d416f70-5f16-0410-b530-b9f4589650da
2008-08-22 06:34:57 +00:00
HD Moore 62303eefbf Merged revisions 5378-5379 via svnmerge from
svn+ssh://metasploit.com/home/svn/framework3/branches/framework-3.1

........
  r5379 | hdm | 2008-01-27 21:13:27 -0600 (Sun, 27 Jan 2008) | 3 lines
  
  Remove $stderr prints
........


git-svn-id: file:///home/svn/framework3/trunk@5380 4d416f70-5f16-0410-b530-b9f4589650da
2008-01-28 03:13:55 +00:00