ORT:如何打败以太坊清道夫 挽救你的资产?

你没有过这样的经历:将一笔资金发送到某个账户后,这笔资金却不翼而飞?你可能是遭了“清道夫”的手。我们来帮你解除危机。

如果你的私钥被盗,作恶者通常会安排一个“清道夫”程序来监控你的账户,然后伺机吃掉你的账户中的资产——无论你在这个账户中存入ETH或其它代币,还是收到了空投,或有任何类似情况。

本文概述了“清道夫”是如何吃掉用户资产的,并提供了三种方法来挽救还没有被吃掉的资金。

用户私钥是如何泄漏的?

我们最近看到有很多用户冒充Telegram群组的管理员,然后在这些合法群组的主要频道向用户提供“帮助”。冒牌管理员通常会利用专业话术来迷惑用户,向用户分享看似合法的网站的链接。这些网站会要求用户提供私钥或助记词。

然后你的代币就没了,而且会有“清道夫”开始监控你的账户。

这里有一个钓鱼网站的例子:

-感谢研究员?@dubstard发现了很多冒充WalletConnect的活动!-

“清道夫”是如何工作的?

“清道夫”是一段用来监控区块链的代码。它有着比人类更快的反应速度,按照编好的程序为符合规则的特定交易签名。

也就是说,“清道夫”是看不到你的,它不知道你正在区块链浏览器上查看你的地址,或将你的地址“连接”到某个dApp的用户界面。仅当你签署某个交易并将其广播到网络时,它才会看到你的活动。

美联储主席鲍威尔:很难判断银行危机如何造成经济软着陆预期发生变化:金色财经报道,美联储主席鲍威尔表示,经济衰退风险是非线性的;很难判断银行危机如何造成软着陆预期发生变化;美国仍然存在软着陆机会,正设法找到那样的机会。[2023/3/23 13:20:40]

随着时间的推移,“清道夫”连同利用“清道夫”的钓鱼局也在不断进化中。

“清道夫”的演化

2017年有一类局非常流行,利用了具备锁定功能同时有喂价的代币。DaveAppleton发文揭露了这类局。

在这类局中,子会先获取这类能够被锁定的代币,但是区块浏览器依然会提供这类代币的价格。然后,子会将存有这类代币的地址的私钥公布出去,引诱受害者来取走地址中的代币。为了取走代币,受害者会将ETH转到该地址上作为gas费。然而,子早就安排了“清道夫”,以迅雷不及掩耳之势将受害者转入的ETH转移到自己的账户中。从理论上来说,被锁定的代币被认为是没有价值的,因此子试图从没有戒心的贪婪用户那里收回一些锁仓价值。

如今,被黑的地址已经被大范围放置了基础的ETH“清道夫”。还有一些集团采用逻辑上更高级的“清道夫”,会基于喂价吃掉ERC20代币。

前段时间,我对一个被黑的地址进行了研究,发现这些“清道夫”还在继续进化:

直播 | 小凤仙 > 交易所如何助力矿业发展?:金色财经 · 直播主办的《 币圈 “后浪” 仙女直播周》第4期今晚20:00准时开始,本期“后浪”仙女Aex CMO 小凤仙将在直播间聊聊 “交易所如何助力矿业发展”,感兴趣的朋友扫码移步收听![2020/6/9]

1)“清道夫”喜食高价值资产,即使这意味着需要花更多交易费。

2)“清道夫”会使用所有可用的ETH来窃取尽可能多的价值,而且其交易在同一nonce上获胜的概率很高。

3)“清道夫”有一个配对引擎,将其原生代币与质押代币进行配对,以便获得质押代币的喂价。

4)“清道夫”有自己的内部nonce计数器,如果其最高nonce在一段时间内没有得到确认,就会定期将nonce重置为?eth.getTransactionCount()?的输出。

5)我们可以透过一些链上活动看出,如果某个高价值资产成了“清道夫”眼中的猎物,“清道夫”甚至会向相关账户转入一些ETH作为gas费,以便迅速将该资产从账户中转出。

6)一些“清道夫”会为资产价值设置一个最低阈值。“清道夫”不会吃掉低于该阈值的资产。这就意味着,你可能察觉不到你的账户里有“清道夫”。细思极恐。

鉴于我们第一次撰写关于“清道夫”的文章是在2017年,如今的“清道夫”早已今非昔比,可以帮助运营者实现收益最大化,同时让受害者的损失最大化。

