Commit graph

53 commits

Author SHA1 Message Date
DKingCN
b251f10f01 unvaliable parameters commented
XP_MODE
SUPPLIED_BINARY
2016-01-12 22:24:13 +08:00
byt3bl33d3r
589e45b64f Fixed IPtables for APF Mode
Added a new banner
2015-09-14 20:25:24 +02:00
byt3bl33d3r
16b774248d updated bdfactory to latest commit 2015-09-06 13:52:32 +02:00
byt3bl33d3r
db5b65c463 trying some new tests out 2015-08-23 20:11:27 +02:00
byt3bl33d3r
24070afbd0 Removed beefautoplugin since it's pretty useless now with BeEF's ARE engine
removed check to enable IP forwarding using sysctl
2015-08-23 01:33:16 +02:00
byt3bl33d3r
885ecc3a4e replaced watchdog with pyinotify 2015-08-22 16:51:50 +02:00
byt3bl33d3r
d535c8796c fixes #158 2015-08-12 17:51:55 +02:00
byt3bl33d3r
1a5c7c03b7 Updated Filepwn plugin to the latest BDFactory & BDFProxy version 2015-08-12 16:30:34 +02:00
byt3bl33d3r
1a50f000c1 added an option to parse creds from a pcap using NetCreds, removed mitmflib as a dep (was causing problems for travis) 2015-08-11 17:11:44 +02:00
byt3bl33d3r
772ef9ab39 responder code is now up to date with the lastest version
logging is going to have to get cleaned up, but that's a minor issue
re-implemented the function to add endpoints to the http server
added an option to manually specify the gateways mac in the Spoofer plugin
2015-08-05 13:31:04 +02:00
byt3bl33d3r
fa59ca466b third pass:
- All servers back online
- modified logging
2015-08-03 05:34:46 +02:00
byt3bl33d3r
fd9b79c617 first pass at refactoring:
directory structure has been simplified by grouping all the poisoners and servers in one folder
impacket smb server has been replaced with responder's
flask http server has beem replaced with responder's
modified config file to support new changes
2015-08-02 21:15:10 +02:00
byt3bl33d3r
8270f337ad DHCP poisoner now takes into account the requested IP of clients WPAD server address
Specifying interface is now optional
2015-07-30 16:56:11 +02:00
byt3bl33d3r
87bca5e7dd Added new beefapi.py , modified beefautorun plugin: now handles hook injection + ARE autoloading 2015-07-30 00:54:59 +02:00
byt3bl33d3r
f0fce41c88 App-Cache poison and BrowserSniper plugins have been refactored, added supported python version tags in README 2015-07-26 14:03:56 +02:00
byt3bl33d3r
ba14ed8687 This commit refactors ARP and DHCP poisoning:
DHCP poisoning now works on Windows, additionaly it's been optimized for performance improvements
ARP poisoning has been optimized with and internal cache and some algo improvements

cve-details-parser.py has been added to the utils/ directory to help adding exploits to the BrowserSniper config file

I'm currently working on adding to the filepwn plugin all of the missing options that bdfproxy stand-alone has
2015-07-25 02:49:41 +02:00
byt3bl33d3r
5e2f30fb89 This is a vewwwy big commit
- The inject plugin now uses beautifulsoup4 to actually parse HTML and add content to it as supposed to using regexes
- The logging of the whole framework has been compleatly overhauled
- plugindetect.js now includes os.js from the metasploit framework for os and browser detection, let's us fingerprint hosts even if UA is lying!
- New plugin HTA Drive-by has been added, prompts the user for a plugin update and makes them download an hta app which contains a powershell payload
- the API of the plugins has been simplified
- Improvements and error handling to user-agent parsing
- Some misc bugfixes
2015-07-18 20:14:07 +02:00
byt3bl33d3r
96d1078d42 Merge branch 'webserver' 2015-06-08 04:30:11 +02:00
byt3bl33d3r
316246e3cc Re-Wrote Beef-api, refactored the beefAutorun plugin as per #113, this also should address any problems left over from #106 2015-06-08 04:13:55 +02:00
byt3bl33d3r
4de7d3e67e fixed a wrong var 2015-06-02 18:53:30 +02:00
byt3bl33d3r
14580f1589 second implementation of the HTTP server, you can now define shares for the SMB server in the config file, added an option to switch between the normal SMB server and the Karma version.
removed some useless code (left over from the responder plugin), serverResponseStatus hook now returns a dict (tuple was causing errors)
2015-05-30 15:00:41 +02:00
byt3bl33d3r
b9371f7cdc Screenshotter plugin now live!
Added an interval option to specify the interval at which to take the sceenshots

