Skip to main content

Sobre os avisos de segurança do repositório

Você pode usar avisos de segurança do repositório para discutir de maneira privada, corrigir e publicar informações sobre vulnerabilidades de segurança em seu repositório.

Qualquer pessoa com permissões de administrador em um repositório pode criar uma consultoria de segurança.

Qualquer pessoa com permissões de administrador para um repositório também tem permissões de administrador para todas as consultorias de segurança nesse repositório. Pessoas com permissões de administrador para uma consultoria de segurança podem adicionar colaboradores, e os colaboradores têm permissões de gravação para a consultoria de segurança.

Observação: se você é um pesquisador de segurança, você deve entrar em contato diretamente com os mantenedores para pedir que criem consultorias de segurança ou emitam CVEs em seu nome em repositórios que você não administra. No entanto, se os relatórios de vulnerabilidade privados estiverem habilitados para o repositório, será possível relatar uma vulnerabilidade de maneira privada por conta própria. Para saber mais, confira "Como relatar de maneira privada uma vulnerabilidade de segurança".

Sobre os avisos de segurança do repositório

A divulgação de vulnerabilidades é uma área onde a colaboração entre relatores de vulnerabilidade, como investigadores de segurança, e mantenedores de projeto, é muito importante. A partir do momento em que se detecta uma vulnerabilidade potencialmente prejudicial em termos de segurança, ambas as partes terão de trabalhar em conjunto até que uma vulnerabilidade seja divulgada para todos, idealmente com um patch disponível. Normalmente, quando alguém deixa um mantenedor saber em particular sobre uma vulnerabilidade de segurança, o mantenedor desenvolve uma correção, valida-a e notifica os usuários do projeto ou pacote. Para obter mais informações, confira "Sobre a divulgação coordenada de vulnerabilidades de segurança".

Os avisos de segurança do repositório permitem que os responsáveis pelo repositório discutam e corrijam de modo privado as vulnerabilidades de segurança em um projeto. Depois de colaborar em uma correção, os responsáveis pelo repositório podem publicar o aviso de segurança para divulgar publicamente a vulnerabilidade de segurança na comunidade do projeto. Ao publicar avisos de segurança, os responsáveis pelo repositório facilitam para a comunidade a atualização das dependências do pacote e a pesquisa sobre o impacto das vulnerabilidades de segurança.

Com os avisos de segurança do repositório, você pode:

  1. Criar um aviso de segurança rascunho e usar o rascunho para discutir em particular o impacto da vulnerabilidade no seu projeto. Para obter mais informações, confira "Como criar um aviso de segurança do repositório".
  2. Colaborar de modo particular com a correção da vulnerabilidade em uma bifurcação privada temporária.
  3. Publique a consultoria de segurança para alertar a sua comunidade sobre a vulnerabilidade depois que um patch for lançado. Para obter mais informações, confira "Como publicar um aviso de segurança do repositório".

Você também pode usar avisos de segurança do repositório para republicar os detalhes de uma vulnerabilidade de segurança que você já revelou em outro lugar, copiando e colando os detalhes da vulnerabilidade em um novo aviso de segurança.

Você pode dar crédito a indivíduos que contribuíram para um aviso de segurança. Para obter mais informações, confira "Como editar uma consultoria de segurança do repositório".

Você pode criar uma política de segurança para dar às pessoas instruções para relatar vulnerabilidades de segurança no seu projeto. Para obter mais informações, confira "Como adicionar uma política de segurança ao seu repositório".

Se você criou uma consultoria de segurança no seu repositório, o consultório de segurança permanecerá no seu repositório. Publicamos avisos de segurança para qualquer um dos ecossistemas compatíveis com o grafo de dependência no GitHub Advisory Database em github.com/advisories. Qualquer um pode enviar uma alteração para um consultor publicado em GitHub Advisory Database. Para obter mais informações, confira "Como editar avisos de segurança no GitHub Advisory Database".

Se uma consultoria de segurança for especificamente para o npm, nós também publicamos a consultoria nas consultorias de segurança do npm. Para obter mais informações, confira npmjs.com/advisories.

Você também pode ingressar no GitHub Security Lab para procurar tópicos relacionados à segurança e contribuir com ferramentas de segurança e projetos.

Números de identificação CVE

GitHub Security Advisories baseia-se na base da lista de Vulnerabilidades e Exposições Comuns (CVE). O formulário de consultoria de segurança em GitHub é um formulário padronizado que corresponde ao formato de descrição CVE.

GitHub é uma Autoridade de Numeração CVE (CNA) e está autorizada a atribuir números de identificação CVE. Para obter mais informações, confira "Sobre o CVE" e "Autoridades de Numeração do CVE" no site do CVE.

Ao criar um aviso de segurança para um repositório público no GitHub, você tem a opção de fornecer um número de identificação CVE existente para a vulnerabilidade de segurança. Caso você deseje ter um número de identificação CVE para a vulnerabilidade de segurança no seu projeto e ainda não tiver um, solicite um número de identificação CVE ao GitHub. GitHub geralmente revisa o pedido em 72 horas. Solicitar um número de identificação CVE não torna público a sua consultoria de segurança público. Se o seu aviso de segurança for qualificado para um CVE, o GitHub reservará um número de identificação CVE para ele. Em seguida, publicaremos os detalhes da CVE depois que você tornar o aviso de segurança público. Qualquer pessoa com permissões de administrador em um aviso de segurança pode solicitar um número de identificação CVE.

Se você já tiver uma CVE que deseja usar, por exemplo, se usar uma CNA (Autoridade de Numeração CVE) diferente do GitHub, adicione a CVE ao formulário de aviso de segurança. Isso pode acontecer, por exemplo, se você quiser que a consultoria seja consistente com outras comunicações que pretende enviar no horário da publicação. O GitHub não poderá atribuir CVEs ao seu projeto se ele for coberto por outra CNA.

Uma que você publicou a consultoria de segurança e o GitHub atribuiu um número de identificação CVE para a vulnerabilidade, o GitHub irá publicar o CVE no banco de dados do MITRE. Para obter mais informações, confira "Como publicar um aviso de segurança do repositório".

Dependabot alerts para consultorias de segurança publicadas

GitHub irá revisar cada consultoria de segurança publicada, adicioná-la ao GitHub Advisory Database, e poderá utilizar a consultoria de segurança para enviar Dependabot alerts aos repositórios afetados. Se a consultoria de segurança vier de uma bifurcação, só enviaremos um alerta se a bifurcação possuir um pacote, publicado com um nome único, em um registro de pacote público. Este processo pode levar até 72 horas e GitHub pode entrar em contato com você para obter mais informações.

Para obter mais informações sobre Dependabot alerts, confira "Sobre Dependabot alerts" e "Sobre as Dependabot security updates". Para obter mais informações sobre o GitHub Advisory Database, confira "Como procurar avisos no GitHub Advisory Database".