Ciberseguridad

La agencia federal de ciberseguridad de EE.UU. expuso sus claves AWS en GitHub

Susan Hill

Un investigador de GitGuardian llamado Guillaume Valadon estaba revisando commits públicos de GitHub cuando se cruzó con un repositorio cuyo nombre parecía un descuido grueso: Private-CISA. Pertenecía a un contratista de la Cybersecurity and Infrastructure Security Agency, el organismo federal encargado de defender las redes del gobierno estadounidense, y adentro había credenciales de administrador de tres cuentas de AWS GovCloud, un archivo separado por comas con usuarios y contraseñas en texto plano de decenas de sistemas internos de CISA, y notas paso a paso sobre cómo la agencia construye, prueba y despliega su propio software. El mismo contratista también apagó la función de GitHub que revisa los envíos en busca de secretos expuestos.

Dos nombres de archivo dentro del árbol Private-CISA hacen casi todo el daño por sí solos. Uno, importantAWStokens, lista las claves de administrador de los tres servidores GovCloud. El otro, AWS-Workspace-Firefox-Passwords.csv, es exactamente lo que parece: una exportación de contraseñas de Firefox, en texto claro, que cubre los entornos internos de CISA, el artifactory donde la agencia guarda sus paquetes de código y su Landing Zone DevSecOps, el espacio controlado donde los equipos federales escriben y revisan código cercano a lo clasificado. No hay capa de cifrado, no hay referencia a un gestor de secretos, no hay rotación de tokens. Es un CSV.

AWS GovCloud es la región aislada que Amazon opera para las cargas de trabajo del gobierno estadounidense que tienen que mantenerse dentro de FedRAMP High y marcos de cumplimiento equivalentes. Las claves de nivel administrador en esa región no son credenciales cualquiera. Permiten al atacante crear cuentas nuevas, modificar la configuración de logs y levantar infraestructura dentro de una región que se supone hermética frente al Internet público. Cualquiera que haya copiado el archivo importantAWStokens durante los seis meses en que estuvo a la vista pudo haber entrado directo a ese entorno.

La rutina del contratista, para quienes después revisaron el historial de commits, se parecía a una pura comodidad. Los envíos al repositorio tenían la cadencia de alguien que sincroniza archivos entre la computadora de la oficina y la de su casa por Git. Para que ese flujo funcionara sin disparar las alarmas de detección de secretos, el dueño de la cuenta tuvo que apagar a mano la protección por defecto de GitHub, una opción que existe justamente para frenar este tipo de descuidos. El bloqueo quedó apagado y los commits empezaron.

El comunicado oficial de CISA presenta el episodio como contenido. ‘No hay indicios de que ningún dato sensible se haya visto comprometido a raíz de este incidente’, informó la agencia, y agregó que reforzará sus salvaguardas. La afirmación es más estrecha de lo que parece. Para saber con certeza que ninguna cuenta de GovCloud fue abusada durante seis meses, un auditor tiene que revisar cada entrada de CloudTrail, cada cambio de rol IAM y cada inicio de sesión en los workspaces de ese intervalo, y CISA no dijo que ese trabajo se hiciera; solo dijo que, hasta ahora, no ve evidencias. Observadores independientes notaron además que las claves de acceso de AWS filtradas siguieron siendo válidas durante unas cuarenta y ocho horas después de que el repositorio se retirara, ventana en la que cualquier copia previa todavía habría funcionado.

Es la misma agencia que coordina el programa federal Secret Sprawl, publica guías para otros departamentos sobre higiene de credenciales y advierte una y otra vez a los operadores privados de que exponer tokens de API en repositorios de código es una de las puertas de entrada más comunes para los grupos de ransomware. Su propio Catálogo de Vulnerabilidades Explotadas Conocidas, el que los contratistas federales están obligados por ley a vigilar, clasifica las credenciales en la nube sin rotar como hallazgo de severidad alta. El repositorio Private-CISA cumplió con todos los criterios que la agencia usa cuando les dice a los demás que fallaron.

Valadon, parte del equipo de investigación de GitGuardian, contó que el hallazgo le costó digerirlo incluso después de verificarlo. ‘Contraseñas en texto plano dentro de un CSV, copias de seguridad en Git, comandos explícitos para desactivar la detección de secretos de GitHub’, escribió. ‘Sinceramente creí que todo era falso hasta que analicé el contenido a fondo. Es, sin duda, la peor fuga que vi en mi carrera.’ GitGuardian avisó a CISA el 15 de mayo y el repositorio pasó a privado durante el fin de semana siguiente.

Lo que CISA todavía no aclaró en público es si las cuentas de GovCloud afectadas se rotaron por completo, qué sistemas internos del CSV de contraseñas cambiaron sus credenciales y si la Oficina del Inspector General del Departamento de Seguridad Nacional abrirá una revisión formal. El contratista, que según los reportes trabaja para la empresa federal de ciberseguridad Nightwing, no fue identificado. El repositorio se creó el 13 de noviembre de 2025 y se retiró a mediados de mayo de 2026, lo que deja una ventana de exposición pública de seis meses y dos días. La próxima cifra que el público merece conocer es cuántos de esos días las claves estuvieron realmente en uso.

Etiquetas: , , , , , , ,

Debate

Hay 0 comentarios.