慢雾余弦撰文:区块链黑暗森林自救手册_区块链:加密货币

编者按:LUNA、3AC、FTX此前的加密巨人都相继倒下,与之相关的参与各方都损失惨重。无数案例都在告诉我们:Web3存在黑暗森林,始终有人会作恶。此时的我们,等不到监管的明确,更不能指望陌生人的善意,唯一可行的办法是提升自身认知,进行自救。本文为旧文重发,是慢雾创始人余弦编撰的《区块链黑暗森林自救手册》导读部分。

前言

区块链是个伟大的发明,它带来了某些生产关系的变革,让「信任」这种宝贵的东西得以部分解决。但,现实是残酷的,人们对区块链的理解会存在许多误区。这些误区导致了坏人轻易钻了空子,频繁将黑手伸进了人们的钱包,造成了大量的资金损失。这早已是黑暗森林。

基于此,慢雾科技创始人余弦倾力输出——区块链黑暗森林自救手册。

本手册大概3万7千字,由于篇幅限制,这里仅罗列手册中的关键目录结构,也算是一种导读。我们选择GitHub平台作为本手册的首要发布位置是因为:方便协同及看到历史更新记录。你可以Watch、Fork及Star,当然我们更希望你能参与贡献。

好,导读开始...

引子

如果你持有加密货币或对这个世界有兴趣,未来可能会持有加密货币,那么这本手册值得你反复阅读并谨慎实践。本手册的阅读需要一定的知识背景,希望初学者不必恐惧这些知识壁垒,因为其中大量是可以“玩”出来的。

在区块链黑暗森林世界里,首先牢记下面这两大安全法则:

慢雾:跨链互操作协议Nomad桥攻击事件简析:金色财经消息,据慢雾区消息,跨链互操作协议Nomad桥遭受黑客攻击,导致资金被非预期的取出。慢雾安全团队分析如下:

1. 在Nomad的Replica合约中,用户可以通过send函数发起跨链交易,并在目标链上通过process函数进行执行。在进行process操作时会通过acceptableRoot检查用户提交的消息必须属于是可接受的根,其会在prove中被设置。因此用户必须提交有效的消息才可进行操作。

2. 项目方在进行Replica合约部署初始化时,先将可信根设置为0,随后又通过update函数对可信根设置为正常非0数据。Replica合约中会通过confirmAt映射保存可信根开始生效的时间以便在acceptableRoot中检查消息根是否有效。但在update新根时却并未将旧的根的confirmAt设置为0,这将导致虽然合约中可信根改变了但旧的根仍然在生效状态。

3. 因此攻击者可以直接构造任意消息,由于未经过prove因此此消息映射返回的根是0,而项目方由于在初始化时将0设置为可信根且其并未随着可信根的修改而失效,导致了攻击者任意构造的消息可以正常执行,从而窃取Nomad桥的资产。

综上,本次攻击是由于Nomad桥Replica合约在初始化时可信根被设置为0x0,且在进行可信根修改时并未将旧根失效,导致了攻击可以构造任意消息对桥进行资金窃取。[2022/8/2 2:52:59]

零信任:简单来说就是保持怀疑,而且是始终保持怀疑。

慢雾发布Value DeFi协议闪电贷攻击简要分析:据慢雾区消息,Value DeFi遭遇闪电贷攻击的分析如下:

1.攻击者先从Aave中借出8万个ETH;

2.攻击者使用8万个ETH在Uniswap WETH/DAI池中用闪电贷借出大量DAI和在Uniswap WETH/DAI兑换大量USDT;

3.用户调用ValueMultiVaultBank合约的deposit合约使用第2步中小部分DAI进行充值,该合约中一共有3种资产,分别是3CRV、bCRV、和cCRV。该合约在铸币时会将bCRV, cCRV转换成以3CRV进行计价,转换完成后,Value Defi合约根据总的3CRV价值和攻击者充值的DAI数量计算mVUSD铸币的数量;

4.攻击者在Curve DAI/USDC/USDT池先使用第二步中剩余的大部分DAI和USDT兑换USDC,拉高USDC/3CRV的价格;

5.攻击者发起3CRV提现,这时会先将合约中的bCRV, cCRV转换成以3CRV计价,由于USDC/3CRV价格已被拉高,导致bCRV, cCRV能换算成更多的3CRV;

6.攻击者使用3CRV换回DAI,并在Uniswap中兑换回ETH,然后归还Aave的闪电贷 。

