Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文
    事件概述7 Z5 D) [2 j0 Y0 y& K
: F  T0 c' t' a7 \2 j2 g. V+ ?" U
    今年五月底Optimism基金会聘请做市商Wintermute为op代币提供流动性,Optimism基金会为Wintermute团队提供2000万op代币用于做市。此过程中出现了沟通失误,Wintermute团队向Optimism基金会提供了Layer1(eth)上的收款账户,而此账户尚未在Layer2(Optimism)上部署,Optimism基金会向Layer2账户打款后,Wintermute团队发现了该问题,但在账户修复之前,攻击者提前取得了该账户权限,开始抛售账户中的op代币。
/ c) K* Q9 y& i; W, m. K  d) j& x/ U5 ], w8 j5 k
    时间线
2 ?( E, q) ?  c% O1 s1 ^4 w, E) S4 j. E; G( M/ M$ Q
    ●05.26&05.27-Optimism基金会向Wintermute团队提供的地址0x4f3a120e72c76c22ae802d129f599bfdbc31cb81分别打款1op和100万op作为账户测试。3 A! |/ j0 Y. @8 C  O* a! m# q2 p( R
. \4 @4 f' s! y5 t" c
    ●05.27-Optimism基金会向该地址打款剩余1900万op。  P& v$ F4 ~7 B  L6 P/ v6 b% l
4 w$ @2 O. y. P
    ●05.30-Wintermute团队发现账户错误,联系Optimism基金会,并联系GnosisSafe团队请求协助取回资金。Wintermute团队在与Optimism基金会和GnosisSafe团队协商后,评估该账户目前仍是安全的,不会被Wintermute团队之外的人控制,在GnosisSafe团队的帮助下可以取回资金。并计划在06.07日修复账户权限。( B8 Y6 {/ o- L7 \8 S. z: B
4 X3 u8 I2 _2 S( m5 U3 C! l
    ●06.01-攻击者部署攻击合约,合约内硬编码了factory地址,说明此时攻击者已确定了完整的攻击流程。# X) p& A0 s# C. l% w

# ]2 f; e# m6 ^    ●06.05-攻击者发起攻击,取得目标账户权限。并转出100万op到tornado进行兑换。5 ?9 A% F2 @  h3 b  B" w

3 K3 _: R6 {, X6 G    ●06.09-Wintermute团队发表声明对此过失负全责,并会回购所有攻击者抛售的代币,同时要求攻击者归还剩余代币。声明发表4小时后,攻击者再次转出100万op到某私人账户。
# K1 I+ M1 c1 `7 A; R4 F. l. x: z6 K+ U& @  B6 m) E1 \
    攻击路线, _& z8 p7 I! b3 ?0 C6 H7 T  X

6 {# \, r; z- j    1、所有GnosisSafe保险箱合约均由GnosisSafeproxyfactory合约部署,要获得目标地址控制权需要调用proxyfactory在此地址上部署proxy合约。
: S1 O9 M* w1 D' E( |
/ C, }' \7 y# d) B4 x* t1 O    2、攻击发生前,Layer2(Optimism)上的proxyfactory合约尚未部署,攻击者通过重放Layer1上factory合约的部署交易,在Layer2上部署新的factory合约。
! e" ?. Z% C7 d( G2 H* Q" j% c- \4 k! i) ]7 G
    3、在Layer2上通过多次调用factory合约的createProxy方法部署proxy合约,不断累加factory合约的nonce,直到将proxy部署到目标地址。9 p  S/ d) u) E8 D% B- r, O; h
, }* p+ D: H2 j9 v4 u
    4、在调用createProxy部署proxy时,将masterCopy参数设置为攻击者控制的合约地址,masterCopy将作为proxy的implementation。至此攻击者得到目标地址的控制权。
) U; L! W- [9 \: I+ }4 M, j/ k2 Q+ N3 ?! }# X7 r# w( U
    以太坊合约地址生成5 S% U, m7 n: Q/ V
/ s4 t/ W* N# _( \5 t2 L4 L, b
    为了解释上述攻击路线为何可以在特定地址部署合约,我们需要了解一下以太坊的合约地址生成机制。0 V4 u% Y- v5 |% o# S
/ S4 T6 M4 A5 G6 v" m( T
    % c$ F; Y$ b) ^, m
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

rubyou 小学生
  • 粉丝

    0

  • 关注

    2

  • 主题

    1