Perché l'output di sqlmap deve essere tagliato?

6

Ho deciso di imparare sqlmap ma ho riscontrato un problema con Sqlmap che ritagliava parte del mio output, l'hash. L'hash sta per avere una lunghezza di 32 caratteri, ma ricevo solo 25 e l'avviso:

[WARNING] possible server trimmed output detected (due to its length and/or content): HASH'

È solo il ritaglio di questa colonna, non le altre che scelgo di scaricare, anche se non le ho viste più lunghe di 25 caratteri. Ho provato a cambiare:

--hex 

ma non mi sta dando fortuna.

Sono passate ore a cercare soluzioni per questo. C'è qualche altro interruttore che potrei provare o forse un'altra soluzione?

    
posta user3316995 13.07.2015 - 21:57
fonte

1 risposta

1

Per il codice sorgente di sqlmap all'indirizzo [Github 1] , questo avviso si verifica quando la dimensione dei dati restituiti dal server SQL è inferiore a quella richiesta:

trimmed = _("%s(?P<result>.*?)<" % (kb.chars.start))

            if trimmed:
                warnMsg = "possible server trimmed output detected "
                warnMsg += "(probably due to its length and/or content): "

Ciò può verificarsi se il programmatore SQL decide di essere in grado di interrogare l'elemento del database, ma non di restituire l'intero elemento. Il comando TEXTSIZE è un modo per farlo in SQL Server (ce ne sono molti altri).

Il motivo principale è controllare se ci sono dati senza trasferire un grande blocco di dati. I valori hash non sono grandi, ma alcuni sistemi troncano i valori hash della password e utilizzano il valore hash parziale memorizzato. Troncare i valori hash non è una buona pratica, vedi Troncare l'hash crittografico rende impossibile craccare? .

Si noti che la modifica a --hex influisce solo sul formato del display di output, non sulla dimensione complessiva in caratteri o byte del display (01001001 in binario, = 0x49 in esadecimale, = 73 in decimale, = la lettera " I "in ASCII, ma un byte a prescindere).

    
risposta data 13.11.2015 - 22:16
fonte

Leggi altre domande sui tag