总结:由于 Value Defi 合约在铸币过程中将合约资产转换成 3CRV 时依赖 Curve DAI/USDC/USDT 池 中 USDC/3CRV的价格,导致攻击者可以通过操控 Curve DAI/USDC/USDT 池 中 USDC/3CRV 的价格来操控 mVUSD/3CRV 的价值,从而获利。[2020/11/15 20:52:09]

持续验证:你要相信,你就必须有能力去验证你怀疑的点,并把这种能力养成习惯。

慢雾余弦:多数稳定币都有拉黑地址操作,未来或看到更多黑地址:金色财经报道,慢雾科技创始人余弦刚刚发微博称,不少人惊讶USDT、USDC有拉黑地址的操作,其实GUSD、PAX、TUSD等知名稳定币都有。智能合约代码就在那,设计文档就在那,都能看到可以满足AML(反)/CTF(反恐融资) 的设计,从诞生起就有的设计。未来可以看到更多黑地址的出现。AML/CTF如果精准,那绝对是好事,当然如果误伤,那就麻烦了。 ????[2020/7/11]

关键内容

一、创建钱包

Download

1.找到正确的官网

a.Google

b.行业知名收录,如CoinMarketCap

c.多问一些比较信任的人

2.下载安装应用

a.PC钱包:建议做下是否篡改的校验工作

b.浏览器扩展钱包:注意目标扩展下载页面里的用户数及评分情况

c.移动端钱包:判断方式类似扩展钱包

d.硬件钱包:从官网源头的引导下购买,留意是否存在被异动手脚的情况

e.网页钱包:不建议使用这种在线的钱包

MnemonicPhrase

声音 | 慢雾预警:攻击者喊话所有链上伪随机数(PRNG)都可被攻击:攻击者 floatingsnow 向自己的子账号 norealrandom、dolastattack 转账并在 memo 中喊话:hi slowmist/peckshield: not only timer-mix random but all in-chain PRNG can be attack, i suggest b1 export new apis (get_current_blockid/get_blockhash_by_id) instead of prefix/num

从账号名称和 memo 可知攻击者对目前 EOS DApp 链上随机数方案了如指掌,攻击者指出 tapos_block_prefix/tapos_block_num 均不安全,并提议 b1 新增 get_current_blockid / get_blockhash_by_id 接口。[2019/1/16]

创建钱包时,助记词的出现是非常敏感的,请留意你身边没有人、摄像头等一切可以导致偷窥发生的情况。同时留意下助记词是不是足够随机出现

Keyless

1.Keyless两大场景

a.Custody,即托管方式。比如中心化交易所、钱包,用户只需注册账号,并不拥有私钥,安全完全依托于这些中心化平台

b.Non-Custodial,即非托管方式。用户唯一掌握类似私钥的权力,但却不是直接的加密货币私钥

动态 | 慢雾区表示Augur重大漏洞是一个典型的前端黑攻击:据慢雾区消息,此前报道的去中心化预测市场平台 Augur 被曝发现重大漏洞问题是一个典型的前端黑攻击。这种攻击依赖一些条件,比如攻击者需要准备好一个页面链接(不是 Augur 链接),并无论通过什么手法能让安装了 Augur 的用户访问到,然后用户需要重启 Augur 应用,这样才能形成后续的攻击。由于此时 Augur 应用里配置的 Augur 节点地址被替换了,后续的攻击本质就是一种 MITM(中间人)攻击,理论上确实可以做很多恶事。慢雾安全团队特此提醒:这是前端黑攻击里的跨私有域攻击的一种常见手法,其他项目方也应该注意。[2018/8/8]

2.MPC为主的Keyless方案的优缺点

二、备份钱包

助记词/私钥类型

1.明文:12个英文单词为主

2.带密码:助记词带上密码后会得到不一样的种子,这个种子就是之后拿来派生出一系列私钥、公钥及对应地址

3.多签:可以理解为目标资金需要多个人签名授权才可以使用,多签很灵活,可以设置审批策略

4.Shamir'sSecretSharing:Shamir秘密共享方案,作用就是将种子分割为多个分片,恢复钱包时,需要使用指定数量的分片才能恢复

Encryption

1.多处备份

a.Cloud:Google/Apple/微软,结合GPG/1Password等

b.Paper:将助记词抄写在纸卡片上

c.Device:电脑/iPad/iPhone/移动硬盘/U盘等

d.Brain:注意脑记风险

2.加密

a.一定要做到定期不定期地验证

b.采用部分验证也可以

c.注意验证过程的机密性及安全性

三、使用钱包

AML

1.链上冻结

2.选择口碑好的平台、个人等作为你的交易对手

ColdWallet

1.冷钱包使用方法

a.接收加密货币:配合观察钱包,如imToken、TrustWallet等

