宇宙链 宇宙链
Ctrl+D收藏宇宙链
首页 > 波场 > 正文

首发 | Keep3r项目中心化风险漏洞分析

作者:

时间:1900/1/1 0:00:00

北京时间2020年11月20日,Telegram社群出现某些截图声称Keep3rLink接受了CertiK的审计服务。

在此,CertiK郑重声明:CertiK团队从未对"Keep3rLink"项目进行过任何审计。

同日,CertiK安全研究团队发现Keep3r项目存在中心化安全风险。

项目拥有者拥有过大权限,可将允许奖励的限制提高,从而可以向任意参与者发送任意数额的奖励且可向任意地址铸造任意数目代币。?

项目风险及相关细节

Keep3rV1:

●代码地址:

https://github.com/keep3r-network/keep3r.network/blob/master/contracts/Keep3r.sol

●?部署地址:

首发 | imKey正式支持Filecoin,成为首批Filecoin硬件钱包:12月1日,随着imToken2.7.2版本上线,imKey同步支持Filecoin,成为业内首批正式支持FIL的硬件钱包。Filecoin作为imKey多链支持的优先级项目之一,成为继BTC、ETH、EOS和COSMOS四条公链后的第五条公链。

据悉,imKey团队已在Q4全面启动多链支持计划,计划实现imToken已经支持的所有公链项目,本次imKey升级更新,无需更换硬件,不涉及固件升级,通过应用(Applet)自动升级,即可实现imKey对Filecoin的支持及FIL的代币管理。[2020/12/2 22:52:32]

https://etherscan.io/address/0x1cEB5cB57C4D4E2b2433641b95Dd330A33185A44

Keep3rV1Helper:

首发 | 火币集团全球业务副总裁:监管将决定区块链技术和加密货币的落地速度:1月21日,火币集团全球业务副总裁Ciara Sun在达沃斯世界经济论坛上表示,对区块链和数字货币的监管态度,2019年是重要的一年。在美国,到2019年底,针对加密货币和区块链政策有21项法案,这些法案包括税收问题,监管结构,跟踪功能和ETF批准,哪些联邦机构监管数字资产等。欧盟(EU)在2020年1月10日实施了一项新法律,要求加密货币平台采取更严格的反做法。瑞士,日本,立陶宛,马耳他和墨西哥通过法律,要求交易所必须根据KYC和AML准则获得许可。中国,土耳其,泰国等国家正在计划自己的中央银行数字货币(CBDC)。而监管将决定区块链技术和加密货币的落地速度。[2020/1/22]

●?代码地址:

https://github.com/keep3r-network/keep3r.network/blob/master/contracts/Keep3rV1Helper.sol

动态 | 可信教育数字身份在广州白云区首发 采用区块链等技术:12月25日,可信教育数字身份(教育卡)广东省应用试点首发仪式与应用研讨在广州市白云区举行。

据介绍,可信教育数字身份融合采用国产密码、区块链等核心技术,创新签发“云计算、边缘计算、移动计算”网络环境下的一体化数字身份,实现一体化密钥管理,构建“可信教育身份链”。(中国新闻网)[2019/12/25]

●?部署地址:

https://etherscan.io/address/0x93747c4260e64507a213b4016e1d435c9928617f

如下图图一所示,Keep3r项目的Keep3rV1智能合约中定义了两个角色:governance与pendingGovernance。

1178行setGovernance()函数允许当前governance角色将pendingGovernance角色设定为任意给定地址_governance。

首发 | 此前18000枚BTC转账是交易所Bithumb内部整理:北京链安链上监测系统发现,北京时间10月24日,17:07分发生了一笔18000枚BTC的转账,经分析,这实际上是交易所Bithumb的内部整理工作,将大量100到200枚BTC为单位的UTXO打包成了18笔1000枚BTC的UTXO后转入其内部地址。通常,对各种“面值”的UTXO进行整数级别的整理,属于交易所的规律性操作。[2019/10/24]

同时在1186行acceptGovernance()函数中,当前pendingGovernance可以将自己授权为governance角色。

因此从逻辑上governance角色与pendingGovernance角色可以循环授权,且没有任何event事件可以提醒投资者governance角色与pendingGovernance角色的变更。

此时,项目拥有者可以随意设置拥有两个角色的地址。

公告 | 火币全球站6月29日16:00全球首发 Project PAI:火币全球站定于新加坡时间6月29日16:00 Project PAI (PAI) 充值业务。7月2日16:00在创新区开放PAI/BTC, PAI/ETH交易。7月6日16:00开放 PAI提现业务。[2018/6/29]

图一:governance、pendingGovernance角色以及KPRH设置函数setKeep3rHelper()

一旦拥有governance角色,拥有角色的地址可以利用图一中1169行setKeep3rHelper()函数对当前KPRH指向的Keep3rHelper智能合约进行修改。

修改之后图二中1076行KPRH.getQuoteLimit()的具体实现就也极有可能被修改,接下来会返回给调用该函数的Keep3rV1合约不同的返回值。

图二:对某个用户keeper进行奖励的函数workReceipt()

项目拥有者如果考虑发动攻击,由于拥有governance角色,因此可以首先调用图三中addKPRCredit()函数。

在916行对某一个job的地址给与任意数目的信用数目credit。

