Pular para o conteúdo principal

Aberto para inscrições

Programa de Recompensa por Bugs

Ganhe até US$ 250.000 e uma posição na tabela de classificação ao encontrar bugs no protocolo, no cliente e no Solidity que afetem a rede Ethereum.

Enviar um bug(opens in a new tab)Leia as regras
Ver o placar completo

Clientes em destaque nas recompensas

No escopo

Nosso programa de recompensa por bugs é integral: da solidez dos protocolos (como o modelo de consenso de blockchain, os protocolos wire e p2p, prova de participação, etc.) e conformidade de protocolo/implementação à segurança de rede e integridade de consenso. A segurança clássica do cliente, bem como a segurança de primitivas criptográficas, também fazem parte do programa. Em caso de dúvida, envie um e-mail para bounty@ethereum.org. Você também pode enviar uma divulgação/vulnerabilidade diretamente para bounty@ethereum.org(opens in a new tab), caso em que pedimos que você criptografe a mensagem usando nossa Chave PGP(opens in a new tab)

Especificação de bugs

As especificações do Ethereum detalham a lógica do design para a Camada de Execução e a Camada de Consenso.

Especificações da Camada de Consenso(opens in a new tab)
Especificações da Camada de Execução(opens in a new tab)

Pode ser útil conferir as seguintes anotações:

Tipos de bugs

  • Bugs de quebra de segurança/finalidade
  • Vetores de negação de serviço (DOS)
  • Inconsistências em suposições, como situações em que validadores honestos podem ser eliminados
  • Inconsistências de cálculo ou de parâmetros

Documentos da especificação

Bugs do cliente

Os clientes executam a rede Ethereum e precisam seguir a lógica estabelecida na especificação e estar seguros contra possíveis ataques. Os bugs que queremos encontrar estão relacionados à implementação do protocolo.

Atualmente, clientes da camada de execução (Besu, Erigon, Geth, Nethermind e Reth) e clientes da camada de consenso (Lighthouse, Lodestar, Nimbus, Teku e Prysm) estão incluídos no Bug Bounty Program. Mais clientes podem ser adicionados à medida que concluam as auditorias e se tornem prontos para produção.

Tipos de bugs

  • Problemas de não conformidade de especificação
  • Falhas inesperadas, vulnerabilidades RCE ou de negação de serviço (DOS)
  • Quaisquer questões que provoquem divisões irreparáveis de consenso do resto da rede

Bugs do Solidity

Consulte o Solidity SECURITY.MD para obter mais detalhes sobre o que está incluído neste escopo.

O Solidity não possui garantias de segurança sobre a compilação de entradas não confiáveis – e nós não emitimos recompensas por travamentos do compilador solc em dados gerados de forma maliciosa.

Falhas no contrato de depósito

As especificações e o código-fonte do Contrato de Depósito da Beacon Chain são parte do programa de recompensa de caça a bugs.

Bugs de dependência

Certas dependências são cruciais para o funcionamento da Rede Ethereum, e algumas delas foram adicionadas ao programa de recompensas por bugs. Atualmente, a lista de dependências incluídas no programa de recompensas por bugs são C-KZG-4844 e Go-KZG-4844.

Fora do escopo

Apenas os alvos listados no escopo fazem parte do Programa Bug Bounty. Isso significa que, por exemplo, nossa infraestrutura; como páginas da web, dns, e-mail, etc., não fazem parte do escopo de recompensas. Os bugs do contrato ERC20 normalmente não estão incluídos no escopo da recompensa. No entanto, podemos ajudar a entrar em contato com as partes afetadas, como autores ou intercâmbios em tais casos. A ENS é mantida pela fundação ENS e não faz parte do escopo da recompensa. Vulnerabilidades que exigem que o usuário tenha exposto publicamente uma API, como JSON-RPC ou a API Beacon, estão fora do escopo do programa de recompensa de bugs.

Enviar um bug

Para cada bug válido que você encontrar, receberá recompensas. A quantidade de recompensas concedidas variará conforme a gravidade. A gravidade é calculada segundo o modelo de classificação de risco da OWASP, com base no impacto na Rede Ethereum e na Probabilidade. Visualizar método OWASP(opens in a new tab)

