Come posso hackerare questa pagina di accesso usando SQL injection? [chiuso]

-4

Sto testando la vulnerabilità di un sito Web del client a Iniezione SQL , che sembra essere il caso. Il sito Web è ospitato su IIS su un server Windows e utilizza il framework .NET di Microsoft con SQL. Sono in grado di inserire istruzioni SQL nel modulo di accesso.

Ma quando inserisco ' or 1=1;-- in nome utente , risponde "Your Account Has Been Blocked" . Ovviamente, il campo non è validato, il che è un serio problema di sicurezza.

Come posso ottenere il contenuto del database utilizzando la tecnica di iniezione SQL? Ho letto questo tutorial sul test di penetrazione , ma finora non ho avuto fortuna .

Quando inserisco ' nel campo del nome utente, questo è ciò che ottengo:

    
posta mehulmpt 18.04.2014 - 10:21
fonte

3 risposte

7

Devi assicurarti di avere le giuste competenze prima di offrirti per eseguire un lavoro per un cliente. Ciò significa che si sta valutando il sito Web e non si darà al cliente un falso senso di sicurezza. Questo sarà meglio per te dato che saprai come eseguire i passaggi corretti per eseguire un test legalmente e non verrà citato in giudizio dal cliente se sbagli quando [controlli il sito] "contro tutti i possibili vul."

Posso consigliare il Manuale dell'hacker dell'applicazione Web: 2a edizione come buona guida per iniziare nel campo e le risorse all'indirizzo OWASP , ma consiglia di seguire una formazione adeguata e di lavorare con persone più esperte

Detto questo SQLMap è un buon strumento da usare in un pizzico e può essere clonato fuori da github o trovato in kali / backtrack (ma questa versione potrebbe non essere aggiornata).

Assicurati di avere l'espressa autorizzazione scritta del cliente / del suo fornitore di servizi per i test e assicurati di avvertire "tutte le vulnerabilità conosciute" in futuro o rischierai di essere masterizzato.

    
risposta data 18.04.2014 - 16:14
fonte
1

How can I obtain the database's content using the SQL injection technique?

Se si può o meno farlo dipenderà molto da come le informazioni vengono utilizzate dopo essere state estratte dal database. Ad esempio, se le informazioni estratte dal database vengono utilizzate solo per vedere se si dispone di credenziali valide, ma non viene mai visualizzato alcun contenuto del database recuperato, non sarà possibile visualizzare il contenuto del database.

Probabile che tu possa accedere senza una combinazione di nome utente / password valida. Hai detto che la prima stringa riceveva un messaggio "Account è stato bloccato". Probabilmente, per qualche motivo, il primo risultato restituito nel database è un account bloccato. Puoi aggirare questo facendo qualcosa come LIMIT 1,1 (se è mysql, o qualcosa di simile se non lo è).

    
risposta data 18.04.2014 - 18:32
fonte
1

Se questo modulo è hackerabile, probabilmente lo saranno anche gli altri. Ottenere il contenuto del il database è problematico, ma evita la normale autenticazione dell'utente, alterando altri utenti gli account, o semplicemente cancellare il database sono tutti sul tavolo. Dubito del tuo il cliente vorrebbe che provaste queste cose sul loro database live.

    
risposta data 19.04.2014 - 03:31
fonte

Leggi altre domande sui tag