Crítico

Contraloría General del Atlántico

Organismos de Control · Sector control · Contraloría territorial

Resumen ejecutivoRiesgo CRÍTICO

Riesgo crítico. La entidad acumula 13 hallazgos críticos verificados. La superficie de ataque concurrente sugiere falta de auditoría reciente y configuraciones por defecto sin endurecer. Adicionalmente, 7 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: cerrar acceso público a paneles administrativos (restringir por IP/VPN) y verificar credenciales por defecto.

Total: 55Críticas: 13Altas: 4Medias: 5Sistémicas: 7
Cobertura100
Postura de seguridad20
Divulgación responsable0
Consistencia operativa100

Hallazgos (55)

phpMyAdmin accesible en contraloriadelatlantico.gov.co

Critica

GET https://contraloriadelatlantico.gov.co/phpmyadmin/

phpMyAdmin público + credenciales débiles/default = compromiso total de DB. Recomendación: nunca exponer phpMyAdmin a internet.

phpMyAdmin accesible en www.contraloriadelatlantico.gov.co

Critica

GET https://www.contraloriadelatlantico.gov.co/phpmyadmin/

phpMyAdmin público + credenciales débiles/default = compromiso total de DB. Recomendación: nunca exponer phpMyAdmin a internet.

Joomla manifest XML accesible en contraloriadelatlantico.gov.co

Media

GET https://contraloriadelatlantico.gov.co/administrator/manifests/files/joomla.xml retorna joomla.xml con versión.

Manifest revela versión exacta — facilita CVE matching.

Joomla manifest XML accesible en www.contraloriadelatlantico.gov.co

Media

GET https://www.contraloriadelatlantico.gov.co/administrator/manifests/files/joomla.xml retorna joomla.xml con versión.

Manifest revela versión exacta — facilita CVE matching.

Metadata de autor en PDF público de contraloriadelatlantico.gov.co

Baja

PDF https://contraloriadelatlantico.gov.co/doc/lacontraloria/ORGANIGRAMA_CGDA-.pdf embebe Author=ZOILALUZ Creator=þÿMicrosoft® Excel® 2010 Producer=þÿMicrosoft® Excel® 2010

Metadata de autor en PDFs publicados revela nombres reales de funcionarios y software interno usado. Riesgo bajo pero buena práctica limpiar.

Metadata de autor en PDF público de contraloriadelatlantico.gov.co

Baja

PDF https://contraloriadelatlantico.gov.co/doc/planes/auditorias/PGA_2018_V._1.pdf embebe Author=LUIS CARLOS PERTUZ Creator=þÿMicrosoft® Excel® 2016 Producer=þÿMicrosoft® Excel® 2016

Metadata de autor en PDFs publicados revela nombres reales de funcionarios y software interno usado. Riesgo bajo pero buena práctica limpiar.

Metadata de autor en PDF público de contraloriadelatlantico.gov.co

Baja

PDF https://contraloriadelatlantico.gov.co/doc/planes/auditorias/PGA_2017_V._1.pdf embebe Author=LUIS CARLOS PERTUZ Creator=þÿMicrosoft® Excel® 2010 Producer=þÿMicrosoft® Excel® 2010

Metadata de autor en PDFs publicados revela nombres reales de funcionarios y software interno usado. Riesgo bajo pero buena práctica limpiar.

Metadata de autor en PDF público de www.contraloriadelatlantico.gov.co

Baja

PDF https://contraloriadelatlantico.gov.co/doc/lacontraloria/ORGANIGRAMA_CGDA-.pdf embebe Author=ZOILALUZ Creator=þÿMicrosoft® Excel® 2010 Producer=þÿMicrosoft® Excel® 2010

Metadata de autor en PDFs publicados revela nombres reales de funcionarios y software interno usado. Riesgo bajo pero buena práctica limpiar.

Metadata de autor en PDF público de www.contraloriadelatlantico.gov.co

Baja

PDF https://contraloriadelatlantico.gov.co/doc/planes/auditorias/PGA_2018_V._1.pdf embebe Author=LUIS CARLOS PERTUZ Creator=þÿMicrosoft® Excel® 2016 Producer=þÿMicrosoft® Excel® 2016

Metadata de autor en PDFs publicados revela nombres reales de funcionarios y software interno usado. Riesgo bajo pero buena práctica limpiar.

Metadata de autor en PDF público de www.contraloriadelatlantico.gov.co

