Commit Graph

505 Commits

Author SHA1 Message Date
Shelby Pace 35075d5c7f add strip and update payload cached sizes 2019-12-12 10:43:04 -06:00
Brent Cook b3bb0efa62 update payload sizes (apparently this is a compiler version-dependent) 2019-12-12 09:23:25 -06:00
Brent Cook c55105c526 add compiled payload sizes, don't generate on framework boot 2019-12-10 19:06:01 -06:00
Brent Cook f8c84c9928 Land #12530, add encrypted, compilable shell payloads 2019-11-21 08:59:46 -06:00
Shelby Pace 3fa9e9b0a8 add Dependencies array with mingw arch class 2019-11-18 09:35:18 -06:00
Shelby Pace bfa27e6bed add flag, use DefaultOptions for linker script 2019-11-07 15:33:31 -06:00
Shelby Pace 1717001be1 attribution 2019-11-01 09:01:14 -05:00
Shelby Pace 8bb1c5102b opt for inline asm instead of pre-compiled object 2019-10-31 11:55:40 -05:00
Spencer McIntyre 85a39f75d8 Use a larger payload size to include the UUID 2019-10-10 22:08:26 -04:00
Shelby Pace bb742771e5 add stager and stage for x64 arch 2019-10-10 12:16:10 -05:00
Shelby Pace c7b42f71a0 change description 2019-10-10 12:16:10 -05:00
Shelby Pace 3e6283c193 add staged payload 2019-10-10 12:16:10 -05:00
Adam Cammack 2ee5ec97e4 Use smallest stager size
Since these stagers can shrink based on the expected size of the next
stage, do our best to anticipate a small size. This makes the cached
payload size consistent for now, though if the x64 mettle stager grows
past 128 bytes I think we'll see the stager start oscillating in size
again. If you run into that and are reading this, sorry :(
2019-09-04 16:06:44 -05:00
Adam Cammack 4d89dd83e3 Update payload cached size
For real this time?
2019-09-04 15:17:34 -05:00
Adam Cammack de554b315a Update cached size 2019-09-04 14:56:12 -05:00
William Vu 32334c2386 Update all module splats from http:// to https:// 2019-08-15 18:10:44 -05:00
Brent Cook 4e544fe733 Land #11968, only enable UDP stagers for compatible payloads 2019-06-29 03:34:15 -05:00
Brent Cook 4d6e0e9892 https 2019-06-11 04:48:52 -05:00
Brent Cook 44dfc3506d add udpsockedi, tag compatible payloads
Not all payloads compatible with TCP stagers are compatible with UDP
stagers, so assuming sockedi is not sufficient to ensure compatibility.
This adds a udpsockedi which pairs compatible payloads together.
2019-06-11 04:19:14 -05:00
bwatters-r7 bee013a18c update cache size and fix an assignment 2019-06-04 07:13:34 -05:00
RageLtMan ff1630ad14 Implement bind TCP with RC4 decryption for x64
Update metasm generated shellcode blocks to cobble together an
RC4 decryption routine with a bind-socket handler for x64 targets.
Expose via new payload module
2019-06-03 18:06:53 -04:00
Brent Cook 0ce05f0c07 update payload sizes 2018-12-08 06:24:02 -06:00
Tim W 4216d06ffb fix #9963, update x64 linux reverse_tcp stager cached size 2018-05-05 16:30:45 +08:00
Summus6 b865d4fee2 Fix CachedSize for windows/x64/reverse_(win)http(s) payloads 2018-03-20 11:27:43 +01:00
Jeffrey Martin 4801021aba Land #9613, add bind_named_pipe x86 2018-03-17 15:53:06 -05:00
Jeffrey Martin eac7cc63fc add missing payload tests 2018-03-04 17:54:52 -06:00
bwatters-r7 0d07d44b14 ReLand #9565, Reverse TCP x64 RC4 via max3raza's rc4_x64 asm
This reverts commit 7964868fcd.
2018-03-02 16:09:52 -06:00
bwatters-r7 7964868fcd Revert "Land #9565, Reverse TCP x64 RC4 via max3raza's rc4_x64 asm"
This reverts commit fcc579377f, reversing
changes made to 95cd149378.
2018-03-02 08:29:48 -06:00
bwatters-r7 fcc579377f Land #9565, Reverse TCP x64 RC4 via max3raza's rc4_x64 asm 2018-03-02 07:34:45 -06:00
UserExistsError 35b66d0e60 added payload tests 2018-02-27 19:24:51 -07:00
UserExistsError e19a071910 add bind_named_pipe x86 2018-02-22 19:03:37 -07:00
Brent Cook 05e002e3c5 Land #9366, Add x64 staged Meterpreter for macOS 2018-02-19 23:15:03 -06:00
RageLtMan 354eb4092a Reverse TCP x64 RC4 via max3raza's rc4_x64 asm
To round out the work done by mihi for x86 stages back in the day,
this PR provides x64 Windows stage encryption in RC4 via assembly
written/modified by max3raza during adjacent work on DNS tunneled
transport.

Stage encryption differs from encoding in that there is no decoder
stub or key materiel carried with the stage which can be used by
defensive systems to decode and identify the contents. Persistence
payloads, oob-delivered stage0, and other contexts benefit heavily
from this as their subsequent stage is difficult to detect/identify,
and the chance of accidental execution of the wrong payload/stage
is drastically reduced if separate keys are in play for individual
targets - acquiring the wrong stage will result in decryption
failure and prevent further execution.

For historical context, all of the RC4 stagers implement in-place
decryption via stage0 for the contents of stage1 using the provided
passphrase converted to a key and embedded in stage0 as part of the
payload.

Testing:
  In-house testing with Max - we got sessions, loaded extensions.

Notes:
  All credit for the work goes to Max3raza - big ups for getting
this knocked out.
2018-02-16 05:15:05 -05:00
Brent Cook d28f6888b2 bump payloads, include bind_named_pipe support 2018-02-15 17:37:33 -06:00
Brent Cook 38b03fdfff Merge branch 'upstream-master' into land-9539- 2018-02-15 16:22:13 -06:00
Brent Cook 67dc579fd3 update magic numbers 2018-02-15 15:10:26 -06:00
Jeffrey Martin d56111a33c update cache sizes from new tests 2018-02-13 14:34:21 -06:00
Jeffrey Martin 2221779ddd update package namespaces 2018-02-13 13:33:36 -06:00
UserExistsError 8ae8a0d94b added bind_named_pipe payload 2018-02-11 18:56:50 -07:00
RageLtMan ed47efdadc Silence tidy failures 2018-01-23 02:03:50 -05:00
RageLtMan ef1d4ddb03 Add UDP handlers and payloads (redux)
This is a repackaging effort for the work i originally pushed in
6035. This segment of the PR provides UDP session handlers for
bind and reverse sessions, a Windows Metasm stager (really the
TCP stager with a small change), and a pair of socat payloads for
testing simple UDP shells. Netcat or any scripting language with
a sockets library is sufficient to use these sessions as they are
stateless and simple.

Testing of this PR requires rex/core #1 and rex/socket #2

The SSL testing which was being done on 6035 is backed out, left
for a later time when we can do DTLS properly.
2018-01-23 02:00:55 -05:00
Tim W 550e9a3d31 fix payload cached size 2018-01-10 15:06:08 +08:00
Tim W cf893c2962 fix LHOST 2018-01-10 11:48:41 +08:00
Tim W e225e29add fix default LHOST 2018-01-10 11:34:51 +08:00
Tim W beda2d1efb add retries and error checking to osx stager 2018-01-05 03:59:12 +08:00
Tim W 44fbb171a6 osx stager 2017-12-29 11:13:25 +08:00
Brent Cook 4050985649 update payloads 2017-11-21 13:53:33 -06:00
Brent Cook 1fd7f7c8bc prefix MeterpreterUserAgent and PayloadProxy* with Http for consistency,
this also adds aliases where needed
2017-11-21 13:47:19 -06:00
Anant Shrivastava 86726978ed payload size updated 2017-09-12 19:23:31 +05:30
Brent Cook 9877a61eff bump payloads 2017-09-07 01:36:25 -05:00