Slow Mist: DeFi 프로토콜 bZx가 두 번 해킹당하는 전 과정에 대한 자세한 설명
慢雾科技
2020-02-19 02:40
本文约2126字,阅读全文需要约9分钟
두 가지 공격의 핵심은 오라클 머신의 가격을 조작하여 오라클 머신의 가격과 이익을 통제하는 것입니다.

머리말

머리말

오늘 아침, bZx는 두 번째 공격을 받은 것으로 의심됩니다.차이점은 이번에는 대상이 ETH/sUSD 거래 페어라는 점이지만 일부 사람들은 의심할 수 있습니다. 이거 공격가능? 공격 방식이 정확히 무엇인가요? 이러한 의문점으로 이번 사건을 고려하여 SlowMist 보안 팀은 두 가지 공격 프로세스를 검토할 것입니다.

1차 공격에서 공격자는 플래시론과 컴파운드의 대출을 결합해 bZx를 공격했는데, 크게 다음과 같은 단계로 나뉜다.

  1. dYdX에서 10,000 ETH 차용

  2. Compound에서 5500 ETH로 112 BTC를 빌리고 판매 준비

  3. bZx에 가서 1300 ETH를 5배 레버리지로 숏에 쓰고 51.345576 BTC를 교환했고 여기서 교환한 BTC는 카이버 네트워크를 통해 얻었습니다. , 다시 교환된 51 BTC는 실제로 UniSwap에서 BTC/ETH의 가격을 올렸고 교환 가격은 1/109 였지만 실제로 시장의 가격은 그렇게 많이 끌어오지 않을 것입니다.

  4. Compound에서 빌린 112 BTC를 사용하여 UniSwap에서 판매합니다. 세 번째 단계에서 bZx의 5배 레버리지가 이미 가격을 올렸기 때문에 이때 ETH를 판매하는 것이 수익성이 있어야 하며 6871 ETH를 판매했습니다.

  5. 대출금을 dYdX로 반환

2차 공격은 앞선 공격과 조금 다르지만 핵심은 오라클 머신의 가격을 조절하고 오라클 머신의 가격을 조작해 수익을 내는 것이다.

첫 번째 레벨 제목

상세한 분석

이 공격의 트랜잭션 해시는 다음과 같습니다.

0x762881b07feb63c436dee38edd4ff1f7a74c33091e534af56c9f7d49b5ecac15

etherscan의 분석을 통해 우리는 이 트랜잭션에서 많은 수의 토큰 전송이 발생했음을 알 수 있습니다.

보조 제목

1. 경기 전 준비

보조 제목

2. 서브

공격자는 bZx에서 차용을 완료한 후 Kyber를 통해 sUSD를 구매하기 시작했습니다. 처음으로 540 ETH를 사용하여 92,419.7 sUSD를 구매했습니다. 이 조작으로 WETH/sUSD의 가격이 즉시 낮아지고 sUSD의 가격이 상승했습니다. 이 트랜잭션의 전환 비율은 약 1:170이며 Kyber는 UniSwap을 통해 최종적으로 전환되므로 Uniswap의 WETH/sUSD는 이때 낮은 수준이며 차례로 sUSD/WETH는 상승합니다.

공격자는 540 ETH의 1차 교환을 완료한 후 카이버에서 다시 18번의 소액 교환을 하였으며, 매회 20 ETH를 사용하여 sUSD를 교환하였으며, 이더스캔을 통해 각 거래소에서 반환되는 sUSD의 양이 지속적으로 감소하고 있음을 확인할 수 있습니다.

이는 sUSD/WETH의 가격이 더 상승하여 Uniswap에서 sUSD/WETH의 가격을 악화시켰음을 의미하며, 이때 가격은 약 1:157로 최고점에 도달했습니다.

보조 제목

3. 홀인원

공격자는 sUSD/WETH의 프로모션을 완료한 후 후속 WETH 교환을 준비하기 위해 이때 많은 양의 sUSD를 수집해야 합니다. 이 목표를 달성하기 위해 공격자는 Synthetix에서 sUSD 구매를 시작합니다.sUSD를 구매하기 위해 Synthetix에 6000 ETH를 보내면 Synthetix의 sUSD가 바로 매진되고 Synthetix 계약은 공격자에게 2482 ETH를 반환합니다.


보조 제목

4. 대출금 반환

첫 번째 레벨 제목

경기 후 리뷰

보조 제목

소득

7500 =>bZx 플래시 대출
+
2482 =>Synthetix 반환
+
6792 =>보조 제목
=
16774 ETH

지출

540 + (20*18) =>sUSD/WETH 가격 인상
+
6000  =>짧은 sUSD
+
7500 =>bZx 플래시 대출 반환
=
14400 ETH

첫 번째 레벨 제목

방어 조언

두 공격의 주된 이유는 Uniswap의 급격한 가격 변동이 결국 자산 손실로 이어졌기 때문입니다. 프로젝트 파티에 . . 이러한 시장 조작을 통한 수익 창출 공격에 대해 SlowMist 보안 팀은 다음과 같은 제안을 합니다.

프로젝트 당사자가 오라클 머신을 사용하여 외부 가격을 얻을 때 보험 메커니즘을 설정해야 하며 토큰을 교환할 때마다 현재 트랜잭션 페어의 교환 가격을 저장하고 마지막으로 저장한 교환 가격과 비교해야 합니다. , 트랜잭션은 제 시간에 일시 중단되어야 합니다. 시장이 악의적으로 조작되어 손실이 발생하는 것을 방지합니다.

慢雾科技
作者文库