动态 | V神阐述如何进行ETH委托挖矿:V神回复网友提问“1.可以通过合约合租一个validator(平民化参与,共享投票身份)吗?2.一个客户端可以跑多个valifator (共享机器)吗?”表示,“你开一个validator,需要设置两个公钥:签名的公钥和取款的公钥。Phase 2后,不一定需要设置取款公钥,也可以设置取款合约。签名的私钥能withdraw,withdraw完成后validator里面的资金都给取款合约的地址。所以你开新的validator到时候,可以先发比如1以太币,设置取款合约,这个合约的规则是,谁deposit多少谁按照比例withdraw多少。一段时间后,你发withdraw的交易。现在因为奖励这个validator的balance是33.6以太币(加 5%),33.6以太币给合约,合约的规则分配1.05给你,8.4, 10.5和13.65 给其他的参与者。签名的私钥是你的,谁能withdraw多少的规则是合约定的。别人能看一个还未activated的validator的withdraw合约的规则,如果他们觉得是合理的,则他们能发他们的币给这个validator,这个是委托的方法。”[2019/10/22]

住手吧!清道夫!

如何击败“清道夫”?

首先,身为人类的你是快不过代码的,因此我们的解决方案将涉及代码。这里为你提供了几个不同的方案,虽然不能保证100%有效,但是总有一款适合你。

现场 | 独立数字经济学者刘志毅:区块链经济的内核在于如何建立新的秩序:金色财经现场报道,在今日举办的第六届中国创业者大会区块链技术与应用峰会上,独立数字经济学者刘志毅提到,区块链思想的核心是信息,区块链经济的内核在于如何建立新的秩序。他认为,我们应当建立对思想演变本质的认识,对技术演化与文明关系的认识以及对信息技术革命本质的认识。[2018/7/19]

你需要创建一个想要挽救的代币列表,以便轻松制定计划。这张列表需要包含以下内容:

代币合约地址

该代币是否已用于质押

代币能否转移

代币价值

最重要的是,你必须有条不紊,才能快速而有效的执行该方案。正如那句至理名言所说:“凡事预则立,不预则废。”

使用太极网络

“清道夫”的运作原理是监控交易池中向“猎物”地址转账的交易。这样一来,“清道夫”就可以抢在该交易确认之前签署好另一个交易并广播该交易,从而取走转入资金。

太极网络可以让你直接将已签名的交易提交给矿工,无需将其广播至公共交易池。这意味着,你的交易将进入“清道夫”的视觉盲区,也就不会被“清道夫”的机器人抢跑。

-图源:TAICHI.NETWOR-

具体方法是,将你的所有交易预先按照nonce顺序签好名,并以编程方式提交给太极网络。大多数“清道夫”只监控公共交易池中等待打包的以太坊交易,不会调用每个新区块的?eth_getBalance。也就是说,“清道夫”是看不到通过隐私交易池发送至“猎物”账户的ETH的,也就不会吃掉它。

如何让比特币的尸体飘过:财新专栏作家王立仁今日发文,尽快让比特币的尸体飘过来的方法核心点就在于影响其交易过程和记账过程,从而破坏对比特币系统的信任。他还论述了7大攻击比特币的方法:花钱硬碰硬的算力攻击(Brute Attack)、巧取通讯环节(SmartAttack)、攻击记账系统、攻击代码、攻击法币与数字货币的通道、路由分割(RoutingSplitting)攻击和直接硬分叉。[2017/12/4]

你需要做一些计算,确保发送到账户中作为gas费的ETH可以充分利用到每笔已签名交易上。如果你算得很准的话,“清道夫”可能会抢跑失败!”参考值高几个百分点,从而提高交易被打包进下个区块的概率。)

你可以在离线状态下使用MyCrypto生成交易签名,并在准备就绪时将它们发送至太极网络,或使用ethers.js编写代码来创建已签名交易。

使用带有自毁功能的智能合约

这个方法和使用太极网络差不多。我们可以使用智能合约将ETH转入账户,同时不会在公共交易池中暴露这笔交易。为此,我们可以通过一个安全的地址部署智能合约,并通过其构造函数将ETH发送到被黑的地址上。

通过部署该合约,我们可以将ETH和被黑地址的字符串发送至构造函数的参数。该合约会在同一笔交易中创建并自毁。其中,selfdestruct()?意味着我们会在同一笔交易中清除该合约的区块链状态,并将ETH发送至被黑地址。

