王英哲
2020年7月2日,MongoDB遭受攻击,约22 900个数据库被清空,攻击者要求以BTC作为赎金赎回被清空数据库的备份。
7月11日,Cashaa交易所发生交易异常,攻击者通过控制受害者电脑,操作受害者在Blockchain.info上的比特币钱包,向攻击者賬户转移约合9 800美元的BTC。
7月15日,Twitter遭受社会工程攻击,员工管理账号被盗,造成多个组织和个人的Twitter上发布欺诈信息,诱使受害者向攻击者比特币账户转账。
7月22日,约克大学信息被盗取,攻击者要求约合114万美金的BTC作为赎金。
7月23日,英国足球联盟信息被盗取,攻击者要求BTC作为赎金。
7月25日,西班牙铁路基础建设管理局约800 Gb信息被盗,攻击者要求BTC作为赎金。
7月30日,佳能遭受到黑客攻击,约10 Tb照片和其他类型数据被盗,用户要求以数字货币作为赎金。
7月31日,数字货币交易所2gether遭受黑客攻击,约139万美金的BTC被盗。
1.黑客勒索攻击
传统的勒索软件攻击以及通过系统漏洞远程控制受害者系统的攻击,是7月至今发生的黑客勒索攻击事件中主要攻击方式。此类攻击行为,攻击者不需要了解熟悉区块链的知识和技术细节就可以完成攻击,尤其是Twitter攻击(利用了社会工程的方法),其攻击者是3名青少年,最大年龄仅有22岁,这起事件是7月的安全事件中较典型的一例,产生的影响范围极广。
2.代码漏洞攻击
对于代码漏洞攻击相关事件,攻击者必须要理解区块链,51 %的攻击能够找到可以利用的条件(租用庞大的算力)来完成攻击,并且需要对智能合约的技术有深刻的了解,找到其中的逻辑漏洞并加以利用。
2020年8月4日,DeFi项目Opyn被攻击者通过代码漏洞,获得数目等于存入数目2倍的代币,最终造成了约37万美金的损失。
因勒索攻击门槛低,攻击方式大同小异,因此可供分析程度有限,8月代码漏洞攻击事件发生于DeFi项目Opyn中,攻击产生的原因是Opyn在智能合约oToken中的exercise函数出现漏洞。攻击者在向智能合约发送某一数量的ETH时,智能合约仅检查了ETH的数量是否与完成该次期货买卖需要的数量一致,并没有动态地检查攻击者发送的ETH数量是否在每一次交易之后,仍然等于完成该次期货买卖所需要的数量。
也就是说,攻击者可以用一笔ETH进行抵押,并赎回再次交易,最终获得自身发送数量2倍的ETH。
CertiK安全研究团队认为,Opyn没有对其更新完成后的智能合约再次进行严谨的安全审计验证就直接进行部署运行,从而造成了智能合约中的程序代码漏洞没有被及时发现,是此次事件发生的主要原因。
在此建议:做好区块链项目运行的硬件以及平台软件的安全漏洞筛查,在日常工作中关注培养员工对于黑客攻击常见手段的认识和防御意识。
做好对区块链运营中可能出现的某方占有超过全区块链一半总算力的“支配”情况,对于特定区块链项目中的防护,可以考虑采用提高交易确认必须次数或者优化共识算法。
做好对区块链项目中链代码和智能合约代码的验证审计工作,邀请多个独立的外部安全审计服务来审计代码,并在每次更新代码后进行重新审计。