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
2c812603e5
Whitespace
2013-04-04 22:33:15 -05:00
035531c35c
This commit adds in-memory substitution for x64
...
Initial commit of in-mem-exe.c modifications for Windows x64.
Initial boolean wrapper checks to see if the image supplied is a
valid 64bit PE and calls a 64bit injection function. wow64 not yet
implemented.
64bit execution is a bit tricky since we can't get the entrypoint
of the existing thread from ThreadContext.Eax and we need to make
sure that our images are properly aligned. The 64 bit mapper is
based on MemExec64 source code by Steve10120 [at] icode.org.
TODO:
Write wow64 based injector. Write conditional to check that
source and destination images are the same architecture and call
the arch appropriate injection method.
Write "Heaven's Gate" based injector for running x86 process in
x64 space.
2013-03-20 18:45:08 -04:00
7283131279
Initial source import from metasploit-framework
2012-11-19 16:46:07 -06:00
964bae0c49
Initial commit
2012-11-19 14:40:03 -08:00
70452fb2c6
Store the value, not the comparison
...
Fixes client.sys.process.execute for posix, which previously (since
2010!) would always return nil, or a single byte. This makes sense
considering the value of bytesRead would always be either 0 or 1 because
it was being assigned the result of the comparison instead of the return
value of read().
[Fixes #681 ]
2012-08-09 18:18:45 -06:00
f2b0ec8a3c
Return the PID as handle in posix
...
Fixes some TypeError exceptions when attempting most operations on
spawned processes, e.g.:
p = client.sys.process.execute("/bin/sh", nil, "Channelized"=>true)
p.close
# raises TypeError: can't convert nil into Integer
[FIXRM #7005 ]
2012-08-08 15:23:00 -06:00
e7864ad96c
Squashed commit of the following:
...
commit df6eef12147a294d7f198d057c27e87ed4ffbeb3
Author: MM <gaspmat@gmail.com >
Date: Tue Mar 20 18:01:50 2012 +0100
ps support for linux meterpreter
[Closes #250 ]
2012-05-15 16:57:17 -06:00
82e64ff406
Fix execution with spaces in args by using sh -c
...
In posix, a command like "echo 'foo bar'" would previously get parsed
out into arguments for execve like [ "echo", "'foo", "bar'" ] which
obviously isn't what you want. After this commit, it sticks the whole
thing in an arg to sh so the execve call ends up looking like
execve("/bin/sh", ["sh", "-c", "echo 'foo bar'"], [/* 26 vars */]) = 0
This is still a little less than ideal because shell escapes become a
problem; fortunately, that's easy to deal with on the client side as
long as module developers take it into account.
2012-05-13 14:55:57 -06:00
5e6fe11920
Partial implementation of in memory execution and update binary
...
git-svn-id: file:///home/svn/framework3/trunk@10839 4d416f70-5f16-0410-b530-b9f4589650da
2010-10-28 12:44:39 +00:00
4178cfdeca
commit some fixes from philip, see #2418
...
git-svn-id: file:///home/svn/framework3/trunk@10275 4d416f70-5f16-0410-b530-b9f4589650da
2010-09-09 15:51:30 +00:00
466153da06
commit some fixes from philip, see #2418
...
git-svn-id: file:///home/svn/framework3/trunk@10272 4d416f70-5f16-0410-b530-b9f4589650da
2010-09-09 15:39:28 +00:00
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
7a0c223fe6
Partial solution for #1448 . Fall back to CreateProcessWithTokenW when CreateProcessAsUser fails with ERROR_PRIVILEGE_NOT_HELD. While only available on 2003 and above this works on my server 2008 test case which was failing before.
...
git-svn-id: file:///home/svn/framework3/trunk@9781 4d416f70-5f16-0410-b530-b9f4589650da
2010-07-11 18:36:57 +00:00
c9eea33667
Bug fix for a misplaced & in call to DestroyEnvironmentBlock() during process_execute(), was causing a hang on Vista and an Access Violation on server 2008.
...
git-svn-id: file:///home/svn/framework3/trunk@9779 4d416f70-5f16-0410-b530-b9f4589650da
2010-07-11 16:37:50 +00:00
4ccc02d329
This *should* fix all cases where execute -t would fail to use an impersonated token
...
git-svn-id: file:///home/svn/framework3/trunk@9754 4d416f70-5f16-0410-b530-b9f4589650da
2010-07-09 19:32:51 +00:00
7c45fd988e
Clean up some of the token impersonation code around process execution
...
git-svn-id: file:///home/svn/framework3/trunk@9751 4d416f70-5f16-0410-b530-b9f4589650da
2010-07-09 18:54:20 +00:00
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
6f25e39b27
Commit all the code for the new 'screenshot' command in the stdapi extension. Screenshot will now work on NT4 - 7 on both x86 and x64 and on newer versions of Windows we can break out of session isolation (e.g. session 0 isolation for services) to screenshot the active desktop (or logon screen) without the need to migrate meterpreter. The majority of the migration code-injection stuff has been refactored out into base_inject.c so it can be shared with the new ps_inject() functionality to inject dlls. The 'ps' command now reports what session each process belongs to (if this is too verbose we can remove it or add a -v verbose switch to the ps command). The 'execute' command can now take a -s switch in order to create a process in a users session under the users privs (assuming you have the privs to do this).
...
git-svn-id: file:///home/svn/framework3/trunk@8787 4d416f70-5f16-0410-b530-b9f4589650da
2010-03-11 17:09:55 +00:00
6c4759f083
fix ps so an x64 process's path is returned correctly when ps is run from a wow64 meterpeter.
...
git-svn-id: file:///home/svn/framework3/trunk@8322 4d416f70-5f16-0410-b530-b9f4589650da
2010-01-29 12:00:45 +00:00
ee34102435
First cut for improved process listing. Now works well on NT4 and up. One issue with getting the path for x64 processes on an x86 meterpreter.
...
git-svn-id: file:///home/svn/framework3/trunk@8156 4d416f70-5f16-0410-b530-b9f4589650da
2010-01-19 10:40:02 +00:00
fc341ada59
Adds the process username to the ps output (when possible).
...
git-svn-id: file:///home/svn/framework3/trunk@8056 4d416f70-5f16-0410-b530-b9f4589650da
2010-01-02 03:41:21 +00:00
3c9eb16fe0
Replace the use of Critical Sections for locking with Mutex's (thread.c). This appears to resolve a deadlock issue with OpenSSL on some Windows systems. This commit resolves a bug in interactive processes where an interactive waiter thread will chew cpu due to a tight loop introduced by anonymous pipes not blocking (process.c). Dynamic lock creation for OpenSSL has been re-enabled should a future version of OpenSSL require it, AFAIK the current version used, v0.8.9, does not use dynamic lock creation (server_setup.c). Channels have been given locks to help synchronize concurrent access to a single channel.
...
git-svn-id: file:///home/svn/framework3/trunk@7732 4d416f70-5f16-0410-b530-b9f4589650da
2009-12-07 13:04:41 +00:00
0a5c87b678
Initial commit of the multi-threaded meterpreter.
...
git-svn-id: file:///home/svn/framework3/trunk@7698 4d416f70-5f16-0410-b530-b9f4589650da
2009-12-04 17:37:21 +00:00
96bf84163d
Commit the source code for the cross compilable reflective dll injection module. Some minor modifications to the stdapi extension were also required. All the projects (.vcproj) now have an x64 debug/release target as well as an x86 counterpart.
...
git-svn-id: file:///home/svn/framework3/trunk@7000 4d416f70-5f16-0410-b530-b9f4589650da
2009-09-04 01:53:58 +00:00
fa51ea5d15
Swapping in the latest patched copy of Meterpreter. See #275
...
git-svn-id: file:///home/svn/framework3/trunk@6357 4d416f70-5f16-0410-b530-b9f4589650da
2009-03-22 18:56:28 +00:00
a3fa8e90cb
Swapping out old Meterpreter code for Stephen Fewer's latest patched copy
...
git-svn-id: file:///home/svn/framework3/trunk@6356 4d416f70-5f16-0410-b530-b9f4589650da
2009-03-22 18:55:36 +00:00
2f4b20f8fe
merge incognito updates from Luke Jennings
...
git-svn-id: file:///home/svn/framework3/trunk@5499 4d416f70-5f16-0410-b530-b9f4589650da
2008-04-28 16:57:49 +00:00
7c519d3b2f
some meterp bugfixes found while creating a blog post :)
...
git-svn-id: file:///home/svn/incoming/trunk@3592 4d416f70-5f16-0410-b530-b9f4589650da
2006-04-07 03:02:37 +00:00
f4407c8918
in-mem inject fixes
...
git-svn-id: file:///home/svn/incoming/trunk@2819 4d416f70-5f16-0410-b530-b9f4589650da
2005-07-22 04:29:01 +00:00
02596e3546
fixed a bug, removed \r
...
git-svn-id: file:///home/svn/incoming/trunk@2814 4d416f70-5f16-0410-b530-b9f4589650da
2005-07-22 04:06:52 +00:00
c1e62905dc
removed extra stuff
...
git-svn-id: file:///home/svn/incoming/trunk@2808 4d416f70-5f16-0410-b530-b9f4589650da
2005-07-22 03:37:32 +00:00
ef3185398a
workspac'in it
...
git-svn-id: file:///home/svn/incoming/trunk@2807 4d416f70-5f16-0410-b530-b9f4589650da
2005-07-22 03:34:52 +00:00
da416536de
hopefully support for in process exe without clobbering anything with the merge
...
git-svn-id: file:///home/svn/incoming/trunk@2805 4d416f70-5f16-0410-b530-b9f4589650da
2005-07-22 03:23:48 +00:00
736528e546
import of meterp shit
...
git-svn-id: file:///home/svn/incoming/trunk@2516 4d416f70-5f16-0410-b530-b9f4589650da
2005-05-24 19:08:32 +00:00