Vai al contenuto principale

Aiuta a tradurre questa pagina

🌏

Stai visualizzando questa pagina in inglese perché non l'abbiamo ancora tradotta. Aiutaci a tradurre il contenuto.

Traduci la pagina

Nessun bug qui!🐛

Questa pagina non è stata tradotta. Per il momento, è stata intenzionalmente lasciata in inglese.

Aperto alle segnalazioni

Ricompense del bug del livello di consenso 🐛
Guadagna fino a $50.000 USD e un posto sulla classifica trovando i bug del protocollo e del client del livello di consenso.
Segnala un bugLeggi le regole
1
protolambda GitHub avatar
protolambda
42400 punti
🏆
2
guidovranken GitHub avatar
Guido Vranken
39350 punti
🥈
3
holiman GitHub avatar
Martin Holst Swende
38000 punti
🥉
4
samczsun GitHub avatar
Sam Sun
35000 punti
5
chainsecurity GitHub avatar
ChainSecurity
21000 punti
Vedi classifica completa

Client presenti nei bounty

Bug validi

Questo programma di caccia ai bug è concentrato sull'individuazione dei bug nella specifica della Beacon Chain del livello di consenso principale e nelle implementazioni del client di Lighthouse, Nimbus, Teku, Prysm e Lodestar.

📒

I bug della specifica della Beacon Chain

La specifica della Beacon Chain illustra la logica della progettazione e le modifiche proposte a Ethereum tramite l'aggiornamento della Beacon Chain.

Leggi le specifiche complete
Execution Layer Specifications

Può essere utile consultare le seguenti annotazioni:

Tipi di bug

  • Bug di sicurezza/compromissione della finalità
  • Vettori denial of service (DOS)
  • Incongruenze nelle ipotesi, come situazioni in cui validatori onesti possono essere espulsi
  • Incongruenze di calcolo o dei parametri

Documenti di specifica

La beacon chain
Scelta del fork
Contratto di deposito Solidity
Networking peer-to-peer
💻

Bug del client del livello di consenso

I client eseguiranno la Beacon Chain una volta distribuito l'aggiornamento. I client dovranno seguire la logica data nella specifica ed esser sicuri contro gli attacchi potenziali. I bug che vogliamo trovare sono correlati all'implementazione del protocollo.

Attualmente i bug Lighthouse, Nimbus, Teku e Prysm sono idonei per le ricompense complete. Anche Lodestar è idoneo ma, fino a quando non saranno completati ulteriori audit, i punti e le ricompense sono limitati al 10% (il pagamento massimo è di 5.000 DAI). Altri client possono essere aggiunti man mano che completano gli audit e diventano pronti per la produzione.

Tipi di bug

  • Problemi di non-conformità della specifica
  • Crash imprevisti o vulnerabilità di tipo denial of service (DOS)
  • Ogni questione che causa una divisione del consenso dal resto della rete

Link utili

Besu
Erigon
Geth
Lighthouse
Lodestar
Nimbus
Nethermind
Prysm
Teku
📖

Solidity bugs

See the Solidity SECURITY.MD for more details about what is included in this scope.

Solidity does not hold security guarantees regarding compilation of untrusted input – and we do not issue rewards for crashes of the solc compiler on maliciously generated data.

Link utili

SECURITY.md
📜

Deposit Contract bugs

The specificiations and source code of the Beacon Chain Deposit Contract is part of the bug bounty program.

Non incluso

La fusione e gli aggiornamenti delle shard chain sono ancora in fase di sviluppo attivo, quindi non sono inclusi nell'ambito di questo programma di ricompense.

Segnala un bug

Per ogni bug che trovi, otterrai dei punti a titolo di ricompensa. I punti che ottieni dipendono dalla gravità del bug. I bug Lodestar sono correntemente ricompensati con il 10% dei punti elencati sotto, mentre i controlli aggiuntivi sono in corso di completamento. Ethereum Foundation (EF) determina la gravità usando il metodo OWASP. Visualizza metodo OWASP

La Ethereum Foundation assegnerà inoltre punti in base a:

Qualità della descrizione: Le ricompense più elevate sono pagate per le comunicazioni chiare e ben scritte.

Qualità della riproducibilità: Si prega di includere il codice di test, script e istruzioni dettagliate. Più facile sarà per noi riprodurre e verificare la vulnerabilità, maggiore sarà la ricompensa.

Qualità della correzione, se inclusa: sono riconosciute ricompense più elevate per l'inoltro di chiare descrizioni su come correggere il problema.

Fino a 2.000 DAI

Basso

Fino a 2.000 DAI

