
이 기사는BlockSec이 기사는
8월 12일 DAO Maker Telegram 그룹의 사용자 피드백에 따르면 프로젝트가 해킹된 것으로 의심되어 해커에 의해 알 수 없는 주소로 700만 달러 상당의 USDC가 인출되었습니다. BlockSec 팀은 분석 결과 개인 키 유출 또는 내부자에 의해 사고가 발생한 것으로 나타났습니다.
보조 제목
공격 과정
거래 분석 시스템(https://tx.blocksecteam.com)에 따르면 공격 프로세스는 매우 간단합니다.
0x26aa86261c834e837f6be93b2d589724ed5ae644bc8f4b8af2207e6bd70828f9
공격 트랜잭션의 해시는 다음과 같습니다.
관련된 주소:
0x41b856701bb8c24cece2af10651bfafebb57cf49: 피해자 지갑;
0x1c93290202424902a5e708b95f4ba23a3f2f3cee: XXX, 공격자 계약;
0x0eba461d9829c4e464a68d4857350476cfb6f559: 중간에 있는 사람;
0x054e71d5f096a0761dba7dbe5cec5e2bf898971c: 피해자 계약 생성자(또한 공격자).
공격자 XXX(0x1c93290202424902a5e708b95f4ba23a3f2f3cee)는 피해자 지갑 컨트랙트(0x41b856701bb8c24cece2af10651bfafebb57cf49)의 기능을 호출하여 사용자 잔액을 조회한 다음,drawalFromUser를 호출하여 자신의 계정으로 돈을 이체합니다. 공격이 완료되었습니다. 전송 작업은 권한이 있는 작업이므로 일반적으로 호출자의 신원을 확인해야 합니다. 분석을 통해 우리는 공격자가 피해자의 지갑에 있는 잔액을 전송할 수 있는 적절한 권한을 가지고 있음을 발견했습니다.
여기서 질문은 공격자가 적절한 권한을 갖는 이유가 됩니다. 추가 분석을 통해 다른 트랜잭션을 찾았습니다. 이 거래는 공격자에게 돈을 이체할 수 있는 권한을 부여합니다. 트랜잭션 추적은 다음과 같습니다. 0x2fba930502d27f9c9a2f2b9337a0149534dda7527029645752b2a6507ca6b0d6.
0x0eba461d9829c4e464a68d4857350476cfb6f559는 피해자 계약의 grantRole 함수를 호출하여 공격자 0x1c93에게 자금을 이체할 수 있는 권한을 부여합니다. 그러나 다른 계정에 권한을 부여하기 위해 grantRole을 호출할 수 있는 경우 0x0eba4에 관리자 권한이 있어야 합니다. 그렇다면 누가 관리자 권한을 부여했습니까?
추적을 계속하면서 다른 트랜잭션(0x41b856701bb8c24cece2af10651bfafebb57cf49)에 의해 관리자 권한이 완료되었음을 발견했습니다.
계정 0x054e71d5f096a0761dba7dbe5cec5e2bf898971c는 계정 0x0eba461d9829c4e464a68d4857350476cfb6f559를 피해자 계약의 관리자로 설정합니다.
그러나 피해자 컨트랙트는 0x054e71d5f096a0761dba7dbe5cec5e2bf898971c에 의해 생성된 것으로 확인되었습니다.
보조 제목
다른
다른
보조 제목
마침내
마침내[가상 화폐 인쇄기] Popsicle Finance 이중 지출 공격 분석그리고그리고[Achilles' heel] Poly Network 공격의 주요 단계에 대한 심층 분석