优惠论坛
标题:
卷土重来?黑客获利约130万美元,FEGexPRO合约被攻击事件分析
[打印本页]
作者:
lzqandly
时间:
2022-5-23 23:52
标题:
卷土重来?黑客获利约130万美元,FEGexPRO合约被攻击事件分析
2022年5月16日,成都链安链必应-区块链安全态势感知平台舆情监测显示,Ethereum和BNB Chain上FEGtoken项目的FEGexPRO合约遭受黑客攻击,黑客获利约3280 BNB 以及144 ETH,价值约130万美元。成都链安技术团队对事件进行了分析,结果如下。
/ r. a' P# V/ F6 z
: H! N) D4 T& t) c [2 v/ ^$ x
4 O+ b$ b4 Z8 g0 N* }
# k2 o- l) B! @9 ?' R( u$ \- {
, C- s2 B5 a9 N3 v8 K1 @: X' J
2 h! k8 L& {8 L+ L
#1 事件相关信息
$ O' @% u4 ^8 ~
5 r: ^: D. O! K" {! W
& F7 W# E3 i$ _
" c1 _: i% f, b% u" G
本次攻击事件包含多笔交易,部分交易信息如下所示:
% m$ y _* F4 h) ?5 G( Z1 h: f
. E) F% R$ i4 ^, f+ ]! }
" J! I1 N. m7 z1 D. y1 u1 t) u
" N$ {; Z$ k, a" @# A! T& x! j
攻击交易 (部分)
4 O) M5 c) p3 F) U
- z* v+ Y ~( ^. Q" O8 ]) ]' B4 S
0x77cf448ceaf8f66e06d1537ef83218725670d3a509583ea0d161533fda56c063 (BNB Chain)
' R1 t- \/ }6 [3 E' _
1 b y$ t$ D' r) E1 B
0x1e769a59a5a9dabec0cb7f21a3e346f55ae1972bb18ae5eeacdaa0bc3424abd2 (Ethereum)
: a7 `: J% B. q) d5 U% Y
1 O, a3 h/ `4 S( Z9 x$ z
0 H7 j# r( D8 p% H" [2 a/ |, [
0 z: a- k Z6 n7 s" a% n7 ^' u
攻击者地址
" K! x7 D0 z6 i4 F
$ H( J* V' _! [8 X
0x73b359d5da488eb2e97990619976f2f004e9ff7c
( u: |; |6 K) m
3 l" n/ V8 M3 T5 ~) D
9 p/ |+ E# d, Q( O6 |
( T0 M1 \& X) ?% ^1 z7 U
攻击合约
$ c t! X1 w8 s: z, J2 y2 T
9 L( A2 |. D$ r; f7 s$ n; V
0x9a843bb125a3c03f496cb44653741f2cef82f445
3 u2 R& O3 X1 {2 R; k5 u( d, V
5 t8 S" l _3 X d! w
& v9 j3 x* H. q# ]7 V$ r
" N" Z8 S" a. z. b, i
被攻击合约(部分)
7 ~/ ^0 E, l$ u% G' b' ]2 M
5 U* B3 ~* L" g2 E1 [
0x818e2013dd7d9bf4547aaabf6b617c1262578bc7 (BNB Chain)
* \/ h6 i# Q) m3 ?% e! \2 A4 Q4 D
5 Y( [( L& q3 r2 F) Q7 d: A' o8 b) B
0xf2bda964ec2d2fcb1610c886ed4831bf58f64948 (Ethereum)
+ c) [5 \# J6 F! [5 }
3 |3 s" ]1 H5 ]! o; i
" X5 ?' z; e: R
. I; _ W4 ?" |5 O
#2 攻击流程
. c1 G+ l4 W- i$ ]' j
* D) j. \9 y! L- ]
/ ~" q/ ]2 H& i
Ethereum和BNB Chain上使用攻击手法相同,以下分析基于BNB Chain上攻击:
5 |2 D2 ^1 z, q2 N, Q5 m: W7 @6 V
/ [, M* |2 o/ Z! G4 g4 a/ T/ V
3 A4 y- e: \* D1 X
# d7 P$ z3 Z' D) ^2 z3 a
1. 攻击者调用攻击合约(0x9a84...f445)利用闪电贷从DVM合约(0xd534...0dd7)中借贷915.84 WBNB,然后将116.81 WBNB兑换成115.65 fBNB为后续攻击做准备。
* M# Q% n$ L) d$ \5 u5 m ] ?. _
$ ^9 W# A9 e& Z6 P1 q* O- S' a
7 W/ v8 j. A7 R: p3 @' [, D
' G; T$ \- X3 K* Y) {4 ^& ^: u
2. 攻击者利用攻击合约创建了10个合约,为后续攻击做准备。
% i/ S5 I' y* Y
) U4 \, C! j, u% b0 J, a* g0 [
) C% a" `. E2 R3 x
4 G! i: m! X \
# y% Z! d& Q: Q: D7 G2 l" v
; | u2 N5 |7 T
3. 攻击者接下来将兑换得到的fBNB代币抵押到FEGexPRO合约(0x818e...8bc7)中。
5 E8 f+ W! U% s: U& _4 |& Z
/ L, |$ G, v5 ?) C2 R
/ m) \1 ~0 `: _9 `3 Z& c4 x+ e& T
" Z+ T, Z# _2 l3 H9 ` H5 j I
4. 然后攻击者重复调用depositInternal和swapToSwap函数,让FEGexPRO合约授权fBNB给之前创建好的其他攻击合约。
& ]+ j( T! {+ [, p9 ~
) V' g# I+ w; A/ X- y: U, k
@7 }7 M: b- o+ E9 O# X
' s0 t2 ]* N( }- w, l0 _9 _1 w( u
, X+ _; ?7 `. J6 f' e
0 {% x# ~. F3 o3 l+ v
5. 然后利用其他攻击合约调用transferFrom函数将FEGexPRO合约中fBNB全部转移到攻击合约(0x9a84...f445)中。
3 ?; `( t2 x, u/ U- `' D T. Q
+ k9 ]6 a: i% v: J. ^. d; F
# f( y0 i% _) S8 j$ Y" |- R
' @# w/ H4 B1 ?+ A
! ^" Z" B% ^1 V( c0 m( T0 p
0 U3 U1 u% O0 y7 j7 |* z
6. 接下来又在LP交易对合约(0x2aa7...6c14)中借贷31,217,683,882,286.007211154 FEG代币和423 WBNB。
6 @8 G/ x+ R2 |$ b1 q4 c
3 J- a5 ^$ ]2 C
/ ~% y }, A5 x$ N- b( p; ^ w
/ W) b3 I/ R4 t7 g( [& |$ Q
7. 然后重复3、4、5步骤的攻击手法,将FEGexPRO合约中大量FEG代币盗取到攻击合约中。
/ Q: [5 w* C8 F. x7 f
; ?0 C# k! |4 A$ I5 e# f5 O$ q
7 |3 L* Y, ` W% Z
+ h+ J8 \: R" y# W% x+ N2 L
" M' I. g P$ m& ~
+ V: L o$ `3 b U
. b' t/ k- P1 Y
0 {! v8 i4 A; ]2 t( `3 o2 D/ i
8. 然后归还闪电贷,将获得的WBNB转入攻击合约中完成此笔攻击。
% k; A" k% ^% H
6 ]. D- m. E( r O' v6 U4 {4 ^# l9 P* O
5 G) F0 X1 ?% d9 W, F% E/ Y
8 ~' ~3 v) X9 s
/ j# \! A' l8 K* b3 J# _
# X. Y. g. E8 n" e
9. 此后,又利用相同的原理,执行了50余笔相同的攻击,最获利约144 ETH和3280 BNB。
4 Y* U: H( R, V1 f1 a: U
+ P# v1 ^/ y" u0 F$ V
) k! T: }% G5 K9 {9 ~3 G/ S" X
' V+ f" y- u* I" K
' {5 O }1 }9 R q f( c0 t
% t+ i$ t1 e! }% n9 F$ y9 z' \
" j) h$ _2 i4 R, w# a' t4 V
% @$ \# O9 ?4 n/ a
- W1 f V' z3 |; A5 U+ \. M) x+ }9 s3 R
' o6 M0 l8 a2 o* Y; f( a# K
#3 漏洞分析
- M, E: p( b% J, O& ]7 G3 R @% D
5 x4 M3 U' \# J
* {0 s- O3 O4 c" P* N; S# a2 v
本次攻击主要利用了FEGexPRO合约中swapToSwap函数中path地址可控且合约中未对path地址进行有效性校验的漏洞。由于合约中depositInternal函数中更新用户余额时依赖于合约中当前代币余额,攻击者通过传入一个恶意的path地址,调用swapToSwap函数时合约中代币余额并未发生变化,导致攻击者可以反复重置攻击合约在FEGexPRO合约中记录的代币数量,从而让FEGexPRO合约将自身代币反复授权给攻击者所控制的多个恶意合约。
4 E8 O5 O; N i3 S; e1 }# ?8 _
_/ {: D. H! B* S7 o* w: F
0 p& A _! Y+ R: D
7 c3 N+ I; d% |4 `* ~# A0 F
, z& U& S7 p3 r
. h7 @& L$ }" G# w( j2 |; g
$ Q- h7 X4 i& t3 R' u3 W; o/ f
+ V( q7 M( w x1 D% z
#4 资金追踪
5 j) ^+ F' r5 @) K) ^- T! i* N, ]
. Q* `4 e0 k" T* E: W9 o
2 A* k; R- G; ]1 ^9 O# G
截止发文时,被盗资金仍在攻击者地址(0x73b3...ff7c)中并未转移。
. O* Q8 B7 X1 c2 o8 ^
. j) ]' o( w- Z5 n; b
; A8 ?" p% U$ W/ U+ z% A9 j4 b* L/ ^
6 I; G# [7 F: u% y( A
\. r. j) k( J4 J
5 R+ ~6 O& V w" R- U" n0 E- H i
2 \9 i' U$ X6 k1 P K. n; Y
# d: `6 K) K# l0 I' _
8 C! S0 D9 a0 @ e
% G8 D' G& a; S3 ?
9 D5 D" C5 n3 m
) O4 v! ^/ u3 E4 {' S: Q" C
#5 总结
0 i: }& p* H% Y& Y
- }9 f! Q* ^* V& F. r
$ @: G; B t; a1 F$ N, {
针对本次事件,成都链安技术团队建议:
1 |' r7 a- ]2 m
% Q5 G, |* E# J7 G( J
3 W" W* K7 b! E
* ~; ~/ ?: S$ Q) u* v
项目开发时,应该注意与其他合约交互时可能存在的安全风险,尽量避免将关键参数设置为用户可控。如果业务需求如此,则需要严格判断用户输入的参数是否存在风险。此外建议项目上线前选择专业的安全审计公司进行全面的安全审计,规避安全风险。
) a1 U# U* g& A+ X
, a3 p% J6 j# ~3 z
作者:
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.co/)
Powered by Discuz! X3.1