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 recompensas por bugs abrange de ponta a ponta: desde a solidez dos protocolos (como o modelo de consenso da cadeia de blocos, os protocolos p2p e wire, prova de participação, etc.) até a conformidade de protocolo/implementação para segurança da rede e a integridade de consenso. A segurança clássica do cliente, bem como a segurança das primitivas criptográficas, também fazem parte do programa. Em caso de dúvida, envie sua pergunta por e-mail para bounty@ethereum.org.

📒

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.

Currently execution layer clients (Besu, Erigon, Geth and Nethermind) and consensus layer clients (Lighthouse, Lodestar, Nimbus, Teku and Prysm) are included in the Bug Bounty Program. More clients may be added as they complete audits and become production ready. Currently, c-kzg-4844(opens in a new tab) and go-kzg-4844(opens in a new tab) are also included in the bug bounty program.

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.

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 a torna 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?