Cette version contient des correctifs pour CVE-2023-36325. CVE-2023-36325 est une vulnérabilité de confusion de contexte qui survenait dans le filtre de Bloom. Un attaquant forge un message I2NP contenant un messageID unique et envoie ce messageID à un client. Après être passé par le filtre de Bloom, le message ne peut plus être réutilisé dans un second message. L’attaquant envoie ensuite le même message directement au router. Le router transmet le message au filtre de Bloom, et il est rejeté. Cela divulgue l’information que le messageID a déjà été vu, donnant à l’attaquant une forte raison de penser que le router héberge le client. Ceci a été corrigé en séparant les fonctionnalités du filtre de Bloom en différents contextes selon qu’un message est arrivé via un tunnel client, un tunnel exploratoire, ou a été envoyé directement au router. Dans des circonstances normales, cette attaque prend plusieurs jours pour réussir et peut être perturbée par plusieurs facteurs, tels que le redémarrage de routers pendant la phase d’attaque et la sensibilité aux faux positifs. Il est recommandé aux utilisateurs de Java I2P de mettre à jour immédiatement afin d’éviter l’attaque.
Dans le cadre de la correction de ce bogue de confusion de contexte, nous avons revu certaines de nos stratégies pour coder de manière défensive, contre ces types de fuites. Cela inclut des ajustements au netDb, aux mécanismes de limitation de débit, et au comportement des floodfill routers.
Cette version ajoute not_bob comme deuxième fournisseur d’hôtes par défaut et ajoute notbob.i2p et ramble.i2p à la page d’accueil de la console.
Cette version contient également une liste de blocage paramétrable. Le blocage est semi-permanent : chaque adresse IP bloquée reste normalement bloquée jusqu’au redémarrage du router. Les utilisateurs qui constatent une croissance explosive de la liste de blocage pendant des attaques Sybil peuvent opter pour des délais d’expiration plus courts en configurant la liste de blocage pour que les entrées expirent après un certain intervalle. Cette fonctionnalité est désactivée par défaut et n’est pour l’instant recommandée qu’aux utilisateurs avancés.
Cette version inclut également une API permettant aux plugins de modifier le Desktop GUI (DTG). Il est désormais possible d’ajouter des entrées de menu à la zone de notification, ce qui permet un lancement plus intuitif des plugins utilisant des interfaces d’application natives.
Comme toujours, nous vous recommandons de mettre à jour vers cette version. La meilleure façon de maintenir la sécurité et d’aider le réseau est d’utiliser la dernière version.
Détails
Changes
- netDb: Throttle bursts of netDB lookups
- Sybil/Blocklist: Allow users to override blocklist expiration with an interval
- DTG: Provide an API for extending DTG with a plugin
- Addressbook: add notbob’s main addressbook to the default subscriptions.
- Console: Add Ramble and notbob to console homepage
Modifications
- Fix replay attack: CVE-2023-36325
- Implement handling of multihomed routers in the netDb
- Fully copy new leaseSets when a leaseSet recievedAsPublished overwrites a leaseSet recievedAsReply