这篇文章详细探讨了区块链节点的重要性及其安全性,强调节点作为区块链网络的关键组成部分,如何承载关键数据和软件,以及可能面临的攻击向量,包括DDoS攻击、恶意交易和安全漏洞。此外,文章还提供了一系列保护节点的最佳实践和安全措施,以保障区块链网络的整体安全。
区块链节点可以说是区块链网络安全最重要的方面之一。节点包含关键数据和管理任何区块链网络的软件,这使它们成为攻击者的目标,并且可能成为潜在的攻击来源。尽管区块链使用数学、加密和可能难以操纵的技术规则来存储数据,安全性仍然可能因设计考虑未能保护节点和软件运行的基础设施而失败。本指南将涵盖节点安全基础知识、常见攻击向量以及节点安全提示。
区块链是通过运行在去中心化网络中的基础设施资源上的软件来实现的,这些资源称为节点。节点运行在云原生、内部部署或两者结合的基础设施/计算资源上。节点也可以在笔记本电脑或类似设备上本地运行,只要它有足够的存储和计算能力来运行软件。
节点作为区块链网络中的参与者,用于创建和广播链上的交易。矿工在验证交易中发挥着关键作用,并帮助链进一步成长,验证和添加区块的决定基于广泛支持,通常称为 共识。每个节点保存自己的一份区块链副本,记录和跟踪所有交易并提供随时更新的网络视图。
可以预期,由于与每个区块相关联的唯一加密指纹和节点用于达成一致历史的共识协议,交易被认为是防篡改的。指纹(或哈希)作为区块有效性的信任标记,改变区块需要新的哈希。如果恶意行为者试图改变现有的哈希,链将断裂,这将表明出现了问题。这也必须比其他节点添加新块的速度更快。
节点对于确保链的正确性、维护共识和防止不法活动的发生至关重要。
区块链 susceptible 在一些与其他软件相同的漏洞和攻击向量中,然而,这些攻击的具体方式可能与传统软件(如网页应用程序等)有所不同。许多攻击向量甚至可以威胁到区块链技术的基础特性。
许多 OWASP(开放网络应用程序安全项目®)前10个网页应用程序漏洞在区块链技术和节点基础设施中同样适用。区块链作为在 P2P 网络上运行的机器上的软件实现,因此配置错误可能导致安全问题。
在一个案例中,Ethereum 钱包的用户将他们的钱包配置为从公共网络监听和接受通过 RPC (TCP端口 8545) 的命令,因此约有 2000 万美元的 ETH 被盗(点击这里阅读更多)。
分布式拒绝服务(DDoS)攻击的目的是禁用区块链节点。区块链网络没有单一的故障点,这意味着一个节点可以宕机而网络仍然可以保持完整。通过 DDoS 攻击禁用一个或多个区块链节点将使其在与同伴通信时面临困难,从而使网络更容易受到攻击。对区块链节点的主要 DDoS 威胁是交易洪水。攻击者可以向网络发送大量区块链交易作为垃圾交易,这将导致合法交易在内存池中等待处理。这可能导致软件崩溃、节点失败、网络拥堵和账本准确性受到影响。
一个最近的实例发生在 2021 年 9 月 14 日,Solana 网络离线几个小时。机器人生成大量交易使网络淹没。节点内存耗尽并崩溃,导致网络变慢。这导致进行了硬分叉,80% 的节点对区块链的状态达成一致。
区块链是公开且透明的(除非是封闭和许可的),并旨在处理不受信任的数据。由于网络的分布特性以及处理不受信任的数据,节点可能容易受到恶意交易的攻击。一个交易可以被构造以利用软件中的漏洞,这可能导致节点崩溃或授予攻击者对节点的访问/控制。如果恶意交易被包含在区块中,它可能会传播到网络中的每个节点。
与在计算机上运行的任何软件类似,区块链节点也可能受到恶意软件的攻击。通常,恶意软件会针对区块链网络中的以下领域:
公钥加密用于数字签署交易,并且已知有恶意软件可以搜索并甚至妥协用于签署交易的私钥。一旦被妥协,这些密钥可以被用来签署欺诈交易。
每个交易需要有一个发送资金的目的地。某些类型的恶意软件有能力监控和搜索地址,并在目的地替换攻击者的地址。由于区块链的不可变性和不可逆性,这无法被撤回,并且很可能导致资金损失。
区块链节点需要与其他节点沟通,以保持同步和更新。恶意软件可以过滤特定节点看到的交易和区块,从而使攻击者能够影响节点的操作,使其以恶意方式工作。
这类恶意软件利用一个不知情的节点的计算能力为不法行为者挖掘加密货币。
也存在具体于区块链节点的漏洞,通常涉及对等网络基于的攻击以及共识机制和挖矿攻击。
51%攻击 - 虽然这种情况更可能发生在链的早期阶段且网络上只有少量矿工时,但一组恶意行为者仍然有可能控制 51% 或更多的挖掘能力。这种控制力使恶意行为者能够取消有效交易、执行欺诈交易,甚至可能重写链的部分内容(虽然整个链重写是不太可能的)。
Sybil攻击 - 这可能发生在攻击者创建多个虚假节点以控制网络(51% 攻击)以篡改链的情况下。
路由攻击 - 网络基础设施对于区块链的运行至关重要。区块链节点通过路由协议共享信息。恶意行为者可以截获在网络节点组上传输的数据,阻止区块链达成共识。这些协议可能存在漏洞,并被利用以改变链的状态。
节点就像任何其他软件一样,容易受到许多传统网络安全威胁,因此许多传统安全最佳实践同样适用。
区块链的安全性依赖于其底层代码和基础设施。虽然区块链技术确实有底层安全机制,但这些机制不应被单独依赖以实现最佳安全性。网络安全和节点安全最佳实践应当得到应用,系统应定期进行审查和测试。
如果你需要安全可靠的区块链节点访问,请访问我们 QuickNode.com。我们使用行业最佳框架和软件,确保我们的网络应用程序对你安全且可靠。QuickNode 已获得 SOC 2 认证,确保达到并超出安全标准,保证行业领先的区块链基础设施。
订阅我们的 通讯 以获取更多文章和指南。如果你有任何反馈,请随时通过 Twitter 联系我们。你也可以在我们的 Discord 社区服务器上与我们聊天,认识你遇到的一些最酷的开发者 :)
- 原文链接: quicknode.com/guides/web...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!