比特币核心客户端UPnP库漏洞及解决方案

2015-10-13 10:32 来源: 巴比特资讯 阅读:7585
使用旧版本比特币核心(Bitcoin Core)客户端的用户请注意,你需要禁用用户界面“选项”(Options)下——>网络(Network)——>”Map port using UPNP “复选框 (见上图)

disable_upnp

 

总结

 

  1. 使用旧版本比特币核心(Bitcoin Core)客户端的用户请注意,你需要禁用用户界面“选项”(Options)下——>网络(Network)——>”Map port using UPNP “复选框 (见上图)

  2. 并在你的 bitcoin.conf文件中添加 upnp=0 

  3. 在命令行选项中添加 -upnp=0

请将比特币核心(Bitcoin Core)的版本至少升级至0.10.3或者0.11.1, 当它们被释放时(释放周期正在进行中)。这些版本会将库(library)升级到非缺陷版本,同时请禁用UPnP,以防止这个问题在未来会发生。

 

详细信息

 

版本号在1.9.20151008之前的MiniUPnP库,容易受到XML解析器缓冲溢出的影响。如果UPnP是启用的,会容易受到攻击。

该漏洞的详细信息可以在这里找到:http://talosintel.com/reports/TALOS-2015-0035/

已证实该漏洞,可针对那些在本地网络上运行一个恶意UPnP服务的初创公司,造成其应用的崩溃。

这仅适用于分布式的可执行文件(客户端),自建的可执行文件,其默认情况下,UPnP是已禁用的。

版本号从0.10.3到0.11.1的比特币核心,以及即将公布的0.12.0,会打上新版本的库,但不再默认启用该功能。

 

无需紧张

 

比特币核心可执行文件启用了地址空间布局随机化(ASLR)、堆栈溢出保护(SSP)、以及非执行栈和堆(DEP)功能。也就是说,很难通过该漏洞来执行远程代码操作或者泄露私钥。但建议用户还是需要进行升级,最好尽快禁用UPnP。

 

手动端口转发

 

UPnP关闭时,你的节点仍将连接到比特币网络上其他的8个对等节点,接受新区块及交易。然而,它不会接受来自其他对等节点进来的连接,除非你手动启用你路由器上的端口转发。如果你希望做这一点(它不是必须的),可按照该教程执行。

----


声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。

点击阅读全文