TinyDropdown Menu Fastubuntu Blog: settembre 2012

mercoledì 26 settembre 2012

Attaccare i server (parte 2)

BackTrack, pensata proprio per il
penetration testing (così si dice quando
si attacca il proprio computer a scopo
di verifica) come strumento d’attacco.
Una macchina virtuale chiamata
Metasploitable, deliberatamente
attaccabile, sarà la nostra vittima.
Metasploit Framework è un sistema che
contiene vari tool per individuare exploit
e backdoor, sistemi di scansione e altro
ancora. È un tool da riga di comando,
ma ve ne mostreremo un’interfaccia
grafica. Sulla macchina BackTrack
eseguite Applications D BackTrack
D Exploitation Tools D Network
D Metasploit Framework D
Armitage. Nella nuova finestra premete
Start MSF e aspettate che si apra
la finestra principale. Andate in Host
D Nmap Scan e inserite il range IP
192.168.56.0/24 (se avete cambiato
le impostazioni del server DHCP
di VirtualBox usate l’indirizzo corretto)
e attendete che l’applicazione vi dica di
aver finito la scansione. Verranno trovati
quattro host: uno per la macchina host,
uno per il server DHCP, una per
la macchina BackTrack e uno per
il server Metasploitable. Per trovare
cosa attaccare su questi host andate
in Attacks D Find Attacks D By Port
e aspettate il termine dell’analisi.
La parte più complessa nell’attacco
a un server è sapere quali exploit usare.
In questo caso sappiamo che la vittima
ha in esecuzione Tikiwiki, che ha un
exploit PHP che ci consente di eseguire
del codice. Fate click destro sull’host
Metasploitable (se non siete sicuri di
quale sia, aprite un terminale e digitate
ifconfig. Questo comando vi fornirà
l’indirizzo IP della macchina corrente.
La macchina host avrà IP 192.168.56.1,
il server DHCP avrà 192.168.56.100
e il server Metasploitable è quello che
rimane), e andate in Attack D webapp
D Tikiwiki_graph_formula_exec.
Assicuratevi che LHOST sia impostato
con l’IP della macchina BackTrack
e premete launch. Dopo che l’exploit
sarà stato eseguito, l’icona dell’host
dovrebbe essere rossa per mostrare che
il programma ha avuto successo. Fate
ancora click destro sull’host e andate
in Shell D Interact. Questo aprirà
un tab, una shell minimale in esecuzione
sulla macchina vittima. Per verificarlo,
digitate whoami ed esso vi farà sapere
che avete preso il possesso dell’utente
www-data. Questa shell è limitata,
non potete neanche usare cd per
muovervi in una directory differente,
ma è possibile recuperare alcune
informazioni. Ad esempio digitando
ls /home
vedrete l’elenco degli utenti del sistema.
Metasploitable è costruito su Ubuntu
8.04 e c’era un problema con
il generatore di chiavi SSH nelle versioni
7.04-8.04 di Ubuntu. Questo
generatore creava le chiavi partendo
da un numero casuale, ma questo
numero usava l’ID del processo come
seme. Visto che i numeri dei processi
è limitato a 37.768, il numero di chiavi
differenti generate era questo.
Con un numero così basso è facile
forzare la chiave. Prima di iniziare
questo attacco, dovete scovare
con quale chiave pubblica il sistema
consente l’accesso. Tornate nella
shell di Armitage e scrivete
cat /root/.ssh/authorized_keys
Vedrete in output una chiave pubblica
RSA a 2048 bit, autorizzata a effettuare
il login all’account root. Se si riuscisse a
trovare la corrispondente chiave privata,
si potrebbe entrare via SSH nell’account
root senza conoscerne la password.
Di norma ci vorrebbe troppo tempo
per individuare questa chiave privata,
ma visto che il generatore in uso ha un
limite, con un po’ di tempo si riesce
a sfruttare questa vulnerabilità. Tutti
i possibili abbinamenti di chiave sono
disponibili su www.digitaloffense.net/
tools/debian-openssl. Usate il link
intitolato SSH 2048-bit RSA Keys X86
(48.0M). Decomprimete il file aprendo
un terminale e scrivendo
tar xjf debian
debian_ssh_rsa_2048_x86.tar.bz2
Poi spostatevi nella nuova directory con
cd rsa/2048
Questa directory ora contiene tutte
le coppie di chiavi generate
dal generatore Debian fallato.
Per trovare quella giusta digitate
grep -li AAAAB3NzaC1yc2EAAAABIw
AAAQEApmGJFZNL0ibMNAL *.pub
dove la strana stringa è la prima sezione
della chiave pubblica trovata nel server.
Troverete un file chiave:
57c3115d77c5639o332dc5c4
9978627a-5429.pub
Ora potete fare il login sul server
con il comando
ssh -i ~/rsa/2048/
57c3115d77c5639o332dc5c49978
627a-5429 root@192.168.56.102
dove 192.168.56.102 è l’IP del server
Metasploitable. Ora avete accesso
root al server e potete fare tutti
i cambiamenti che volete, oppure
copiare i dati.

Proteggetevi
Ridurre il numero di servizi attivi
sul server ai soli necessari è un modo
per incrementare il livello di sicurezza.
Ad esempio, se usate solo HTTP, SSH
e SFTP, e non Telnet e FTP, ridurrete
del 40%
il numero
di potenziali
servizi
exploitabili,
senza
togliere
alcun
servizio agli utenti. Per eseguire
l’attacco abbiamo usato un bug noto
di un software non aggiornato,
di conseguenza un altro modo
per proteggervi è installare sempre
le patch di sicurezza. Oltre a questo
potete esaminare i computer alla ricerca
di buchi di sicurezza noti usando
degli scanner di vulnerabilità come
Nessus (www.nessus.org). Si tratta
di un software commerciale,
ma è gratuito per l’uso domestico.
Una volta installato, dovete registrarvi
sul suo sito Web. Vi verrà inviata via
mail una
chiave
assieme alle
istruzioni
su come
attivare
il programma
e aggiungere
un utente. Fatto questo potete accedere
ad esso tramite l’interfaccia Web
all’indirizzo http://localhost:8834.
Le patch di sicurezza e gli scanner vi
proteggeranno dalle vulnerabilità note.
Gli attacchi zero-day, invece, vengono
scoperti prima che la comunità possa
scoprirli e risolvere il bug associato.
Contro questo tipo di attacchi è molto
più difficile difendersi. È possibile
ricorrere ad alcuni software che
tengono sotto controllo il funzionamento
del computer, segnalando eventuali
attività sospette. Un Network Intrusion
Prevention System (NIPS), come Snort,
controllerà l’attività di rete portando
in evidenza connessioni inusuali.
Lo abbiamo messo alla prova eseguendo
l’attacco precedente su Security Onion
(una distro che ha Snort attivo
di default) ed esso ha registrato 278
eventi di sicurezza. Con un sistema
di questo tipo, e dando un’occhiata agli
eventi non usuali, è possibile identificare
potenziali attacchi prima che questi
abbiano successo. Uno dei due attacchi
mostrati è avvenuto contro una Web
App (TikiWiki) e questo tipo di software
è un target molto popolare tra i cracker.
Essi hanno spesso diversi buchi
di sicurezza, molti dei quali a causa
di una scarsa validazione dell’input,
che consentono agli attaccanti
di eseguire codice arbitrario. Con
le Web App è ancora più importante
tenere aggiornato il software, visto
che è facile perpetrare un attacco
una volta che la vulnerabilità è nota.