Ferret-NG plugin is pretty much set also, was a bit of a dummy and didn't take into account that we would have sessions from multiple clients (duh!) , so I added a section in the config file to specify the client to hijack the sessions from , also added an option to load the cookies from a log file!
2015-05-16 21:22:11 +02:00
byt3bl33d3r
ff39a302f9 This commit is just to push the changes so far to github , still have to tidy things up here and there and fix some bugs (also I really hate javascript)
JavaPwn plugin has been renamed to BrowserSniper (cause it now supports java, flash and browser exploits), it's been completly re-written along with it's config file section
Addition of the screenshotter plugin, currently there is a bug when decoding the base64 encoded png files (a very wierd one) , but other than that it works (did i mention i hate js?)
Jskeylogger's javscript now works on every browser except FF mobile (have no clue what's with that) p.s. did i mention i hate JS?
Plugins that deal with javascript now read it from a file as supposed to having it built in (encoding issues) fu javascript
User agent parsing is now built in and handled by core/httpagentparser.py, this because the user-agent library is a pain to install on some distros , also removes 3-4 deps which is a plus

also fuck javascript
2015-05-16 00:43:56 +02:00
byt3bl33d3r
79025dc77e Initial working PoC for the Ferret-NG plugin that will replace the SessionHijacker plugin: it will capture cookies and trasparently feed them to the proxy it starts up on port 10010 (by default), this way we just have to connect to the proxy, browse to the same website as the victim and we will automatically hijack their session! \o/
The way MITMf hooks SSLstrip's functions has been modified to improve plugin code readability, additionally corrected some useless function hooks that were placed in early framework realeases and never removed.

Replace plugin has been given it's own section in the config file

currently the BeedAutorun and Javapwn plugins have to be cleaned up...

BrowserProfile plugin's Pinlady code has been updated to the latest version (v0.9.0) and will now detect Flash player's version

Javapwn plugin will be renamed to BrowserPwn and will support Flash exploits too , as supposed to only Java exploits

Since we now have a built in SMB server, removed options to specify a host in the SMBauth plugin

Tweaked the output of some plugins
2015-05-11 03:13:45 +02:00
byt3bl33d3r
d3e509d4cd Added error handling to DNS and SMB servers when port is in use
Added check to see if a plugins options were called without loading the actual plugin
2015-05-06 23:07:59 +02:00
byt3bl33d3r
70ec5a2bbc All plugins are now modified to support dynamic config file changes
Responder functionality fully restored
2015-05-05 19:04:01 +02:00
byt3bl33d3r
5d07551a50 WPAD Poisoner back online, removed options in config file and rellative code for choosing which DNS server to use. (there really was not point in keeping it)
the --basic and --force options and the EXE serving in the Responder plugin have been removed, until I can find a better way of implementing them.
Modified and re-added the JS-keylogger and SMBauth plugins
2015-05-04 23:13:21 +02:00
byt3bl33d3r
9712eed4a3 This is 1/2 of the work done... lot's of cool stuff!
I've re-written a decent amount of the framework to support dynamic config file updates, revamped the ARP Spoofing 'engine' and changed the way MITMf integrates Responder and Netcreds.

- Net-creds is now started by default and no longer a plugin.. It's all about getting those creds after all.
- Integrated the Subterfuge Framework's ARPWatch script, it will enable itself when spoofing the whole subnet (also squashed bugs in the original ARP spoofing code)
- The spoof plugin now supports specifying a range of targets (e.g. --target 10.10.10.1-15) and multiple targets (e.g. --target 10.10.10.1,10.10.10.2)
- An SMB Server is now started by default, MITMf now uses Impacket's SMBserver as supposed to the one built into Responder, mainly for 2 reasons:
  1) Impacket is moving towards SMB2 support and is actively developed
  2) Impacket's SMB server is fully functional as supposed to Responder's (will be adding a section for it in the config file)
  3) Responder's SMB server was unrealiable when used through MITMf (After spending a day trying to figure out why, I just gave up and yanked it out)

