Crítico

Hospital Universitario de la Samaritana ESE

Rama Ejecutiva · Sector salud · Empresa Social del Estado (ESE)

Resumen ejecutivoRiesgo CRÍTICO

Riesgo crítico. La entidad acumula 10 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: 41Críticas: 10Altas: 8Medias: 4Sistémicas: 7
Cobertura100
Postura de seguridad15
Divulgación responsable0
Consistencia operativa100

Hallazgos (41)

phpMyAdmin accesible en citas.hus.org.co

Critica

GET https://citas.hus.org.co/phpmyadmin/

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

phpMyAdmin accesible en www.hus.org.co

Critica

GET https://www.hus.org.co/phpmyadmin/

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

phpMyAdmin accesible en hus.org.co

Critica

GET https://hus.org.co/phpmyadmin/

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

WordPress REST expone listado de usuarios en citas.hus.org.co

Alta

GET https://citas.hus.org.co/wp-json/wp/v2/users retorna JSON con usuarios (id/name/slug). Sample: [{"id":8,"name":"Camila Vasquez","url":"","description":"","link":"https:\/\/www.hus.org.co\/author\/camila-vasquezhus-org-co\/","slug":"camila-vasquezhus-org-co","avatar_urls":{"24":"https:\/\/secure

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.

WordPress REST expone listado de usuarios en www.hus.org.co

Alta

GET https://www.hus.org.co/wp-json/wp/v2/users retorna JSON con usuarios (id/name/slug). Sample: [{"id":8,"name":"Camila Vasquez","url":"","description":"","link":"https:\/\/www.hus.org.co\/author\/camila-vasquezhus-org-co\/","slug":"camila-vasquezhus-org-co","avatar_urls":{"24":"https:\/\/secure

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.

WordPress REST expone listado de usuarios en hus.org.co

Alta

GET https://hus.org.co/wp-json/wp/v2/users retorna JSON con usuarios (id/name/slug). Sample: [{"id":8,"name":"Camila Vasquez","url":"","description":"","link":"https:\/\/www.hus.org.co\/author\/camila-vasquezhus-org-co\/","slug":"camila-vasquezhus-org-co","avatar_urls":{"24":"https:\/\/secure

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.

Certificado wildcard cubre 1 dominios en hus.org.co

Media

Wildcards en SAN: *.hus.org.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 hus.org.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.

Bucket S3 privado existe con nombre hospital

Info

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

Info

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

Info

GET https://hospital.blob.core.windows.net 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 hospital-staging

Info

GET https://hospital-staging.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 hospital-public

Info

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

Info

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

Info

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

Info

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

Info

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

Info

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

Info

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

Info

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

Bucket S3 privado existe con nombre hus

Info

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

Info

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

Info

GET https://hus-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 hus-files

Info

GET https://hus-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 S3 privado existe con nombre hus-media

Info

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

Info

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

Info

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

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 ese-hus-cundinamarca (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 ese-hus-cundinamarca (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 ese-hus-cundinamarca (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.).

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 hus.org.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.hus.org.co publica politica permisiva.

Politica quarantine no rechaza correos no autenticados. Atacante puede suplantar @hus.org.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 (69 findings, 41 entidades)

Alta

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

Sin canal estandar de divulgacion responsable

Media

Ninguno de los 3 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 de seguridad insuficientes (0/8)

Media

Apex hus.org.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 (3)

citas.hus.org.co

subdominio

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

Server: Apache/2.4.57 (Debian)

Tech: Apache, WordPress. Title: Hospital Universitario La Samaritana

Observado: 2026-05-02

www.hus.org.co

portal principal

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

Server: Apache/2.4.57 (Debian)

Tech: Apache, WordPress. Title: Hospital Universitario La Samaritana

Observado: 2026-05-02

hus.org.co

portal principal

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

Server: Apache/2.4.57 (Debian)

Tech: Apache, WordPress. Title: Hospital Universitario La Samaritana

Observado: 2026-05-02