¿Qué puedo hacer con un shell de SQL usando SQLMap?

5

Estaba jugando con SQLMap en Kali y ahora tengo --sql-shell en la base de datos principal Con esto, me pregunté qué puedo hacer ahora con este acceso. ¿Cómo podría insertar datos en la base de datos, etcétera? ¿Es esto posible?

    
pregunta Infamy Hacking 10.06.2017 - 13:10
fuente

3 respuestas

2

Normalmente, uno usaría el indicador --sql-query (una línea a la vez) o su indicador --sql-shell (que proporciona un SQLi REPL, o shell interactivo) para probar la funcionalidad del SQLi encontrado contra el RDBMS objetivo 'capacidades. A menudo, esto solo es necesario cuando está fuera del alcance de lo que ya puede realizar sqlmap, en cuanto a capacidad.

Dos ejemplos destacados son:

  1. enlace

Buscando el directorio base para LOAD_FILE () usando select @@datadir contra MySQL / MariaDB. Esperando el tamaño de archivo predeterminado permitido o consultándolo para un ajuste usando select @@max_allowed_packet en este mismo escenario de ataque.

  1. enlace

Consultar un nombre de host de MS-SQL Server ( select @@servername ) o incluso la versión / producción / producción. En MySQL / MariaDB, este mismo comando sería select @@hostname desde el REPL de shell sql.

    
respondido por el atdre 05.09.2017 - 02:47
fuente
1

¿Qué puedes hacer con SQLmap?

Su pregunta es ¿Qué puedo hacer con un shell SQL?

Respuesta corta : (¡casi) cualquier cosa!

Respuesta matizada : dependiendo de los derechos del usuario que se está ejecutando en su punto final, casi nada, algo o posiblemente algo.

Pero, la única pregunta correcta sería:

¿Qué debería hacer con SQLmap?

SQLMap no es algo con lo que debería estar " perdiendo el tiempo " con y para " insertar datos " con. Eso afecta la integridad de la base de datos. Insertar, eliminar o alterar incluso una pequeña cosa, hace que la base de datos esté dañada. De cualquier manera tienes intenciones éticas o no tienes idea de lo que estás haciendo.

SQLmap it selfs declara lo siguiente por una buena razón:

  

El uso de sqlmap para atacar objetivos sin el consentimiento mutuo previo es   ilegal. Es responsabilidad del usuario final obedecer todas las normas aplicables.   Leyes locales, estatales y federales. Los desarrolladores no asumen ninguna responsabilidad y son   no se responsabiliza por el mal uso o daño causado por este programa.

     

Fuente : enlace

¡Sé ético!

Es bueno que esté interesado en la seguridad de la información y que "jugar" con herramientas como "Kali" y "SQLmap" le dará habilidades poderosas. ¡Pero úsalos bien! Esperemos que, en el mejor de los casos, lo haga en un entorno de prueba que posea y ejecute. O en un segundo mejor caso en un objetivo del que tiene permiso inicial para realizar pruebas. WebGoat es un buen ejemplo de tal proyecto: enlace .

La piratería solo es legal cuando cuenta con un permiso y entendimiento por adelantado con su cliente sobre cómo, dónde y cuándo realizará la prueba. Esto se llama Ethical Hacking, la única forma de hacking "legal". Además, la comprensión generalmente incluye límites de prueba definidos sobre lo que puede y sobre todo no puede hacer. Fronteras que no deben ser cruzadas. La mayoría de estos bordes son bastante simples, compruebe una vulnerabilidad o riesgo (incluso en teoría) al no alterar, insertar o eliminar ninguno de sus datos (en otras palabras, solo lectura), a menos que tenga permiso explícito para hacerlo. p>

Además, me gustaría aconsejarle que practique solo sus habilidades de SQLmap en uno de los siguientes tres casos:

  • Eres dueño del entorno (es tu entorno de prueba, para adquirir habilidades con la herramienta SQLmap)
  • Tienes permiso por adelantado del objetivo que estás pirateando. Tener una subestimación clara de dos partes sobre las reglas y las fronteras.
  • Se apega a los programas Bug Bounty como en HackerOne y BugCrowd, que aceptan y respetan las reglas del programa específico.
respondido por el Bob Ortiz 28.06.2017 - 22:35
fuente
0

Si el usuario de SQL tiene permiso de escritura en la tabla, puede usar un comando INSERT INTO para insertar datos en la tabla.
En w3school puede encontrar más información sobre cómo escribir declaraciones SQL.

    
respondido por el Eelke 10.06.2017 - 13:25
fuente

Lea otras preguntas en las etiquetas