- Responder's code has been broken down into single importable classes (way easier to manage and read, ugh!)
- Started adding dynamic config support to Responder's code and changed the logging messages to be a bit more readable.
- POST data captured through the proxy will now only be logged and printed to STDOUT when it's decodable to UTF-8 (this prevents logging encrypted data which is no use)
- Responder and the Beefapi script are no longer submodules (they seem to be a pain to package, so i removed them to help a brother out)
- Some plugins are missing because I'm currently re-writing them, will be added later
- Main plugin class now inharates from the ConfigWatcher class, this way plugins will support dynamic configs natively! \o/
2015-04-27 18:33:55 +02:00
byt3bl33d3r
663f38e732 initial dynamic config support
added configwatcher.py
2015-04-19 23:33:44 +02:00
byt3bl33d3r
5e9158ce0a Updated FilePwn plugin with latest BDFProxy version
Removed exception handling in mitmf.py since I actually want a traceback
2015-04-14 16:16:29 +02:00
byt3bl33d3r
5b0a15ea56 fixed logging in responder and some plugins 2015-04-12 19:00:50 +02:00
byt3bl33d3r
9a1c3b0ec4 - Whole framework now requires root privs
- Added an internal DNS server
- Proxy can now use our custom DNS server (DNSChef) or Twisted's
- Removed priv check from plugins
- DNS spoofing fully re-written
- Iptables rules are now checked and set between plugins
2015-04-12 01:49:43 +02:00
byt3bl33d3r
c8732d60eb changed tree output loading method 2015-04-11 15:54:51 +02:00
byt3bl33d3r
d4c6b7d5b6 - Logging is now seperate for each module
- added DNSChef submodule
- Code style improvements
- modified config file name , and options
- Changed requirements and README
2015-04-11 00:38:48 +02:00
byt3bl33d3r
eb7e797ded Merge branch 'master' of github.com:byt3bl33d3r/MITMf into v0.9.6 2015-04-10 15:57:17 +02:00
byt3bl33d3r
3c6a9fe89d Revert "fixed Responder plugin output"
This reverts commit cd9a16de55.

Reverting since this commit caused a lot of stuff to not work in the plugin (??)
2015-03-30 18:13:21 +02:00
byt3bl33d3r
9086525c90 Version bump
Minor code optimizations
2015-03-30 18:04:24 +02:00
byt3bl33d3r
0c57f39671 -Fixed bug in App Cache Poison plugin, missing function call resulted in some websites not loading
-Added output to the AppCachePoison plugin
2015-03-15 16:42:17 +01:00
byt3bl33d3r
2200edcf5e - Cleaned up the SSLstrip+ code (somewhat)
- ServerConnection now properly detects and removes HSTS headers
- Fixed debug output
2015-03-13 15:00:29 +01:00
byt3bl33d3r
cd9a16de55 fixed Responder plugin output 2015-03-11 22:21:34 +01:00
byt3bl33d3r
39e44d0e6e changed default patch_type to append for filepwn plugin 2015-02-27 22:16:58 +01:00
byt3bl33d3r
5100458e70 - Fixed error in filepwn plugin config file 2014-12-27 00:20:18 +01:00
byt3bl33d3r
846f85426c - All config files now consolidated into a single file
- Added 'args' option in config file
- HSTS bypass is now a plugin (SSLstrip+)
- SMBAuth now defaults to specified interface IP if --host is not passed
- Modified plugins for new config support
- Changed appoison and responder plugin for ConfigObj library support
- Minor visual argparse changes
- Slapped santa on the head with a trout
- Gave rudolf a new nose
2014-12-26 13:36:55 +01:00
byt3bl33d3r
f359ee7cdd - Revamped Javapwn plugin with new detection and exploitation algo
- Added whitelist/blacklist ip options to the inject plugin
- Revamped Beefautorun plugin, with new injection algo
- Metasploit and BeEF options are now a config file (mitmf.cfg)
2014-12-21 17:33:56 +01:00
byt3bl33d3r
4ae50e6e0c - Updated FilePwn plugin with BDFactory v0.2 + license
- Added partial OS and Browser detection through clients user-agents
- Improved jskeylogger plugin (now detects input field names)
- Fixed bug where jskeylogger sent invalid charCodes on Android devices
- Cleaned search engine query parsing code in ServerConnection.py
- Updated setup.sh with new libs
2014-12-19 02:34:33 +01:00
byt3bl33d3r
a4e8869fc6 removed airpwn config files 2014-12-16 14:59:01 +01:00
byt3bl33d3r
08b9fd4d06 fixed bad paths in responder config 2014-12-16 02:18:04 +01:00
byt3bl33d3r
0defaf7b86 revamped appoison plugin and fixed some bugs 2014-12-15 17:00:05 +01:00
byt3bl33d3r
d01398d8a8 WPAD now integrated 2014-12-13 21:30:55 +01:00
byt3bl33d3r
ebf6af1da9 added mallory option for session hijacking 2014-12-09 21:43:15 +01:00