优惠论坛

标题: 卷土重来?黑客获利约130万美元,FEGexPRO合约被攻击事件分析 [打印本页]

作者: lzqandly    时间: 2022-5-23 23:52
标题: 卷土重来?黑客获利约130万美元,FEGexPRO合约被攻击事件分析
2022年5月16日,成都链安链必应-区块链安全态势感知平台舆情监测显示,Ethereum和BNB Chain上FEGtoken项目的FEGexPRO合约遭受黑客攻击,黑客获利约3280 BNB 以及144 ETH,价值约130万美元。成都链安技术团队对事件进行了分析,结果如下。
5 H! a4 [: C" v  w5 a/ k. ^% `% ~+ O7 T" K* X, O; {
3 h( H/ n7 w  z/ G# z& j
- {- ]4 z$ C7 T: F7 j  f. b7 ~

$ l  _# Z$ S/ V/ X& @0 @7 q3 U, s! t8 ]
$ W. I1 L% P7 v$ X) [#1 事件相关信息
/ [4 y+ p3 I5 J$ z8 Q
+ j* T" j3 u! Y" \
4 A( U9 Z- ^% P# B6 e0 D2 X, Z
" j$ J5 h$ C4 q5 v0 ]9 r, ~( O本次攻击事件包含多笔交易,部分交易信息如下所示:1 G. Y& J' M' ]; m  e

  \7 z; l2 F+ _$ o2 p9 C
* @; F! D' K2 |; @' f. f% v& Z8 h& _3 b% q" `# U
攻击交易 (部分)
. `2 S! a) X  L8 L" I# v8 D$ M: Q
0x77cf448ceaf8f66e06d1537ef83218725670d3a509583ea0d161533fda56c063 (BNB Chain)4 q7 X/ g/ A& f! y

' D5 s9 D4 c" T; z: K9 \0x1e769a59a5a9dabec0cb7f21a3e346f55ae1972bb18ae5eeacdaa0bc3424abd2 (Ethereum)  J9 H+ U2 x! o" s) e4 G/ X% P1 x' b; T

9 R, T) B" G& C' f, b2 W9 J2 V1 J

9 L+ K; w; Q" S  s) C; r. M攻击者地址6 ^8 j/ M% l( W+ A  v0 |

1 }) S4 D  n: b# b  v' }0x73b359d5da488eb2e97990619976f2f004e9ff7c6 G$ n3 }' R# u" X2 i3 `3 h0 B

2 g3 x! F- H7 X" r  Q
- t7 G7 n  p- o. h$ x. j; a! b+ |/ w8 |6 l! a0 o- F: A( F; Y
攻击合约
- Y* `4 M# j. s5 J/ r: Z: Q) }4 _, o; _7 n7 E, T$ R% m
0x9a843bb125a3c03f496cb44653741f2cef82f445: q! T  e3 L0 c. r8 g  G  V1 t+ r
9 D9 `& j5 f, ?% X* U9 A! ^
) ~7 M+ {' I% J2 R6 `0 W

: J, o! g6 x" a6 l( _; p被攻击合约(部分)
$ f# j- t8 Z. f; H  G: q+ N; d1 I& R- z3 X0 j; h
0x818e2013dd7d9bf4547aaabf6b617c1262578bc7 (BNB Chain)
! h, a" y5 O2 G' i5 x/ {4 H% {5 P2 y' }; J+ j3 T, K  n3 |; [5 Z3 X( h
0xf2bda964ec2d2fcb1610c886ed4831bf58f64948 (Ethereum)" G  g& ]' t6 ^+ a6 K

3 g4 a2 A6 M# W% ]' K2 ~
9 N; L2 M* Q$ y* ^" c) y5 l' M5 ^* S: B4 f5 `2 \
#2 攻击流程
/ A3 E8 i/ W$ @/ }; b( P& ~- m, F. K* |
" j) l0 D/ m! `0 s, n2 M& l
Ethereum和BNB Chain上使用攻击手法相同,以下分析基于BNB Chain上攻击:
+ ]! `3 l( Z$ ^9 r, V9 d( E4 }, `8 W+ v( B; }9 ^$ r$ `

7 I6 c; u8 U4 K9 e/ |# K  m
5 {, J/ [+ k/ R$ t1. 攻击者调用攻击合约(0x9a84...f445)利用闪电贷从DVM合约(0xd534...0dd7)中借贷915.84 WBNB,然后将116.81 WBNB兑换成115.65 fBNB为后续攻击做准备。
- V+ S! k! ]4 u' X! }$ X# L( L% @% ?8 {( e/ v# x6 z2 f6 A
+ }2 W7 ~" E/ x

. y- T: H# z( D6 ~2. 攻击者利用攻击合约创建了10个合约,为后续攻击做准备。* }" ^0 F+ x3 V$ ?5 r2 k, z
" Q, C) N4 N, I& C

! o* r$ V% ^1 q, ]3 d, D% Z! F  P3 r9 I8 b8 v
+ O. R1 \) {* N, G5 e9 H7 E0 D
' e' t3 W0 m! Y7 W7 m
3. 攻击者接下来将兑换得到的fBNB代币抵押到FEGexPRO合约(0x818e...8bc7)中。
5 w. X6 m! O- n+ E, ?* h# f7 M* R
% H  T0 X$ _" y  ^) L8 F
! g3 a" m2 B/ E8 P2 T- Y
2 W- Z5 y: _3 s$ [. v5 T; W- o+ O4. 然后攻击者重复调用depositInternal和swapToSwap函数,让FEGexPRO合约授权fBNB给之前创建好的其他攻击合约。3 _7 @8 [; Y( ^& O

, @3 R, O" B/ X7 f! I0 e* y; Y1 [# i7 R$ p- m* n  \6 l- m

0 }+ }; E4 j' t( D5 _& i0 P; J+ o: i& ]; V& ^% b

2 r& n" a+ a) [5 [$ [& r$ g, R5. 然后利用其他攻击合约调用transferFrom函数将FEGexPRO合约中fBNB全部转移到攻击合约(0x9a84...f445)中。
7 P/ _% V8 u$ S; n- v1 D* j" }: g

; Q) ~2 q3 [1 Q' z$ `  z2 [; R5 H' G' O# t' H' ]* O- ^" B- l, j
1 p2 `$ p* Q5 X
3 b' k/ e; q/ v
6. 接下来又在LP交易对合约(0x2aa7...6c14)中借贷31,217,683,882,286.007211154 FEG代币和423 WBNB。% C6 s+ ?8 v3 K; Z) v1 C) L& W
( r0 |- y1 W9 L/ P" }- ?( g7 |! e! i
1 ^9 I& B" ]6 f5 |3 g0 o  r# j

; |7 }/ l: P- R& b7. 然后重复3、4、5步骤的攻击手法,将FEGexPRO合约中大量FEG代币盗取到攻击合约中。6 ?( Y) h! C* ?2 s8 w& E* m

' l2 G( y& A$ g5 v  s& W' T( B# w) z7 A9 p7 J

! g* @2 w) O; {9 |
: H. e5 F: s! q, g1 a4 \
) M7 _  p5 l. _9 O1 z
1 Y  Q3 S$ h  n; P: w$ c
! Z5 o1 O9 k: ^- J7 q8. 然后归还闪电贷,将获得的WBNB转入攻击合约中完成此笔攻击。
- }. E+ \/ x; Y" E1 M# i6 S! d9 }
2 F  G# d5 N3 r- x0 G# S  }2 ?0 I3 a& h7 w" B+ o" z8 d
2 Z8 n3 B2 G; b4 m8 i8 h
3 Q6 ^; n+ k2 S. U

: C$ O, ~, ^- J! B. A1 m7 V: ~9. 此后,又利用相同的原理,执行了50余笔相同的攻击,最获利约144 ETH和3280 BNB。
' D2 t/ p+ x$ J$ E$ `6 _5 q3 b" ?, ~- [5 u+ C% g# `; a

0 c: H) o3 q% `$ C- M
( w- s3 @8 z) o, q! Q4 [; @
& ~& o6 x2 p# x% X2 m# D" l* Y! A1 l$ N

7 v) }& z4 `/ w% w1 l" i+ t
8 E3 r4 l7 W( ~, e! l8 e- C% L
4 r# l5 L, p0 ^2 {) Y' G7 j# N* i) c" M# t( q- K) [# i
#3 漏洞分析
& G" A6 E8 ]3 t( p3 h/ g7 g
9 T/ l# [" |; ]& q5 V) b# q5 v
$ S4 l. A: ?' G% y8 {& C6 D9 _本次攻击主要利用了FEGexPRO合约中swapToSwap函数中path地址可控且合约中未对path地址进行有效性校验的漏洞。由于合约中depositInternal函数中更新用户余额时依赖于合约中当前代币余额,攻击者通过传入一个恶意的path地址,调用swapToSwap函数时合约中代币余额并未发生变化,导致攻击者可以反复重置攻击合约在FEGexPRO合约中记录的代币数量,从而让FEGexPRO合约将自身代币反复授权给攻击者所控制的多个恶意合约。$ i( S  Y1 U/ v1 X" y
: X$ x6 b  ^2 N% A- K8 H! C
- {% y8 \3 M; E* |0 |& t
* f. `7 U% a/ m+ }

# g1 F% b2 a! K' \) T9 ?! U; V
. O* z; G  j% g& s. A
& P) s9 {! M  @# K
! l) \/ G, N  L) u7 f4 a* n#4 资金追踪
" }4 G- Z. Z# h: {# a8 u8 G& a" l: {  `: @! U% G+ g9 w9 ^
9 U* I, F) h/ N  S/ J5 C4 E
截止发文时,被盗资金仍在攻击者地址(0x73b3...ff7c)中并未转移。1 w& y. x* P7 e( S7 l1 l- E

4 l& K7 L( g7 V3 r6 A3 i$ V3 N. \0 u* r2 z2 p- Q

0 @3 l! ]* N0 ^5 x! g  q& H5 l. S  W! T; z7 Z- ?
$ G: [4 C5 i: [8 U' m

4 o3 d' J: x" [; `& D
" `2 q+ h" h% O& D  y( s; j$ W' x1 `: c4 y  H0 P$ q
% d8 t" }% q8 \
2 ^* v6 Y: r' t4 z" j
7 L4 {- C5 Y, E
#5 总结6 [8 j8 j) I' ?' ~3 d7 k2 E

9 R! H- k1 m: |% @7 G7 R( J' _! ~) u: W, U# x
针对本次事件,成都链安技术团队建议:) b1 B2 F; N: q: [) Y
) X+ p, Y6 m( ~* [2 j5 {4 x

, O$ i  E6 D4 \! A
8 x. V  e3 J2 ^% ~. B" a项目开发时,应该注意与其他合约交互时可能存在的安全风险,尽量避免将关键参数设置为用户可控。如果业务需求如此,则需要严格判断用户输入的参数是否存在风险。此外建议项目上线前选择专业的安全审计公司进行全面的安全审计,规避安全风险。1 E( Z* A0 s0 w# B- B9 I; k
: Y" \+ t2 {( X- ?: K  ~4 s! p

作者: 22301    时间: 2022-5-24 09:06
黑客也是厉害啊,又是赚到很多。
作者: 碧海潮生    时间: 2022-5-24 13:41
开始发新闻了,也是一堆吧
作者: 万千梦想    时间: 2022-5-24 16:27
如果是行业内的人可以分析一下
作者: benlau0214    时间: 2022-5-24 16:38
那你还赶紧的去出手赢个几百万的
作者: yurulee    时间: 2022-5-24 18:28
这类新闻适当看一看就可以了
作者: zgfjxm    时间: 2022-5-24 19:54
以后还是立志去干黑客比较赚钱
作者: dupree168    时间: 2022-5-25 16:03
黑客很厉害啊,又是赚到了不少的钱的咯
作者: 屡败屡战    时间: 2022-5-26 06:56
有门技术肯定是比较好赚钱的事
作者: 爱美的女人    时间: 2022-5-26 10:19
这也是要有技术的才能做到了
作者: 爱上菠菜    时间: 2022-5-26 16:25
还是需要有技术才能够赚钱呢。
作者: 韩少    时间: 2022-5-27 11:11
这些黑客果然也是很厉害了
作者: 德罗星    时间: 2022-5-27 21:21
黑客真的是牛逼哄哄了的哦。
作者: 远韵    时间: 2022-5-28 07:08
黑客的火力的那么多啊
作者: 带笑颜    时间: 2022-5-28 20:50
黑客,真厉害,无所不在啊,这是
作者: rainwang    时间: 2022-5-29 22:08
看来它还是挺引人注目的公司




欢迎光临 优惠论坛 (https://www.tcelue.ooo/) Powered by Discuz! X3.1