O EF também fornecerá recompensas com base em:

Qualidade da descrição: recompensas maiores são pagas para envios claros e bem-escritos.

Qualidade da reprodutibilidade: Uma Prova de Conceito (POC) deve ser incluída para ser elegível para recompensas. Inclua código de teste, scripts e instruções detalhadas. Quanto mais fácil for para nós reproduzirmos e verificarmos a vulnerabilidade, maior será a recompensa.

Qualidade da correção, se incluída: recompensas maiores são pagas por envios que contenham uma descrição clara de como corrigir o problema.

Até 2.000 dólares

Baixo

Até 2.000 dólares

Até 1.000 pontos

Gravidade

  • Impacto baixo, probabilidade média
  • Impacto médio, probabilidade baixa

Exemplo

O invasor pode, às vezes, colocar um nó em um estado que faz com que ele exclua uma em cada cem comprovações feitas por um validador
Envie um bug de risco baixo(opens in a new tab)
Até 10.000 dólares

Médio

Até 10.000 dólares

Até 5.000 pontos

Gravidade

  • Impacto alto, probabilidade baixa
  • Impacto médio, probabilidade média
  • Impacto baixo, probabilidade alta

Exemplo

O invasor pode conduzir ataques de eclipse em nós com pares de ids com 4 bytes com zeros à esquerda
Envie um bug de risco médio(opens in a new tab)
Até 50.000 dólares

Alto

Até 50.000 dólares

Até 10.000 pontos

Gravidade

  • Impacto alto, probabilidade média
  • Impacto médio, probabilidade alta

Exemplo

O invasor pode particionar com êxito grandes partes da rede. Para um invasor, ativar a vulnerabilidade é algo banal
Envie um bug de risco alto(opens in a new tab)
Até 250.000 dólares

Crítico

Até 250.000 dólares

Até 25.000 pontos

Gravidade

  • Alto impacto, alta probabilidade

Exemplo

O invasor pode conduzir a execução de código remoto com êxito em um cliente maioritário. Para um invasor, ativar a vulnerabilidade é algo banal
Envie um bug de risco crítico(opens in a new tab)

Regras de caça a bugs

O programa de caça a bugs é um programa de recompensas experimental e discricionário destinado à comunidade ativa do Ethereum, visando incentivar e recompensar aqueles que estão ajudando a melhorar a plataforma. Não se trata de uma competição. É importante saber que podemos cancelar o programa a qualquer momento, e os prêmios ficam a critério exclusivo do painel de recompensas por bugs da Ethereum Foundation. Além disso, não podemos conceder prêmios a indivíduos que estejam nas listas de sanções ou que estejam em países nas listas de sanções (por exemplo, Coreia do Norte, Irã, etc.). As leis locais exigem que solicitemos prova de sua identidade. Você é responsável por todos os impostos. Todos os prêmios estão sujeitos à lei aplicável. Por fim, seu teste não deve violar nenhuma lei ou comprometer quaisquer dados que não sejam seus e deve ocorrer em redes de teste locais em execução.

  • Tickets sem um POC que já tenham sido submetidos por outro usuário ou que já sejam conhecidos por mantenedores de especificações e clientes não são elegíveis para o programa de recompensas.
  • A divulgação pública de uma vulnerabilidade ou sua denúncia a outras partes sem acordo prévio torna a vulnerabilidade inelegível para uma recompensa.
  • Funcionários e contratados da Ethereum Foundation ou equipes de clientes no escopo do programa de recompensas podem participar do programa apenas no acúmulo de pontos e não receberão recompensas monetárias.
  • O programa de recompensas de Ethereum considera um número de variáveis na determinação de recompensas. Determinações de elegibilidade, pontuação e todos os termos relacionados a um prêmio são a critério único e final do painel de recompensas da Fundação Ethereum.

Placar de recompensas por bugs da camada de execução

Encontre bugs da camada de execução para ser adicionado a este placar

Placar de recompensas por bugs da camada de consenso

Encontre bugs da camada de consenso para serem adicionados a este placar

Perguntas frequentes

Perguntas?

Envie-nos um e-mail: bounty@ethereum.org(opens in a new tab)

Esta página foi útil?