1
mirror of https://github.com/rapid7/metasploit-payloads synced 2025-01-02 11:36:22 +01:00
Commit Graph

71 Commits

Author SHA1 Message Date
OJ
fa0d3fc95c Porting of connection reslience work to POSIX 2015-04-17 18:08:26 +10:00
OJ
b3b9726b4b Refactored TCP/HTTP transport functions
Updated the code so that the TCP stuff is moved into its own file and doesn't pollute the main server file with stuff that is specific to TCP transports.

Updated the winhttp functionality in the same way so that functionality is properly segregated.

Modified the global parameters so that they're part of a structure that can be passed around.

Added a stack of documnetation as well.
2015-04-08 12:48:07 +10:00
OJ
934525d2e7 Remove traces of wininet from the source
WinInet won't work any more thanks to use making modifications on the MSF that will cause it to break. We're basically all-in for WinHTTP now.
2015-04-02 12:36:17 +10:00
OJ
4758a31f5b Source rejig, refactor POSIX to support changes 2015-03-30 20:14:16 +10:00
Brent Cook
9a71a575b7 use OpenSSL with Windows builds for now
LibreSSL does not yet work well with Windows meterpreter for 2 reasons:
  1. because its built with mingw/gcc, it does not have SAFESEH, requiring that
	 protection to be disabled for the whole stack. It could, it just needs a
	 way to be built with MSVS instead.
  2. OpenSSL 1.0.1 and Libressl both make metsrv about 50% larger.

When transports are more abstracted and LibreSSL can build with MSVS, we will
revisit this.
2015-03-25 09:12:11 -05:00
Brent Cook
4ec9205eb0 update openssl refs 2015-03-24 10:56:33 -05:00
OJ
0739cbc0f3 Add support for SSL cert validation
Tweak the SSL implemention so that for https meterpreters the SSL certificate is validated against a hash that is specified in the payload. If the hash isn't specified, then certificate validation isn't attempted.
2015-03-17 13:27:33 +10:00
OJ
f44b44f2ce Implement https communications via winhttp
First pass, some instability still. Migration doesn't play nice.
2015-03-16 21:51:44 +10:00
Brent Cook
038477f90d initial split server_setup into windows/posix variants 2015-03-13 13:05:35 -05:00
OJ
aaa384b51d Remove compiler warning, set warnings as errors 2015-03-13 20:47:30 +10:00
Rich Whitcroft
c9cb640612 add path to new scheduler.c location 2015-02-06 13:44:07 -05:00
Brent Cook
0d59fc7447 support building on newer Linux systems and Makefile cleanups
- try to share some bits between different makefiles, make modifying
   global compiler flags not such a huge pain.
 - directly specify we should be using the gold rather than bpf linker
 - make compiler output largely quiet except where we care - allow
   warnings to actually be visible
 - don't delete downloaded tarballs with --really-clean
 - add missing dependencies between libraries
   (--no-add-needed/--no-copy-dt-needed-entries causes lots of trouble)
 - update readme to show what to install to build

I made minimal changes to the loader makefile - it breaks easily.
 -Os prevents if from being able to load libc, for instance
2015-01-13 16:33:56 -06:00
OJ
c6bdc26a55 Update Meterpreter to use the RDI submodule 2013-11-27 14:01:45 +10:00
OJ
5a1d5bbbe9 Set "warnings as errors"
Now that the build is clean, warnings are now errors to keep it clean.
2013-11-20 11:35:43 +10:00
OJ
7702724fd2 Remove all warnings resulting in totally clean builds
Does as it says on the tin. Various tweaks made to source and to project
files to make the builds come out with ZERO warnings.

Let's keep it clean from here!
2013-11-06 19:02:50 +10:00
OJ
288b2bad41 Upgrade to VS 2013 2013-10-29 13:46:46 +10:00
James Lee
e031cc37f1 Land #19, add 'x86' to output filenames
Conflicts:
	workspace/ext_server_mimikatz/ext_server_mimikatz.vcxproj
	workspace/ext_server_sniffer/ext_server_sniffer.vcxproj
2013-09-16 23:56:52 -05:00
OJ
b442d17082 Change output file names
As per @jlee-r7's request I've changed the output of both 32 and 64 bit
components so that the platform is included in the file name.

I also added "make clean" to the make script.
2013-09-17 07:24:27 +10:00
OJ
73c3a2cfcd Support Rapid7 internal builds, fix sniffer ext
* r7_debug and r7_release configurations added.
* Make now detects if the appropriate libraries are on disk and will build
  whatever it can. If PSSDK is present in the appropriate location then it
  will attempt to build ext_server_sniffer.
* ext_server_sniffer is now buildable with VS 2012 with all the settings
  correct.
* ext_server_sniffer was failing to load once built. The cause of this was
  that the hMetSrv handle wasn't being set to a valid value prior to the
  command_register calls happening, it was being set too late. I'm not
  sure why this results in a crash, but moving this one call to a location
  prior to the command_register calls does resolve that problem.
2013-09-15 00:00:20 +10:00
OJ
35bef0be11 Post-build event changes
* Copy output to different locations for different builds
2013-09-03 17:22:18 +10:00
OJ
87031e0d00 Work towards a clean build
* Various code fixes to keep the compiler warnings down.
* Adjustments to project files.
2013-09-03 16:49:09 +10:00
OJ
30928305e9 Fix project platform settings
* Make all the debug builds use /MTd instead of /MT.
* Make all builds use v110_xp for the platform (allows XP support).
2013-09-02 10:28:21 +10:00
OJ
5c5e95eb73 Upgrade from VS2010 to VS 2012
* Perform the upgrade of the projects using the VS wizard.
* Exclude the ext_server_pivot project for now as it doesn't exist on
  disk.

