原文来源:老雅痞
作为一个NFT收藏家,你应该关心链上的合约出处,NFT最真实的出处是直接从创造者的钱包或创造者拥有的智能合约中铸造出来的。然而,通过一些小技巧,有人可以使用一种被称为"SleepMinting"的技术来操纵NFT的创作者来源。
SleepMinting是指者直接将NFT铸造到一个著名的创作者的钱包,并从创作者的钱包中回收NFT。
这就造成了这样的假象:
(1)创作者自己真实地铸造了一个NFT;
(2)将该NFT发送给了一个子;
基于"链上"的出处,子可以声称他们拥有一个著名创作者铸造的NFT,并以更高的价值出售。
这在技术上是如何运作的?
首先,了解智能合约如何存储NFT的出处和所有权是至关重要的。任何人都可以使用ERC-721标准中的ownerOf(tokenId)函数查询NFT智能合约,以确定NFT的当前所有者是谁。你甚至可以通过改变eth_callRPC方法参数来查询特定区块编号的NFT所有者。然而,查看所有权变化的最简单方法是查看ERC-721传输事件日志。
a16z通过11个地址控制4150万枚UNI,约占供应量的4.15%:2月6日消息,加密KOL Chris Blec发推表示,a16z使用其全部投票权重来反对Uniswap使用Wormhole跨链桥在BNBChain上启动Uniswap协议的提议,a16z是Wormhole竞争对手Layer Zero的大投资者,币安创始人赵长鹏转推称,“Uniswap由a16z控制?”。
此外赵长鹏还转推区块链数据公司Bubblemaps的推文,称a16z可以通过11个地址控制4150万枚UNI,占UNI供应量的4%以上(4.15%),这是通过任何提案所需的数量。[2023/2/6 11:49:20]
我的a16zCrypto同事DarenMatsuoka在Twitter上写了一篇关于事件日志和它们如何工作的精彩文章。转移事件日志是由智能合约向外界发送的消息,包含关于NFT转移的细节。转移事件日志提供了一种有效的方式来检查NFT的来源。
Merkle Manufactory完成3000万美元融资,a16z领投:金色财经报道,Merkle Manufactory在由Andreessen Horowitz (a16z) 领投的一轮融资中筹集了3000 万美元,将用于开发名为 Farcaster 的去中心化社交网络协议。 Standard Crypto、Elad Gil、1confirmation、Scalar Capital、First Round Capital、Volt Capital等参投。据悉,Merkle Manufactory由前Coinbase高管 Dan Romero创立,并正在努力推出Farcaster,这是一种用于构建社交网络的“充分去中心化”协议。(The Block)[2022/7/13 2:10:53]
Sleepminting
这是beeple的数百万美元的作品"First5000Days"在rarible上出售。看看截图,上面清楚地写着"创造者:
Mysten Labs在由a16z领投的A轮融资中筹集3600万美元:金色财经报道,Web 3基础设施公司Mysten Labs在由Andreessen Horowitz(a16z)领投的A轮融资中筹集了3600万美元。这家初创公司由Facebook加密部门Novi Research的资深人士创立,并将很快推出一个NFT平台。据悉,Mysten首席执行官Evan Cheng领导Novi并帮助开发了Diem区块链和Move编程语言。[2021/12/7 12:55:43]
但这是个局。它的创造者MonsieurPersonne,也自称是NFTs的Banksy,故意用beeple的名字铸造了这幅作品,他使用了一种叫做sleepminting的技术。那么他是如何做到的呢?
基础知识
NFTs是使用ERC-721智能合约创建的,他们把NFTs的所有权记录作为一个列表。一个地址和一个作品的序列号组成一个对。像这样。
a16z后期风险基金就与Coinbase相关的交易获得美国联邦贸易委员会批准:金色财经报道,Andreessen Horowitz(a16z)的后期风险基金已就涉及Coinbase的交易获得美国联邦贸易委员会(FTC)的批准。目前尚不清楚批准是针对该基金先前披露的在Coinbase购买股票还是用于新的购买。[2020/9/25]
Alice:1
Booble:2
Malory:3
成交后,Alice可以通过以下方式将她的NFT转让给Booble。
转让1:Alice==>Booble
现在列表更新如下:
Alice:
Booble:2,1
Malory:3
在以太坊,我们用地址名字来识别,而且我们需要签署转账来授权。但是在这篇文章提供的例子中,我将使用明确的名字来简化解释。
现在,通常开发者以合理的方式实现ERC-721合约。Alice只有在她拥有一个NFT并能提供有效签名的情况下才可以转让。
ERC-721标准只是一个社会契约,它定义了一个允许艺术平台互操作的接口。只要合同的接口与ERC-721合同的接口相匹配,任何机器都会认为它是有效的。
但是,正如我们现在所看到的,这可能会导致以太坊上的NFTs出处出现安全问题,它是可以被篡改的。
正如我所说,任何合理的ERC-721合约都会允许矿工只为自己造币,并且只转让他们拥有的碎片。
但是,假设我们定制了我们的ERC-721合约,使我们可以向其他账户铸造。假设我们调整了转让功能,使我们的账户在某些情况下,也可以转让另一个人的NFT。那么,我们就可以建立一个允许我们sleepmint的合约。
举例:作为攻击者Malory,我们给Booble铸造一个序列号为1的作品。
mint1:address(0)=>Booble(由Malory执行)
现在我们的配对看起来如下:
Alice:
Booble:1
Malory:
然后,由于Malory已经调整了合同,将序列号为1的作品从Booble的账户转移到任何其他账户,她可以在像rarible这样的NFT平台上提供出售。
由于她从地址(0)到Booble的铸币为"创造者--Booble"被显示出来。
一旦Malory成功了一个买家,她就会收到她的"Ethers",并将假冒作品卖给买家。
转让1:Booble=>买方。
更新后的所有权记录现在是这样的。
Alice:
Booble:
Malory:
Buyer:1
就这样,Malory成功地篡改了NFT的创作出处记录,以高于其价值的价格出售了她的作品。
具体细节:
仔细查看rarible和Etherscan的信息,我们会发现这更像是一个接口问题,而不是一个安全漏洞。没有人能够进入beeple的账户。
另外,当仔细看一下交易记录时,可以发现子的手法:
伪造的mint交易
伪造的转账交易
对于mint交易,我们可以看到Etherscan显示两个"From"字段。一个是msg.sender发送的交易,另一个是说明NFT的发件人。
对于交易的发件人字段,即msg.sender,它不能被人为操纵,因为它需要发件人的私钥的有效签名。然而,对“TokensTransferred”的字段的授权受制于智能合约的漏洞,因此,可能会人为操纵。
简单地说,子可以对“TokensTransferred”字段进行任意修改。
因此,我们必须检查From和TokensTransferred是否都与beeple的正确地址相符。如果不是,那就是假的。
这种攻击它与"rugpull"类似,有人认为区块链使web2问题都消失了,因为每一个数据都是经过认证和检查授权的。但事实是,这些问题并没有消失。它们只是转移到了别的地方。
Polkadot生态研究院出品,必属精品背景2021年11月11日,波卡迎来了上线后的重要里程碑,波卡网络平行链插槽Auction正式启动,在经历了一个多月的激烈角逐后.
1900/1/1 0:00:00尊敬的用户:?BKEX现决定延迟上线MRI,具体上线时间变更为:2022年3月17日18:00。项目简介:??MarshallInu是一个致力于帮助MMA战士的项目.
1900/1/1 0:00:00SinceGate.ioBrokerProgramlaunch,manygreatinstitutionsaroundtheworldhaveappliedtojoinus.
1900/1/1 0:00:00项目名称:Zebec(ZBC)项目概况:Zebec是一项革命性的DeFi技术,可实现实时、无摩擦和连续的支付流.
1900/1/1 0:00:00一、项目简介?Altrucoin是一种去中心化金融代币,旨在将去中心defi借贷、代币返还、慈善捐赠和去中心化治理结合起来.
1900/1/1 0:00:00L2可能是未来12-24个月以太坊扩展的最重要部分。甚至超过Eth2.0合并。因此,我想对L2的发展方式以及它们的未来发展方向进行一些研究。在过去的12个月中,L2的增长非常惊人.
1900/1/1 0:00:00