SECURITY.md: como criar a política de segurança do repositório
Diga como relatar uma vulnerabilidade sem expô-la em uma issue pública. Passo a passo e um modelo.
Como criar um SECURITY.md no GitHub?
Na aba de segurança do repositório, abra Security policy e clique em Start setup. Edite o arquivo com as versões com suporte e o modo de relatar uma vulnerabilidade, e faça o commit.
O que é o SECURITY.md
É o arquivo em que o projeto diz como relatar uma vulnerabilidade de segurança. A documentação do GitHub resume o conteúdo em duas partes: as versões do projeto que recebem correções de segurança e o caminho para relatar uma vulnerabilidade. Sem esse arquivo, quem encontra um problema grave só tem as issues públicas, e relatar uma falha de segurança em público antes de existir correção expõe todos os usuários.
Como criar pelo GitHub
Pelo passo a passo da documentação:
- Na página principal do repositório, abra a aba de segurança (Security and quality; se ela não aparecer, procure no menu de três pontos).
- Na barra lateral, em Reporting, clique em Security policy e depois em Start setup.
- O GitHub cria um
SECURITY.mdpara você editar. Escreva as versões com suporte e como relatar uma vulnerabilidade. - Faça o commit com uma mensagem curta e descritiva. Se você está na branch padrão, a documentação orienta criar uma nova branch e abrir um pull request.
Sobre a pasta: a página do GitHub que lemos não diz em quais pastas o arquivo pode ficar (raiz, docs ou .github). Isso está não confirmado nesta leitura; o caminho mais comum é a raiz do repositório, mas confira na documentação do GitHub antes de apostar em outra pasta.
Relato privado de vulnerabilidades
Além do arquivo, o GitHub tem o relato privado de vulnerabilidades (private vulnerability reporting). Segundo a documentação, ele dá a pesquisadores de segurança um jeito estruturado de avisar sobre uma vulnerabilidade sem divulgá-la em público. Donos e administradores de repositórios públicos ativam em Settings, depois Advanced Security, e Enable ao lado de "Private vulnerability reporting". Quem relata usa o botão Report a vulnerability da página de advisories ou a API REST.
Se você ativar o recurso, diga isso no SECURITY.md: "use o botão Report a vulnerability na aba Security". Se não ativar, informe um e-mail que alguém lê.
O que escrever
Estes pontos são prática comum, não regra oficial; ajuste ao seu projeto:
- Versões com suporte: quais recebem correção (por exemplo, só a mais recente).
- Como relatar: o canal privado, e a frase "não abra uma issue pública".
- O que esperar: em quanto tempo você responde. Só prometa o que consegue cumprir: um projeto de uma pessoa não tem o mesmo prazo de uma empresa.
- O que enviar: versão afetada, passos para reproduzir e impacto.
Exemplo resolvido: um SECURITY.md pequeno
# Política de segurança
## Versões com suporte
| Versão | Recebe correções |
| --- | --- |
| 1.x | sim |
| 0.x | não |
## Como relatar uma vulnerabilidade
Não abra uma issue pública. Use o botão "Report a vulnerability" na aba
Security deste repositório ou escreva para seguranca@exemplo.org.
Inclua a versão afetada, os passos para reproduzir e o impacto que você viu.
## O que esperar
Respondo em até sete dias corridos para confirmar o recebimento. O prazo
da correção depende da gravidade e será combinado com quem relatou.Os endereços e prazos acima são inventados para o exemplo. Troque pelos seus e depois aponte para o arquivo no README (o gerador de README tem uma caixa "Tenho um SECURITY.md") e no CONTRIBUTING.
Perguntas frequentes
O que o SECURITY.md deve conter?
Segundo a documentação do GitHub, as versões do projeto que têm suporte e como relatar uma vulnerabilidade. Acrescente um canal privado e o prazo em que você consegue responder, sem prometer o que não pode cumprir.
O que é o relato privado de vulnerabilidades?
É um recurso do GitHub que dá a pesquisadores um jeito estruturado de avisar sobre uma vulnerabilidade sem divulgá-la em público. Donos e administradores de repositório público o ativam em Settings, Advanced Security, ao lado de Private vulnerability reporting.
Em que pasta fica o SECURITY.md?
Não confirmado nesta leitura: a página do GitHub sobre como adicionar a política não diz em quais pastas o arquivo pode ficar. Confira na documentação do GitHub antes de usar outra pasta que não a raiz.
Posso relatar uma vulnerabilidade em uma issue pública?
Evite. Relatar uma falha em público antes de existir correção a expõe a todos os usuários do projeto. Procure o SECURITY.md do repositório e use o canal privado indicado nele, como o botão Report a vulnerability.
Fontes deste guia
Abertas em 11/10/2026. O texto é nosso, em português; as fontes ficam aqui com link, licença e o que foi lido.
- Adding a security policy to your repository (GitHub Docs)
A página não mostra data · aberta em · reconferência: confirmada na abertura (11/10/2026) · licença do conteúdo: CC BY 4.0 (conteúdo); MIT (código)
O que lemos: Como criar o SECURITY.md pela aba de segurança do repositório e o que ele deve trazer: versões com suporte e como relatar uma vulnerabilidade. A página não diz em quais pastas o arquivo pode ficar.
Como usamos: Texto próprio em português; os fatos e os comandos vêm da página, sem copiar trechos. Link e data em cada uso. - Configuring private vulnerability reporting for a repository (GitHub Docs)
A página não mostra data · aberta em · reconferência: confirmada na abertura (11/10/2026) · licença do conteúdo: CC BY 4.0 (conteúdo); MIT (código)
O que lemos: O que é o relato privado de vulnerabilidades, que dono e administradores de repositório público ativam em Settings, Advanced Security, e que pesquisadores relatam pelo botão "Report a vulnerability".
Como usamos: Texto próprio em português; os fatos e os comandos vêm da página, sem copiar trechos. Link e data em cada uso.
Informação geral, não é aconselhamento jurídico. Quando um guia cita uma licença de conteúdo, ela vale para a página citada, não para este site.
Continue pelos guias
Os geradores, o passo a passo e os guias ficam a um clique.
- Manter um projetoCinco ideias da Open Source Guides: documentar, dizer não, dividir, automatizar e descansar.
- Escrever um CONTRIBUTINGO que incluir no CONTRIBUTING.md, onde o GitHub o mostra e como não exagerar nas regras.
- Código de condutaO que um código de conduta deve dizer, onde guardar e como usar o Contributor Covenant.