Fino a 1.000 punti

Gravità

  • Impatto basso, probabilità media
  • Impatto medio, probabilità bassa

Esempio

Un utente malintenzionato potrebbe impostare un nodo su uno stato che faccia fallire una su cento attestazioni eseguite da un validatore
Segnala bug a rischio basso
Fino a 10.000 DAI

Medio

Fino a 10.000 DAI

Fino a 5.000 punti

Gravità

  • Impatto alto, probabilità bassa
  • Impatto medio, probabilità media
  • Impatto basso, probabilità alta

Esempio

Un utente malintenzionato può condurre con successo attacchi eclipse su nodi con Id peer aventi byte a 4 zeri iniziali
Segnala bug a rischio medio
Fino a 20.000 DAI

Alto

Fino a 20.000 DAI

Fino a 10.000 punti

Gravità

  • Impatto alto, probabilità media
  • Impatto medio, alta probabilità

Esempio

C'è un bug di consenso tra due client, ma è difficile o poco pratico per un utente malintenzionato attivare l'evento.
Invia bug a rischio alto
Fino a 50.000 DAI

Critico

Fino a 50.000 DAI

Fino a 25.000 punti

Gravità

  • Impatto alto, alta probabilità

Esempio

C'è un bug di consenso tra due client ed è molto semplice per un utente malintenzionato attivare l'evento.
Invia bug a rischio critico

Regole per la ricerca di bug

Il programma bug bounty è un programma di ricompense sperimentale e discrezionale rivolto alla nostra community Ethereum attiva, per incoraggiare e premiare coloro che contribuiscono a migliorare la piattaforma. Non è una gara. È importante sapere che potremmo annullare il programma in qualsiasi momento e le ricompense sono a sola discrezione della commissione di bug bounty della Ethereum Foundation. Inoltre, non possiamo assegnare ricompense a chi è incluso nelle liste di sanzioni o si trova in paesi presenti nelle liste di sanzioni (ad esempio Corea del Nord, Iran ecc.). L'utente è responsabile di tutte le imposte applicabili. Tutte le ricompense sono soggette alla legge applicabile. Infine, il test non deve violare alcuna legge o compromettere dati non di proprietà dell'utente.

  • Problemi già inviati da un altro utente o già noti ai responsabili della manutenzione delle specifiche e dei client non verranno considerati ai fini delle ricompense del bounty.
  • La divulgazione al pubblico di una vulnerabilità la rende inammissibile al bounty.
  • Ricercatori della Ethereum Foundation e dipendenti dei team del client del livello di consenso non sono idonei per le ricompense.
  • Il programma bounty Ethereum prende in considerazione un certo numero di variabili per determinare le ricompense. Le decisioni in materia di ammissibilità, punteggio e tutti i termini relativi a una ricompensa sono a sola discrezione finale della commissione bug bounty della Ethereum Foundation.

Execution Layer Bug Bounty leaderboard

Find execution layer bugs to get added to this leaderboard