Note: this changeset will not compile.
2013-09-02 09:49:50 +10:00
Meatballs
da4c1fc650 Refactor to support custom commands 2013-04-22 10:06:35 +01:00
James Lee
fcab1fbe55 Use libs from the Configuration instead of hardcoded Release 2013-04-03 14:04:09 -05:00
James Lee
bdf7ae3acd Make the Debug config work
Also changes the output filename for most projects to make x86 match
x64, e.g. ext_server_stdapi.x86.dll
2013-04-03 13:33:04 -05:00
James Lee
eff9e9a558 omg crlf 2013-04-01 15:25:36 -05:00
James Lee
e3b74bcfe7 omg crlf 2013-04-01 15:22:28 -05:00
James Lee
0e80fe7e24 Add platform toolset
I hope this doesn't break other versions of Visual Studio
2013-04-01 15:06:20 -05:00
James Lee
3b2880bf4e Statically link libc for all configs 2013-03-29 15:08:16 -05:00
James Lee
238d992ef7 DRY up some vcxproj cruft
Changes the output directory for all the projects to be dependent on the
target platform (which is really the architecture, but that's a story
for another time).

Also makes all the vcxproj files use variables for the output directory so
changing it isn't so painful next time.
2013-03-27 18:02:05 -05:00
James Lee
0587335279 Slashes to whacks 2013-03-27 15:00:16 -05:00
James Lee
f934e6b4d7 Make Debug look more like Release 2013-03-25 12:36:32 -05:00
James Lee
7283131279 Initial source import from metasploit-framework 2012-11-19 16:46:07 -06:00
jlee-r7
964bae0c49 Initial commit 2012-11-19 14:40:03 -08:00
HD Moore
7faaa653ba Update project 2012-06-24 14:03:57 -05:00
HD Moore
8a1193cef1 Add missing project files 2012-06-24 14:03:54 -05:00
James Lee
46c1073bea Remove unnecessary -gstabs and fix a logic error
This drops the sniffer extension to a size of around 55k bytes.
2012-02-10 15:57:01 -07:00
James Lee
d493848e40 Add a 'debug' target for posix meterpreter build
This new target adds debugging symbols and doesn't strip binaries. New
bins are considerably bigger, but may be more helpful when diagnosing
problems or adding new features.

[Fixes #6343]
2012-02-10 15:57:01 -07:00
James Lee
3ded02ae3e Add -m32 to all the Makefiles
This is in an attempt to get it compilation working on 64-bit hosts.
2012-01-27 17:20:36 -07:00
James Lee
ff05a305da Force gcc to compile for i386
Makes meterpreter for linux work on older CPUs.

Fixes #6268
2012-01-23 15:20:36 -07:00
James Lee
808dd72cc5 meterpreter compiles on modern linux! see #2418
git-svn-id: file:///home/svn/framework3/trunk@13333 4d416f70-5f16-0410-b530-b9f4589650da
2011-07-25 07:59:51 +00:00
HD Moore
a2da008614 Add md5/sha1
git-svn-id: file:///home/svn/framework3/trunk@13060 4d416f70-5f16-0410-b530-b9f4589650da
2011-06-29 06:12:15 +00:00
HD Moore
118d6b2bfb Merge in some recent meterpreter work, still a ways off before this is ready to use.
git-svn-id: file:///home/svn/framework3/trunk@13044 4d416f70-5f16-0410-b530-b9f4589650da
2011-06-28 05:57:36 +00:00
Joshua Drake
b7c3b14dd9 merge in another posix meterpreter update from philip, see #2418
git-svn-id: file:///home/svn/framework3/trunk@10307 4d416f70-5f16-0410-b530-b9f4589650da
2010-09-13 14:44:00 +00:00
Joshua Drake
88822d3991 sync up with Philip's code, see #2418
git-svn-id: file:///home/svn/framework3/trunk@10202 4d416f70-5f16-0410-b530-b9f4589650da
2010-08-31 15:10:41 +00:00
Joshua Drake
5893c7586d update additional files, see #2418
git-svn-id: file:///home/svn/framework3/trunk@10156 4d416f70-5f16-0410-b530-b9f4589650da
2010-08-26 07:25:15 +00:00
Joshua Drake
4b10b7b0ee first attempt to merge in Philip Sanderson's work on the POSIX meterpreter
git-svn-id: file:///home/svn/framework3/trunk@10154 4d416f70-5f16-0410-b530-b9f4589650da
2010-08-26 05:16:27 +00:00
HD Moore
15ff9acb1c Merge railgun, tweak configurations
git-svn-id: file:///home/svn/framework3/trunk@9709 4d416f70-5f16-0410-b530-b9f4589650da
2010-07-07 16:29:03 +00:00
James Lee
a664572f5b meterpreter now compiles on 64-bit linux in a 32-bit chroot. still need payload handlers and some stdapi love to make it useable
git-svn-id: file:///home/svn/framework3/trunk@9468 4d416f70-5f16-0410-b530-b9f4589650da
2010-06-10 06:10:15 +00:00