Alcaldia de Cali
Rama Ejecutiva · Sector territorial · Alcaldía capital
Riesgo crítico. Se detectaron 1 vulnerabilidades catalogadas por CISA como activamente explotadas en ataques reales (CVE-2024-4577). No son riesgos teóricos: equivalen a fallas conocidas y publicadas que atacantes ya están usando contra otras organizaciones. Adicionalmente, 12 de los hallazgos detectados se replican en otras entidades del Estado — el patrón sugiere causa raíz compartida (proveedor común, template institucional o stack heredado). Acción inmediata: actualizar el stack tecnológico al menos a las versiones que parchean las CVE listadas en CISA KEV.
Hallazgos (38)
CVE-2019-11043: PHP-FPM heap overflow — RCE preauth
CriticaStack PHP 5 (EOL ene-2019) detectado. CVE-2019-11043 afecta esta version y permite el comportamiento descrito sin parche post-EOL.
Una request HTTP especifica al endpoint PHP-FPM hace que execute codigo arbitrario. PHP 5/7.x sin parche.
CVE-2019-11043: PHP-FPM heap overflow — RCE preauth
CriticaStack PHP 7.2 (EOL nov-2020) detectado. CVE-2019-11043 afecta esta version y permite el comportamiento descrito sin parche post-EOL.
Idem CVE-2019-11043. PHP 7.0-7.3 vulnerable sin parche.
Hallazgo sistémico en 83 entidades — Hallazgo sistémico
CriticaMismo patrón crítico detectado en 83 entidades del Estado: alc-arauca, alc-armenia, alc-bucaramanga, alc-cali, alc-cartago, alc-cucuta, alc-galapa, alc-girardot.... La repetición sugiere causa raíz compartida: stack común, integrador común, o configuración por defecto sin endurecer.
Cuando la misma vulnerabilidad afecta a ≥5 entidades, la causa raíz suele ser un proveedor compartido o una configuración heredada de un template institucional. Resolver en una entidad sin coordinar con MinTIC/CCOC deja el problema activo en N-1 entidades. Recomendación: alerta a Computer Security Incident Response Team gubernamental y boletín a las entidades afectadas.
Hallazgo sistémico en 9 entidades — CVE-2019-11043: PHP-FPM heap overflow — RCE preauth
CriticaMismo patrón crítico detectado en 9 entidades del Estado: alc-cali, alc-ibague, car-cda, car-crc-cauca, cnmh, emp-eaab, gob-casanare, gob-cesar.... La repetición sugiere causa raíz compartida: stack común, integrador común, o configuración por defecto sin endurecer.
Cuando la misma vulnerabilidad afecta a ≥5 entidades, la causa raíz suele ser un proveedor compartido o una configuración heredada de un template institucional. Resolver en una entidad sin coordinar con MinTIC/CCOC deja el problema activo en N-1 entidades. Recomendación: alerta a Computer Security Incident Response Team gubernamental y boletín a las entidades afectadas.
Hallazgo agrupado por similitud semántica (6 findings, 6 entidades)
CriticaML clustering identificó 6 findings similares afectando 6 entidades distintas. Categoría dominante: dependencias_vulnerables. Severidades: {'critica': 6}. Muestra: CVE-2019-11043: PHP-FPM heap overflow — RCE preauth | CVE-2019-11043: PHP-FPM heap overflow — RCE preauth | CVE-2019-11043: PHP-FPM heap overflow — RCE preauth.
Findings agrupados por similitud semántica reflejan una vulnerabilidad común (causa raíz compartida): mismo proveedor, misma configuración por defecto, o mismo template institucional sin endurecer. Resolver el problema en una entidad sin coordinar con las demás deja el problema activo en N-1 entidades.
Hallazgo agrupado por similitud semántica (5 findings, 5 entidades)
CriticaML clustering identificó 5 findings similares afectando 5 entidades distintas. Categoría dominante: dependencias_vulnerables. Severidades: {'critica': 5}. Muestra: CVE-2019-11043: PHP-FPM heap overflow — RCE preauth | CVE-2019-11043: PHP-FPM heap overflow — RCE preauth | CVE-2019-11043: PHP-FPM heap overflow — RCE preauth.
Findings agrupados por similitud semántica reflejan una vulnerabilidad común (causa raíz compartida): mismo proveedor, misma configuración por defecto, o mismo template institucional sin endurecer. Resolver el problema en una entidad sin coordinar con las demás deja el problema activo en N-1 entidades.
CISA KEV CVE-2024-4577: php 5 en alc-cali (explotación activa documentada; en uso por ransomware activo)
CriticaLa versión detectada php 5 corresponde a vendor='php group' product='php' con 1 CVE en el catálogo CISA KEV. Esta CVE específica (CVE-2024-4577: PHP-CGI OS Command Injection Vulnerability) está documentada como explotada activamente por atacantes en producción (catalog dateAdded=2024-06-12, dueDate gov US=2024-07-03; en uso por ransomware activo).
El catálogo CISA Known Exploited Vulnerabilities lista solamente CVEs con evidencia confirmada de explotación en ataques reales. Esto no es un riesgo teórico: equivalente a saber que la cerradura específica de tu casa está publicada en un foro de criminales. La US Federal Government tiene fechas obligatorias de remediación (dueDate) — para entidades del Estado colombiano el estándar mínimo es el mismo. Si la CVE es de uso conocido en ransomware, el riesgo escala a interrupción operacional crítica.
Servidor catch-all en 2 host(s) — observabilidad reducida
AltaEl portal en test.cali.gov.co, www.cali.gov.co retorna HTTP 200 con la misma página para múltiples rutas inexistentes (paths sensibles como /.env, /web.config.bak, /aws.json devuelven el mismo HTML que /). Comportamiento típico de SPAs/CMS sin handler 404 explícito.
Catch-all 200 (en vez de 404) impide a herramientas de auditoría externas distinguir entre rutas reales y rutas inexistentes. Crea ruido para defenders y oculta exposiciones reales bajo un mar de 'falsos 200'. Buena práctica: configurar handler 404 explícito que retorne código 4xx para rutas no mapeadas.
SPF ausente en sig.cali.gov.co
AltaNo hay registro v=spf1 publicado.
Sin SPF, cualquier servidor del mundo puede enviar correo con remitente @sig.cali.gov.co. Spoofing trivial contra ciudadanos y proveedores.
Stack EOL 'PHP 5 (EOL)' presente en 8 entidades del Estado
AltaEntidades con esta tech: alc-cali, alc-ibague, car-cda, car-crc-cauca, emp-eaab, ese-metrosalud, ese-subred-norte, gob-cesar
Software fuera de soporte (PHP 5 (EOL)) en múltiples entidades sugiere proveedor común con stack obsoleto. Vulnerabilidad descubierta en este stack afecta simultáneamente a varios servicios públicos.
Stack EOL 'PHP 7.2 (EOL)' presente en 6 entidades del Estado
AltaEntidades con esta tech: alc-cali, car-cda, cnmh, ese-hd-villavicencio, gob-casanare, gob-quindio
Software fuera de soporte (PHP 7.2 (EOL)) en múltiples entidades sugiere proveedor común con stack obsoleto. Vulnerabilidad descubierta en este stack afecta simultáneamente a varios servicios públicos.
WordPress REST expone listado de usuarios en intranet.cali.gov.co
AltaGET https://intranet.cali.gov.co/wp-json/wp/v2/users retorna JSON con usuarios (id/name/slug). Sample: [{"id":35,"name":"Adriana Mosquera Mosquera","url":"","description":"","link":"https:\/\/intranet.cali.gov.co\/author\/adriana-mosquera\/","slug":"adriana-mosquera","avatar_urls":{"24":"https:\/\/secu
El endpoint /wp-json/wp/v2/users entrega usernames y a veces emails de la instalación WP. Permite enumerar nombres válidos para bruteforce dirigido y phishing personalizado.
Spring Boot Actuator root expuesto en dashboard.cali.gov.co
AltaGET https://dashboard.cali.gov.co/actuator retorna catálogo de endpoints.
Actuator root entrega lista de endpoints disponibles (info, health, env, heapdump). Configuración por defecto expone más de lo recomendado en producción.
VPN/Intranet alcanzable en DNS publico (1)
AltaHosts: intranet.cali.gov.co.
Aunque el servicio este restringido por IP, el FQDN publicado en DNS permite enumeracion trivial y ataques dirigidos al perimetro.
Sin registros CAA
Altadig CAA cali.gov.co retorna vacio.
Cualquier autoridad certificadora publica puede emitir certificados a nombre del dominio sin restriccion. Combinado con monitoreo CT incompleto, certificados fraudulentos pueden pasar inadvertidos.
DMARC en modo quarantine (no reject)
Alta_dmarc.cali.gov.co publica politica permisiva.
Politica quarantine no rechaza correos no autenticados. Atacante puede suplantar @cali.gov.co contra ciudadanos del territorio.
Hallazgo agrupado por similitud semántica (299 findings, 299 entidades)
AltaML clustering identificó 299 findings similares afectando 299 entidades distintas. Categoría dominante: configuracion_ssl. Severidades: {'alta': 299}. Muestra: Sin registros CAA | Sin registros CAA | Sin registros CAA.
Findings agrupados por similitud semántica reflejan una vulnerabilidad común (causa raíz compartida): mismo proveedor, misma configuración por defecto, o mismo template institucional sin endurecer. Resolver el problema en una entidad sin coordinar con las demás deja el problema activo en N-1 entidades.
Hallazgo agrupado por similitud semántica (196 findings, 196 entidades)
AltaML clustering identificó 196 findings similares afectando 196 entidades distintas. Categoría dominante: datos_personales. Severidades: {'alta': 196}. Muestra: DMARC en modo permisivo (quarantine en lugar de reject) | DMARC en modo quarantine (no reject) | DMARC en modo quarantine (no reject).
Findings agrupados por similitud semántica reflejan una vulnerabilidad común (causa raíz compartida): mismo proveedor, misma configuración por defecto, o mismo template institucional sin endurecer. Resolver el problema en una entidad sin coordinar con las demás deja el problema activo en N-1 entidades.
Hallazgo agrupado por similitud semántica (111 findings, 111 entidades)
AltaML clustering identificó 111 findings similares afectando 111 entidades distintas. Categoría dominante: api_expuesta. Severidades: {'alta': 111}. Muestra: VPN/Intranet alcanzable en DNS publico (1) | VPN/Intranet alcanzable en DNS publico (1) | VPN/Intranet alcanzable en DNS publico (1).
Findings agrupados por similitud semántica reflejan una vulnerabilidad común (causa raíz compartida): mismo proveedor, misma configuración por defecto, o mismo template institucional sin endurecer. Resolver el problema en una entidad sin coordinar con las demás deja el problema activo en N-1 entidades.
Hallazgo agrupado por similitud semántica (32 findings, 9 entidades)
AltaML clustering identificó 32 findings similares afectando 9 entidades distintas. Categoría dominante: configuracion_expuesta. Severidades: {'alta': 32}. Muestra: Spring Boot Actuator /actuator expuesto en defensajuridica.gov.co | Spring Boot Actuator /actuator/mappings expuesto en defensajuridica.gov.co | Spring Boot Actuator /actuator/loggers expuesto en defensajuridica.gov.co.
Findings agrupados por similitud semántica reflejan una vulnerabilidad común (causa raíz compartida): mismo proveedor, misma configuración por defecto, o mismo template institucional sin endurecer. Resolver el problema en una entidad sin coordinar con las demás deja el problema activo en N-1 entidades.
robots.txt revela 1 ruta(s) sensibles en www.cali.gov.co
MediaDisallow/Allow incluye: /backup. robots.txt es publico — los crawlers respetan, los atacantes lo usan como mapa.
robots.txt no impide acceso, solo solicita ignorar a crawlers benignos. Listar paths internos/admin alli es un atajo para enumerar superficie sensible.
Certificado wildcard cubre 1 dominios en sig.cali.gov.co
MediaWildcards en SAN: *.cali.gov.co. Total SAN: 2.
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 sig.cali.gov.co
MediaNo hay registro DS en zona padre.
Sin DNSSEC, un atacante con MITM en cualquier resolvedor puede inyectar respuestas DNS falsas. Permite redirección a servidores controlados sin alertas.
DKIM no detectado en sig.cali.gov.co (selectores comunes)
MediaProbados 12 selectores comunes (default, mail, google, mailgun, etc.) — ninguno responde con v=DKIM1.
Sin DKIM, los receptores no pueden verificar criptográficamente que un correo proviene del servidor autorizado. Combinado con DMARC permisivo, deja la puerta abierta a spoofing.
Swagger UI / Redoc accesible en dashboard.cali.gov.co
MediaGET https://dashboard.cali.gov.co/swagger-ui.html responde con interfaz documentación API.
Interfaz interactiva de exploración del API. Suele venir junto al spec — verifica si requiere auth.
Bucket S3 privado existe con nombre cali
InfoGET https://cali.s3.amazonaws.com retorna 403 AccessDenied (bucket existe, no listable). Sugiere infraestructura cloud asociada a la entidad.
Bucket existe pero está cerrado al público. Útil como pista de inventario cloud — en un escenario de takeover (entidad deja de pagar AWS), un atacante podría reclamar el nombre. Recomendación: documentar y monitorear.
Bucket GCS privado existe con nombre cali
InfoGET https://storage.googleapis.com/cali retorna 403 AccessDenied (bucket existe, no listable). Sugiere infraestructura cloud asociada a la entidad.
Bucket existe pero está cerrado al público. Útil como pista de inventario cloud — en un escenario de takeover (entidad deja de pagar AWS), un atacante podría reclamar el nombre. Recomendación: documentar y monitorear.
Bucket S3 privado existe con nombre cali-prod
InfoGET https://cali-prod.s3.amazonaws.com retorna 403 AccessDenied (bucket existe, no listable). Sugiere infraestructura cloud asociada a la entidad.
Bucket existe pero está cerrado al público. Útil como pista de inventario cloud — en un escenario de takeover (entidad deja de pagar AWS), un atacante podría reclamar el nombre. Recomendación: documentar y monitorear.
Bucket S3 privado existe con nombre cali-data
InfoGET https://cali-data.s3.amazonaws.com retorna 403 AccessDenied (bucket existe, no listable). Sugiere infraestructura cloud asociada a la entidad.
Bucket existe pero está cerrado al público. Útil como pista de inventario cloud — en un escenario de takeover (entidad deja de pagar AWS), un atacante podría reclamar el nombre. Recomendación: documentar y monitorear.
Bucket S3 privado existe con nombre alcaldia
InfoGET https://alcaldia.s3.amazonaws.com retorna 403 AccessDenied (bucket existe, no listable). Sugiere infraestructura cloud asociada a la entidad.
Bucket existe pero está cerrado al público. Útil como pista de inventario cloud — en un escenario de takeover (entidad deja de pagar AWS), un atacante podría reclamar el nombre. Recomendación: documentar y monitorear.
Bucket GCS privado existe con nombre alcaldia
InfoGET https://storage.googleapis.com/alcaldia retorna 403 AccessDenied (bucket existe, no listable). Sugiere infraestructura cloud asociada a la entidad.
Bucket existe pero está cerrado al público. Útil como pista de inventario cloud — en un escenario de takeover (entidad deja de pagar AWS), un atacante podría reclamar el nombre. Recomendación: documentar y monitorear.
Hallazgo agrupado por similitud semántica (69 findings, 41 entidades)
AltaML clustering identificó 69 findings similares afectando 41 entidades distintas. Categoría dominante: divulgacion_informacion. Severidades: {'alta': 69}. Muestra: WordPress REST expone listado de usuarios en prosperidadsocial.gov.co | WordPress REST expone listado de usuarios en relatoria.colombiacompra.gov.co | WordPress REST expone listado de usuarios en esap.edu.co.
Findings agrupados por similitud semántica reflejan una vulnerabilidad común (causa raíz compartida): mismo proveedor, misma configuración por defecto, o mismo template institucional sin endurecer. Resolver el problema en una entidad sin coordinar con las demás deja el problema activo en N-1 entidades.
Hallazgo agrupado por similitud semántica (21 findings, 21 entidades)
AltaML clustering identificó 21 findings similares afectando 21 entidades distintas. Categoría dominante: datos_personales. Severidades: {'alta': 21}. Muestra: SPF ausente en secretariasenado.gov.co | SPF ausente en gov.co | SPF ausente en relatoria.colombiacompra.gov.co.
Findings agrupados por similitud semántica reflejan una vulnerabilidad común (causa raíz compartida): mismo proveedor, misma configuración por defecto, o mismo template institucional sin endurecer. Resolver el problema en una entidad sin coordinar con las demás deja el problema activo en N-1 entidades.
Hallazgo agrupado por similitud semántica (5 findings, 37 entidades)
AltaML clustering identificó 5 findings similares afectando 37 entidades distintas. Categoría dominante: software_obsoleto. Severidades: {'alta': 5}. Muestra: Stack EOL 'IIS 8.5 (Win 2012 R2 EOL)' presente en 14 entidades del Estado | Stack EOL 'PHP 7.4 (EOL)' presente en 13 entidades del Estado | Stack EOL 'PHP 7.3 (EOL)' presente en 3 entidades del Estado.
Findings agrupados por similitud semántica reflejan una vulnerabilidad común (causa raíz compartida): mismo proveedor, misma configuración por defecto, o mismo template institucional sin endurecer. Resolver el problema en una entidad sin coordinar con las demás deja el problema activo en N-1 entidades.
Sin canal estandar de divulgacion responsable
MediaNinguno de los 14 subdominios alcanzables publica /.well-known/security.txt (RFC 9116).
Un investigador que descubra una vulnerabilidad no tiene canal estandarizado para reportar antes de publicar. Crisis va a prensa antes que a la entidad.
Headers exponen versiones de stack en 2 hosts
MediaEjemplos: test.cali.gov.co: X-Powered-By=PHP/7.2.34; planeacion.cali.gov.co: X-Powered-By=PHP/5.5.38.
Cada header de version acelera la explotacion de vulnerabilidades especificas. Buena practica: ocultar Server, X-Powered-By, X-Generator en respuestas externas.
Cookies sin Secure o SameSite en 1 hosts
MediaHosts afectados: planeacion.cali.gov.co.
Sin Secure las cookies viajan en HTTP plano si HSTS no aplica. Sin SameSite quedan expuestas a CSRF.
Headers de seguridad insuficientes (0/8)
MediaApex cali.gov.co solo presenta 0 de 8 headers de seguridad esperados (HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy, X-XSS-Protection, COOP).
Headers de seguridad activan protecciones del navegador del usuario contra inyeccion, clickjacking y mixed content. Bajos = exposicion al usuario final.
Activos públicos (14)
hacienda.cali.gov.co
subdominio
HTTPS error: <urlopen error timed out>. FQDN publicado en DNS publico (IP 200.29.103.85).
Observado: 2026-05-02
geoportal.cali.gov.co
subdominio
Server: nginx/1.16.1
Tech: Nginx. Title: 404 Not Found
Observado: 2026-05-02
test.cali.gov.co
ambiente no produccion
Server: nginx/1.16.1
Tech: Nginx, PHP 7.2 (EOL). Title: Alcaldía de Cali
Observado: 2026-05-02
sig.cali.gov.co
subdominio
Server: nginx/1.16.1
Tech: Nginx. Title: Daruma Software | Quality Management Software
Observado: 2026-05-02
ftp.cali.gov.co
subdominio
HTTPS error: <urlopen error timed out>. FQDN publicado en DNS publico (IP 200.29.103.92).
Observado: 2026-05-02
alcaldia.cali.gov.co
subdominio
HTTPS error: <urlopen error timed out>. FQDN publicado en DNS publico (IP 200.29.103.77).
Observado: 2026-05-02
salud.cali.gov.co
subdominio
Server: nginx/1.16.1
Tech: Nginx. Title: Alcaldia de santiago de cali
Observado: 2026-05-02
www.cali.gov.co
portal principal
Server: nginx
Tech: Nginx. Title: Alcaldía de Santiago de Cali
Observado: 2026-05-02
seguridad.cali.gov.co
subdominio
Server: nginx/1.16.1
Tech: Nginx. Title: Alcaldia de santiago de cali
Observado: 2026-05-02
datos.cali.gov.co
subdominio
Server: nginx/1.16.1
Tech: Nginx. Title: Datos Abiertos Cali
Observado: 2026-05-02
intranet.cali.gov.co
intranet
Server: nginx/1.16.1
Tech: Nginx, WordPress. Title: Intranet – Alcaldía de Santiago de Cali
Observado: 2026-05-02
planeacion.cali.gov.co
subdominio
Server: nginx/1.16.1
Tech: Nginx, PHP 5 (EOL). Title: SAUL - [SISTEMA AUTOMATIZADO EN LINEA]
Observado: 2026-05-02
dashboard.cali.gov.co
subdominio
Server: nginx/1.16.1
Tech: Apache, Nginx. Title: ThingsBoard
Observado: 2026-05-02
pagos.cali.gov.co
subdominio
Tech: no fingerprint. Title: -
Observado: 2026-05-02