lunedì 30 luglio 2012

Mario Ciccarelli recommends SugarSync for you

SugarSync
Mario would like to give you a 5GB FREE SugarSync account.
Mario uses SugarSync to backup, access, and share files from anywhere.
Sign up today with SugarSync using the button below, and both you and Mario will get an additional 500 MB of storage.
Get our app: iPhone Android Other
Follow us on:
To stop receiving invites from SugarSync, click here.

mercoledì 31 agosto 2011

Rendiamo esposta una vittima

Dopo aver configurato e tirato su le macchine virtuali del penetration
lab virtuale ci siamo preoccupati di rendere disponibili dall'esterno
alcune vittime. Lo so che normalmente è sconsigliato rendere
accessibili, dall'esterno ed a chiunque, tali macchine ma alla fine
qual'è il pericolo? Le macchine sono confinate in una DMZ che non puó
comunicare con la nostra LAN interna e seppure venissero compromesse,
non c'è alcun dato sensibile da proteggere. Poi è comodo e sicuramente
più realistico condurre dei pentest dall'esterno cosí come si farebbe
in un "caso reale".
Il nostro firewall è una appliance basata su PfSense, ve la consiglio.
È semplicissima da installare e configurare, puó girare su un sacco di
dispositivi ed è basata su FreeBSD che, da sempre, è sinonimo di
sicurezza e stabilità. Tra l'altro sta per essere rilasciata la
versione 2.0 che promette di offrire una serie di servizi da non far
rimpiangere i blasonati router Cisco da migliaia di €uro. È tutto
free, open source e con una community veramente disponibile e
professionale.
Diamo per scontato di avere il router up&running con una
configurazione base. Abbiamo quindi 3 interfacce : WAN, LAN e DMZ.
Chiaramente sono impostate delle regole (è tutto molto semplice
attraverso l'interfaccia grafica) che non permettono il traffico dalla
DMZ verso la LAN ma che invece permettono il traffico in ingresso ed
uscita tra le porte WAN e DMZ.
Abbiamo disponiblità di un ulteriore ip pubblico che vogliamo
assegnare ad una delle vittime, pur continuando ad averla all'interno
della DMZ. Quindi, ad esempio, l'indirizzo del server Windows 2003,
che chiameremo VSRV2K3, è 192.168.100.10 ed il nostro ip pubblico è ad
esempio 88.88.88.88 dovremo assegnare, sempre attraverso l'interfaccia
grafica di PfSense, un nuovo Virtual IP alla porta WAN. Ora bisogna
creare quello che si definisce un NAT 1:1 e cioè linkare l'indirizzo
pubblico 88.88.88.88 assegnato alla WAN, alla porta DMZ e quindi
all'indirizzo 192.168.100.10. Dopo aver fatto questo basta creare una
nuova regola sul firewall per permettere il traffico in ingresso dalla
WAN verso la DMZ (sia TCP che UDP che ICMP) ed il gioco è fatto: il
router girerà tutti i pacchetti verso 88.88.88.88 sull'indirizzo
192.168.100.10 e viceversa rendendo a tutti gli effetti la macchina
VSRV2K3 esposta completamente verso l'esterno.
Se qualche passaggio non è chiaro i commenti sono qui sotto :-)

Come creare il LAB

Prima di iniziare bisogna creare un LAB, cioè una serie di macchine che saranno usate come vittime dei nostri esperimenti. Chiaramente non è pensabile avere una serie di macchine fisiche: ci sono una serie di problematiche come, ad esempio, alimentazioni, collegamenti di rete, configurazioni, drivers, cazzi e mazzi. Ho optato quindi tirare su un LAB completamente virtuale.

Le soluzioni di virtualizzazione sono tante: VMWare Server, VMWare Workstation, VirtualBox, Parallels, VMWare ESXi, Xen, Linux KVM, e altri. Il problema è che quasi tutte queste soluzioni o si basano su un sistema operativo già esistente (che sarà quindi l'host), o sono a pagamento, oppure sono abbastanza pesanti, nel senso che richiedono un bel server sottostante.

Non avendo tante risorse a disposizione ma solo un misero assemblato Core2Duo con 4GB di Ram e 500GB come HDD ho optato per una soluzione molto simpatica, semplice e Open Source che ho conosciuto seguendo i podcast di HAK5 ed in particolare sto parlando di Proxmox.

La creazione di un server di virtualizzazione con Proxmox è di una semplicità disarmante: si masterizza l'immagine, si avvia quello che sarà il server con il cd appena creato, un paio di risposte da utOnto e via. Vi lascio al wiki di Proxmox se avete bisogno di guide e tutorial. Ripeto: per chiunque abbia anche una modestissima esperienza di come si installa un sistema Linux non avrà sicuramente alcun tipo di problema.
Attenzione: Proxmox è fatto per essere l'UNICO sistema operativo della macchina, quindi durante l'installazione cancellerà tutti i dati presenti sul disco destinato ad ospitarlo; niente doppie partizioni, niente doppi sistemi operativi ed altre robe del genere. Ricordatelo.

Una volta avviato, dalla sua interfaccia web potremo creare e gestire tutte macchine virtuali di cui abbiamo bisogno. Io ho tirato su un Windows Server 2003 (la ISO la recuperate dai soliti canali ) ed una macchina Linux con su la distro DVL. Per iniziare, penso, possono bastare.

Dimenticavo, Proxmox offre sia la possibilità di virtualizzare KVM che OpenVZ. Sempre dalla sua interfaccia è possibile addirittura scaricare container OpenVZ già pronti per l'uso.

Penso che queste semplici righe possano aver dato, almeno, una idea di base di come abbiamo creato il nostro poorman Penetration Testing Lab. =)