GraphQL — Introspection + Batching abuse
Endpoint GraphQL con introspection abierto (__schema query) te entrega el schema completo: mutaciones expuestas, tipos internos, comentarios.
Categoría: Web · Vectores avanzados 🎯 Trinchera — Endpoint GraphQL con introspection abierto (__schema query) te entrega el schema completo: mutaciones
expuestas, tipos internos, comentarios. Combinado con batching
([{query: ...}, {query: ...}]) saltas rate limiting trivial.
🔗 Kill chain — De introspection a IDOR/auth bypass en
mutaciones internas. Batching → fuerza bruta de OTPs sin trigger
de rate limit por petición HTTP.
📡 Huella defensiva — Queries con __schema/__type,
operaciones POST con arrays de queries, profundidad de query >5.
⚠️ Falso amigo — Apollo deshabilita introspection en producción
por defecto (desde v3.9), pero muchas implementaciones custom no.
🛡️ Remediación — Disable introspection en prod, persisted
queries, query complexity analysis, depth limiter (max 7 niveles),
rate limiting por operación (no sólo por request).
← Volver al glosario completo Última actualización: 2026-06-11