作为一家专注区块链生态安全的公司,慢雾科技成立于 2018 年 01 月,由一支拥有十多年一线网络安全攻防实战的团队创建。慢雾科技在行业内曾独立发现并公布数多起通用高风险的区块链安全漏洞,得到业界的广泛关注与认可。
当今区块链安全问题频发,Web3er 也都长期受此困扰。因此第二期对话,我们很高兴的请到慢雾安全团队来给大家分享关于区块链安全的干货,助力大家更有保障的探索链上世界。下面就让我们正式开始吧~
1、先请给大家介绍一下慢雾吧。
答:大家好,慢雾是一家专注于区块链生态安全的公司,我们的区块链生态安全能力是三个环:最内层的是合规安全、第二层是技术安全、第三层是生态安全。技术安全主要包括两块业务主线,安全审计和反洗钱。
安全审计内容包括 DeFi 项目的智能合约代码、中心化交易所、钱包 App、浏览器插件钱包,底层公链,并且我们还有红队测试服务,这个是我们优势之一。我们从 2018 年至今 5 年多的时间里,累计服务了行业里众多的知名、头部的客户,已有商业客户上千家,好评率很高。反洗钱这块我们有链上追踪平台 MistTrack。除此之外,还很关注合规安全,合规是这个行业长远发展的重要基石之一,我们针对安全审计或反洗钱合作的目标项目有严格的法务流程。
我们深知安全是一个整体,安全保障需要构建完备的安全体系,所以我们从威胁发现到威胁防御上提供了一体化因地制宜的安全解决方案。
简单来讲其实是一个类军事上的环形防御体系,分层防御。最外层的威胁发现,即通过慢雾区伙伴和慢雾自有威胁情报系统(这也是我们的生态安全),发现威胁、识别威胁,然后通过媒体渠道发布到整个生态进行预警;威胁防御是指我们的防御体系,从 BTI (区块链威胁情报系统) 到部署因地制宜且体系化的防御方案、实施冷温热钱包安全加固等,为客户精选网络安全、风控安全、钱包安全等领域内的优质安全解决方案提供商,让客户灵活选择、轻松应对业务发展过程中遇到的各种难题,我们希望联合行业优质伙伴及社区一起共同建设安全联防工作。
2、Web3 安全问题总是防不胜防。除去一些如:手抄助记词、注意网站真假的基本法则之外,慢雾对经常交互的 Web3er 有什么安全上建议吗?
答:既然问到的是交互上的安全,那我们首先梳理下一般攻击是怎样去盗取用户的资产的。
攻击者一般是通过两种方式来盗取用户资产:
第一,骗取用户对盗取资产的恶意交易数据进行签名,比如欺骗用户将资产授权或转移给攻击者。第二,骗取用户在恶意网站或者 App 上输入钱包的助记词。
我们知道了攻击者是如何盗取钱包资产后就要对可能的风险进行防范:
- 在签名之前要识别签名的数据,知道自己签的交易是做什么的,仔细核查签名的对象是否正确,以及授权的额度是否过大;
- 尽可能地使用硬件钱包,由于硬件钱包一般不能直接导出助记词或私钥,所以可以提高助记词私钥被盗门槛;
- 各种钓鱼手法和事件层出不穷,用户要学会自行识别各种钓鱼手法,提高安全意识,进行自我教育避免被骗,掌握自救能力,例如关注慢雾等安全公司的媒体动态,实时了解最新的骗局或钓鱼手法。当然,非常推荐大家阅读慢雾出品的《区块链黑暗森林自救手册》,干货满满;
- 建议用户为各类场景维护不同的钱包,让资产的风险处于可控。比如:大额资产一般不会频繁动用,建议放在冷钱包中且使用的时候要确保网络环境,物理环境是安全的。参与空投等活动的钱包由于使用频率较高,建议存放小额资产。通过对不同资产以及使用频率的情况可以对钱包进行分层级管理,从而保证风险是可控的。
3、8.16 那天余弦大佬发了一个很有意思的推特——你们的“Mac 比 Win 电脑更安全”的错觉是从哪里来的?对于 Web3 用户来说,慢雾认为 Mac 和 Win 电脑的优势和劣势分别是什么?
答:是的,这条推特也引起了不小的讨论,相反地,我们反过来问 “Win 比 Mac 电脑更安全的错觉是从哪里来的?” 也是类似的角度和答案。单系统防入侵层面,Mac 的封闭性、权限的严格控制确实会比 Windows 好,而且全球 PC 市场份额 Mac 很低,Win 占比很高所以更多攻击发生在 Win,Win 诞生到现在基本各种攻击面都太成熟了。说夸张点,目前做渗透、入侵、APT 的安全人员 99% 都不会针对 Mac 相反,100% 的人都会针对 Win。抛开上面说的,如果拿免杀过的木马来攻击 Mac 和 Win,基本结果一样,都会中招。总的来说,一半是设备,一半是个人,如果用户安全意识不够,就很容易中招导致电脑被植入恶意程序,进而可能导致电脑上的敏感数据(例如助记词)被窃取。恶意软件的行为有许多不同的方式,它可能隐藏在电子邮件附件中,也可能使用设备的摄像头监视。建议大家提升安全意识,例如不要轻易下载并运行网友提供的程序,只从受信任的站点下载应用程序、软件或媒体文件;不要轻易打开来自陌生邮件里的附件;定期更新操作系统,及时获取最新的安全保护;在设备上安装反病毒软件,如卡巴斯基。
4、很多项目出现过“资金库”被盗的情况。慢雾认为导致安全问题的常见原因主要有哪些?监守自盗的可能性大吗?
答:根据慢雾区块链被黑事件档案库(SlowMist Hacked)统计,截至 8 月 24 日,2023 年安全事件共 253 件,损失高达 14.5 亿美元。我们从区块链作恶方式来看,主要有几个方面:钓鱼攻击、木马攻击、算力攻击、智能合约攻击、基础设施攻击、供应链攻击及内部作案。我们拿常见的智能合约攻击来说,存在以下攻击方式:闪电贷攻击、合约漏洞、兼容性或架构问题,还有一些手法:前端恶意攻击以及针对开发人员钓鱼。
另外,说到监守自盗,就不得不提到私钥泄露。私钥泄露要分情况,个人和交易所的私钥泄露差异很大。个人的私钥泄露,一般情况是把私钥或者助记词存到了网上,例如放微信收藏、163 邮箱、备忘录、有道笔记等云存储服务。黑客经常会收集网上泄露的账号密码数据库,例如很多年前的 CSDN 明文账号密码,然后去这些云存储、云服务网站上去尝试,安全圈的俗语是叫“撞库”,这是概率性的,如果登录成功了再去里头找有没有 Crypto 相关的内容。
交易所的就比较复杂了,一般是大型黑客组织,才有这种能力攻破交易所的层层安全防护,一步步入侵拿到交易所服务器里的热钱包私钥。
这里要特别提示下,这是违法行为,千万不要模仿。我们建议项目方一定要尽可能的找安全公司对自己项目的代码进行安全审计,提升项目的安全等级,也可以发布 Bug Bounty 来规避项目在持续运行和发展过程中的安全问题,同时建议各项目方健全内部管理与技术机制,通过引入多签机制、零信任机制等来加大资产保护的力度。
5、跨链桥曾被戏称为:AKA 黑客提款机。对于技术水平比较小白的 Web3er 来说,使用跨链桥时应该注意哪些点呢?
答:说到跨链桥,首先跨链桥业务复杂,代码量较大,在进行编码实现时容易出现漏洞;其次,项目中引用的第三方组件安全也是造成安全漏洞的重要原因之一;最后,跨链桥缺乏更大的开发社区意味着代码没有被广泛和仔细地搜索以发现潜在的 Bug。
对用户来说,使用跨链桥时重要的是要了解你的资金是如何被保护起来的,可以从一些维度上去看跨链桥的风险水平,例如:项目合约是否开源?项目是否有多方安全审计?私钥的管理方案是 MPC 多方计算?还是多节点多签?还是由项目方统一保管私钥?用户在选择跨链桥时也应该选择那些安全实力较强的跨链团队,首先要有所有版本的代码安全审计,其次团队要有专职的安全人员,我们也建议跨链桥相关团队能运营的更透明些,这样才能更多地接收到用户的质疑和建议,及时查缺补漏。
6、除了一些常见的 Scam 和 Phishing,慢雾能例举一些比较不常见、让人防不胜防的案例吗?
答:我们之前有披露攻击者利用 Web3 钱包的 WalletConncet 实现上的缺陷提高钓鱼攻击成功率的事件。具体来说,部分 Web3 钱包提供 WalletConncet 支持的时候,没有限制 WalletConncet 的交易弹窗要在哪个区域弹出,而是会在钱包的任意界面弹出签名请求,攻击者利用这个缺陷,通过钓鱼网站引导用户使用 WalletConncet 与钓鱼页面连接,然后不断的构造恶意的 eth_sign 签名请求。
用户识别到 eth_sign 可能不安全并且拒绝签名后,由于 WalletConncet 采用 wss 的方式进行连接,如果用户没有及时关闭连接,钓鱼页面会不断的发起构造恶意的 eth_sign 签名请求,用户在使用钱包的时候有很大的可能会错误的点击签署按钮,导致用户的资产被盗。其实只要离开或关闭 DApp Browser,WalletConncet 连接就应该暂停。否则用户在使用钱包时,突然跳出一个签名,很容易混乱导致出现被盗风险。
说的这里,我再提一下 eth_sign。eth_sign 是一种开放式的签名方法,最近两年常常被攻击者用于钓鱼,它允许对任意 Hash,也就是可以对任何交易或任何数据进行签名,会构成危险的网络钓鱼风险。大家在签名或登录的时候应该仔细检查正在使用的应用程序或网站,也不要在不太明确的情况下输入密码或签署交易,拒绝盲签可以避免很多的安全风险。
7、想听一听慢雾从事区块链安全这么多年来,遇到过最深刻的安全事件是什么?
答:近两三年印象深刻的是 2021 年发生的 Poly Network 事件。在攻击事件发生第一时间 8 月 10 日晚上 20 点多,我们保持高度关注,一直在分析攻击过程、追踪资金流向、统计被盗损失等等,有点在前线的感觉。而且损失 6.1 亿美元,在当时看来算是攻击事件里损失特别特别大的了。
我们团队在 11 日凌晨 5 点多的时候第一时间发布了本次攻击事件的分析情况以及我们已发现攻击者的 IP 身份信息等等的内容,11 日下午 16 点多,黑客在重重压力下,开始归还资产。后续黑客在链上的一些言论也是比较“有趣”,整个过程下来是非常有作为一家安全公司的成就感的。
8、最后问个有趣的问题。形式化验证、AI 审计等新技术持续迭代,请问慢雾如何看待新技术的发展?
答:说到新技术,比如 ChatGPT 提高对传统文字的工作效率,比如 CodeGPT 提高代码编写效率。我们内部之前也有使用历史上常见的漏洞代码作为测试用例,去验证 GPT 对基础漏洞的检测能力。测试结果发现 GPT 模型对简单的漏洞代码块的检测能力还是不错的,但是对稍微复杂一点的漏洞代码暂时还无法检测,并且在测试中可以看到 GPT-4(Web) 的整体上下文可读性很高,输出格式比较清晰。
GPT 对合约代码中基础的简单的漏洞具备部分检测能力,并且在检测出漏洞后会以很高的可读性来解释漏洞问题,这样的特性比较适合为初级合约审计工作者前期训练提供快速指导和简单答疑。但也有一些缺点:比如 GPT 对每次对话的输出存在一定的波动,可以通过 API 接口参数进行调整,但是依旧不是恒定的输出,虽然这样的波动性对语言对话来说是好的方式,大但是这对代码分析类的工作来说是一个不好的问题。
因为为了覆盖 AI 可能告知我们的多种漏洞回答,我们需要多次请求同一问题并进行对比筛选,这无形中又提高了工作量,违背了 AI 辅助人类提高效率的基准目标。再者,对稍微复杂的漏洞进行检测即会发现当前的(2024.3.16)训练模型不能正确的分析并找到相关关键漏洞点。
虽然当前来看 GPT 对合约漏洞的分析及挖掘能力还处于相对较弱的状态,但它对普通漏洞小代码块的分析并生成报告文本的能力依旧让使用者兴奋,在可预见的未来几年伴随这 GPT 及其他 AI 模型的训练开发,相信对大型复杂合约的更快速,更智能,更全面的辅助审计一定会实现。
结语
十分感谢慢雾安全团队的回答。有光的地方就有阴影,区块链这个行业也不例外;但正是由于慢雾科技等区块链安全公司的存在,才能使得阴影处也能有微光照进。相信随着发展,区块链行业也会愈加规范,也十分期待慢雾科技未来的发展~
之后 NFTGo 会持续邀请 Web3 Builder 进行专访对话,也欢迎大家关注我们的中文推特:@NFTGoCN 对我们保持关注。大家有任何建议、想看到的 Builder 、想问的问题、或是想要毛遂自荐都欢迎前往我们推特评论或 DM。