security.txt: o que é, para que serve e como configurar

O ficheiro security.txt permite indicar de forma padronizada como investigadores de segurança devem contactar o responsável por um site quando descobrem uma vulnerabilidade. Neste artigo explicamos o que é, para que serve e como configurá-lo corretamente.

O que é o security.txt

O security.txt é um ficheiro de texto utilizado para disponibilizar informações sobre a forma correta de comunicar vulnerabilidades de segurança relacionadas com um site ou serviço online.

O formato está definido na RFC 9116 e foi criado para facilitar a divulgação responsável de vulnerabilidades, fornecendo aos investigadores de segurança um ponto de contacto claro e facilmente identificável.

Num site, a localização normalizada é:

https://exemplo.pt/.well-known/security.txt

Porque é importante

Quando alguém encontra uma vulnerabilidade num site, nem sempre é evidente quem deve contactar. Um formulário genérico pode não chegar à pessoa responsável e um endereço de suporte pode não estar preparado para receber informação relacionada com segurança.

O security.txt resolve este problema ao disponibilizar um canal de contacto padronizado, permitindo que uma vulnerabilidade seja comunicada mais rapidamente e à pessoa ou equipa certa.

A ausência de security.txt não significa que o site esteja vulnerável ou comprometido. Trata-se de uma boa prática de segurança que melhora o processo de divulgação responsável de vulnerabilidades.

Que informações pode conter

Um ficheiro security.txt pode incluir vários campos. Alguns são obrigatórios e outros opcionais, dependendo das necessidades da organização.

  • Contact: indica como deve ser comunicada uma vulnerabilidade. É um campo obrigatório.
  • Expires: define a data até à qual a informação presente no ficheiro deve ser considerada válida. É também obrigatório.
  • Canonical: identifica a localização oficial do próprio ficheiro security.txt.
  • Preferred-Languages: indica os idiomas preferidos para receber comunicações.
  • Policy: permite indicar uma página com a política de divulgação de vulnerabilidades.
  • Encryption: pode indicar uma chave pública ou outro recurso para o envio de informação de forma encriptada.
  • Acknowledgments: pode apontar para uma página onde são reconhecidas pessoas que comunicaram vulnerabilidades de forma responsável.

Exemplo de um ficheiro security.txt

Uma configuração simples poderá ser:

Contact: mailto:
Expires: 2027-08-01T00:00:00Z
Preferred-Languages: pt, en
Canonical: https://exemplo.pt/.well-known/security.txt

Para muitos sites e organizações, esta informação é suficiente. Pode adicionar outros campos se tiver uma política de segurança ou um processo de divulgação responsável mais completo.

Boas práticas

  • Disponibilizar o ficheiro em /.well-known/security.txt.
  • Servir o ficheiro através de HTTPS.
  • Incluir sempre os campos obrigatórios Contact e Expires.
  • Utilizar um endereço de contacto que seja acompanhado regularmente.
  • Manter a data indicada em Expires atualizada.
  • Rever periodicamente os contactos, URLs e políticas indicados.
  • Utilizar Canonical para indicar a localização oficial do ficheiro.
  • Indicar apenas idiomas em que a organização consegue efetivamente responder.

Como corrigir

  1. Crie um ficheiro de texto chamado security.txt.
  2. Adicione pelo menos um campo Contact, por exemplo:

    Contact: mailto:
  3. Adicione o campo obrigatório Expires, por exemplo:

    Expires: 2027-08-01T00:00:00Z
  4. Adicione, se necessário, outros campos como Canonical, Preferred-Languages ou Policy.
  5. Crie a diretoria .well-known na raiz pública do site, caso ainda não exista.
  6. Coloque o ficheiro em:

    /.well-known/security.txt
  7. Confirme que o ficheiro está acessível publicamente através de:

    https://seudominio.pt/.well-known/security.txt

Como configurar security.txt no WordPress

Não é necessário instalar qualquer plugin no WordPress para utilizar security.txt.

Se o WordPress estiver instalado na diretoria pública do alojamento, basta criar a pasta .well-known e colocar o ficheiro security.txt no seu interior.

Por exemplo:

public_html/.well-known/security.txt

Depois deverá conseguir abrir o ficheiro diretamente no navegador através de:

https://seudominio.pt/.well-known/security.txt

Erros comuns no security.txt

  • Colocar o ficheiro apenas em /security.txt em vez de /.well-known/security.txt.
  • Não incluir o campo obrigatório Contact.
  • Não incluir o campo obrigatório Expires.
  • Utilizar uma data de expiração que já terminou.
  • Indicar um endereço de email que já não existe ou não é acompanhado.
  • Indicar páginas ou recursos que devolvem erro.
  • Bloquear inadvertidamente o acesso à diretoria /.well-known/.
  • Criar o ficheiro e nunca mais rever a informação.

O security.txt não substitui outras medidas de segurança – mas facilita a comunicação responsável de vulnerabilidades e permite que investigadores encontrem rapidamente o contacto correto caso detetem um problema no seu site.

Na WebDig Host, ajudamos a manter os sites alojados na nossa infraestrutura corretamente configurados e protegidos através de boas práticas de segurança.

Conhecer os serviços de alojamento da WebDig Host

Perguntas frequentes sobre security.txt

O security.txt é obrigatório?

Não. A ausência de security.txt não significa que o site esteja inseguro. Trata-se de uma boa prática que facilita a comunicação responsável de vulnerabilidades.

O security.txt protege o site contra ataques?

Não. O security.txt não bloqueia ataques, não corrige vulnerabilidades e não substitui outras medidas de segurança. A sua função é indicar como deve ser comunicada uma vulnerabilidade descoberta por terceiros.

Onde devo colocar o security.txt?

A localização normalizada é https://seudominio.pt/.well-known/security.txt.

Que campos são obrigatórios?

Segundo a RFC 9116, o ficheiro deve incluir pelo menos os campos Contact e Expires.

Preciso de um plugin no WordPress?

Não. Pode criar manualmente a diretoria .well-known e colocar nela o ficheiro security.txt. Um plugin só é necessário se pretender gerir esta informação através do painel do WordPress.

Posso utilizar o meu endereço de email habitual?

Sim, desde que seja acompanhado regularmente. Sempre que possível, é preferível utilizar um endereço dedicado, como , para que este tipo de comunicação não se perca entre outras mensagens.

Porque existe uma data de expiração?

O campo Expires evita que investigadores de segurança confiem indefinidamente em contactos ou políticas que podem já estar desatualizados. Quando a data termina, o ficheiro deve ser revisto e atualizado.

Verifique agora o security.txt do seu domínio

Com o Secure Check, pode verificar gratuitamente se o seu domínio disponibiliza um ficheiro security.txt e identificar problemas comuns na sua configuração, em poucos segundos.

Analisar o meu domínio gratuitamente com o Secure Check