区块链索引服务依赖于合约事件来帮助归档数据,并在一个漂亮的用户界面中给我们提供交易记录,其通常被称为“区块浏览器”,比如Etherscan。但恶意合约可以表现得无比“正常”,却会污染这些事件,从而区块浏览器,向毫无戒备的用户提供关于代币来源的误导性信息。
例如,恶意用户可以部署一个简单ERC20合约和“空投”代币给一群用户,在自动做市商上创建一个看起来健康的流动资金池,等待用户根据错误的宣传购买或出售代币,认为此代币是已知开发人员/实体的一部分。
ERC20代币(它是代币接口的通用标准)是合约的属性、函数、输入、输出和事件的集合。只要我们的合约具有正确的函数特征,我们就可以在这些函数中使用自定义逻辑——即使是提供不正确数据的函数。
例如,如果合约部署者发送一个代币,我们可以让一些/所有区块浏览器向最终用户(在某些视图中)显示不同的地址。假设如下;
合约部署者是有恶意的,想要为他们的代币制造一些炒作。
代币在AMM中有一些流动性(如Uniswap)供用户购买/出售,主要的流动性提供者头寸属于代币背后的团队。
一南非男子不小心删除了20个比特币的密钥:根据MyBroadband的报道,一名叫迈克尔斯南非男子在十年前开采了20个比特币,但弄丢了密钥致使再也无法找回比特币。在撰写本文时,比特币的交易价格约为46500美元,20枚BTC的当前价值超过93万美元。“我相信我使用了原始的比特币钱包软件,它需要钱包密钥和密码才能访问。”迈克尔斯说,他在电脑上的一个文本文档中备份了钱包的私钥和密码,但随后在清理设备时删除了该文档。?“我记得收集了房子里所有的硬盘、记忆棒、CD和DVD,并仔细检查了它们。这花了大约一周的时间。我还尝试在主硬盘上运行数据恢复软件,但这没什么用。到那时,该驱动器已被多次格式化和重复使用。”迈克尔斯现在是一名合格的电子工程师,目前拥有少量的各种加密资产。(dailyhodl)[2021/8/20 22:25:34]
许多用户都知道发送者,而不是某个随机的地址。
这不仅仅是ERC20的问题……受污染的数据可以被插入到任何代币标准事件中,如NFT (ERC721, ERC1155),以迷惑用户和潜在投资者,让他们认为项目有特定的利益方/影响者,而实际上并没有。
BM:blockone的声明在涉及不可控的未来时要小心:BM在推特表示,blockone的声明在涉及不可控的未来时要小心,未来一直在变我们也一直在适应。许多东西(如审计)出现的时间要比我们想的要更晚。[2020/10/12]
这个问题并不“新鲜”,但我们写这篇文章是为了强调正在发生的事情,以及用户在“模仿”“看起来合法”的项目之前应该做些什么。
当区块浏览器看到交易发出的事件时,他们将其记录在他们的链下数据库中,并与其他数据建立关系,这样他们就可以建立一个很好的交易关系图,在他们的UI中显示给终端用户。
我们将部署一个概念验证合约,使用一个老版本的 Solidity,同时也要证明它与任何Solidity版本或以太坊中的任何东西都没有问题,其是一个来自链下应用程序信任合约的信任问题。一般来说,对事件的继承信任是“正确”的,它是一种合约将可用数据提供给链下程序进行索引的方式。
精选 | 人民日报提醒小心比特币勒索等网络“勒索”黑手:人民日报发表文章称,提醒人们小心比特币勒索等网络勒索黑手。文章中表示,过去的敲诈勒索纷纷改头换面搬到了网上,并且呈现出较过去手法更隐蔽、涉及面更广、危害更大等特点,网络勒索也逐渐发展成一条新兴的地下黑色“掘金”产业链。业内专家表示,政府、企业和个人都必须将网络安全置于突出位置,做好日常维护,才能避开网络勒索的“黑手”。[2018/7/30]
在上面的合约(位于0x3afe99bd92b1aed3237196b26743681766d4940e)中,我们修改了逻辑,将 Transfer 事件中的发送者地址更改为流行区块浏览器上标记为“OpenSea:Wallet”的地址,前提是我们(创建合约的人)发送代币。
它所做的是,当区块浏览器索引该事件时,它从Transfer事件中看到地址为0x5b32…1073发送了代币,而不是实际的发起者0x11b6…04C9,这可能导致该方法被不良行为者利用,诱使用户认为;
一个受欢迎的人物在代币上有既得利益
高西庆:对于区块链应该小心对待:日前,清华大学教授高西庆做客中国金融博物馆书院佛山分院读书会,他表示对于区块链应该小心对待。要做到拥抱区块链、定义区块链、规范区块链,才能保证行业的健康发展。此外,区块链除了数字货币之外,正逐渐应用到技术创新、知识产权、公益事业等领域中,未来将对人们的生活产生很大改变,这是令人兴奋的地方。[2018/3/27]
一个受欢迎的人物正在“卸载”大量的代币
代币是合法的,因为在区块浏览器上,它显示了已知的实体与代币合约“交互”
让我们从合约部署者地址调用transfer(),看看区块浏览器索引了什么。我们只是将代币从我的地址(0x11b6…04C9)移动到一个目标地址(0x4bbe…1520)。
“OpenSea: Wallet”ERC20活动视图显示它似乎已经发送了一个名为OpenSeaRevenueShare的代币到目的地。
Cointelegraph警告用户小心欺诈行为:国外加密货币垂直媒体Cointelegraph发文称,警告所有用户,Cointelegraph只是一家资讯媒体,并不会赠送任何的加密货币,如果有人以Cointelegraph的名义赠送加密货币,那一定是欺诈行为,请警惕。[2018/3/23]
交易表明(在“token Transferred”中)“OpenSea: Wallet”将代币发送到目标地址。
目标地址显示“OpenSea: Wallet”给他们转移了10个代币。
大多数这样的以利用用户的恶意合约都没有被“验证”,又因为我们只能接触到区块浏览器上的字节码,如果事件被污染了不良数据,再基于某些条件,都很难让用户进行验证,就像我们的概念验证一样。如果合约没有被验证,比如我们无法看到Solidity/Vyper/...代码,并且只暴露于字节码,那么在与合约交互之前,我们应该采取预防措施。
如果一个代币被“空投”给我们或其他实体,我们应该谨慎,特别是当我们试图在DEX上清算代币时,因为过去有一些事件是利用人为制造价格的方法从窃取的。
一种快速的方法是检查事件参数是否与交易发起者匹配,这并非万无一失,因为空投者有多发送方合约。例如,如果交易“From”字段与事件不匹配,请谨慎处理。
用不良数据污染事件的方法正在主网上进行。一个已知的问题。例如,如果我们在 Google BigQuery 上运行以下查询,我们就可以了解合约发生了什么,它们在发出事件来索引者,让他们认为Vitalik Buterin正在使用他们的代币。
ElonPlaid (0 x907f3040e13bd57f3b00f89bb8ee19424a95b065)
在构造函数上发出一个被 Vitalik Buterins 地址污染的 Transfer() 事件,用于整个代币供应。
使用代币开始交易时,发出一个被Vitalik Buterin地址污染的Transfer()事件。
合约创造者向DEX (4ETH价值)提供流动性
三天后,移除6ETH的流动性,有2ETH的利润
KenshaInu (0 x3a7eaa257181719965f8ebe64bb7c13ffbbca36b)
合约创造者向DEX (5ETH价值)提供流动性
三天后,撤掉6.9ETH的流动性,1.9ETH的利润
IronDoge (0 xf6072df56114e1a1c76fe04fb310d468c9ba8c38)
合约创造者向DEX (4ETH价值)提供流动性
一天后,移除5.8ETH的流动性,使项目获得 1.8ETH 的利润
这只是许多例子中的三个。不法分子正利用污染事件来用户,他们的目标不仅是Vitalik Buterin的已知地址。
尽管区块浏览器在可视化区块链数据方面非常有用,但它们的逻辑可能被滥用来显示误导性/不正确的数据。区块链的古老格言“不要信任,要验证”似乎是合适的,特别是当我们都相信区块浏览器可以提供绝对准确的数据,而不考虑它们如何解释数据时。
这是一个已知且潜在的难以解决的问题,我希望这篇文章能够帮助人们在“模仿”一个项目之前少一些FOMO,多一些小心,因为它看起来像是有人投资了,而实际上他们并没有。
金色周刊是金色财经推出的一档每周区块链行业总结栏目,内容涵盖一周重点新闻、矿业信息、项目动态、技术进展等行业动态。本文是其中的新闻周刊,带您一览本周区块链行业大事.
1900/1/1 0:00:00以太坊协议设计的主要目标之一是最小化复杂性:使协议尽可能简单,同时仍然使区块链能够做好一个有效的区块链网络需要做到的事情.
1900/1/1 0:00:00在过去的一年里,我们采访了 50 多家 Web 3 元宇宙公司。今天总结一下我的收获。“Web 3 元宇宙”指的是数字虚拟世界,通常通过代币或 NFT 包含一些用户所有权元素.
1900/1/1 0:00:00开年爆冷、跌跌不休,“元宇宙”为啥突遇寒冬?让人意想不到的是,2021年大火的元宇宙,却在2022年开头就遇冷.
1900/1/1 0:00:00国际运动品牌PUMA正在NFT的浪潮中找寻新的自我。3月2日,PUMA推特换下了经典的美洲狮飞跃头像,取而代之的是Cool Cats(酷猫)系列NFT形象.
1900/1/1 0:00:003月2日消息,美联储主席鲍威尔本周将在众议院和参议院分别发表讲话。周三出席众议院小组会议,周四出席参议院委员会,公布半年度货币政策更新.
1900/1/1 0:00:00