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

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

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

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

我们最近看到有很多用户冒充 Telegram 群组的管理员,然后在这些合法群组的主要频道向用户提供 “帮助”(虽然他们不是真正的管理员,他们复制了正牌管理员的简介,只是略微改动了用户名)。冒牌管理员通常会利用专业话术来迷惑用户,向用户分享看似合法的网站(因为有品牌背书)的链接。这些网站会要求用户提供私钥或助记词。

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

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

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

“清道夫” 是一段用来监控区块链(包括交易池,从技术层面上来说,交易池不在链上)的代码。它有着比人类更快的反应速度,按照编好的程序为符合规则的特定交易签名。

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

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

2017 年有一类局非常流行,利用了具备锁定功能【即,无法成功调用transfer()】同时有喂价的代币。Dave Appleton 发文揭露了这类局。

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

微众银行:区块链未来的新使命是为全社会构筑一个ESG可信基础设施:4月27日下午,微众银行副行长马智涛在微众区块链品牌全新发布会上表示,在ESG领域,随着未来社会高质量发展,提出了一些新的诉求,对于ESG如何落地起到非常关键的作用。未来区块链的新使命应该是为全社会构筑一个ESG可信基础设施,来促进公平与可持续发展,微众银行在这个领域也一直持续投入。

公开资料显示,微众银行从2015年开始布局区块链,并于2016年牵头发起国内第一家金融行业的区块链联盟“金链盟”。2017年,微众银行实现了区块链技术的自主安全可控,并将牵头研发的区块链底层平台FISCO BCOS完全开源。(界面新闻)[2022/4/28 2:36:06]

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

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

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

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

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

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

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

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

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

如何击败 “清道夫”?

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

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

DeFi钱包Frontier现已支持Tezos区块链:3月23日消息,DeFi钱包Frontier已将Tezos (XTZ) 区块链已添加到其支持的网络套件中。(U.today)[2022/3/23 14:13:31]

代币合约地址

该代币是否已用于质押(解锁是否有时间限制)

代币能否转移

代币价值(由用户主观判断或美元价值决定,以便确定优先级)

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

使用太极网络(Taichi Network)

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

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

- 图源:TAICHI.NETWOR -

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

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

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

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

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

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

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

接下来,我们将通过太极网络广播来自被黑地址的已预先签署过的交易(这里也可以使用公共节点,请将账户中的全部 ETH 余额设为 gas 费,以免被 “清道夫” 抢跑(至少尽量降低这种可能性),因为在这种情况下, “清道夫” 必须发送更多 ETH 到被黑账户才能在 gas 费竞价中胜出)。

使用?Flashbots

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

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

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

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

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

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

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

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

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

感谢你的理解。

如果你想要获取该服务,请向?support@mycrypto.com?发送主题为 “Account Sweeper - Requesting Assistance!” 的邮件。

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

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

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

永远不要在联网设备以及任何网页上输入你的原始保密信息(私钥、key store 文件和助记词)。

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

购买?Ledger

购买?Trezor

如果你使用移动设备与 dApp 进行交互,我们建议使用 WalletConnect 签署消息(注:WalletConnect 永远不会要求你提供保密信息)。

原文链接:

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

作者:??Harry Denley

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

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

链链资讯

以太坊最新价格银行账户跨省冻结?币圈用户必读

原文标题:原创|跨省冻结?中小企业必读 关于币圈银行账户总被机关冻结的原因以及法律上的救济途径,飒姐团队此前做过分享(见2021年4月9日《玩虚拟币,异地冻卡咋处理?》),本期法律问答继续和大家聊聊这一话题,供各位参考。

TRX比特蓝鲸创始人陈雷:内蒙碳达峰未达标 5月执行高电价

金色财经现场报道,4月24日,由印比特主办、金色财经和易矿联合主办,珠海市横琴新区数链数字金融研究院指导的《2021新基建区块链峰会》在成都召开。比特蓝鲸创始人陈雷进行主题演讲《算力市场年度回顾与分析》指出,矿场2020—2021年度危机事件不完全统计,事由涵盖电价不稳、供电中断、内部纠纷、地方性政策、技术事故、不可抗力等。

MANA、司法机关等“冻结”银行卡的法律依据(上)

近年来,“币圈”、外贸圈等大量的银行卡被“冻结”,形成了“冻友圈”,“冻友们”很疑惑怎么莫名其妙的银行卡就被冻结了呢?、司法机关等实施冻结的法律依据究竟有哪些?今天团队小伙伴就给你们唠唠什么是“冻结”?那些机关依法有冻结权限?冻结的法律依据有哪些?以及解除冻结的法律规定? 冻结,是有权机关根据法律规定。

DOGEEIP-1559创作者:EIP-1559无法解决以太坊拥堵和高费用问题

尽管过去几天出现了较大幅度回调,但自4月初以来,ETH的价值从1,800美元升至2,480美元的峰值,增长了近30%。以太坊在网络拥塞和交易成本上升的批评声中逐渐崛起。 放眼来看,自2月下半月以来,在以太坊生态系统上交易的平均成本一直徘徊在16-20美元的范围内,这对于希望促进较小规模交易以利用交易的个人来说是不切实际的。平台。

[0:15ms0-3:646ms