b.发送加密货币:QRCode/USB/Bluetooth

2.冷钱包风险点

a.所见即所签这种用户交互安全机制缺失

b.用户的有关知识背景缺失

HotWallet

1.与DApp交互

2.恶意代码或后门作恶方式

a.钱包运行时,恶意代码将相关助记词直接打包上传到黑客控制的服务端里

b.钱包运行时,当用户发起转账,在钱包后台偷偷替换目标地址及金额等信息,此时用户很难察觉

c.破坏助记词生成有关的随机数熵值,让这些助记词比较容易被破解

DeFi安全到底是什么

1.智能合约安全

a.权限过大:增加时间锁/将admin多签等

b.逐步学会阅读安全审计报告

2.区块链基础安全:共识账本安全/虚拟机安全等

3.前端安全

a.内部作恶:前端页面里的目标智能合约地址被替换/植入授权钓鱼脚本

b.第三方作恶:供应链作恶/前端页面引入的第三方远程JavaScript文件作恶或被黑

4.通信安全

a.HTTPS安全

b.举例:MyEtherWallet安全事件

c.安全解决方案:HSTS

5.人性安全:如项目方内部作恶

6.金融安全:币价、年化收益等

7.合规安全

a.AML/KYC/制裁地区限制/证券风险有关的内容等

b.AOPP

NFT安全

1.Metadata安全

2.签名安全

小心签名/反常识签名

1.所见即所签

2.OpenSea数起知名NFT被盗事件

a.用户在OpenSea授权了NFT

b.黑客钓鱼拿到用户的相关签名

3.取消授权

a.TokenApprovals

b.Revoke.cash

c.APPROVED.zone

d.Rabby扩展钱包

4.反常识真实案例

一些高级攻击方式

1.针对性钓鱼

2.广撒网钓鱼

3.结合XSS、CSRF、ReverseProxy等技巧

四、传统隐私保护

操作系统

1.重视系统安全更新,有安全更新就立即行动

2.不乱下程序

3.设置好磁盘加密保护

手机

1.重视系统的安全更新及下载

2.不要越狱、Root破解,除非你玩安全研究,否则没必要

3.不要从非官方市场下载App

4.官方的云同步使用的前提:账号安全方面你确信没问题

网络

1.网络方面,尽量选择安全的,比如不乱连陌生Wi-Fi

2.选择口碑好的路由器、运营商,切勿贪图小便宜,并祈祷路由器、运营商层面不会有高级作恶行为出现

浏览器

1.及时更新

2.扩展如无必要就不安装

3.浏览器可以多个共存

4.使用隐私保护的知名扩展

密码管理器

1.别忘记你的主密码

2.确保你的邮箱安全

3.1Password/Bitwarden等

双因素认证

GoogleAuthenticator/MicrosoftAuthenticator等

科学上网

科学上网、安全上网

邮箱

1.安全且知名:Gmail/Outlook/QQ邮箱等

2.隐私性:ProtonMail/Tutanota

SIM卡

1.SIM卡攻击

2.防御建议

a.启用知名的2FA工具

b.设置PIN码

GPG

1.区分

a.PGP是PrettyGoodPrivacy的缩写,是商用加密软件,发布30多年了,现在在赛门铁克麾下

b.OpenPGP是一种加密标准,衍生自PGP

c.GPG,全称GnuPG,基于OpenPGP标准的开源加密软件

隔离环境

1.具备零信任安全法则思维

2.良好的隔离习惯

3.隐私不是拿来保护的,隐私是拿来控制的

五、人性安全

Telegram

Discord

来自“官方”的钓鱼

Web3隐私问题

六、区块链作恶方式

盗币、恶意挖矿、勒索病、暗网交易、木马的C2中转、、资金盘、等

SlowMistHacked区块链被黑档案库

七、被盗了怎么办

止损第一

保护好现场

分析原因

追踪溯源

结案

八、误区

CodeIsLaw

NotYourKeys,NotYourCoins

InBlockchainWeTrust

密码学安全就是安全

被黑很丢人

立即更新

总结

当你阅读完本手册后,一定需要实践起来、熟练起来、举一反三。如果之后你有自己的发现或经验,希望你也能贡献出来。如果你觉得敏感,可以适当脱敏,匿名也行。其次,致谢安全与隐私有关的立法与执法在全球范围内的成熟;各代当之无愧的密码学家、工程师、正义黑客及一切参与创造让这个世界更好的人们的努力,其中一位是中本聪。最后,感谢贡献者们,这个列表会持续更新,有任何的想法,希望你联系我们。

转自慢雾科技

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

水星链

[0:0ms0-0:611ms