Configuracion de security.txt
Como configurar, previsualizar y servir tu archivo security.txt conforme a RFC 9116, el principal mecanismo de descubrimiento para hackers eticos.
Por que es importante
security.txt es la senal estandar de internet que dice “asi es como puedes reportarnos un problema de seguridad”. Definido en RFC 9116, esta respaldado por CISA y es obligatorio para las agencias federales de EE.UU. bajo la Binding Operational Directive 20-01. Los investigadores de seguridad, escaneadores de vulnerabilidades y agencias gubernamentales consultan automaticamente /.well-known/security.txt al evaluar la postura de seguridad de una organizacion.
Publicar un security.txt valido indica que tu programa es legitimo y tiene personal activo. Su ausencia indica lo contrario, y cada vez mas levanta alertas en auditores y equipos de adquisicion empresarial.
Incluso en el plan gratuito, Kit publica security.txt automaticamente cuando activas VDP. No requiere configuracion alguna.
Que es security.txt
Un archivo de texto plano servido en /.well-known/security.txt sobre HTTPS. RFC 9116 define seis directivas estandar:
| Directiva | Requerida | Descripcion |
|---|---|---|
Contact |
Si | Email o URL donde se deben enviar los reportes de vulnerabilidades |
Expires |
Si | Fecha y hora en formato ISO 8601 despues de la cual el archivo ya no debe considerarse confiable |
Policy |
No | URL de tu pagina completa de politica de divulgacion |
Acknowledgments |
No | URL de tu pagina de Hall of Fame o agradecimientos |
Hiring |
No | URL de las ofertas de empleo de tu equipo de seguridad |
Encryption |
No | URL de una clave publica PGP para comunicaciones cifradas |
Kit tambien agrega Preferred-Languages: en automaticamente.
Un archivo valido minimo se ve asi:
Contact: mailto:[email protected]
Expires: 2027-02-27T00:00:00Z
Policy: https://example.com/security/acme/.well-known/security.txt
Preferred-Languages: en
Un archivo completamente configurado incluye las seis directivas:
Contact: mailto:[email protected]
Expires: 2027-02-27T00:00:00Z
Policy: https://example.com/security/acme/policy
Acknowledgments: https://example.com/security/acme/hall-of-fame
Hiring: https://example.com/careers/security
Encryption: https://keys.example.com/pgp-key.asc
Preferred-Languages: en
Configurar security.txt
Navega a VDP > Program Settings > security.txt. Configura los siguientes campos:
| Campo | Valor por defecto | Descripcion |
|---|---|---|
| Contact Email | Email del admin de la cuenta | Se usa en la directiva Contact:. Usa un alias de seguridad monitoreado, no una bandeja personal. |
| Policy URL | Generada automaticamente | Enlace a tu pagina de politica de divulgacion. Kit la genera a partir del slug de tu programa. |
| Acknowledgments URL | Generada automaticamente | Enlace a tu pagina de Hall of Fame. Kit la genera automaticamente. |
| Hiring URL | Vacio | Enlace a las ofertas de empleo de tu equipo de seguridad. Opcional. |
| PGP Encryption URL | Vacio | URL de tu clave publica PGP alojada externamente. Opcional. |
| Expiration Days | 365 | Numero de dias en el futuro para la directiva Expires:. RFC 9116 recomienda no mas de un ano. |
Contact Email y Expiration Days son los unicos campos que la mayoria de los programas necesitan cambiar. Las URLs de Policy y Acknowledgments se generan a partir de la configuracion de tu programa y se actualizan automaticamente.
Haz clic en Preview security.txt para ver la salida sin procesar antes de guardar. Guardar cualquier campo dispara la regeneracion inmediatamente.
Donde se sirve
Kit sirve tu security.txt en dos URLs:
| URL | Cuando usarla |
|---|---|
/security/{program-slug}/.well-known/security.txt |
Alojada en Kit: funciona inmediatamente despues de activar VDP |
/.well-known/security.txt (tu dominio personalizado) |
Produccion: requiere configurar un dominio personalizado en Account Settings |
Para servir en un dominio personalizado, configura tu dominio en Account Settings > Custom Domains. Una vez configurado, Kit sirve /.well-known/security.txt en la raiz de tu dominio automaticamente. Esta es la URL que quieres que descubran los investigadores y escaneadores.
El archivo se sirve con Content-Type: text/plain; charset=utf-8 segun RFC 9116. Ambas URLs devuelven contenido identico.
Regeneracion automatica
Kit gestiona el ciclo de vida de security.txt automaticamente:
- Al guardar la configuracion – El archivo se regenera inmediatamente cuando se guarda cualquier campo de configuracion de security.txt. No se necesita un paso de publicacion manual.
- Monitoreo de expiracion – Una verificacion diaria monitorea todos los archivos publicados que esten proximos a expirar. Cuando un archivo esta a 30 dias de su fecha
Expires:, los admins de la cuenta reciben un email con un enlace directo para renovar. - Al renovar – Abrir la pagina de configuracion de security.txt y guardar (incluso sin cambios) regenera el archivo con una nueva fecha
Expires:calculada desde hoy mas los Expiration Days configurados.
Un security.txt expirado les dice a los investigadores que tu programa puede estar abandonado. La alerta de expiracion de Kit te da un margen de 30 dias para renovar antes de que eso suceda.
Previsualizar el archivo
El boton Preview security.txt en Program Settings renderiza el contenido exacto del archivo que se servira. Usalo para:
- Verificar que el email de
Contact:es correcto y esta monitoreado - Confirmar que la fecha de
Expires:esta configurada en la fecha futura esperada - Comprobar que las URLs de
Policy:yAcknowledgments:resuelven correctamente - Revisar cualquier directiva opcional (
Hiring,Encryption) antes de publicar
La previsualizacion refleja el estado guardado actual. Haz cambios, guarda y luego previsualiza para ver la salida actualizada.
Validar tu configuracion
Despues de activar VDP y configurar security.txt, verifica que funciona correctamente:
- Abre
https://tudominio.com/.well-known/security.txten un navegador (o la URL alojada en Kit si no has configurado un dominio personalizado) - Confirma que el archivo se renderiza como texto plano con todas las directivas esperadas
- Verifica que la fecha de
Expires:esta en el futuro y dentro de un ano - Comprueba que el email o URL de
Contact:es correcto - Si usas un dominio personalizado, verifica que HTTPS esta activo – RFC 9116 requiere que el archivo se sirva sobre HTTPS
Validadores externos como securitytxt.org pueden analizar tu archivo y senalar cualquier problema de conformidad con RFC 9116.
Lista de verificacion rapida
- Activar VDP (security.txt se genera automaticamente al activarse)
- Configurar tu email de contacto con un alias de seguridad monitoreado (no una bandeja personal)
- Verificar que
/.well-known/security.txtresuelve en tu dominio personalizado - Configurar la Policy URL para que los investigadores conozcan las reglas antes de enviar reportes
- Confirmar que la fecha de
Expires:no supera un ano en el futuro - Programar un recordatorio en el calendario a los 11 meses para verificar que el archivo no ha expirado (o confiar en el email de alerta de expiracion de Kit a los 30 dias)
Siguientes pasos
- Configuring Your Program – todos los ajustes del programa incluyendo alcance, matriz de recompensas y SLAs
- Vulnerability Disclosure Overview – que incluye el plan gratuito y el VDP Add-on