Baja

PDF https://contraloriadelatlantico.gov.co/doc/planes/auditorias/PGA_2017_V._1.pdf embebe Author=LUIS CARLOS PERTUZ Creator=þÿMicrosoft® Excel® 2010 Producer=þÿMicrosoft® Excel® 2010

Metadata de autor en PDFs publicados revela nombres reales de funcionarios y software interno usado. Riesgo bajo pero buena práctica limpiar.

Bucket S3 privado existe con nombre atlantico

Info

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

Info

GET https://atlantico-media.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 general

Info

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

Info

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

Info

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

Info

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

Info

GET https://general-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 general-dev

Info

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

Info

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

Info

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

Info

GET https://storage.googleapis.com/general-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 GCS privado existe con nombre general-uploads

Info

GET https://storage.googleapis.com/general-uploads 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 público general-public asociable a ctr-atlantico

Critica

GET https://storage.googleapis.com/general-public?list-type=2 retorna ListBucketResult — bucket es listable públicamente. Body sample: <?xml version='1.0' encoding='UTF-8'?><ListBucketResult xmlns='http://doc.s3.amazonaws.com/2006-03-01'><Name>general-public</Name><Prefix></Prefix><KeyCount>8</KeyCount><IsTruncated>false</IsTruncated

Un bucket cloud listable expone todos los objetos al público. Si la entidad lo creó para almacenamiento operacional, expone documentos, backups, archivos sensibles. Verificar ownership y bloquear acceso público inmediatamente.

Bucket S3 privado existe con nombre general-private

Info

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

Info

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

Info

GET https://general-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 general-data

Info

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

Info

GET https://general-files.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 público general-files asociable a ctr-atlantico

Critica

GET https://storage.googleapis.com/general-files?list-type=2 retorna ListBucketResult — bucket es listable públicamente. Body sample: <?xml version='1.0' encoding='UTF-8'?><ListBucketResult xmlns='http://doc.s3.amazonaws.com/2006-03-01'><Name>general-files</Name><Prefix></Prefix><NextContinuationToken>Cll1c2Vycy9kb2N1bWVudHMvNWEwOGY

Un bucket cloud listable expone todos los objetos al público. Si la entidad lo creó para almacenamiento operacional, expone documentos, backups, archivos sensibles. Verificar ownership y bloquear acceso público inmediatamente.

Bucket GCS privado existe con nombre general-media

Info

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

Info

GET https://general-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 general-assets

Info

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

Info

GET https://general-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 general-app

Info

GET https://storage.googleapis.com/general-app 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 general-web

Info

GET https://general-web.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 general-tmp

Info

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

Info

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

Info

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

Info

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

Hallazgo sistémico en 12 entidades — phpMyAdmin accesible

Critica

Mismo patrón crítico detectado en 12 entidades del Estado: alc-armenia, alc-palmira, alc-villavicencio, car-cra-atlantico, ctr-atlantico, ese-hus-cundinamarca, ese-subred-norte, gob-cordoba.... 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 83 entidades — Hallazgo sistémico

Critica

Mismo 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 10 entidades — phpMyAdmin unknown expuesto

Critica

Mismo patrón crítico detectado en 10 entidades del Estado: alc-armenia, alc-palmira, alc-villavicencio, car-cra-atlantico, ctr-atlantico, ese-hus-cundinamarca, ese-subred-norte, gob-cordoba.... 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.

phpMyAdmin unknown expuesto en ctr-atlantico (control DB potencial)

Critica

phpMyAdmin versión unknown accesible públicamente. Vector clásico de credential stuffing (admin/admin, root/blank, root/root). Versiones <5.1 acumulan CVEs sin parche.

phpMyAdmin es la consola web de MySQL/MariaDB. Si tiene credenciales débiles o por defecto, un atacante obtiene acceso completo a la base de datos en una request. Versión específica permite match contra CVE database (CVE-2020-26935, CVE-2018-19968, etc.).

phpMyAdmin unknown expuesto en ctr-atlantico (control DB potencial)

Critica

phpMyAdmin versión unknown accesible públicamente. Vector clásico de credential stuffing (admin/admin, root/blank, root/root). Versiones <5.1 acumulan CVEs sin parche.

