
이벤트 배경
Chuangyu 블록체인 보안 연구소 알기Chuangyu 블록체인 보안 연구소 알기이 사건에 대한 회고적 분석이 수행되었습니다.
이벤트 추적
공격자 주소:
2021-07-20 19:23:20
공격자 주소:
0x0333E323E61aa8aFA38A1623604A165dCB9F4fEC
공격 트랜잭션 해시:
a):https://etherscan.io/tx/0x628174eccf05e94a3385f882805124b5d8718a0c9906c6cd0c573e5d6f56c9d2
b):https://etherscan.io/tx/0x00edd68087ee372a1b6e05249cc6c992bb7b8478cc0ddc70c2a1453428285808
c):https://etherscan.io/tx/0xa945b1857630e730bd3fac6459c82dee44da45e35cfbbd6dfb7b42146e8dde41
이벤트 분석
위 그림과 같이 공격자는 공격 거래 a->b->c 과정에 따라 공격을 개시하고 수익으로 시장을 떠납니다.공격 리뷰는 다음과 같습니다.
1. 트랜잭션 a에서와 같이 공격자는 먼저 weth를 사용하여 uniswap에서 2091514065454개의 KEANU 토큰을 교환하고 이를 Memestake 계약(0x35C674C288577Df3e9b5dafEF945795b741c7810)에 저당합니다.
2. 트랜잭션 b와 같이 공격자는 플래시론을 이용하여 KEANU 토큰을 차입하고, Memestake 계약의 입출금 기능을 지속적으로 호출하여 Memestake 계약의 KEANU 토큰을 소비하는데, 여기에 취약점의 익스플로잇 포인트가 있다. : KEANU 토큰 통화는 디플레이션 모델 토큰입니다. 즉, 각 거래에서 토큰의 2%를 공제하여 다른 통화 보유자에게 배당금을 분배합니다.
그러나 Memestake의 입금 및 출금 기능은 송금 개시자가 지불한 가치를 기록합니다. 즉, 사용자는 100개의 KEANU 토큰을 저당하고 실제 계약에는 98개의 KEANU 토큰만 도착하지만 100개의 KEANU 토큰은 여전히 사용자에게 반환됩니다. KEANU 토큰을 인출하므로 공격자가 계속 스테이킹하고 인출하면 계약의 KEANU 토큰 잔액이 점점 작아집니다.
계약의 KEANU 토큰 잔액이 감소하면 KEANU 토큰(accMfundPerShare 변수)당 전환 가능한 MFUND 토큰 수에 영향을 미칩니다. 즉, 공격자는 KEANU 토큰의 첫 번째 저당으로 생성된 막대한 보상 MFUND 토큰을 얻을 수 있습니다.
이벤트 요약
이벤트 요약
플래시론 공격은 주로 디플레이션 모델 토큰과 기존 마이닝 계약 간의 논리 불일치 결과를 이용했고, 잔고가 점점 줄어들어 결국 보상 토큰 MFUND를 오버민트하는 실수로 이어졌다.