自从加密货币出现,安全问题就没断过,这似乎和大家认识到的区块链“安全性”有些落差。这种密码学的机制是否足够安全?主要的问题出在了哪里?
10月中旬,笔者参加了西安SSC安全峰会,这是中国互联网界的安全盛会,以安全主题为核心,并且会议的组织者、参会者都与安全相关。
在峰会的区块链安全论坛,我们与论坛的组织者零时科技团队聊了聊用户尤为关注的安全问题,区块链安全猛于虎。但这个严肃的问题也包含了很多看似有趣的趣事。
以下为受访者零时科技CEO邓永凯和金色财经记者王航对话时的自述。
图为零时科技CEO邓永凯在西安安全峰会演讲中
认识代码审计的过程
金色财经记者王航:我看到零时科技的官网现在有三个产品,其中还包含两个工具,这些是什么时候做的?
零时科技CEO邓永凯:我们开发的第一个产品是智能合约安全自动化检测工具,现已免费开放给C端用户,我们将一些基础并重要的安全审计逻辑做成工具后开放了出来;另外一个是基于EOSDApp的防火墙,以SDK的形式存在,当合约接入SDK之后,有异常的一些交易就可以预警并阻断的。
数据:过去7天Blur平台交易额相比OpenSea交易额超过4倍:金色财经报道,过去7天的数据显示,NFT市场交易额排名前三的平台分别是:Blur(280762.04ETH)、OpenSea(68038.94ETH)、X2Y2(26562.71ETH)。相比之下,过去7天Blur平台交易额相比OpenSea平台交易额超过4倍。
此外,过去7天的数据显示,OpenSea平台的NFT销售数量为322182枚,Blur平台的NFT销售数量为312921枚,Blur平台的NFT销售数量略低于OpenSea。[2023/3/6 12:44:18]
对于安全审计来说,智能合约安全审计也类似与传统安全的源代码安全审计,如果全靠自动化其实不是很靠谱,因为机器规则是死的,有些涉及到业务逻辑上的问题,业务上的问题缺陷,自动化规则是无法审计的。即便是形式化验证,也是需要有一定的判断依据的。自动化工具可以作为辅助,比较隐蔽的问题,需要人工去通过经验去判断出来的。
Offchain Labs提案:为Arbitrum推出新交易排序策略:3月4日消息,Arbitrum开发团队Offchain Labs发文公布新提案,正在为Arbitrum定序器提出一个修改后的交易排序策略,在当前先到先得的策略上增加了一个时间提升,即交易可以支付优先费用以获得一个小优势或在排序中获得时间提升。这应该不会影响到大多数用户,但可以提供更好的方法来管理latency racing(延迟竞赛)行为。Arbitrum定序器将应用时间提升公式,相应地调整时间戳,并按照调整后的时间戳的递增顺序对交易进行排序。[2023/3/4 12:42:19]
我们开放智能合约检测工具的目的是,让用户可以自己把合约代码传上去进行免费检测并且获取审计报告,如果需要更详细的审计,可以再联系我们,结合人工一起做审计,发现安全问题,避免资产损失。
金色财经记者王航:一般情况下,你们的审计流程是怎么进行的?
零时科技CEO邓永凯:首先,我们拿到用户的审计需求,先用团队内部安全审计工具过一遍,工具是一个辅助,然后是人工按照审计列表将常规漏洞点审计一遍,第二个就是涉及合约是什么业务场景、业务规模、业务逻辑。然后业务的描述,再去看代码里有没有和描述功能不一致的问题。例如说会不会被薅羊毛,币有没有被锁,权限设置错误问题,会不会增发了以及无限铸币等等。
安全团队:Creepy Friends项目Discord服务器遭到攻击:金色财经报道,据CertiK监测,Creepy Friends项目Discord服务器遭到攻击。请社区用户在修复之前不要点击@yuvalshalem3发布的任何链接。[2022/12/8 21:31:07]
因为智能合约的特殊性,加之当前defi项目中业务逻辑的复杂性,所以,我们所有的代码审计都是要经过交叉审计的,多个审计人员交叉审计,有哪些问题提出来,然后相互审查,看他们审计的问题是不是重合的点。不同的人审计切入点是不一样的。所以交叉审计可能会发现更多的问题。
严肃又有趣的社会工程学攻击
金色财经记者王航:目前你们的业务客户主要是哪些角色??
零时科技CEO邓永凯:大部分的公链生态客户主要是交易平台和公链项目,联盟链生态客户主要在传统金融行业及政企领域,其中交易平台的安全最为复杂。
比如说交易平台,从它本身的产品业务到移动端APP、web网站、资产钱包,还有账户体系,因为它是中心化的,大部分安全问题跟传统安全是一样的,但在钱包和资产管理比较特殊。在交易平台的安全服务过程中,除了对业务的安全测试,渗透测试,我们还会进行社会工程学攻击,钓鱼攻击等,还有特别值得一提的是,我们做最多的出现问题的都是办全问题上。
其中的社会工程学攻击,是通过一些非常规的手段去检测目标的弱点,最容易出问题是他的办公网,我们曾经审计的几家交易所都是通过办公网打进目标系统的。方式很多,在跟目标客户获得授权的情况下,例如可以去目标的办公地点,但很多交易所找不到他的办公点的。确定地点之后,我们可以去拜访他们,可以将一些准备好的设备,例如改装过的数据线、鼠标,贴上名字的U盘等,在不经意间这些设备被使用后,就可以控制他们的网络或者主机,如果这些主机是可以连到交易平台业务后台,或者是有权限操作钱包,基本上就可以控制目标资产和核心数据了。
这就是社会工程学攻击,利用的都是人的失误,以及人性的弱点。例如攻击者需要进入工作地点,可以因为商务需求,可以依靠工作人员,或者伪造工牌、门禁等,最终进入目标网络。
还有其他的方式例如仿冒WiFi,我们伪造一个WiFi让受害者连接,或者仿冒大量跟目标WiFi一样的热点让受害者连接,或者直接让目标WiFi无法工作,目的就是让受害者连接我们的WiFi,受害者随便连一个就是我们伪造的,受害者输入后密码就被我们拿到了,从而可以持续的进入目标网络,窃取数据。
甚至于攻击方式还有针对打印机,打印机一般都是很少有人关注的,但现在的打印机都比较智能,会把历史打印扫描的文件存储一段时间,而有些人会把助记词打印出来,有一个展示案例就是,目标客户打印机可以配置邮箱,将打印的历史内容统一发送到制定邮箱。
对于办全的问题,技术人员可能还好,但是行政、财务、商务人员可能基本上没有什么安全意识的,可能杀软件都不装,补丁也不打,简直相当于当街裸奔。我们之前的一个案例,就是一个客户的财务人员电脑中病了,财务人员电脑可以操作钱包,钱包的90多万美元被盗走了。
所以,安全从业者总有办法在授权的情况下进入目标网络,从而接触并控制目标数据和资产,那么此时就需要极高的道德要求,必须是“正义的hacker”,我们就是。
金色财经记者王航:那交易所这一类交易业务集中,资产集中的平台如何做安全呢?
零时科技CEO邓永凯:交易所的安全问题,它是一个面,不是单点,只有整个业务面都做到尽可能安全的情况下,整体的安全性才能提高。木桶原理非常明显。尤其混入的这种社会工程学和钓鱼攻击的特征之后,例如交易所对外的商务人员肯定很多,这些风险都是不确定的。
安全问题类别也很多,我们团队做安全攻防这么多年来,攻击者的攻击技术在提升,我们的安全防护技术也在在提升,白帽子漏洞挖掘技术在提升,恶意黑客的技术提升更快。甚至于恶意黑客可以直接在地下市场够买一个0day漏洞就可以直接攻破一些系统。
还有一个方面就是资产安全管理,钱包安全配置,资产及交易风控,例如有些攻击盗币,在不正常的时间内,在不正常的交易数量等,对这些异常行为需要有风控系统,第一时间对异常交易进行预警,或者直接拦截交易。
另外对于异常转账的地址,也可以做到前期筛查,对可疑地址做内容关联或者地址画像。例如暗网的地址、黑客的地址、勒索软件的地址、地址、钓鱼网站的地址等。
我们的“数字资产及交易安全系统”就可以提供这些风控功能的API,可以把这个接口给交易所,如果这种恶意地址产生交易的话,及时进行预警并配合交易所风控措施进行资产及交易的保护。
其他与区块链安全审计相关且重要的事
金色财经记者王航:对于公链安全的理解有什么不同吗?
零时科技CEO邓永凯:正常情况下,公链代码都是开源的,开源也可能出现问题,例如社区每一个人都可以贡献代码,当提交了一个代码提在分支上面,然后官方把分支打包进去了,打包进去之后,但这个代码是个隐藏非常深的后门,此时项目中就引入了一个定时炸弹,可能过了半年之后,全部资产就被转走了。
比如今年7月,RVN项目的盗币事件,三行代码价值4000万人民币,就是典型的因为开源以及安全意识缺失导致的安全事故。
安全问题是一个很多元化,且复杂的问题,特别是区块链领域的安全问题,更是复杂。加强所有人的安全意识,是一个非常重要的事情,所有的漏洞都是人为造成的。
金色财经记者王航:最后请您聊一聊区块链安全审计的原则。
零时科技CEO邓永凯:首先,第一点是责任和信任,客户信任安全团队可以找到安全问题且不影响自身业务,安全团队必须对客户的需求负责人,尽可能多的发现问题并提出安全解决方案,协助修复。
安全领域的人都是心怀正义的,如果没有正义感你就做不了合格的白帽子,无论在任何时候都得坚守原则,确保团队不做错的事情,一念成佛,一念成魔。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。