Stavo solo scherzando con SQLMap su Kali e ora ho ottenuto un --sql-shell
nel database principale. Con questo, mi sono chiesto cosa posso fare ora con questo accesso. Come posso inserire i dati nel database e questo è possibile?
Stavo solo scherzando con SQLMap su Kali e ora ho ottenuto un --sql-shell
nel database principale. Con questo, mi sono chiesto cosa posso fare ora con questo accesso. Come posso inserire i dati nel database e questo è possibile?
In genere, si utilizza il flag --sql-query
(una riga alla volta) o il proprio flag --sql-shell
(che fornisce un REPL SQLi o shell interattiva) per testare la funzionalità dello SQLi trovato rispetto all'RDBMS di destinazione 'capacità. Questo è spesso necessario solo quando fuori dal campo di applicazione di quanto può già eseguire sqlmap, in termini di capacità.
Due esempi importanti sono:
Trovare la directory di base per LOAD_FILE () usando select @@datadir
contro MySQL / MariaDB.
Sperando che la dimensione del file sia consentita o interrogata per un adattamento utilizzando select @@max_allowed_packet
in questo stesso scenario di attacco.
Interrogazione di un nome host MS-SQL Server ( select @@servername
) o anche la versione prodotto / productlevel / edition. In MySQL / MariaDB questo stesso comando sarebbe select @@hostname
dal REPL di sql-shell.
La tua domanda è Cosa posso fare con una shell SQL?
Risposta breve : (quasi) qualsiasi cosa!
Risposta sfumata : a seconda dei diritti dell'utente in esecuzione sul tuo end-point, quasi nulla, qualcosa o forse qualcosa.
Ma l'unica domanda giusta sarebbe:
SQLMap non è qualcosa con cui dovresti " cercare nei dintorni " con e su " inserire dati " con. Ciò influisce sull'integrità del database. Inserendo, cancellando o alterando anche una piccola cosa, rende il database corrotto. In entrambi i casi hai intenzioni etiche o non hai idea di cosa stai facendo.
SQLmap afferma autonomamente quanto segue per una buona ragione:
Usage of sqlmap for attacking targets without prior mutual consent is illegal. It is the end user's responsibility to obey all applicable local, state and federal laws. Developers assume no liability and are not responsible for any misuse or damage caused by this program.
Source: http://sqlmap.org/
È positivo che tu sia interessato alla sicurezza delle informazioni e che "giocare" con strumenti come "Kali" e "SQLmap" ti forniranno competenze potenti. Ma usali bene! Speriamo che nel migliore dei casi lo faccia in un ambiente di prova che possiedi ed esegui. O in un secondo caso migliore su un target che hai il permesso iniziale di testare. WebGoat è un buon esempio di tale progetto: link .
L'hacking è legale solo se disponi dell'autorizzazione anticipata e comprendi con il tuo cliente come, dove e quando eseguirai il test. Questo è chiamato Ethical Hacking, l'unico modo di hacking "legale". Inoltre, la comprensione di solito include confini di test definiti su ciò che puoi e soprattutto non puoi fare. Confini che non dovrebbero essere superati. La maggior parte di questi confini è piuttosto semplice, ne dimostra la vulnerabilità o il rischio (anche teoricamente) non alterando, inserendo o cancellando alcuno dei suoi dati (in altre parole, di sola lettura), a meno che tu non abbia il permesso esplicito di farlo.
Inoltre, vorrei consigliarti di mettere in pratica le tue capacità di SQLmap solo in uno dei seguenti tre casi:
Leggi altre domande sui tag sql-injection mysql data-leakage databases kali-linux