위험 경고: '가상화폐', '블록체인'이라는 이름으로 불법 자금 모집 위험에 주의하세요. — 은행보험감독관리위원회 등 5개 부처
검색
로그인
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
시장 동향 보기

Beosin: Polygon 체인의 LibertiVault 계약이 재진입 취약성으로 인해 공격을 받았습니다.

2023-07-11 10:35
오데일리 뉴스 Beosin의 자회사인 Beosin EagleEye의 모니터링에 따르면 Polygon 체인의 LibertiVault 계약이 공격을 받아 약 290,000달러 상당의 약 123 ETH 및 56,234 USDT, 이더리움 체인에서는 약 35 ETH 및 96,223 USDT가 손실되었습니다. 금액은 약 1,600만 달러로 총 450,000달러가 넘습니다. 기술진은 분석 결과 이번 공격이 LibertiVault 컨트랙트의 재진입 취약점으로 인해 발생한 것으로 확인했습니다. 1. 공격자는 플래시론을 이용하여 500만 USDT를 빌리고 LibertiVault 계약의 예금 기능을 호출하여 담보를 제공합니다. 담보 로직은 담보된 토큰의 일부를 교환에 사용하고 발행된 코인의 양을 계산합니다. 계산은 다음과 같습니다. 계약이 입금되기 전 잔액에 입금된 토큰 양의 비율에 따라 결정됩니다. 2. 거래소 운영 스왑은 해커의 컨트랙트를 호출하게 되는데, 이때 해커는 1차 콜입금을 재입력하고, 2차에도 이 기능을 재입력하여 250만 USDT를 컨트랙트에 입금하게 된다. 3. 2차 재입금 이후 계약은 이전 계약의 USDT 잔액 대비 250만 USDT의 비율에 따라 해커를 위한 코인을 발행하게 되며, 1차 재입금 기능이 완료된 후 해커는 해당 계약에 250만 USDT를 추가로 입금하게 됩니다. . 4. 이 시점에서 외부 입금 기능의 교환 작업이 완료되고 계약 USDT 잔액 대비 250만 USDT 비율에 따라 계약이 코인을 발행하게 됩니다. 5. 문제는 네 번째 지점에 있습니다. 논리적으로 말하면 계약 잔액의 두 번째 계산은 이전 잔액에 이 계산의 매개 변수로 처음 입력한 잔액 250만 개를 더한 값이어야 하는데 여기서는 다음과 같은 형태로 됩니다. 재진입 시 계약 잔액은 처음부터 획득되었으므로 매개변수가 변경되지 않았으며 원래 잔액이 계속 계산에 사용되므로 해커를 위해 대량의 바우처 토큰이 발행됩니다. 6. 마지막으로 해커는 바우처 토큰을 제거하고 플래시론 수익을 반환했습니다.