之后可以部署一个新的Keep3rHelper智能合约,然后在该智能合约中的将getQuoteLimit方法定义为返回uint类型变量的最大值。

然后项目拥有者可以使用ADDR_A的地址来调用图1中setKeep3rHelper()函数,将KPRH值指向给定的Keep3rHelper智能合约。

最终调用图二中workReceipt()函数,由于1076行代码由于KPRH.getQuoteLimit()函数被指定返回最大值的缘故必定通过。

在1077行中由于项目拥有者使用ADDR_A的地址来进行的调用,其在该智能合约中拥有的信用数目为CREDIT_A,因此amount的数目可以为略小于CREDIT_A的任意值。

当通过1077行之后,amount的奖励数目被给与keeper的地址。

最终该keeper可以调用合同内部的ERC20的转移函数,将获得的奖励转移到自己给定的地址中,完成攻击行为。

图三:对某个job增加信用数目credit的函数addKPRCredit()

除了上文讲述的中心化风险漏洞之外,图四中的mint()允许为governance角色的地址铸造任意数目的代币。

由于governance角色的地址可以通过图一中的setGovernance()函数以及acceptGovernance()进行设置。

也就代表着项目管理者只要拥有governanvce角色,即可以通过重设governance角色地址的方式,向任意地址铸造任意数目的代币。

图四:允许governance角色随意铸造代币的函数mint()

通过查询etherscan上Keep3rV1智能合约的数据,图五显示Keep3rV1拥有者地址为0x2d407ddb06311396fe14d4b49da5f0471447d45c。

同时,如图六显示,北京时间11月20日早11点governance角色的地址也为0x2d407ddb06311396fe14d4b49da5f0471447d45c。

可以得知项目拥有者拥有governance角色权限,因此有权限可以通过上述中心化漏洞进行攻击并获利。

图五:Keep3rV1智能合约拥有者等相关信息

图六:governance角色地址

总结

区块链作为时代颠覆性的核心技术,也已在各个领域得到了广泛的应用,隐藏在收益和利好之下的安全隐患也不应被忽视。

安全审计现在已经是高质量项目的标配。

若项目没有被审计,对于用户来说,投资行为则要格外慎重;对于项目方来说,则需要准备好相关资料并寻找专业并且声誉好的审计公司进行审计。

若项目被审计过,则需尽量了解审计公司背景以及其审计报告中的各项指标。

CertiK采用形式化验证工具来证明智能合约可靠性,公司内部审计专家将利用包括形式化验证在内的多种软件测试方法,结合一流的白帽黑客团队提供专业渗透测试,从而确保项目从前端到智能合约整体的安全性。

近期,有部分项目方假借CertiK的名义发布不实审计报告。

首先,CertiK很感谢项目方对我们的认可。但项目方应对项目的发展负责,一份完整且符合安全标准的安全审计报告不可或缺,如您有审计需求,欢迎搜索微信关注CertiK官方微信公众号,点击公众号底部对话框,留言免费获取咨询及报价!?

CertiK在此提示:任何与CertiK审计相关的消息,请仔细甄别。切勿轻信相关不实内容,并请以CertiK官方或权威媒体发布的消息为准。

标签:NANVERERNGOVAggregated FinanceVerasitysunbitternXDEFI Governance Token

波场热门资讯
CyberVein如何用DAVE解答数据间的量子纠缠

转载自Cointelegraph中文官方。本月,Cointelegraph中文对CyberVein进行了专访和特别报道.

1900/1/1 0:00:00
致富思维:落魄环卫工当街怒骂,原来身份不简单,晚景凄凉并不远

V客早晨去开共享单车,准备骑车去公司。此时,正值清晨清洁工在扫大街,有个大叔对着同伴喋喋不休,在抱怨,自行车的位置显然是他的清扫区域,但他说:这家饭店,老板赚那么多钱,别说管他人瓦上霜,连自家门前雪都不管,哎,人心不古啊!我这不是行业.

1900/1/1 0:00:00
并非闪电贷攻击 “幕后元凶”是它

近日,DeFi市场经历了一场严峻的考验,多起攻击事件接连发生,造成了巨大的资产损失。在多数安全事件中,闪电贷攻击的“冠名”似乎成为了标配。但是,在其背后不容忽视的真相,其实是对预言机进行操控,造成内外价格差并从中套利.

1900/1/1 0:00:00
Bancor 发布流动性挖矿提案,以吸引更多流动性资金

链闻消息,Bancor发布推出流动性挖矿提案,以吸引新的流动性进入资金池,激励更多流动性提供者参与和提升用户粘性。该提案目前正等待表决.

1900/1/1 0:00:00
薪火言币:11.21比特币以太坊投资中防爆仓的技巧

首先要合理保持适当的仓位,投资者只有合理控制了仓位,才有机会可以盈利。如若仓位设置过重,面临被套牢的风险性很大,即使投资者帐户上有过赢利,最终也容易招致亏损.

1900/1/1 0:00:00
Filecoin 矿池分配模式和收益计算初探

由于Filecoin刚刚上线,矿池运营模式虽然大家都能够理解,但对于其中的一些收益计算和利益分配,其理论准备不足,投资人、矿池运营者都需要有一个适应期,市场有一个教育期和理解的过程.

1900/1/1 0:00:00