/ {# Z! f# o; }- \* {+ ^# A4 _5 ]# I; Z& k$ k( b! p, O
Ethereum和BNB Chain上使用攻击手法相同,以下分析基于BNB Chain上攻击: ( U# @3 M+ D3 v / V2 b5 A P; |1 B% J' F |- H. N' E6 M ! d9 W& p* \- W' C$ s1. 攻击者调用攻击合约(0x9a84...f445)利用闪电贷从DVM合约(0xd534...0dd7)中借贷915.84 WBNB,然后将116.81 WBNB兑换成115.65 fBNB为后续攻击做准备。6 I4 _" V, _( K
/ d# F U1 j# Q
, m$ p- d, ~ |) T& A- G 6 J8 O) | [0 c) W8 b( J. Q4 J2. 攻击者利用攻击合约创建了10个合约,为后续攻击做准备。 ( H8 j4 R- C Q8 S! i4 i & Z* m$ J: [$ B / H! @8 Z( L' [) O# X: v 8 y S: t- ]! D5 Q! j" S1 Y: f3 s1 z/ @" \' G
# L* ~% C7 L/ @2 I# q4 E6 x1 q
3. 攻击者接下来将兑换得到的fBNB代币抵押到FEGexPRO合约(0x818e...8bc7)中。1 ~/ E( ?9 c5 R/ O5 I) _
: ?# Y+ w3 f3 f' M ( d I. ~8 b. R4 ]2 @9 |" f , K+ C+ ?% I7 l( \& P4. 然后攻击者重复调用depositInternal和swapToSwap函数,让FEGexPRO合约授权fBNB给之前创建好的其他攻击合约。 : ?5 j& l; j! k. g, e" h/ j ! V. \; R5 k' j( q( z ( _3 M, r$ K$ h$ q8 \ `& E+ d- n7 C0 d9 t4 ^9 S
7 R& B/ v) l. l
- v( t' d6 b8 M
5. 然后利用其他攻击合约调用transferFrom函数将FEGexPRO合约中fBNB全部转移到攻击合约(0x9a84...f445)中。 5 i/ S" [2 f! q. I+ Q , g6 _. A- ^% K$ y* s: }# g5 Y) C$ A4 [& d1 q% j
+ j) l2 C7 @4 @ e$ L
9 W/ B4 U. g/ h R1 |
; O( ?& v1 G% m S0 I V6. 接下来又在LP交易对合约(0x2aa7...6c14)中借贷31,217,683,882,286.007211154 FEG代币和423 WBNB。 2 L t; f/ S& ^& I& E/ B: O! }; t2 G* w9 o
/ X3 I; u2 A, R, w
/ V" J! X9 j7 q; t; [7. 然后重复3、4、5步骤的攻击手法,将FEGexPRO合约中大量FEG代币盗取到攻击合约中。# o( v2 M8 l* T' Y. N
{2 z5 ?$ D& g
: }5 b9 X. | }/ C" [$ q' p2 l# }7 y9 f/ r6 M) G( f2 i
% J/ J& l! a* T) t/ `& q* `( {2 P4 P' h8 U7 \, ]( |0 S
7 z4 i# {4 ]! | z0 W, B