Agencia Nacional de Infraestructura
Rama Ejecutiva · Sector transporte · Agencia
ANI presenta riesgo medio: tiene 10 hallazgos activos publicados, de los cuales 2 requieren atención prioritaria (2 altos). La prioridad es actualizar o aislar la tecnología vulnerable y confirmar el cierre con una verificación posterior. Los temas que más inciden son intercambio de datos con terceros, tecnología vulnerable o fuera de soporte y exposición pública de accesos sensibles.
Siguiente paso: asignar responsable, fecha de corrección y evidencia de cierre; si un riesgo no se corrige, aceptarlo formalmente con dueño y fecha de revisión.
Descripción técnica
Se registran 10 hallazgos activos publicados: 2 altos y 8 medios.
Señales técnicas principales: ANI: CORS refleja Origin externo con credenciales: Un OPTIONS pasivo a https://www.ani.gov.co/ con Origin: un origen externo de prueba responde Access-Control-Allow-Origin refleja un origen externo de prueba y Access-Control-Allow-Credentials: true, junto con metodos... ANI: jQuery 3.1.1 vulnerable en la portada: La portada carga jQuery 3.1.1 desde Google CDN sin SRI, versión afectada por CVEs conocidos. ANI: formulario Drupal de autenticación detectable: La ruta /user/login expone un formulario Drupal de autenticación.
Focos técnicos dominantes: CORS permisivo; dependencias vulnerables; y subdominios, APIs o paneles expuestos.
Hallazgos (10)
ANI: jQuery 3.1.1 vulnerable en la portada
AltaLa portada carga jQuery 3.1.1 desde Google CDN sin SRI, version afectada por CVEs conocidos.
Bibliotecas JavaScript vulnerables pueden ampliar el impacto de XSS y manipulacion de DOM.
ANI: CORS refleja Origin externo con credenciales
AltaUn OPTIONS pasivo a https://www.ani.gov.co/ con Origin: https://evil.example responde Access-Control-Allow-Origin: https://evil.example y Access-Control-Allow-Credentials: true, junto con metodos POST, GET y OPTION.
CORS con credenciales y origen reflejado puede permitir que sitios externos lean respuestas autenticadas si existen cookies o sesiones aplicativas compatibles. Debe restringirse a origenes explicitamente autorizados.
ANI: certificado wildcard para subdominios
MediaEl certificado TLS vigente para ani.gov.co, emitido por Google Trust Services WE1 y valido hasta 2026-09-24, incluye SAN ani.gov.co y *.ani.gov.co.
Wildcard certs simplifican operación pero amplían el blast radius: si la llave privada se compromete, el atacante impersona TODOS los subdominios cubiertos. Buena práctica: cert por servicio.
DNSSEC ausente en ani.gov.co
MediaLa consulta DS para ani.gov.co sigue vacia al 2026-06-27; el dominio no publica delegacion DNSSEC en la zona padre.
Sin DNSSEC, un atacante con MITM en cualquier resolvedor puede inyectar respuestas DNS falsas. Permite redirección a servidores controlados sin alertas.
ANI: headers de navegador incompletos
MediaLa portada en https://www.ani.gov.co/ responde 200 con X-Content-Type-Options y Permissions-Policy limitada, pero no publica Content-Security-Policy, X-Frame-Options, Referrer-Policy, HSTS ni COOP.
Headers de seguridad ausentes o permisivos reducen defensas del navegador contra inyeccion, clickjacking y filtrado de contexto.
ANI: scripts externos sin Subresource Integrity
MediaLa portada carga 15 scripts evaluados y ninguno incluye atributo integrity; entre los externos estan jQuery 3.1.1 desde Google CDN, jQuery Migrate, Bootstrap 3.1.1 desde jsDelivr, Google Tag Manager y Google Translate.
Scripts de terceros sin Subresource Integrity pueden ejecutar codigo modificado si el proveedor o CDN se compromete.
ANI rastrea navegación con Google Analytics y Facebook Pixel
MediaLa portada de www.ani.gov.co carga terceros de analitica/rastreo: Google Tag Manager/Analytics y Facebook SDK/Pixel, observados en la captura pasiva del 2026-06-27.
Terceros de analitica o rastreo en portales publicos requieren base legal, minimizacion y controles de consentimiento.
DNS de ani.gov.co operado por Cloudflare fuera de Colombia
MediaLos NS vigentes son chuck.ns.cloudflare.com y sandy.ns.cloudflare.com; el apex resuelve a direcciones Cloudflare 104.21.34.155 y 172.67.205.232. Debe evaluarse la exposicion de metadatos DNS frente a obligaciones de tratamiento de datos.
Toda la zona DNS está bajo proveedores extranjeros — los logs de queries DNS, claves DNSSEC y eventual modificación quedan bajo jurisdicción foránea. Para el Estado, esto debería evaluarse contra Ley 1581/2012.
ANI: sin security.txt válido detectable
MediaANI no expone security.txt valido con Contact en las rutas estandar.
security.txt facilita reportes coordinados y reduce friccion de divulgacion responsable.
ANI: formulario Drupal de autenticación detectable
MediaLa ruta /user/login expone un formulario Drupal de autenticacion.
Los formularios de autenticacion publicos incrementan superficie de enumeracion y fuerza bruta.
Soluciones recomendadas
Qué necesita ANI
Acciones derivadas directamente de los hallazgos observados en esta entidad.
Inmediatas
Cifrado obligatorio en todos los portales
- Activar HTTPS correctamente en todos los portales y subdominios.
- Corregir certificados vencidos o mal configurados.
- Habilitar HSTS para obligar conexiones seguras.
- Revisar que no haya contenido mixto cargando por HTTP.
Firewall y protección perimetral
- Implementar o fortalecer un WAF (firewall de aplicaciones web).
- Bloquear tráfico sospechoso.
- Limitar acceso a rutas sensibles como /admin, /administrator, /api, /dev, /intranet.
- Aplicar reglas contra inyección, scraping agresivo, fuerza bruta y escaneo automatizado.
Cierre de subdominios expuestos
- Retirar de DNS público ambientes como dev, intranet, apps, digiturno o pqrs si no deben ser públicos.
- Mover intranets y ambientes internos detrás de VPN.
- Exigir autenticación fuerte para cualquier sistema administrativo.
Protección contra suplantación de correo
- Configurar SPF, DKIM y DMARC.
- Llevar DMARC progresivamente a política estricta: reject.
- Monitorear reportes de suplantación.
- Bloquear dominios similares usados para phishing.
Headers de seguridad
- Activar Content-Security-Policy.
- Activar X-Frame-Options o frame-ancestors.
- Activar X-Content-Type-Options, Referrer-Policy y Permissions-Policy.
- Eliminar headers que revelan tecnología, como X-Powered-By.
Mantenimiento técnico
Actualizar software obsoleto
- Migrar PHP 5 y PHP 7.4 a versiones soportadas.
- Actualizar Joomla, plugins, plantillas y extensiones.
- Retirar librerías JavaScript vulnerables.
- Establecer ventanas mensuales de parcheo.
Gestión de vulnerabilidades
- Escanear periódicamente dominios y subdominios.
- Clasificar hallazgos por severidad.
- Asignar responsables y fechas de cierre.
- Verificar que cada corrección haya sido aplicada.
Protección de APIs
- Exigir autenticación.
- Implementar rate limiting.
- Validar permisos por usuario y rol.
- Evitar que las APIs revelen datos personales, errores internos o estructuras del sistema.
Control de certificados
- Publicar registros CAA para definir qué autoridades pueden emitir certificados del dominio.
- Monitorear Certificate Transparency.
- Renovar certificados automáticamente.
- Detectar certificados sospechosos o no autorizados.
Canal de divulgación responsable
- Publicar security.txt (RFC 9116).
- Definir un correo oficial para reportes de seguridad.
- Crear un procedimiento interno para recibir, validar y corregir vulnerabilidades.
Gestión de datos personales
- Revisar formularios, PQRS, trámites y APIs que procesan datos ciudadanos.
- Minimizar los datos expuestos.
- Cifrar datos sensibles en tránsito y en reposo.
- Aplicar controles de acceso y trazabilidad.
Hardening institucional
- Configuraciones seguras por defecto y plantillas web endurecidas.
- Revisión de seguridad antes de publicar nuevos portales.
- Separación clara entre producción, pruebas, desarrollo e intranet.
Cómo sostenerlo
- Política de mínimos de seguridad web. Estándar obligatorio para todos los portales (HTTPS, HSTS, DMARC, headers, backups, logs, actualizaciones, monitoreo), exigible a proveedores.
- Cláusulas de ciberseguridad en contratos. Obligar mínimos técnicos, SLA de corrección por severidad, evidencias de parcheo y derecho de auditoría.
- Monitoreo continuo. No una revisión anual: alertar ante cada nuevo subdominio, certificado, API o tecnología vulnerable, y medir la postura por entidad y proveedor.
- Modelo de remediación coordinada. Cuando un hallazgo se repite en muchas entidades, corregir la causa raíz (proveedor, plantilla o configuración común) para cerrar el riesgo en bloque.
- Indicadores para la alta dirección. Tiempo promedio de corrección, hallazgos críticos abiertos, % de entidades con DMARC y HSTS, activos expuestos sin responsable, riesgo por proveedor.
- EstadoSeguro no solo detecta vulnerabilidades; permite priorizar soluciones.
- No reemplaza a su equipo de TI: le da visibilidad, evidencia y orden.
- No es una auditoría anual: es monitoreo continuo de la superficie pública.
- No busca señalar culpables: busca cerrar brechas antes de que se conviertan en incidentes.
- Convierte el riesgo técnico en decisiones ejecutivas: qué corregir, quién responde y qué hacer primero.
Cronología de hallazgos
2026-06-27 → 2026-06-27Nuevos
11
Activos
10
Pendientes
0
Solucionados
1
ANI: headers de navegador incompletos
Apareció: 2026-06-27 · Revisado: 2026-06-27
ANI: CORS refleja Origin externo con credenciales
Apareció: 2026-06-27 · Revisado: 2026-06-27
ANI: jQuery 3.1.1 vulnerable en la portada
Apareció: 2026-06-27 · Revisado: 2026-06-27
ANI: sin security.txt válido detectable
Apareció: 2026-06-27 · Revisado: 2026-06-27
ANI: formulario Drupal de autenticación detectable
Apareció: 2026-06-27 · Revisado: 2026-06-27
ANI: scripts externos sin Subresource Integrity
Apareció: 2026-06-27 · Revisado: 2026-06-27
ANI rastrea navegación con Google Analytics y Facebook Pixel
Apareció: 2026-06-27 · Revisado: 2026-06-27
ANI: certificado wildcard para subdominios
Apareció: 2026-06-27 · Revisado: 2026-06-27
DNSSEC ausente en ani.gov.co
Apareció: 2026-06-27 · Revisado: 2026-06-27
DNS de ani.gov.co operado por Cloudflare fuera de Colombia
Apareció: 2026-06-27 · Revisado: 2026-06-27
ANI: catch-all histórico ya no se reproduce
Apareció: 2026-06-27 · Revisado: 2026-06-27 · Solucionado: 2026-06-27
Activos públicos (1)
ani.gov.co
portal principal
Targeted passive refresh for ani. Server: unknown.
Observado: 2026-06-27