$ nogotofail-mitm -h
usage: nogotofail-mitm [-h] [-c FILE] [-v] [-p PROBABILITY] [-d] [-a]
[-l LOGFILE] [-e EVENTLOGFILE] [-t TRAFFICFILE] [-q]
[--port PORT] [-6] [-A ATTACK [ATTACK ...]]
[-D ATTACK [ATTACK ...]] [--serverssl PEMFILE] [-b]
[--mode MODE]
optional arguments:
-h, --help show this help message and exit
-c FILE, --config FILE
Configuration file
-v, --verbose verbose output
-p PROBABILITY, --probability PROBABILITY
probably of attacking a SSL connection
-d, --debug Print debug output
-a, --all MITM all clients
-l LOGFILE, --logfile LOGFILE
Log output file
-e EVENTLOGFILE, --eventlogfile EVENTLOGFILE
Event log output file
-t TRAFFICFILE, --trafficfile TRAFFICFILE
Traffic output file
-q, --quiet Quiet output. Only prints MITM success messages
--port PORT Port to bind the connection to
-6, --ipv6 Route IPv6 traffic. Requires support for ip6tables NAT redirect when in redirect mode (iptables > 1.4.17)
-A ATTACK [ATTACK ...], --attacks ATTACK [ATTACK ...]
Connection attacks to run. Supported attacks are droptls, selfsigned, clientheartbleed, anonserver, dropssl, invalidhostname, earlyccs
-D ATTACK [ATTACK ...], --data ATTACK [ATTACK ...]
Data attacks to run. Supported attacks are imapstarttlsstrip, httpauthdetection, imagereplace, customrequest, blockhttp, disablecdcpencryption, sslstrip, httpdetection, xmppstarttlsstrip, rawlogger, androidwebviewjsrce, xmppauthdetection, smtpstarttlsstrip, smtpauthdetection, imapauthdetection
--serverssl PEMFILE Run the app blame server with SSL using PEMFILE
-b, --block Block connections with unknown blame info
--mode MODE Traffic capture mode. Options are redirect, tproxy, socks
Supported modes:
redirect - Use Iptables REDIRECT to route traffic. Ipv6 support is limited in
this mode.
tproxy - Use iptables TPROXY/mark to route traffic
socks - Listen as a SOCKS server to route traffic
Supported attacks:
droptls - Drops TLS connections but lets SSLv3 through
selfsigned - Attempts to MiTM using a self-signed certificate for the requested
domain.
clientheartbleed - Sends a heartbleed message to the client during the SSL
handshake
anonserver - Attempts to MiTM connections that accept anonymous/unauthenticated
server.
dropssl - Drops SSL connections
invalidhostname - Attempts to MiTM using a valid certificate for another domain.
NOTE: requires ./trusted-cert.pem have a valid cert and private key
earlyccs - Tests for OpenSSL early CCS vulnerability(CVE-2014-0224)
Supported data handlers:
imapstarttlsstrip - Suppress STARTTLS in IMAP
httpauthdetection - Detect authorization headers in HTTP requests
imagereplace - Replace responses with Content-Type of image/* with ./replace.png
customrequest - Detect client specified regexs in requests
blockhttp - Block HTTP traffic
disablecdcpencryption - Disable Chrome Data Compression Proxy encryption
sslstrip - Runs sslstrip on http traffic. Detects when sslstrip'd urls are
visited.
httpdetection - Detect plaintext HTTP requests and warn on them
xmppstarttlsstrip - Suppress STARTTLS in XMPP streams
rawlogger - Log raw traffic to the traffic log
androidwebviewjsrce - Detect Android Webview Javascript RCE
xmppauthdetection - Detect authentication credentials in XMPP traffic
smtpstarttlsstrip - Suppress STARTTLS in SMTP
smtpauthdetection - Detect authentication credentials in SMTP traffic
imapauthdetection - Detect authentication credentials in IMAP traffic
$ nogotofail-client-linux -h
usage: nogotofail-client-linux [-h] [-v] [-A [ATTACK [ATTACK ...]]]
[-D [ATTACK [ATTACK ...]]] [-p PROBABILITY]
[-q] [-S] [-l] [-c CONFIG] [-I ID] [-P ID] [-w]
host port
positional arguments:
host Host running the blame server to connect to
port Port the blame server is running on
optional arguments:
-h, --help show this help message and exit
-v, --verbose verbose output
-A [ATTACK [ATTACK ...]], --attacks [ATTACK [ATTACK ...]]
Connection attacks to run.
-D [ATTACK [ATTACK ...]], --data [ATTACK [ATTACK ...]]
Data attacks to run.
-p PROBABILITY, --probability PROBABILITY
Probability to attack connections
-q, --quit Quit after handshake
-S, --nossl Disable SSL handshake with the blame server
-l, --list List supported attacks and set attacks
-c CONFIG, --config CONFIG
Pyblame config file location(Default to .pyblame.conf)
-I ID, --device ID Use ID as the device id
-P ID, --platform ID Use ID as the platform id
-w, --write Update configuration file's trusted server and device
id