Consumo Inseguro de API
Tu API confía ciegamente en respuestas de APIs de terceros sin validación, permitiendo a atacantes explotar servicios upstream para comprometer tu aplicación.
Cómo Funciona
Cuando tu API consume datos de servicios de terceros, frecuentemente confía en la respuesta implícitamente. Si una API upstream es comprometida o retorna datos inesperados, tu aplicación los procesa sin sanitización. Esto puede llevar a ataques de inyección, corrupción de datos o bypass de lógica de negocio. Los atacantes pueden comprometer una API de terceros menos segura o hacer ataques man-in-the-middle para inyectar payloads maliciosos que tu aplicación procesa como datos de confianza.
app.get('/api/enrichment/:email', async (req, res) => {
const data = await fetch(`https://api.third-party.com/lookup?email=${req.params.email}`);
const profile = await data.json();
await db.query(`UPDATE users SET name = '${profile.name}' WHERE email = '${req.params.email}'`);
res.json(profile);
});import { z } from 'zod';
const ProfileSchema = z.object({ name: z.string().max(100), company: z.string().optional() });
app.get('/api/enrichment/:email', async (req, res) => {
const data = await fetch(`https://api.third-party.com/lookup?email=${encodeURIComponent(req.params.email)}`);
const raw = await data.json();
const profile = ProfileSchema.parse(raw);
await db.query('UPDATE users SET name = $1 WHERE email = $2', [profile.name, req.params.email]);
res.json(profile);
});Ejemplo Real
En 2021, el Bash Uploader de Codecov fue comprometido, inyectando código malicioso que exfiltraba variables de entorno de pipelines CI/CD. Empresas como Twilio, HashiCorp y Confluent que consumían el script de Codecov sin verificación de integridad fueron afectadas.
Cómo Prevenirlo
- Valida y sanitiza todos los datos recibidos de APIs de terceros con schemas
- Usa queries parametrizados incluso con fuentes de datos de confianza
- Verifica certificados TLS y usa certificate pinning para integraciones críticas
- Configura timeouts y circuit breakers para llamadas a APIs externas
Tecnologías Afectadas
Data Hogo detecta esta vulnerabilidad automáticamente.
Escanea Tu Repo GratisVulnerabilidades Relacionadas
Broken Object Level Authorization (BOLA)
highLos endpoints de API no verifican que el usuario que hace el request es dueño del recurso al que accede — permitiendo a atacantes acceder a datos de otros usuarios cambiando IDs.
Autenticación Rota (API)
highLos mecanismos de autenticación de la API son débiles o están mal implementados — JWT sin validación adecuada, tokens fuera de cookies httpOnly o sin expiración.
Autorización de Propiedades de Objeto Rota
mediumLa API permite a usuarios leer o modificar propiedades a las que no deberían tener acceso — mass assignment, exposición excesiva de datos o falta de control de acceso a nivel de campo.
Consumo de Recursos Sin Restricción
mediumEndpoints de API sin rate limiting, paginación o límites de recursos — permitiendo a atacantes agotar recursos del servidor, generar costos o extraer datasets grandes.