2019年12月20日至2020年5月16日,NKN与北京长亭未来科技有限公司合作对NKN区块链项目进行了全面的安全审计,其中包括2轮安全审核与整改审计。
此次安全审计中,共发现16个漏洞,包含5个关键、4个高度、2个中度以及5个低度漏洞。其中15个漏洞已完成修复,余下1个(低漏洞,细节在附录)仍未解决。
本次审核顺利完成后,NKN项目的安全性得到了显著提高,每个功能模块都能达到相对安全与保密的运行保障。这是NKN 2.0的一个重要里程碑和绝对先决条件。
当然,NKN核心开发团队将保持与第三方安全专家和社区开发者深度合作,继续提高NKN软件的安全性能。
审核范围:
安全审计涵盖的NKN源代码存储库:
NKN核心软件
NKN的nnet P2P网络堆栈
第一轮安全审查版本:
提交c4cee36ae36442470030ee514aef6841d38240ea
第一轮修复验证版本:
提交296b48b3deee64f1016beadc869ab25b1d21aaba
第二轮安全审查版本:
提交296b48b3deee64f1016beadc869ab25b1d21aaba
第二轮修复验证版本:
提交c3f225840511a6999ddc3d75587b4c6d8dfbb20d
关于长亭未来科技有限公司
长亭未来科技有限公司是全球领先的技术驱动型网络安全解决方案提供商。该公司发布了基于智能和语义算法的下一代网络应用防火墙(NGWAF),并专注于为企业提供智能且简单的下一代安全解决方案。
长亭未来科技有限公司的安全服务小组致力于为领先软件公司提供安全审计与代码审查。
附录
4.1.POR协议中端口重用造成相对不公平共识竞争(严重性:低)
4.4.1. 概述
为了减少可能的Eclipse对POR consensus网络的攻击,NKN采用了“每个IP一个ID”的策略:通过固定外界连接的目标端口,任何IP地址最多只能承载一个节点ID; 但在极端情况下,例如通过使用专用侦听器逻辑实现NodeID代理,仍然可以绕过这个限制,实现单个IP地址上托管多个节点的情况。
(细节省略)
4.1.2. 状态
未解决。
首先,在当前NKN的体系结构中,不存在有效的方法来强制执行“每个IP一个ID”的策略。
根据NKN的设计理念,唯一有效的竞争资源是带宽,并不是IP地址。因此,应该删除此限制,并允许在单个IP上托管多个节点ID的情况。