慢雾:pGALA 事件根本原因系私钥明文在 GitHub 泄露
2022-11-7 17:54:59 Author: 慢雾科技(查看原文) 阅读量:16 收藏

By: Kong

据慢雾区情报,11 月 4 日,一个 BNB Chain 上地址凭空铸造了超 10 亿美元的 pGALA 代币,并通过 PancakeSwap 售出获利,导致此前 GALA 短时下跌超 20%。慢雾将简要分析结果分享如下:

相关信息

pGALA 合约地址

0x7dDEE176F665cD201F93eEDE625770E2fD911990

proxyAdmin 合约地址

0xF8C69b3A5DB2E5384a0332325F5931cD5Aa4aAdA

proxyAdmin 合约原 owner 地址

0xfEDFe2616EB3661CB8FEd2782F5F0cC91D59DCaC

proxyadmin 合约当前 owner 地址

0xB8fe33c4B55E57F302D79A8913CE8776A47bb24C

简要分析

1. 在 pGALA 合约使用了透明代理(Transparent Proxy模型,其存在三个特权角色,分别是 Admin、DEFAULT_ADMIN_ROLE 与 MINTER_ROLE。

2. Admin 角色用于管理代理合约的升级以及更改代理合约 Admin 地址,DEFAULT_ADMIN_ROLE 角色用于管理逻辑中各特权角色(如:MINTER_ROLE,MINTER_ROLE 角色管理 pGALA 代币铸造权限。

3. 在此事件中,pGALA 代理合约的 Admin 角色在合约部署时被指定为透明代理的 proxyAdmin 合约地址,DEFAULT_ADMIN_ROLE 与 MINTER_ROLE 角色在初始化时指定由 pNetwork 控制。proxyAdmin 合约还存在 owner 角色,owner 角色为 EOA 地址,且 owner 可以通过 proxyAdmin 升级 pGALA 合约。

4. 但慢雾安全团队发现 proxyAdmin 合约的 owner 地址的私钥明文在 Github 泄漏了,因此任何获得此私钥的用户都可以控制 proxyAdmin 合约随时升级 pGALA 合约。

5. 不幸的是,proxyAdmin 合约的 owner 地址已经在 70 天前(2022-08-28被替换了,且由其管理的另一个项目 pLOTTO 疑似被攻击。

6. 由于透明代理的架构设计,pGALA 代理合约的 Admin 角色更换也只能由 proxyAdmin 合约发起。因此在 proxyAdmin 合约的 owner 权限丢失后 pGALA 合约已处于随时可被攻击的风险中。

总结

综上所述,pGALA 事件的根本原因在于 pGALA 代理合约的 Admin 角色的 owner 私钥在 Github 泄漏,且其 owner 地址已在 70 天前被恶意替换,导致 pGALA 合约处于随时可被攻击的风险中。

参考:https://twitter.com/enoch_eth/status/1589508604113354752

往期回顾

复盘 | Team Finance 被黑简要分析

复盘 | UvToken 项目被黑分析

被推倒的多米诺骨牌 —— VTF 代币被黑分析

复盘 | OmniX NFT 平台被黑分析

慢雾招募令,加入未来的安全独角兽

慢雾导航

慢雾科技官网

https://www.slowmist.com/

慢雾区官网

https://slowmist.io/

慢雾 GitHub

https://github.com/slowmist

Telegram

https://t.me/slowmistteam

Twitter

https://twitter.com/@slowmist_team

Medium

https://medium.com/@slowmist

知识星球

https://t.zsxq.com/Q3zNvvF


文章来源: http://mp.weixin.qq.com/s?__biz=MzU4ODQ3NTM2OA==&mid=2247496669&idx=1&sn=afc4ca790ea79c62f09d21b1aafaa3cc&chksm=fdde8d5acaa9044c346e1e72aaca4c73db33a83b6a2b982c207a8778187a418cc0bf02db73b1#rd
如有侵权请联系:admin#unsafe.sh