martedì 21 settembre 2010

Script Php-Mysql

Voglio condividere con voi alcuni scripts php creati da me che interagiscono con il database mysql. Il primo script è un form di inserimendo dati da parte di utenti che visitano il nostro sito, come quelli che si vedono per la sezione contatti, invece il secondo preleva tutti i dati della tabella del nostro database, esempio possiamo prelevare tutti i commenti degli utenti del nostro blog con cms wordpress.

Vi linko il primo script che ho chiamato Database Form (dbform.php)

dbform.php

Ovviamente questo script va accompagnato con una pagina dove l'utente può inserire i propri dati che io ho chiamato form.php

form.php

Il link del secondo script selectdb.php

selectdb.php

Siete liberi di usare e modificare gli script e se vedete qualche errore nel codice potete segnalarlo, spero che questi semplicissimi scripts possano essere utili a qualcuno! ;)

sabato 18 settembre 2010

Vulnerabilità Router Telsey-Fastweb



Come per i router alice e fastweb-pirelli anche per il telsey è stato trovato l'algoritmo per la generazione delle key wpa di default, anzi più che altro è stato trovato dentro il firmware direttamente il key_gen, l'eseguibile per generare le key wpa. Grazie di nuovo allo studio effettuato dal team di wifiresearchers è stato possibile risalire all'algoritmo grazie al reverse del key_gen, per maggiori informazioni vi consiglio di leggere la loro full disclosure, se invece volete sapere come far eseguire il key-gen su linux vi consiglio di leggere l'articolo di audiocast.it, che spiega come estrarre il key-gen dal firmware ed emulare il key-gen compilato per CPU VIPER MIPS32 su linux. Ah vi ricordo che entrare in reti wifi altrui è reato, questo articolo è solo per scopo didattico e per sensibilizzare gli utenti fastweb a cambiare la loro wpa di default.






BackBox Linux


BackBox Linux è una distribuzione italiana per penetration test basata su Ubuntu Lucid 10.04 LTS che fa della semplicità e leggerezza il suo punto di forza,  dovute alla configurazione di un ambiente desktop minimale.
Inoltre, backbox ha dei propri repository su Launchpad ed è rilasciata sia per processori a 32 che 64bit , la distribuzione si configura come un utile strumento per il Penetration Testing. BackBox Linux è un progetto di OpenSoluzioni. BackBox è stata sviluppata partendo da una installazione minimale di Ubuntu Lucid e apportando ulteriori modifiche. Sotto il punto di vista grafico si è cercato di rendere la distribuzione piacevole alla vista, preferendo Xfce a KDE. Concludendo, il progetto si rivolge a tutti coloro che operano nel mondo dell’ICT Security o che semplicemente sono appassionati d’informatica.




venerdì 10 settembre 2010

Reverse Engineering su sistemi Unix e Linux

Prendendo spunto da blacklight e darkjoker, vorrei parlarvi del reverse engineering di software o eseguibili su sistemi unix e linux. Per comprendere il reverse bisogna avere una minima conoscenza del C e dell'Assembly, per disassemblare un eseguibile sui sistemi unix/linux possiamo utilizzare gdb o objdump, passiamo alla pratica creiamo un programma in C che ci chiede di inserire la password corretta che abbiamo inserito nel codice, quindi dobbiamo tramite il reverse fargli riconoscere qualunque password che impostiamo modificando i registri jne effettuando l'eliminazione del salto condizionato direttamente sulla stringa che stampa al video "password corretta", per maggiori informazioni leggete il pdf reverse di blacklight o i crackme di darkjoker. Scriviamo e compiliamo il nostro programma, code:


#include   stdio.h
#include   string.h
main() {
char pwd[] = "prova";
char str[30];
printf ("Inserire la password: ");
scanf ("%s",str);
if (!strcmp(str,pwd))
printf ("Password corretta\n");
else
printf ("Password errata\n");
}   

compiliamo con gcc:

gcc vuln.c -o vuln

eseguiamo il programma:

GiacomoAspire5310:reverse giacomo$ ./vuln
Inserire la password: ciccio
Password errata
GiacomoAspire5310:reverse giacomo$ ./vuln
Inserire la password: prova
Password corretta
 
Per disassemblare il programma io ho utilizzato solo objdump, invece blacklight nella sua guida usa gdb, quello che ci interessa è di analizzare solo la main del programma per potere modificare la jne impostando al suo posto dei nop (0x90), diamo il comando:

GiacomoAspire5310:reverse giacomo$ objdump -D vuln | grep main
    1f0d:    e8 2c 00 00 00           call   1f3e <_main>
00001f3e <_main>:
    1f45:    e8 00 00 00 00           call   1f4a <_main+0xc>
    1f95:    75 10                    jne    1fa7 <_main+0x69>
    1fa5:    eb 0e                    jmp    1fb5 <_main+0x77>
    2016:    e0 8f                    loopne 1fa7 <_main+0x69>
    201a:    e0 8f                    loopne 1fab <_main+0x6d>

Adesso che abbiamo visto la stringa esadecimale della jne, apriamo il programma vuln con un editor esadecimale e andiamo a sostituire 75 10 con 90 90 (che sono i nop) salviamo e avviamo il nostro eseguibile:

GiacomoAspire5310:reverse giacomo$ ./vuln
Inserire la password: ciccio
Password corretta

come vedete adesso possiamo inserire qualsiasi password! Il reverse viene utilizzato per il crack di giochi,software o per modificare il comportamento di un eseguibile, ovviamente non è sempre cosi facile crackare un programma, questo è un semplice esempio che spiega le basi di come fare, per maggiori informazione o per fare un pò di pratica vi consiglio di dare un'occhiata alla sezione di CrackMe di darkjoker. :)