例子:

https://goerli.etherscan.io/tx/0x82ccb222eae55aaea73dd0efee1ea6ed7320f880889f280d4a343b8823f86692

请注意,这个方法虽然有效,但是会额外增加成本,因为我们要做的操作不只是将ETH从一个账户转移到另一个账户。这个方法需要大约7万gas的成本。当gas价格处于高位时,仅gas成本就高达0.0112ETH。

接下来,我们将通过太极网络广播来自被黑地址的已预先签署过的交易,因为在这种情况下,“清道夫”必须发送更多ETH到被黑账户才能在gas费竞价中胜出)。

使用?Flashbots

一般来说,我们需要支付ETH才能让交易上链。但是,有了Flashbots,我们就可以在不支付gas费的情况下将来自外部账户的交易上链,只需使用另一个账户中的资金来“贿赂”矿工即可。也就是说,我们不需要向被黑地址转入一笔ETH作为手续费,就可以取走这个地址上的代币。没错,就是这样!

这个方案需要用到两个账户——被黑账户和用来贿赂矿工的账户。

Flashbots团队已经发布了一个名为Flashbots/searcher-sponsored-tx的项目,其中介绍了如何通过这个方案将交易上链的基本原理。

我们将使用另一个账户中的资金来支付交易费,因此不需要被黑账户中有ETH。事实上,我们巴不得被黑账户里没有ETH,毕竟我们最不想看到的,就是子/“清道夫”察觉到我们想要取走资金,使用账户内原有的ETH来抢跑我们。

为了确保被黑账户中没有ETH,我们强烈推荐大家运行一个燃烧器机器人。

我们通常建议在一台以上的机器上运行燃烧器机器人,并针对每个实例使用不同的RPC节点。例如,使用Infura在本地运行一个燃烧器,并使用其它提供商在远程服务器上运行一个燃烧器。这样就可以实现冗余,以防高网络延迟或节点故障等问题。

Flashbots/searcher-sponsored-tx中的代码需要根据你的具体需求进行修改,不过这里有个引擎可以帮助你挽救被黑地址中的代币。Flashbots引擎具有很高的灵活性,可以支持单个?transfer()?调用,或?unstake()?和?transfer()调用。

如果你不懂代码,也可以试试?@kendricktan/flashbots.tools网站提供的Flashbots功能UI:https://flashbots.tools/。

打个广告:如果上述方案对你来说太难,你也可以向我们寻求帮助,我们会收取找回资金的5%作为报酬。虽然我们也想免费提供该服务,但是由于收到的请求太多,我们的时间实在有限。我们会将这项服务的收入所得用来促进区块链行业的安全发展!

感谢你的理解。

如果你想要获取该服务,请向??发送主题为“AccountSweeper-RequestingAssistance!”的邮件。

上述邮箱地址是寻求帮助的唯一渠道。我们不会在Telegram、Discord或其它地方宣传该服务,以免带来额外的风险。

如何从根本上规避“清道夫”?

最好的防范措施当然是保护好自己的地址不被“清道夫”侵入,也就不需要与“清道夫”斗智斗勇了。

近年来,我们已经在一些app的UI上看到了反面例子——允许用户在dapp界面上使用原始保密信息。这是很不安全的做法,不应该被鼓励。

永远不要在联网设备以及任何网页上输入你的原始保密信息。

我们建议使用硬件钱包来确保私钥存放在独立设备上——如果你使用MetaMask与dApp进行交互,MetaMask最近发布了一个更新,可以让用户使用多个硬件钱包地址。

购买?Ledger

购买?Trezor

如果你使用移动设备与dApp进行交互,我们建议使用WalletConnect签署消息。

原文链接:

https://blog.mycrypto.com/how-to-beat-an-ethereum-based-sweeper-and-recover-your-assets/

作者:??HarryDenley

翻译&校对:?闵敏?&?阿剑

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

链链资讯

莱特币KSW:ZKSwap 靠什么引领 Layer 2 DEX ?

目前,以太坊Layer1生态上的AMM类型的DEX多有交易效率低、交易成本高的弊端,也逐渐成为了以太坊生态发展的阻力。而近期Layer2扩容方案不断取得进展,给予了以太坊生态更多希望.

[0:93ms0-5:868ms