Commit Graph

55054 Commits

Author SHA1 Message Date
RageLtMan c339662fed SshCommandSession and Ruby Payloads
Implement a command-only session type over the HrrRbSsh client
Connection Channels' file descriptors, adjust from base command
session to deal with the separate reader/writer IOs. Technically,
a TTY session works out of the box here as well.

Implement a pair of showcase Ruby payloads using net/ssh to call
back to the handler, create a shell channel, and loop piping I/O
between framework session and client via the Ruby backtick exec.

Next Steps:
  Command payloads need to be written for every major interpreted
language as well as some sort of bashism a la openssl_double if
it comes to that, but preferably single socket implementation.

Testing:
  Very minimal, needs a good run through by the community and R7
2019-06-23 05:20:04 -04:00
RageLtMan dd5814654c update hrr_rb_ssh version 2019-06-22 20:09:26 -04:00
RageLtMan f0b24339fe Implement Rex::Proto::Ssh::Server scaffold
Create the Rex::Proto::Ssh namespace and implement hrr_rb_ssh
objects in the Rex namespace with Rex' sockets stack, permissive
default connection options to accept any authentication, ACLs for
port forwarding, and a modified Connection #initialize method for
simplified instantiation.

The actual Rex::Proto::Ssh::Server object follow standard Rex
semantics for services to permit use in handlers, exploits, and
auxiliary modules in the same manner as the Http::Server is used
today.

This work is far from complete - the HrrRbSsh low-level objects
should be decomposed into Rex' pattern as they currently depend
heavily on their own Procs and Threads internally which use the
parent Connection object's attributes to look up which Proc should
be called in response to a Channel or Authentication request. This
is a bit difficult to do piecemeal given the intertwined data and
execution dependency inside of HrrRbSsh.

Next steps:
1. Create handler and reverse_ssh command session payloads
1a. POSIX systems generally have SSH already
1b. Windows Powershell is likely able to hotload SSH libs as a
pre-stager.
1c. Other interpreted runtimes usually have client-ssh libraries
2. Implement options parsing, handling, etc for user-customizable
functionality from the Msf namespace.
3. Use libssh2 to permit mettle use of the SSH transport.
3a. Bother @OJ about doing the same for Windows Meterpreter.
3b. Bother @zeroSteiner to implement SSH transport for PyMeterp.
3c. Ask @timwr and @mihi how viable this is for Android/Java.
3d. See if @OJ will do this for CLR-meterp on a livestream.
4. Write a post module which runs this SSH server from a mettle
session using the compromised hosts's own host keys and passwd
file for "valid" authentication while logging and MITMing the
entire command stream remotely - help folks shake off some of the
complacency around "secure shells."
5. Write a plugin which will permit sharing of the entire console
context, specific acquired sessions, or TCP forwards with the
pugin's SSH clients based on the credentials used to connect.
6. Further decompose the server code into Rex to permit writing
client fuzzers, loggers, and other tooling to test the posture of
SSH client implementations.
7. Work to implement SSH client functionality in HrrRbSsh and
convert the rest of Rex/Msf to use this library instead only.
8. Rewrite and import MetaSsh into Metasploit proper using the
new Rex::Proto::Ssh code.

-----

