DDoS
Un DDoS (Distributed Denial of Service) sature un service par un trafic massif. Protection : rate-limiting, Tor, anycast. Bitcoin Core inclut des protections natives.
Définition
Un DDoS (Distributed Denial of Service) est une attaque visant à rendre un service indisponible en le saturant de requêtes envoyées depuis un grand nombre de machines (typiquement un botnet). Le « D » de Distributed est essentiel : un DoS classique peut être filtré en bloquant une IP, mais un DDoS provient de milliers, parfois millions d'origines simultanées. Les attaques contre GitHub en 2018 (1,35 Tbps) ou contre Cloudflare en 2023 (71 millions de requêtes par seconde) ont battu des records successifs.
Comment Bitcoin est ciblé
Bitcoin présente plusieurs surfaces d'attaque DDoS :
- Les nœuds publics : un attaquant peut saturer un nœud full node en multipliant les connexions et les requêtes
getdata. - Les pools de minage : leur infrastructure web/Stratum est régulièrement attaquée par des concurrents ou militants.
- Les nœuds Lightning : envois massifs de canaux ouverts/fermés ou de paiements échoués pour épuiser leurs ressources (channel jamming).
- Les explorateurs et services : mempool.space, blockstream.info, ainsi que les API de wallets (Electrum, BlueWallet, etc.).
Protections natives dans Bitcoin Core
Bitcoin Core inclut plusieurs mécanismes anti-DDoS depuis les premières versions :
| Mécanisme | Effet |
|---|---|
| Banscore | Incrémente sur comportement anormal, déconnecte à 100 |
| Limite de connexions | 125 par défaut, 8 sortantes garanties |
| Rate-limiting des messages inv | Évite la saturation par annonces |
| Validation rapide des en-têtes | Détecte les chaînes invalides très tôt |
| Compact Block Filters | Réduit la bande passante pour clients légers |
Bonnes pratiques pour un opérateur
Si vous opérez un nœud public ou un service Bitcoin :
- Placer le nœud derrière un reverse proxy avec rate-limiting (Nginx, Cloudflare).
- Activer Tor / I2P pour réduire l'exposition de l'IP réelle.
- Limiter le nombre de connexions entrantes via
maxconnections. - Monitorer les pics de bande passante et de connexions.
- Pour Lightning : limiter le nombre de HTLCs en attente par canal.
À retenir
Bitcoin lui-même, en tant que réseau pair-à-pair décentralisé, est très résilient face aux DDoS : il n'a aucun point central à abattre. Mais les services et nœuds individuels restent vulnérables. Voir aussi DoS et channel jamming pour des attaques plus spécifiques.
Termes lies
- DoS (Denial of Service)Un DoS rend un service indisponible (vs DDoS distribué). Vise par exemple à bloquer un nœud ou un canal Lightning. Bitcoin Core a un système de banscore pour mitiger.
- Channel jammingLe channel jamming est l'attaque consistant à saturer les canaux Lightning par de faux HTLC. Vulnérabilité connue mais coûteuse à exécuter. Mitigée par HTLC endorsement et Anti-DoS reputation. Sujet de recherche actif.
Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.