Secretos y credenciales
Los secretos son credenciales que conceden acceso a datos y sistemas confidenciales, incluidas las claves de API, las contraseñas, los tokens de autenticación, los certificados y las claves de cifrado. Cuando los secretos se confirman en repositorios, se convierten en parte del historial de Git y permanecen accesibles incluso después de quitarse de la confirmación más reciente.
Los secretos de los repositorios de código se pueden detectar mediante herramientas de examen automatizadas y usuarios no autorizados. Los repositorios públicos son especialmente vulnerables, pero las credenciales filtradas de los repositorios privados también se pueden distribuir a través de bifurcaciones, registros de CI/CD o integraciones de terceros.
Impacto en la seguridad de los secretos expuestos
Los secretos expuestos pueden provocar varios tipos de incidentes de seguridad:
**Acceso y uso no autorizados**
-
Las credenciales de proveedor de nube filtradas se pueden usar para aprovisionar infraestructura o servicios en su cuenta
-
Las credenciales de base de datos permiten el acceso a datos confidenciales del cliente o de la organización
-
Los tokens de cuenta de servicio proporcionan puntos de entrada a los sistemas de producción
**Problemas operativos y de cumplimiento** -
La infraestructura se puede modificar o eliminar mediante credenciales filtradas
-
Las infracciones de datos de secretos expuestos pueden dar lugar a sanciones normativas en virtud del RGPD, la CCPA y otros marcos
-
Las organizaciones se enfrentan a los costos de respuesta a incidentes, rotación de credenciales y corrección del sistema
**Riesgo organizativo** -
La divulgación pública de secretos filtrados afecta a la confianza del cliente y a la reputación de la organización
-
Los tokens del Registro de paquetes expuestos se pueden usar para publicar versiones malintencionadas del software.
-
Se pueden aprovechar las claves de API propietarias o las credenciales de servicio.
Impacto financiero de secretos expuestos
La pérdida de secretos puede dar lugar a costos directos e indirectos a su organización, desde gastos inmediatos hasta consecuencias empresariales a largo plazo.
**Costos inmediatos**
-
El uso de recursos en la nube no autorizado de claves de API filtradas puede generar cargos por instancias de proceso, almacenamiento o transferencia de datos.
-
Las operaciones mineras de criptomoneda en cuentas comprometidas pueden dar lugar a facturas de infraestructura considerables
-
La respuesta ante incidentes de emergencia requiere recursos para la investigación forense, las auditorías de seguridad y la rotación de credenciales entre sistemas
**Costos de vulneración de datos** -
Las multas normativas por infracciones de protección de datos pueden llegar a millones de dólares en virtud del RGPD, la CCPA y las regulaciones específicas del sector
-
Los costos legales incluyen investigación, requisitos de notificación y posibles litigios
-
Servicios de supervisión de crédito e protección de identidades para los clientes afectados
**Impacto operativo** -
Las interrupciones del servicio de la infraestructura en peligro provocan pérdidas de ingresos y productividad
-
El tiempo de ingeniería dedicado a responder a incidentes de seguridad desvía los recursos del desarrollo de productos.
-
Aumento de las herramientas de seguridad y la supervisión de los costos siguientes a los incidentes
**Impacto empresarial a largo plazo** -
Pérdida de clientes tras la divulgación pública de incidentes de seguridad
-
Aumento de las primas de seguro para la cobertura de responsabilidad cibernética
-
Pérdida de oportunidades de negocio debido a errores en las evaluaciones de seguridad o auditorías de cumplimiento
Escenarios comunes de pérdida de secretos
Los secretos suelen entrar en los repositorios mediante varios patrones comunes.
**Flujos de trabajo de desarrollo**
-
Credenciales codificadas de forma fija durante las pruebas locales y comprometidas inadvertidamente
-
Secretos en archivos de configuración como
.envo plantillas de infraestructura como código -
Ejemplo de credenciales que contienen los tokens reales en la documentación, wikis o ficheros LÉAME
**Administración de repositorios** -
Repositorios heredados que contienen credenciales olvidadas pero todavía activas
-
Secretos compartidos en incidencias de GitHub, comentarios de solicitud de incorporación de cambios, discusiones o gists
-
Credenciales introducidas por colaboradores externos o contratistas
**Desafíos del control de versiones** -
Los secretos se conservan en el historial de Git incluso después de la eliminación del código actual
-
Las credenciales se propagan a repositorios bifurcados, sistemas de copia de seguridad y registros
-
Los repositorios públicos con secretos expuestos se indexan mediante motores de búsqueda y servicios de examen especializados
Seguridad secreta con GitHub
GitHub proporciona herramientas para ayudarle a evitar, detectar y corregir la pérdida de secretos:
1. Impedir que se filtren nuevos secretos
Habilite la protección de inserción para los repositorios a fin de examinar el código durante las git push operaciones y bloquear las confirmaciones que contengan secretos detectados. Esto impide que las credenciales entren en los repositorios mientras proporciona comentarios en tiempo real a los desarrolladores.
Anime a los colaboradores a habilitar la protección de inserción para sus cuentas personales (la característica se denomina "protección de inserción para los usuarios") para proteger todas sus inserciones en sus repositorios, bifurcaciones y todos los repositorios a los que contribuyen a través de GitHub. Esto permite a los desarrolladores individuales evitar la pérdida de secretos sin esperar a directivas de nivel de organización.
2. Detección de secretos existentes
Use secret scanning para supervisar continuamente los repositorios de secretos confirmados y recibir alertas cuando se detecten credenciales. Esto le permite revocar y rotar las credenciales en peligro rápidamente.
Pasos siguientes
Para proteger a su organización frente a la pérdida de secretos:
-
Ejecute una evaluación gratuita de riesgos secretos para comprender la exposición actual. Descubre cómo realizar una evaluación gratuita de riesgos de información confidencial
-
Habilite la protección de inserción para evitar que se confirmen nuevos secretos.
-
Habilite secret scanning con un clic para empezar a detectar fugas de secretos.
-
Establezca prácticas seguras de administración de credenciales para los equipos de desarrollo.
Para obtener una visión general sobre las características secretas de seguridad de GitHub, consulte Acerca de la seguridad secreta con GitHub.