NFT项目审计概览
NFT是英语“NonFungibleToken”的简称,翻译过来即非同质化通证。一个NFT可以被理解为是存储在区块链上的一个独一无二的单元数据。每当谈及NFT通证,我们会很自然地将其与常见的ERC-20通证进行类比。但NFT通证与ERC-20通证是有区别的,两者的区别在于任何两个NFT通证都互不相同,不可互换,即不同质。因此,与NFT相关的操作与ERC-20通证及其它类同质数字资产的操作相比有着明显的区别。
近年来,以NFT为核心成长出了一个全新的生态,这个生态在2021年发展尤为迅猛。但是在生态快速发展的同时,生态中的安全问题却频繁显现。当业界审视这些安全问题时往往将其与ERC-20通证生态中的安全问题进行类比,但是NFT领域中出现的安全问题却有自己的特点和差异。然而这些特点和差异却还没有系统地受到业界的关注和研究。
关于NFT生态中的安全问题在学术界已经有学者进行了大胆地探索和研究,比如D.Das、P.Bose、N.Ruaro、C.Kruegel和G.Vigna合著的论文。然而在实践和具体执行过程中,对NFT安全问题该采用什么方式检视,什么流程审查,什么措施进行防范以及从哪些角度进行防范则缺乏深入的探讨和研究。
Fairyproof研究团队根据自身积累的专业知识和审计NFT项目中积累的实践经验,总结了一套系统、全面的方案,在此欲与业界和关注此领域发展的同仁进行探讨和交流。
如果一个项目、应用或服务和NFT交互,则我们视其为NFT项目、NFT应用或NFT服务。如果一个应用或服务和NFT交互,我们则视这个应用或服务是整个NFT生态中的一员。所有这些应用和服务一起就组成了现在我们见到的NFT生态系统。
在这个生态系统中,根据其中每个成员在技术上扮演的角色,我们将其分为四类:NFT通证部署的区块链、NFT通证的实现合约、实现商业逻辑及流程的核心应用、辅助NFT工作的应用或服务。
广东:建设粤港澳大湾区国家枢纽节点和大数据中心集群,鼓励发展安全可扩展区块链基础设施:金色财经报道,广东省人民政府办公厅今日印发《广东省扩大内需战略实施方案》的通知,《方案》指出将加强新型基础设施建设,建设全国一体化大数据中心体系粤港澳大湾区国家枢纽节点和大数据中心集群,优化数据中心建设布局,建设智慧超算平台。积极推进人工智能开放创新平台建设,鼓励发展安全可扩展区块链基础设施。[2023/9/8 13:27:39]
对于NFT项目的审计,这四类成员都需要关注和审视。如果NFT部署的区块链不能正常工作,项目就失去了根本;如果NFT通证的实现合约有问题,那NFT就无法正常工作,项目就失去了内核;如果项目的商业逻辑和流程设计有问题,那项目就只剩下毫无生命力的NFT通证;如果辅助NFT工作的应用或服务不能正常工作或者项目没有选择合适的辅助应用或服务,则NFT就无法将其潜力充分发挥。
因此这四者的安全和审计缺一不可,都不能忽视。在本文接下来的篇章,我们将对这四者的安全及审计分别展开论述。
对区块链的审计
对于NFT项目所部署的区块链,如果它是一条比较成熟的区块链,则通常情况下,无需再对其进行审计,这一步可以跳过。因为成熟的区块链已经在经年累月的发展和成长中,历经各种安全事故的挑战和磨练,在安全上已经有了较为可靠的保障和信用。如果其部署的区块链是新生的,则理论上对区块链的审计是不能忽略的。
对区块链的审计在业界已经相对成熟。此类审计的方式、方法、流程及重点和难点已经是包括Fairyproof在内的区块链安全公司比较熟练的业务和领域。对业界和安全公司来说,这类审计并不陌生。
“东数西算”国家数网:支持超大规模和安全可信的数字人民币应用部署:金色财经报道,贵阳贵安超互联新算力基础设施项目已入选第一批全国一体化算力网络国家(贵州)枢纽节点重点项目,建成后将支撑构建“东数西算”国家数网体系,首创“链网一体”技术体制支持超大规模和安全可信的数字人民币应用部署,首创“二次数据”经营范式通过超互联城市算力平台实现二次数据的确权、流通和交易,转变为可以量化的数字资产。(贵州日报)[2022/12/7 21:28:08]
对NFT实现合约的审计
NFT通证的实现,从技术上来讲和常见的ERC-20通证类似,都是由一个或多个智能合约组成。但是,由于NFT实现所基于的通证标准和ERC-20同质通证不同,因此NFT通证中可能出现的问题也与ERC-20通证略有不同。这其中一个典型的问题就是NFT的发行功能在实现时是否使用了合适的随机数。如果使用的随机数不合适,则NFT在发行时可能遭遇“回滚”攻击,即用户可以通过不断回滚交易,直到获取自己偏好的NFT。因此对NFT实现合约的审计也和对ERC-20合约的审计略有不同,其主要表现在关注点、重点和难点有所不同。
对此,Fairyproof在实践中系统地总结了经验,并开发一套自动化的审计工具,能够快速定位NFT合约中的风险点,排除潜在风险。
对核心商业逻辑应用的审计
这里我们所指的核心商业逻辑应用主要是指在一个NFT项目中,实现商业逻辑的部分。这部分应用会和各类NFT通证交互。
在一个NFT项目中实现商业逻辑的应用通常可分为两类:
一类是典型的互联网2.0应用。它在项目中和NFT的交互及实现的商业逻辑比较简单,通常只涉及一些简单的NFT操作,比如NFT的发行、NFT的转账等。近年极为流行的“PFP”项目就属于这类。
中国工程院院士沈昌祥:安全可信是元宇宙健康发展的头等大事:金色财经报道,在中国移动通信联合会及元宇宙产业委员会主办的2022元宇宙共识大会开幕式上,元宇宙产业委员会共同主席、著名信息系统专家、中国工程院院士、中央网信办专家咨询委员会顾问沈昌祥先生演讲了《要共识 安全可信是元宇宙健康发展的顶天之大事》。
沈昌祥主席指出,元宇宙将是下一代网络空间的主要存在和表现形式,是人与机器契合的网络化数字空间,必须建立法治体系。中国以《网络安全法》《密码法》《数字安全法》等为代表的网络空间安全法律法规体系已经基本形成,其他主权国家在这方面也都形成了各自的法律法规体系。同时,世界主要先进国家在元宇宙安全方面也都展开了深入研究。网络空间安全既是确保元宇宙系统健康运行和发展的必要保证,同时也是陆海空天以后的第五大国家主权。无论是从确保元宇宙系统安全和健康发展的角度,还是从确保国家主权和权益的角度,都必须确保元宇宙网络空间的安全可信,确保智能社会和元宇宙的健康发展。[2022/5/27 3:45:15]
另一类是包含了互联网2.0应用和区块链智能合约的综合应用。这类综合应用包含的NFT操作要复杂得多,除了简单的NFT发行和转账,还有NFT通证的管理、NFT通证的抵押等。现在NFT生态中最大的应用比如交易平台就是这类。
尽管这两类应用在复杂程度上有区别,但它们和基于ERC-20通证的应用相比都展现出一些特有的共性,这些共性也是NFT应用的共性。
这些共性主要表现在:首先NFT应用涉及的链上操作不如ERC-20通证应用涉及的链上操作复杂;其次很多NFT应用面向的用户是非技术类人士,这些用户有些甚至没有区块链方面的知识,也不了解基于区块链的数字货币。
因此为了让大量非专业领域的用户在无需具备区块链或数字货币知识的情况下毫无障碍地使用和参与NFT项目,很多开发团队会花费大量的精力和资源来设计和优化用户界面,使之更符合用户已经在互联网2.0应用中建立起来的习惯。这便自然而然地使一些项目在设计和开发的过程中大量沿袭使用互联网2.0应用的技术和流程。一方面,这降低了用户的使用门槛,更便于新用户进入NFT领域;但另一方面,这也使得这些NFT应用有过于中心化的倾向。这种过于中心化的倾向不仅存在于应用的技术实现上,也存在于商业逻辑和流程中。
倪光南:自主安全可控的分布式存储全系列解决方案为新基建所需:金色财经现场报道,8月29日,由华为、麦田云际主办的“中国分布式存储联合解决方案全国发布会暨中国分布式存储行业生态发展研讨峰会”在乌镇举办。中国工程院院士倪光南现场指出,2000年“国发18号文”直接促成了软件产业从0到1的发展,2011年“国发4号文”进一步鼓励软件产业发展,今年的第三版文件再次实现新形势下我国集成电路和软件产业发展。没有网络安全就没有国家和新基建的安全,华为和麦田云际合作发布的中国自主安全可控的分布式存储全系列解决方案,对于新基建更是所需。为了确保重要领域的自主可控,有关部门对核心技术产品实施多维度测评,包含自主可控测评、质量测评、安全测评等。我们要重视信息技术体系和生态建设,大力发展自主可控的体系和生态,更好抗击科技霸凌。[2020/8/29]
这里我们想特别强调的是:在现有NFT应用中涉及到商业逻辑和流程的部分可能会存在什么问题、是否有某些未知的隐患等还没有引起业界尤其是安全领域从业者的足够关注和研究。比如在目前诸多流行的NFT交易平台中,KYC还并未被强制要求,更谈不上坚决执行,在这种情况下如何防范安全事故及对黑客身份的追踪、定位;再如对NFT项目“真伪”的验证在大多数交易平台上还只是可选项而非必须执行项,在这种情况下如何防止用户误入假冒项目;还有对于NFT原创团队在设定及收取交易分红方面目前各类平台所采用的流程和方式是否存在安全上的漏洞和隐患以及是否存在欺诈和不公?......
对上述问题的展开和研究目前都鲜有看到业界提及,更遑论进行深入的探讨。
对此Fairyproof一直在进行跟踪研究和探索,并在这些方面积累和总结了经验,并研发了一套综合性的框架和系统,能给NFT领域的从业者提出建设性的意见及切实可行的方案。
陈纯:区块链系统需要符合安全可控的标准 全面支持国密算法:金色财经报道,在2020CCF青年精英大会上,浙江大学信息学部主任陈纯院士分享目前联盟链的核心技术有五个要点:核心技术一,性能是制约联盟链应用发展的关键因素,需要从共识算法、智能合约执行引擎、硬件加速等维度重点突破;核心技术二,安全稳定是区块链运行的基础,可以通过密码学算法、硬件加密、安全度量等多方面提升系统安全性。区块链系统需要符合安全可控的标准,全面支持国密算法;核心技术三是隐私保护,商业数据的敏感性要求区块链平台具备隐私保护能力,需要重点突破账本数据、交易和身份等方面的隐私保护技术,构建高安全、可验证、强隐私的隐私保护体系。核心技术四是良好的可扩展性,这对于区块链的易用性、可用性方面具有重要影响,从编程可扩展、存储可扩展、架构可扩展、链间可扩展方面重点突破。核心技术五是可监管,加强区块链智能监管技术研究。[2020/6/5]
对辅助服务或应用的审计
这里所提到的辅助服务或应用是指有助于NFT充分发挥其功能或特色的服务或应用。典型的如为NFT存储元数据的服务或应用.?
兴起于2021年的PFP项目就利用了辅助服务或应用。这类典型的NFT项目往往是发行一定恒定数量的NFT,每个NFT都有一个独一无二的图片,每个图片包含各种特征的组合。对每个NFT来说,这个图片就是它的元数据。
这些图片往往为了吸引用户买入和持有都经过精心的设计而独具特色,因此图片的保存和显示对这类NFT项目来说就显得非常重要。很多项目在设计时都考虑了使用各种方案使图片能够尽量永久保存。因此什么样的服务或应用能够提供可靠、稳妥的永久存储就是这些项目方关注的重点。
目前在业界常见的存储方案主要有去中心化的存储应用和中心化的存储应用。前者典型的有IPFS、Arweave等。后者主要有亚马逊云等。
但是这些存储方案并非每个都能现成地提供永久存储,有些可以提供永久存储但费用较高,有些只能提供按时收费的临时存储,各有优缺点。因此如何综合考虑使用一种或多种方案进行组合,构建一套能够永久存储的服务就是项目开发者必须考虑的问题。
但是当项目方考虑使用这些方案时,这些方案本身可能存在什么问题?在组合使用这些方案时可能存在哪些安全上的隐患或者潜在风险?如何规避和防范这些隐患或潜在风险?有关这些问题的讨论和研究至今所见相当有限。
Fairyproof自成立伊始便开始关注这个领域的研究和探索,尤其是在安全实践中可能会存在什么难点和重点等。我们基于自身的积累和实践,探索、研发了一套系统的方案用来评价和审查NFT辅助服务或应用,并研发、部署了一套全面的流程和系统以检视这些辅助服务或应用在各类实践方案中可能存在的安全隐患及潜在风险。
对NFT项目的审计不单单是对NFT智能合约的审计,它是一个系统工程、是一套综合流程,需要从生态的角度全面审视NFT本身、其核心业务逻辑及所涉及的周边应用、基础设施和辅助服务。
Fairyproof一直并将持续、密切地关注NFT生态的发展,持之以恒地深入研究这个领域的安全问题,在已经建立的成熟框架上继续扩展和探索领域内最新的发展,并继续和同业分享我们对前沿问题的思考和前瞻判断。
参考文献:
Non-fungibletoken,https://en.wikipedia.org/wiki/Non-fungible_token,Feb22,2022
ERC-20TokenStandard,https://ethereum.org/en/developers/docs/standards/tokens/erc-20/
UnderstandingSecurityIssuesintheNFTEcosystem,https://arxiv.org/abs/2111.08893,Jan19,2022
ERC-721Non-fungibleTokenStandard,
https://ethereum.org/en/developers/docs/standards/tokens/erc-721/
EIP-1155:MultiTokenStandard,https://eips.ethereum.org/EIPS/eip-1155?
ABeginner’sGuidetoUnderstandingPFPNFTs,
https://medium.com/geekculture/a-beginners-guide-to-understanding-pfp-nfts-8714e9d30d0b,August29,2021
CryptoPunks,https://www.larvalabs.com/cryptopunks
BAYC,https://boredapeyachtclub.com/#/
OpenSea,https://opensea.io/
Rarible,https://rarible.com/
Curve,https://curve.fi/
MakerDAO,https://makerdao.com/
NiftyGateway,https://niftygateway.com/
metadata,https://csrc.nist.gov/glossary/term/metadata
IPFS,https://ipfs.io/
Arweave,https://www.arweave.org/
AWS,https://aws.amazon.com/
Abouttheauthor:
YuefeiTAN,CEOofFairyproof
AboutFairyproof:
FairyproofTechisablockchainsecuritycompany,establishedinJan2021.
Itwasfoundedbyateamwithrichexperienceinsmartcontractprogrammingandnetworksecurity.TheteammembersparticipatedininitiatinganumberofdraftstandardsintheEthereumfield,includingERC-1646,ERC-2569,ERC-2794,andEIP-3712,ofwhichERC-2569wasofficiallyacceptedbytheEthereumteam.
TheteamparticipatedinthelaunchanddevelopmentofvariousEthereumprojects,includingblockchainplatforms,DAOorganizations,on-chaindatastorage,decentralizedexchanges,andconductedsecurityauditsofmultipleprojectswhichhavebeendeployedonEthereum.BasedonitsstrongR&Dcapabilityanddeepunderstandingofsmartcontractsecurity,Fairyproofhasdevelopedcomprehensivevulnerabilitytrackingandsecuritysystemsandtools.
FairyproofTechservesandworkscloselywithcustomersbyprovidingsystematicsolutionscoveringboth“codevulnerabilities”and“logicvulnerabilities”andaimstoprovidecustomerswiththebestandmostprofessionalservices.
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。