SQL Injection guadagnare l' accesso non autorizzato

« Older   Newer »
  Share  
view post Posted on 15/7/2011, 11:11

Group:
,,,..--::|| AMMINISTRATORE ||::--..,,,
Posts:
1,602
Location:
Scheda di rete

Status:


Oggi parliamo di una tecnica usata dagli Hacker e purtroppo anche da “pirati” la SQL INJECTION, altro non è che un’iniezione di codice in un database MySQL, tramite un attacco di questo tipo, ovvero con stringhe ben congeniate è facilissimo avere l’accesso non autorizzato con pieni poteri Admin su un’applicazione web.

Prendiamo ad esempio una qualsiasi pagina di login, se nel campo “userid” si immette il valore Admin e nel campo “password“ il valore passprova, la nostra query SQL sarà:


SELECT * tabella_utenti
WHERE userid = 'Admin'
AND password = 'passprova'


Questo codice è esatto ma non offre la sicurezza necessaria, proviamo a inserire una stringa ben strutturata, stiamo attenti alla posizione degl’apici, ad esempio nel campo “password” andiamo ad inserire:

1' or '1' = '1

la query risultante è la seguente:

SELECT * FROM tabella_utenti
WHERE userid = 'Admin'
AND password = '1' OR '1' = '1'

E’ facile notare cosa è successo, la query SQL grazie all’operatore OR imporrà ’1′ = ’1′, dato che l’uguaglianza si è verificata ecco che abbiamo l’accesso al pannello amministrativo dell’applicazione web senza conoscere userid e password.
 
Web     Top
winroot
view post Posted on 17/7/2011, 23:53




Ottimo.. ma questa injection funziona con siti con login.php molto vecchio o sbaglio? cioè non potrebbe mai funzionare su un forumfree o community..
 
Top
view post Posted on 19/7/2011, 12:47

Group:
,,,..--::|| AMMINISTRATORE ||::--..,,,
Posts:
1,602
Location:
Scheda di rete

Status:


no no...infatti il sito deve essere in .php meglio se in .asp (anzi il metodo è l' asp injection quindi.....).....comunque nella maggior parte dei siti funge ancora :)
 
Web     Top
view post Posted on 20/7/2011, 11:59

Group:
,,,..--::|| AMMINISTRATORE ||::--..,,,
Posts:
1,602
Location:
Scheda di rete

Status:


...eppure è così....per fare in modo che l' uguaglianza sia verificata....quando verifichi un uguaglianza vuol dire che essa è verà....essendo la risposta TRUE hai l' accesso...
 
Web     Top
3 replies since 15/7/2011, 11:11   728 views
  Share