손실이 1800개 이상의 ETH, 유동성이 제로가 된 Velocore에서 무슨 일이 일어났나요?
저자: 동구동추 BlockTempo
어제, 탈중앙화 거래 플랫폼 Velocore가 해킹 공격을 받아 1807 ETH(약 688만 달러)가 도난당했습니다. 사건 이후 Velocore는 영향을 받은 자금 풀, 공격 방식 및 후속 보상 계획을 설명하는 보고서를 발표했습니다.
Layer2 네트워크 zkSync 및 Linea에 배포된 탈중앙화 거래 플랫폼 Velocore는 어제(2일) 해킹 공격을 받아 1807 ETH(약 688만 달러)의 손실을 입었습니다.
체인 분석가 유진은 해당 플랫폼의 모든 사용자 유동성 자금이 도난당했으며, 해커는 도난당한 자금을 크로스 체인 브리지를 통해 이더리움 메인넷으로 전송하고, 모든 ETH를 0xe40 주소로 이동시킨 후 믹서 프로토콜 Tornado를 이용해 자금을 은닉했다고 밝혔습니다.
또한, DeFi 데이터 플랫폼 DefiLlama의 데이터에 따르면, Velocore가 해킹 공격을 받은 후 총 잠금 가치는 전날의 1,016만 달러에서 83.5만 달러로 급락했으며, 하락폭은 92%에 달합니다.
계약 취약점으로 인한 피해
어제 Velocore 팀은 이번 해킹 공격 사건에 대한 보안 검토 보고서를 발표했습니다. 보고서에서는 공격의 원인이 Balancer 스타일 CPMM 풀의 계약 취약점이라고 밝혔습니다. 보고서는 각 자금 풀의 보안 상태를 자세히 나열했습니다:
· Linea와 zkSync Era 체인上的 Velocore의 모든 CPMM 풀은 영향을 받았습니다.
· 안정 풀(stable pool)은 영향을 받지 않았습니다.
· Telos 체인上的 Velocore에도 동일한 문제가 있었으나, 팀은 문제가 악용되기 전에 이를 처리했습니다.
· Blast 체인上的 Bladeswap은 Velocore의 핵심 계약을 사용하지만, Bladeswap이 CPMM 풀 대신 XYK 풀을 사용하기 때문에 이번 계약 취약점의 영향을 받지 않았습니다.
상수 곱 시장 조성자 CPMM은 DeFi 유동성 마이닝 풀에서 초기 채택된 함수 중 하나로, 함수 알고리즘은 x * y = k입니다. 여기서 x와 y는 풀 내 자산의 저장량이며, k는 불변의 상수입니다. 이 함수는 각 토큰의 가용 수량(유동성)에 따라 두 가지 토큰의 가격 범위를 결정하며, 이는 토큰 X의 공급량이 증가하면 토큰 Y의 공급량이 감소하여 상수 k를 유지한다는 것을 의미합니다.
또 다시 플래시 론 공격?
보고서에 따르면, 공격자는 먼저 믹서 프로토콜 Tornado에서 자금을 확보하고 계약 취약점의 발동 조건을 충족시킨 후, 플래시 론을 이용해 유동성 제공자(LP) 토큰을 확보하고 대부분의 토큰을 인출하여 유동성 풀의 규모를 대폭 축소시켰습니다. 이후 공격자는 토큰 계약의 취약점을 이용해 비정상적으로 많은 LP 토큰을 발행하여 플래시 론을 상환했습니다.
운영 복구 후 사용자 보상
이번 해킹 공격에 대해 Velocore 팀은 해커를 적극적으로 추적하고 있으며, 해커와 체인 상에서 협상하려고 시도하고 있습니다. Velocore는 체인 상에서 해커와의 통신 메시지를 통해:
해커가 6월 3일 오후 4시 이전에 남은 자금을 반환하면, 팀은 10%의 화이트 해커 보상을 제공할 의향이 있다고 밝혔습니다.
하지만 현재 해커는 Velocore에 대한 응답을 하지 않고 있습니다.
한편, 팀은 영향을 받은 사람들에게 보상을 제공할 것이라고 밝혔으며, 공격 사건 발생 전의 블록 상태를 스냅샷했습니다. 다만, 보상 계획은 Velocore가 운영을 복구한 후에야 실행될 것이라고 합니다.