Lección 13 de 32· M18

Hechas: 0/32(0%)

M18L13Semana 4~5 h

Ficha M18

L13 — SQLi: reproducir en tu propia API

~5 h · Semana 4

Objetivo

Encontrar al menos un punto susceptible (búsqueda, filtro, orden) y demostrar SQLi (inyección SQL) controlada en local/staging sin dañar datos reales.

Por qué importa

P2 empieza con hallazgo real; SQLi sigue vivo en ORMs mal usados.

Conceptos

  • Consulta concatenada vs parametrizada.
  • Error verbose vs genérico.
  • Principio de mínimo privilegio DB.

Pasos (hazlos en orden)

1. Lectura dirigida (60–90 min)

Lee la sección indicada en la ficha de la materia y subraya solo lo que vas a probar hoy en terminal o en projects/.

2. Carpeta de evidencia (15–20 min)

Crea o actualiza la carpeta del proyecto de la materia. Cada lección añade una sección en la bitácora semanal o un archivo dedicado; no disperses notas sueltas.

3. Laboratorio / trabajo documental (90–120 min)

Usa cuenta de prueba. Intenta payloads en query params/body (' OR '1'='1 etc.) en endpoints de búsqueda de clientes/citas.

Documenta en projects/m18-appsec/findings/001-sqli.md: endpoint, payload, respuesta, impacto. No pegues datos de clientes reales.

Si no hay SQLi, documenta por qué (ORM (mapeo objeto-relacional) parametrizado) y prueba bypass conocido del ORM.

4. Conexión con el plan (30–45 min)

Escribe un párrafo en la bitácora: cómo lo de hoy afecta al piloto Agenda Ops (M12 en adelante) o a la API (interfaz de programación de aplicaciones) que desplegarás en M17/M19. Si aún no tienes SRS (especificación de requisitos de software), usa el escenario del producto del plan (citas, clientes, panel).

5. Commit atómico (15 min)

git add projects/
git status
git commit -m "docs(m18): l13 sqli-reproducir-en-tu-propia-api"

Lectura de esta lección

Fuente Qué leer Alternativa
OWASP (proyecto abierto de seguridad en aplicaciones web) SQL (lenguaje de consulta estructurado) Injection ORM docs de tu stack
Catálogo Entrada M18 Bibliografía · M18

Hecho cuando

  1. Finding documentado o prueba de mitigación.
  2. Solo tu entorno.
  3. Sin PII (información de identificación personal) en el reporte.

Errores comunes

  • SQLi en producción de terceros.
  • Drop table en staging compartido.

Siguiente

L14 — Mitigar SQLi: queries parametrizadas y permisos DB

←→