Crítico

Secretaria Distrital de Ambiente de Bogota

Rama Ejecutiva · Sector ambiente · Corporación Autónoma Regional

Resumen ejecutivoRiesgo CRÍTICO

Riesgo crítico. Se detectaron 2 vulnerabilidades catalogadas por CISA como activamente explotadas en ataques reales (CVE-2024-4577, CVE-2021-22175). No son riesgos teóricos: equivalen a fallas conocidas y publicadas que atacantes ya están usando contra otras organizaciones. Adicionalmente, 9 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: bloquear acceso público a /.git/* en el web server y auditar la historia del repositorio por credenciales commiteadas.

Total: 38Críticas: 5Altas: 12Medias: 9Sistémicas: 9CISA KEV: 2
Cobertura100
Postura de seguridad35
Divulgación responsable0
Consistencia operativa100

Hallazgos (38)

Repositorio .git accesible publicamente en oab.ambientebogota.gov.co

Critica

GET https://oab.ambientebogota.gov.co/.git/config retorna HTTP 200 con contenido valido de Git ([core] repositoryformatversion = 0 filemode = true bare = false logallrefupd...). El directorio .git completo es descargable.

Acceso al .git permite descarga del codigo fuente completo, historial de commits, credenciales eliminadas en versiones previas, archivos de configuracion. Es uno de los hallazgos mas graves: equivale a entregar el repositorio interno al publico.

CVE-2022-31625: PHP heap use-after-free en pg_query_params

Alta

Stack PHP 7.4 (EOL nov-2022) detectado. CVE-2022-31625 afecta esta version y permite el comportamiento descrito sin parche post-EOL.

Afecta PHP 7.4.x. Explotable si el portal usa funciones Postgres con input controlado.

CVE-2022-37454: SHA-3 buffer overflow — afecta PHP 7.4

Alta

Stack PHP 7.4 (EOL nov-2022) detectado. CVE-2022-37454 afecta esta version y permite el comportamiento descrito sin parche post-EOL.

Buffer overflow en hash extension. PHP 7.4 EOL recibe parche limitado.

URLs de ambiente interno/no-producción referenciadas desde ambientebogota.gov.co

Alta

Bundle del portal incluye referencias a hosts internos/staging: http://192.168.175.241

Las URLs internas en código de producción revelan topología, hostnames de staging/dev y a veces APIs no destinadas al público. Acelera reconocimiento y descubre superficie no autorizada.

Stack EOL 'PHP 7.4 (EOL)' presente en 13 entidades del Estado

Alta

Entidades con esta tech: alc-bucaramanga, alc-ibague, car-cda, car-cdmb, car-corpoamazonia, car-corponarino, car-sda-bogota, ese-pasto-salud

Software fuera de soporte (PHP 7.4 (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.

robots.txt revela 2 ruta(s) sensibles en oab.ambientebogota.gov.co

Media

Disallow/Allow incluye: /wp-admin/admin-ajax.php, /wp-admin/. 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 TLS de ambientebogota.gov.co expira en 0 días

Media

Cert vence el May 2 23:59:59 2026 GMT.

Renovación próxima — confirmar automatización (Let's Encrypt cron, AWS ACM auto-renew). Si no, riesgo de outage.

Certificado wildcard cubre 1 dominios en ambientebogota.gov.co

Media

Wildcards en SAN: *.ambientebogota.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 ambientebogota.gov.co

Media

No 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.

DNS de ambientebogota.gov.co totalmente fuera de Colombia

Media

NS records: ns-cloud-b2.googledomains.com, ns-cloud-b3.googledomains.com, ns-cloud-b1.googledomains.com, ns-cloud-b4.googledomains.com

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.

Bucket S3 privado existe con nombre secretaria

Info

GET https://secretaria.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 secretaria

Info

GET https://storage.googleapis.com/secretaria 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 secretaria-assets

Info

GET https://secretaria-assets.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 sda

Info

GET https://storage.googleapis.com/sda 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 sda-dev

Info

GET https://sda-dev.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 sda-backup

Info

GET https://storage.googleapis.com/sda-backup 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 sda-public

Info

GET https://sda-public.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 sda-data

Info

GET https://sda-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 GCS privado existe con nombre sda-data

Info

GET https://storage.googleapis.com/sda-data 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 sda-assets

Info

GET https://sda-assets.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 sda-app

Info

GET https://sda-app.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 sda-test

Info

GET https://storage.googleapis.com/sda-test 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.

Repositorio Git público con remote identificable en car-sda-bogota

Critica

GET /.git/config retorna config válida con remotes: https://github.com/jbolanosrmc/oab-wp.git. git-dumper recovery del repo completo es trivial.

Un .git/config visible identifica el repositorio remoto (GitHub/GitLab privado de la entidad). Aún sin acceso al remoto, el atacante puede recuperar el TODO el árbol de archivos del .git público con git-dumper, obteniendo: código fuente completo, lógica de negocio, validaciones cliente, comentarios internos, credenciales históricas commiteadas.

Hallazgo agrupado por similitud semántica (5 findings, 4 entidades)

Critica

ML clustering identificó 5 findings similares afectando 4 entidades distintas. Categoría dominante: codigo_fuente_expuesto. Severidades: {'critica': 5}. Muestra: Repositorio .git accesible publicamente en orfeo.crautonoma.gov.co | Repositorio .git accesible publicamente en oab.ambientebogota.gov.co | Repositorio .git accesible publicamente en agenda.upn.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.

CISA KEV CVE-2024-4577: php 7.4 en car-sda-bogota (explotación activa documentada; en uso por ransomware activo)

Critica

La versión detectada php 7.4 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.

CISA KEV CVE-2021-22175: gitlab . en car-sda-bogota (explotación activa documentada)

Critica

La versión detectada gitlab . corresponde a vendor='gitlab' product='gitlab' con 1 CVE en el catálogo CISA KEV. Esta CVE específica (CVE-2021-22175: GitLab Server-Side Request Forgery (SSRF) Vulnerability) está documentada como explotada activamente por atacantes en producción (catalog dateAdded=2026-02-18, dueDate gov US=2026-03-11).

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.

Sin registros CAA

Alta

dig CAA ambientebogota.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 none (no reject)

Alta

_dmarc.ambientebogota.gov.co publica politica permisiva.

Politica none no rechaza correos no autenticados. Atacante puede suplantar @ambientebogota.gov.co contra ciudadanos del territorio.

Hallazgo agrupado por similitud semántica (299 findings, 299 entidades)

Alta

ML 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)

Alta

ML 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 (12 findings, 12 entidades)

Alta

ML clustering identificó 12 findings similares afectando 12 entidades distintas. Categoría dominante: dependencias_vulnerables. Severidades: {'alta': 12}. Muestra: CVE-2022-31625: PHP heap use-after-free en pg_query_params | CVE-2022-31625: PHP heap use-after-free en pg_query_params | CVE-2022-31625: PHP heap use-after-free en pg_query_params.

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 (12 findings, 12 entidades)

Alta

ML clustering identificó 12 findings similares afectando 12 entidades distintas. Categoría dominante: dependencias_vulnerables. Severidades: {'alta': 12}. Muestra: CVE-2022-37454: SHA-3 buffer overflow — afecta PHP 7.4 | CVE-2022-37454: SHA-3 buffer overflow — afecta PHP 7.4 | CVE-2022-37454: SHA-3 buffer overflow — afecta PHP 7.4.

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 (10 findings, 10 entidades)

Alta

ML clustering identificó 10 findings similares afectando 10 entidades distintas. Categoría dominante: divulgacion_informacion. Severidades: {'alta': 10}. Muestra: URLs de ambiente interno/no-producción referenciadas desde datos.gov.co | URLs de ambiente interno/no-producción referenciadas desde sgc.gov.co | URLs de ambiente interno/no-producción referenciadas desde defensacivil.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)

Alta

ML 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

Media

Ninguno de los 15 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 4 hosts

Media

Ejemplos: oab.ambientebogota.gov.co: X-Powered-By=PHP/7.4.33; www.oab.ambientebogota.gov.co: X-Powered-By=PHP/7.4.33; cimab.ambientebogota.gov.co: X-Powered-By=PHP/7.4.33.

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 2 hosts

Media

Hosts afectados: eva.ambientebogota.gov.co, ambientebogota.gov.co.

Sin Secure las cookies viajan en HTTP plano si HSTS no aplica. Sin SameSite quedan expuestas a CSRF.

Headers de seguridad insuficientes (3/8)

Media

Apex ambientebogota.gov.co solo presenta 3 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 (15)

ftp.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Server: nginx

Tech: Nginx. Title: -

Observado: 2026-05-02

gisdev.ambientebogota.gov.co

ambiente no produccion

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Server: Apache/2.4.57 (Win32) OpenSSL/3.1.3 mod_fcgid/2.3.9 mod-mapcache/1.15dev

Tech: Apache. Title: MS4W - MapServer for Windows

Observado: 2026-05-02

oab.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Tech: PHP 7.4 (EOL), WordPress. Title: Observatorio Ambiental de Bogotá » Datos e indicadores para medir la calidad del ambiente en Bogotá

Observado: 2026-05-02

www.oab.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Tech: PHP 7.4 (EOL), WordPress. Title: Observatorio Ambiental de Bogotá » Datos e indicadores para medir la calidad del ambiente en Bogotá

Observado: 2026-05-02

cimab.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Tech: PHP 7.4 (EOL), WordPress. Title: Observatorio Ambiental de Bogotá » Datos e indicadores para medir la calidad del ambiente en Bogotá

Observado: 2026-05-02

datos.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Server: nginx/1.20.1

Tech: Nginx. Title: Arrow - Sistema de Información para la Administración de Indicadores del Observatorio de Ambiente de Bogotá

Observado: 2026-05-02

mapas.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Server: Microsoft-IIS/10.0

Tech: IIS 10. Title: IIS Windows Server

Observado: 2026-05-02

documentos.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

HTTPS error: <urlopen error [SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1016)>. FQDN publicado en DNS publico (IP 142.251.129.211).

Observado: 2026-05-02

nuevo.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Server: Apache

Tech: Apache. Title: -

Observado: 2026-05-02

eva.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Tech: Cloudflare. Title: EVA - Iniciar Sesión

Observado: 2026-05-02

ambientebogota.gov.co

portal principal

3/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Server: Apache-Coyote/1.1

Tech: Apache, Liferay, Tomcat. Title: Página inicial - Secretar&iacute;a Distrital de Ambiente

Observado: 2026-05-02

portal.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

HTTPS error: <urlopen error [SSL] record layer failure (_ssl.c:1016)>. FQDN publicado en DNS publico (IP 190.27.245.106).

Observado: 2026-05-02

gis.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Server: nginx/1.14.0 (Ubuntu)

Tech: Cloudflare, Nginx. Title: Visor Geográfico Ambiental

Observado: 2026-05-02

www2.ambientebogota.gov.co

subdominio

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Tech: no fingerprint. Title: -

Observado: 2026-05-02

www.ambientebogota.gov.co

portal principal

0/8
HTTPS
Certificado
HSTS
CSP
X-Frame-Options
X-Content-Type
Referrer-Policy
security.txt

Tech: PHP 7.4 (EOL), WordPress. Title: Observatorio Ambiental de Bogotá &raquo; Datos e indicadores para medir la calidad del ambiente en Bogotá

Observado: 2026-05-02