Huge thanks to @hirura for writing HrrRbSsh. I've spent countless
hours on and off working to implement server-side semantics in
net/ssh years ago and it was becoming a pretty full rewrite due
to the ordering of server/client req/resp messages and who sent
what to whom. This library is a much much cleaner implementation
and provides full, modern SSH servers in pure Ruby.
2019-06-22 20:06:15 -04:00
RageLtMan 8549f416f8 SSH gem requirement for gemspec 2019-06-22 20:06:15 -04:00
Metasploit 6a55227c56 automatic module_metadata_base.json update 2019-06-22 00:52:07 -07:00
William Vu 1f5137fcb6 Land #11996, ZDI reference for rails_double_tap 2019-06-22 02:34:14 -05:00
Carter Brainerd d2dc5f6077 Review changes 2019-06-22 00:18:44 -04:00
Shelby Pace 54aff89563 add requests to create, remove, clean db backups 2019-06-21 16:00:56 -05:00
yaumn 6b39bec4fc Add netcat method (still buggy though) 2019-06-20 23:21:19 +01:00
Carter Brainerd d90dba5d6e Hopefully final msftidy fixes 2019-06-20 17:03:38 -04:00
Carter Brainerd 679f55d0c5 Docs cleanup 2019-06-20 17:02:02 -04:00
asoto-r7 fa5cdb6ff3 Remove unecessary gems (we might add them back later) 2019-06-20 15:09:25 -05:00
asoto-r7 358ff635dd Renamed modules per @wvu's offline suggestion 2019-06-20 15:08:30 -05:00
Shelby Pace e43fc2d921 added skeleton, check method 2019-06-20 14:05:41 -05:00
Carter Brainerd 96b499080c Add docs 2019-06-20 15:01:53 -04:00
Carter Brainerd 1a877abe09 Msftidy was not happy 2019-06-20 14:50:56 -04:00
Carter Brainerd 534e2bc405 Make the darn thing work 2019-06-20 14:40:46 -04:00
Carter Brainerd fded7fb922 Create bypassuac_silentcleanup.rb 2019-06-20 13:53:54 -04:00
Metasploit 8244457b33 Bump version of framework to 5.0.31 2019-06-20 10:05:48 -07:00
Guillaume Andre c8786e181f First version of the exploit is now working
Change-Id: Idf6b6d773cf71c477fe68885313f5f98d74d9c11
2019-06-20 16:53:43 +01:00
Wei Chen 8920152eca Add a ZDI reference for CVE-2019-5420 Rails exploit 2019-06-20 10:43:21 -05:00
NickTyrer 5a010e1446 update documentation 2019-06-20 16:07:25 +01:00
Guillaume Andre c1cf728507 First commit
Change-Id: If751eb1753fc8991fe7971c7123a203734396a46
2019-06-20 12:17:38 +01:00
Tim W 809a990ab8 add mouse doubleclick 2019-06-20 15:21:41 +08:00
Tim W 48d29e532e add keyevent api 2019-06-20 13:54:13 +08:00
Shelby Pace d818a27a7c added check, path for diaghub exploit 2019-06-19 16:14:02 -05:00
Shelby Pace d3cd1a3fa0 added VS2013 compiled executables 2019-06-19 15:19:00 -05:00
Metasploit 4fa6fb8db9 automatic module_metadata_base.json update 5.0.30 2019-06-19 12:52:21 -07:00
Jeffrey Martin e1b982dfa9 Land #11993, Explicitly require 'rc4' in the BlueKeep scanner. 2019-06-19 14:42:01 -05:00
Jeffrey Martin e98e69fb80 add automation tests for bluekeep server targets 2019-06-19 13:54:14 -05:00
Metasploit fba601b584 automatic module_metadata_base.json update 2019-06-19 09:07:26 -07:00
Wei Chen a93a520c3a Land #11960, Add LPE for Cisco Prime Infrastructure's runrshell exe 2019-06-19 10:49:17 -05:00
Wei Chen c637755ebd Land #11956 - Add Cisco Prime Infrastructure Health Monitor Tar RCE 2019-06-19 10:46:35 -05:00
Metasploit a61401b1f8 automatic module_metadata_base.json update 2019-06-19 06:57:30 -07:00
Shelby Pace 4d7d807025 Land #11983, add Webmin package update rce 2019-06-19 08:35:01 -05:00
Shelby Pace ddf7eadeee modified version check 2019-06-19 08:31:48 -05:00
Pearce Barry 3f0810502e Explicitly require 'rc4' in the BlueKeep scanner.
Appears to still operate as-expected:

	msf5 > use auxiliary/scanner/rdp/cve_2019_0708_bluekeep
	msf5 auxiliary(scanner/rdp/cve_2019_0708_bluekeep) > set rhosts <target>
	rhosts => <target>
	msf5 auxiliary(scanner/rdp/cve_2019_0708_bluekeep) > run

	[+] <target>:3389      - The target is vulnerable.
	[*] <target>:3389 - Scanned 1 of 1 hosts (100% complete)
	[*] Auxiliary module execution completed

Fixes MS-4291.
2019-06-19 08:27:04 -05:00
Wei Chen 0cec80ba24 update doc 2019-06-18 21:34:16 -05:00
Jacob Robles efeb0a5f5c Land #11971, zip extraction from modbus pcap 2019-06-18 16:25:27 -05:00
Wei Chen 384cfc7db5 update checkcode 2019-06-18 15:58:57 -05:00
Wei Chen 16cfd3f4ac Fix typos 2019-06-18 15:49:40 -05:00
Wei Chen 4a32164370 Add doc for CVE-2019-0232 2019-06-18 15:28:42 -05:00
Wei Chen 585a4340b2 Add exploit for CVE-2019-0232: Apache Tomcat CGIServlet RCE 2019-06-18 15:28:11 -05:00
Jacob Robles 2873284323 Doc updates 2019-06-18 14:28:43 -05:00
Jacob Robles 4d1bd60853 Update documentation 2019-06-18 14:16:34 -05:00
Jacob Robles 66c3c6a94b Remove unused mixin, update save loot logic
Capture mixin was not used. Loot was being
saved when a zip file wasn't found. Updated
file path so the module is under analyze.
2019-06-18 14:08:47 -05:00
Özkan Mustafa Akkuş 992a638a79 Merge pull request #1 from space-r7/pr11983
Add minor module changes
2019-06-18 09:58:20 +03:00
Chris Higgins ceba93e84e Land #11904, fix meterpreter screenshot dll upload 2019-06-17 23:36:29 -05:00
asoto-r7 36eeba4e37 Address code review from @jrobles-r7. Thanks! 2019-06-17 16:19:45 -05:00
yaumn 8723775564 Add a module documentation file 2019-06-17 21:50:03 +01:00