1
holiman GitHub avatar
Martin Holst Swende
35500 punti
🏆
2
samczsun GitHub avatar
Sam Sun
35000 punti
🥈
3
guidovranken GitHub avatar
Guido Vranken
21750 punti
🥉
4
chainsecurity GitHub avatar
ChainSecurity
21000 punti
5
junorouse GitHub avatar
Juno Im
20500 punti
6
uknowy GitHub avatar
Yoonho Kim (team Hithereum)
20000 punti
7
johnyangk GitHub avatar
John Youngseok Yang (Software Platform Lab)
20000 punti
8
peckshield GitHub avatar
PeckShield
17000 punti
9
itsunixiknowthis GitHub avatar
ItsUnixIKnowThis
15000 punti
10
catageek GitHub avatar
Bertrand Masius
15000 punti
11
tintinweb GitHub avatar
Tin
12500 punti
12
Ralph Pichler
12500 punti
13
Bob Conan
12000 punti
14
lukaszmatczak GitHub avatar
Łukasz Matczak
11000 punti
15
Heilman/Marcus/Goldberg
10000 punti
16
jonasnick GitHub avatar
Jonas Nick
10000 punti
17
jtoman GitHub avatar
John Toman
10000 punti
18
Sebastian Henningsen
8000 punti
19
Dominic Brütsch
7500 punti
20
HarryR GitHub avatar
Harry Roberts
5000 punti
21
p- GitHub avatar
Peter Stöckli
5000 punti
22
Dedaub GitHub avatar
Neville Grech
5000 punti
23
EthHead GitHub avatar
EthHead
5000 punti
24
axic GitHub avatar
Alex Beregszaszi
3500 punti
25
SergioDemianLerner GitHub avatar
Sergio Demian Lerner
2500 punti
26
danhper GitHub avatar
Daniel Perez
2500 punti
27
yaronvel GitHub avatar
Yaron Velner
2000 punti
28
whitj00 GitHub avatar
Whit Jackson
2000 punti
29
Ming Chuan Lin
2000 punti
30
melonport GitHub avatar
Melonport team
2000 punti
31
maurelian GitHub avatar
Maurelian
2000 punti
32
Cjentzsch GitHub avatar
Christoph Jentzsch
2000 punti
33
hwanjo GitHub avatar
Hwanjo Heo
1500 punti
34
DVPNET GitHub avatar
DVP (dvpnet.io)
1200 punti
35
Vasily Vasiliev
1000 punti
36
talko GitHub avatar
talko
1000 punti
37
swaldman GitHub avatar
Steve Waldman
1000 punti
38
ptk GitHub avatar
Panu Kekäläinen
1000 punti
39
montyly GitHub avatar
Josselin Feist
1000 punti
40
henrit GitHub avatar
Henrit
1000 punti
41
BlameByte GitHub avatar
Marc Bartlett
1000 punti
42
Barry Whitehat
1000 punti
43
badmofo GitHub avatar
Lucas Ryan
1000 punti
44
agroce GitHub avatar
Alex Groce
1000 punti
45
n0thingness GitHub avatar
Daniel Briskin
750 punti
46
daenamkim GitHub avatar
Daenam Kim
750 punti
47
Myeongjae Lee
500 punti
48
Marcin Noga (Cisco/Talos Security)
500 punti
49
jazzybedi
500 punti
50
feeker GitHub avatar
Feeker - 360 ESG Codesafe Team
500 punti
51
ethernomad GitHub avatar
Jonathan Brown
500 punti
52
davidmurdoch GitHub avatar
David Murdoch
500 punti
53
wadeAlexC GitHub avatar
Alexander Wade
500 punti
54
gitpusha GitHub avatar
Luis Schliesske
200 punti

Domande frequenti

What should a good vulnerability submission look like?

See a real example of a quality vulnerability submission.

Description: Remote Denial-of-service using non-validated blocks

Attack scenario: An attacker can send blocks that may require a high amount of computation (the maximum gasLimit) but has no proof-of-work. If the attacker sends blocks continuously, the attacker may force the victim node to 100% CPU utilization.

Impact: An attacker can abuse CPU utilization on remote nodes, possibly causing full DoS.

Components: Go client version v0.6.8

Reproduction: Send a block to a Go node that contains many txs but no valid PoW.

Details: Blocks are validated in the method Process(Block, dontReact). This method performs expensive CPU-intensive tasks, such as executing transactions (sm.ApplyDiff) and afterward it verifies the proof-of-work (sm.ValidateBlock()). This allows an attacker to send blocks that may require a high amount of computation (the maximum gasLimit) but has no proof-of-work. If the attacker sends blocks continuously, the attacker may force the victim node to 100% CPU utilization.

Fix: Invert the order of the checks.

Is the bug bounty program is time limited?

No.

No end date is currently set. See the Ethereum Foundation blog for the latest news.

How are bounties paid out?

Rewards are paid out in ETH or DAI.

Rewards are paid out in ETH or DAI after the submission has been validated, usually a few days later. Local laws require us to ask for proof of your identity. In addition, we will need your ETH address.

Can I donate my reward to charity?

Yes!

We can donate your reward to an established charitable organization of your choice.

I reported an issue / vulnerability but have not received a response!

Please allow a few days for someone to respond to your submission.

We aim to respond to submissions as fast as possible. Feel free to email us at bounty@ethereum.org if you have not received a response within a day or two.

I want to be anonymous / I do not want my name on the leader board.

You can do this, but it might make you ineligble for rewards.

Submitting anonymously or with a pseudonym is OK, but will make you ineligible for ETH/DAI rewards. To be eligible for ETH/DAI rewards, we require your real name and a proof of your identity. Donating your bounty to a charity doesn’t require your identity.

Please let us know if you do not want your name/nick displayed on the leader board.

What are the points in the leaderboard?

Every found vulnerability / issue is assigned a score

Every found vulnerability / issue is assigned a score. Bounty hunters are ranked on our leaderboard by total points.

Do you have a PGP key?

Yes. Expand for details.

Please use AE96 ED96 9E47 9B00 84F3 E17F E88D 3334 FA5F 6A0A

PGP Key

Domande?

Scrivici: bounty@ethereum.org

✉️

Questa pagina è stata utile?