2024년 6월 2일, Velocore는 CPMM 풀에 대한 공격을 받아 약 680만 달러의 재정적 손실을 입었습니다. 이 공격의 근본 원인은 ConstantProductPool
에서 거래 수수료를 계산하는 데 잘못된 논리와 정수 언더플로가 결합된 것입니다.
개요
익스플로잇 분석
기술 문서에서 Velocore는 사용자가 Vault 계약 과 직접 상호 작용하여 작업을 수행할 것을 권장합니다. 사용자 관점에서 가장 중요한 기능은 Vault.execute()
입니다. 이 기능을 사용하면 사용자가 내부 풀, 라우터 이더리움 클래식(ETC) 의 주소를 알 필요 없이 스왑, 예치(stake) , 변환 또는 투표할 수 있습니다. 또한 일괄 작업을 지원하여 사용자가 단일 트랜잭션에서 여러 작업을 수행할 수 있습니다.
Verichains를 읽어주셔서 감사합니다! 무료로 구독하여 새로운 게시물을 받고 제 작업을 지원하세요.
토큰 스왑 작업의 일반적인 실행 흐름은 다음과 같습니다.
사용자는
tokenRef
배열과 작업 목록(ops
)을 사용하여SwapFacet.execute()
호출합니다.외부
execute()
함수로 돌아온 후 사용자의 잔액을 확인하고 사용자 지갑으로의 이체나 사용자 지갑에서의 출금을 처리합니다.
주어진 모든 정보를 바탕으로 이제 우리는 해커의 전략을 이해할 수 있습니다.