phpMyAdmin es la consola web de MySQL/MariaDB. Si tiene credenciales débiles o por defecto, un atacante obtiene acceso completo a la base de datos en una request. Versión específica permite match contra CVE database (CVE-2020-26935, CVE-2018-19968, etc.).

Bucket cloud público con 8+ objetos listables asociado a ctr-atlantico

Critica

Bucket cloud retorna ListBucketResult/EnumerationResults con ≥8 objetos visibles en primeros 64 KB. Muestras: 398graham/, 398graham/Contract of Sale of Real Estate - 398 Graham Street, Port Melbourne.pdf, 398graham/Section 32 - 398 Graham Street, Port Melbourne.pdf, Record_2024-08-13-08-36-56.mp4, twilio/.

Un bucket cloud listable con N objetos visibles entrega un mapa completo del almacenamiento. Cada objeto es potencialmente descargable. Si la entidad usa el bucket para backups, documentos sensibles o assets internos, hay exfiltración masiva trivial.

Bucket cloud público con 217+ objetos listables asociado a ctr-atlantico

Critica

Bucket cloud retorna ListBucketResult/EnumerationResults con ≥217 objetos visibles en primeros 64 KB. Muestras: buys/, buys/0028c50a-d8f9-480d-b92f-f93a9b21d949_04 RECIBO Nª 119 Y CONTRATO Nª 73.pdf, buys/005d18c7-f989-4d98-937c-ef49fa6d356d_Screen Shot 2021-10-26 at 12.00.19 AM.png, buys/0096f9b8-e474-4efa-ad37-c22fbc0d8519_03 RECIBO Nª 58 Y CONTRATO Nª 34.pdf, buys/00b21e17-04ce-417f-8638-3c25264ffe24_05 RECIBO Nª 352 Y CONTRATO Nª 252.pdf.

Un bucket cloud listable con N objetos visibles entrega un mapa completo del almacenamiento. Cada objeto es potencialmente descargable. Si la entidad usa el bucket para backups, documentos sensibles o assets internos, hay exfiltración masiva trivial.

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

Critica

ML clustering identificó 201 findings similares afectando 151 entidades distintas. Categoría dominante: configuracion_expuesta. Severidades: {'critica': 201}. Muestra: Bucket GCS público recursos-app asociable a adres | Bucket GCS público recursos-web asociable a adres | Bucket GCS público adr-test asociable a adr.

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

Critica

ML clustering identificó 21 findings similares afectando 12 entidades distintas. Categoría dominante: panel_admin_expuesto. Severidades: {'critica': 21}. Muestra: phpMyAdmin accesible en educacion.cordoba.gov.co | phpMyAdmin accesible en sig.villavicencio.gov.co | phpMyAdmin accesible en gobierno.villavicencio.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.

Sin registros CAA

Alta

dig CAA contraloriadelatlantico.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.

Sin DMARC publicado

Alta

_dmarc.contraloriadelatlantico.gov.co no devuelve registro TXT.

Sin DMARC, cualquier atacante puede suplantar correos @contraloriadelatlantico.gov.co sin restriccion. Spoofing trivial contra ciudadanos y proveedores.

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

Alta

ML clustering identificó 94 findings similares afectando 94 entidades distintas. Categoría dominante: datos_personales. Severidades: {'alta': 94}. Muestra: Sin DMARC publicado | Sin DMARC publicado | Sin DMARC publicado.

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

Cookies sin Secure o SameSite en 2 hosts

Media

Hosts afectados: contraloriadelatlantico.gov.co, www.contraloriadelatlantico.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)

Media

Apex contraloriadelatlantico.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 (6)

mail.contraloriadelatlantico.gov.co

email

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

contraloriadelatlantico.gov.co

portal principal

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

Server: nginx

Tech: Joomla, Nginx. Title: Contraloría Departamental del Atlántico

Observado: 2026-05-02

webmail.contraloriadelatlantico.gov.co

email

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

www.contraloriadelatlantico.gov.co

portal principal

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

Server: nginx

Tech: Joomla, Nginx. Title: Contraloría Departamental del Atlántico

Observado: 2026-05-02

autodiscover.contraloriadelatlantico.gov.co

email

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

HTTPS error: <urlopen error [Errno 61] Connection refused>. FQDN publicado en DNS publico (IP 52.96.119.88).

Observado: 2026-05-02

ftp.contraloriadelatlantico.gov.co

subdominio

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

Server: nginx

Tech: Nginx. Title: Success!

Observado: 2026-05-02