此版本包含对 CVE-2023-36325 的修复。CVE-2023-36325 是发生在布隆过滤器中的上下文混淆漏洞。攻击者构造一条包含唯一 messageID 的 I2NP 消息,并将该 messageID 发送给一个客户端。该 messageID 在通过布隆过滤器后,不允许在第二条消息中再次使用。随后,攻击者将同一条消息直接发送给 router(路由器)。router 将该消息交给布隆过滤器,随后该消息被丢弃。这会泄露该 messageID 之前已被看到这一信息,使攻击者有充分理由相信该 router 正在承载该客户端。该问题已通过将布隆过滤器的功能按不同上下文分离来修复,这些上下文基于消息是经由 client tunnel(客户端隧道)、exploratory tunnel 到达,还是直接发送给 router。在正常情况下,此类攻击往往需要数天时间才能成功,并且可能受到多种因素的干扰,例如攻击期间 routers 重启以及对误报的敏感性。建议 Java I2P 用户立即更新以避免该攻击。

在修复这一上下文混淆 bug 的过程中,我们修订了部分防御式编码策略,以防范此类泄露。这包括对 netDb、速率限制机制以及 floodfill routers 的行为进行微调。

此版本将 not_bob 添加为第二个默认 hosts 提供者,并将 notbob.i2pramble.i2p 添加到控制台主页。

此版本还包含一个可调整的阻止列表。将 IP 地址列入阻止列表是半永久性的,每个被阻止的 IP 地址通常会一直被阻止,直到重启 router。用户若在 Sybil 攻击期间观察到阻止列表爆炸式增长,可以通过将阻止列表配置为按固定间隔使条目过期,从而选择更短的超时时间。该功能默认关闭,目前仅建议高级用户使用。

此版本还包括一个用于通过插件修改 Desktop GUI(DTG) 的 API。现在可以向系统托盘添加菜单项,从而更直观地启动使用原生应用接口的插件。

与往常一样,我们建议您更新到此版本。保持安全性并帮助网络的最佳方式是运行最新版本。

详细信息

仅提供翻译,勿包含其他内容:

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

更改

  • 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

已修复缺陷的完整列表