如下图所示: 图三 2、挖矿木马 – 攻击者通过上传恶意程序到公开网络或者制作蠕虫病毒等方式将挖矿程序传播到他人计算机上。 利用他人计算机资源和电力进行挖矿,获取挖矿利益。被攻击的计算机会消耗大量的资源,导致电脑卡顿,使用寿命减短。 图四 3、51%算力攻击 – 51%算力攻击是区块链最著名的攻击方式之一。 在一个POW共识的区块链网络中,算力即是权力。当超过50%的算力都由一人控制时,此人就可以任意的撤销和阻止交易,进而实现双花。 这种攻击在大型网络中较难实现,在小型网络中发生的可能性更高。在POS共识中与之类似的有币龄累计攻击和长距离攻击。 4、时间劫持攻击 – 一个节点是通过其他节点时间的中位值来确定时间的。 如果攻击者将一个恶意的节点列表置入被攻击节点的对等节点列表中,就可以控制此节点的时间,例如通过日蚀攻击。 被攻击的节点将不会接收来自正常网络的出块。由于这些交易无法提交到实际的区块链网络,攻击者便可以对此节点发起双花等攻击。 基于0确认的攻击 1、芬尼攻击 – 如果攻击者可以隐藏一个包含自己交易的区块,就可能实现一笔双花。 当一个交易所或其他机构接受0确认的交易时,攻击者可以向其进行转账,花费其隐藏区块中已经花费的资金,在新交易的区块广播前,将隐藏的区块广播。 因为所隐藏的区块时间更早,所以在后面进行的花费将被回滚,从而实现双花。 2、种族攻击 – 此类型攻击是“芬尼攻击”的分支,攻击者将同时进行两笔交易,花费同一笔资金,一笔转给支持0确认的商家进行提现;一笔转账给自己,并给予更高的gas。 节点会优先处理gas更高的交易,所以后一笔交易将不会被执行。通常攻击者会连入与被攻击商家较近的节点进行操作,使得商家优先收到最终不被执行的交易。 写在最后 区块链中的漏洞导致的代价可能非常之高,尤其是公链,任何人都可以匿名的连入公链。 而区块链的不可更改性又使得攻击发生后更难以挽回损失,虽然可以通过硬分叉和软分叉进行修复,但显然这不是一个好的方法。因此在实际上线前做好安全审计和是尤为重要的。 (责任编辑:admin) |