BTC
ETH
HTX
SOL
BNB
시장 동향 보기
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

DAOrayaki: 0xhabitat Multisig 도난 분석

DAOrayaki
特邀专栏作者
2022-01-09 09:42
이 기사는 약 3577자로, 전체를 읽는 데 약 6분이 소요됩니다
이 사건 보고서를 완전히 객관적으로 만들기 위해 우리는 온체인과 백엔드(트랜잭션 인덱서)를 통해 수집한 직접 데이터만 포함했습니다.
AI 요약
펼치기
이 사건 보고서를 완전히 객관적으로 만들기 위해 우리는 온체인과 백엔드(트랜잭션 인덱서)를 통해 수집한 직접 데이터만 포함했습니다.

DAOrayaki DAO 리서치 보너스 풀:

펀딩 주소: DAOrayaki.eth

DAOrayaki DAO 리서치 보너스 풀:

펀딩 주소: DAOrayaki.eth

투표 진행: DAO 위원회 /7 통과

총 바운티: 90 USDC

원작자: Lukas Schor

원래 제목: The 0xhabitat Multisig Got Drained: An Analysis

보조 제목

분석: 0xhabitat Multisig가 도난당했습니다.

노시스 세이프(Gnosis Safe) 사용자는 심각하고 정교한 피싱 공격을 받아 프로젝트의 멀티시그가 고갈되었습니다.

중요: 현재 분석에 따르면 이는 특정 Gnosis Safe 사용자에 대한 표적 공격이었으며 이 공격이 다른 사용자에게 영향을 미쳤다는 징후는 없습니다. 이 공격은 또한 스마트 계약의 취약점을 악용하지 않았지만 대신 피싱 기술을 사용하여 Multisig 소유자가 악의적인 거래에 서명하도록 했습니다.

이 블로그 게시물은 0xhabitat 사건을 조명하고 그 사건에서 배운 내용을 자세히 설명하는 것을 목표로 합니다. 이 사건 보고서를 완전히 객관적으로 만들기 위해 우리는 온체인과 백엔드(트랜잭션 인덱서)를 통해 수집한 직접 데이터만 포함했습니다. 0xhabitat 팀의 견해는 여기에서 읽을 수 있습니다. 먼저 무슨 일이 있었는지 분석하는 것부터 시작하겠습니다...

  • 트로이 목마

  • 이 사건의 주요 출처는 다음 공식 노시스 세이프 스마트 계약을 모방한 두 개의 악의적인 계약입니다.

안전한 싱글톤: 핵심 논리 계약입니다. 각 Safe는 특정 Safe Singleton을 가리키는 프록시 계약입니다. 금고는 예를 들어 기능을 추가하기 위해 사용자가 새로운 싱글톤을 가리키도록 업그레이드할 수 있습니다.

Safe Multisend: 이것은 Safes가 여러 거래를 하나로 결합할 수 있게 해주는 중개 스마트 계약입니다.

이 기사에서는 악의적인 계약을 Evil Singleton 및 Evil Multisend라고 합니다. Evil Multisend 계약은 11월 23일 이 주소에서 배포되었습니다. 계약의 특별한 점은 일괄 트랜잭션을 허용할 뿐만 아니라 동일한 트랜잭션에서 Safe의 Singleton을 변경할 수도 있다는 것입니다. 같은 날 Evil Singleton이 이 주소에 배치되었습니다. Evil Singleton은 초기에 모든 상호 작용을 원본 Singleton으로 전달하는 트로이 목마 프로그램 역할을 하지만 제3자가 Safe에 액세스할 수 있도록 하는 백도어가 있습니다.

함정이다!

0xhabitat 이야기는 Evil Multisend 계약이 배포된 후 몇 시간 후에 시작됩니다. Evil Multisend 계약과 상호 작용하는 0xhabitat Multisig에서 거래가 제안되었습니다. 관련된 모든 당사자에게 트랜잭션 빌더 Safe App을 사용하는 일반적인 대량 트랜잭션처럼 보일 것입니다. 그러나 이것은 정교한 트랜잭션으로 언뜻 보기에는 일반적인 Multisend 트랜잭션처럼 보이지만 실제로는 Safe의 Singleton을 Evil Singleton으로 업데이트하기도 합니다.

Evil Singleton 활성화에 대한 자세한 기술 정보는 여기에서 확인할 수 있습니다.

전환점

Safe가 Evil Singleton으로 업그레이드된 후 7일 동안 아무 일도 일어나지 않았습니다. 한편, 0xhabitat 금고는 점차적으로 100만 달러 상당의 디지털 자산으로 성장했습니다. 공격자는 백도어가 이전에 발견되지 않았기를 바라면서 실제 공격을 실행하기 전에 허니팟이 더 커지기를 원합니다. 11월 30일 공격이 시작되었습니다. 해커는 Evil Singleton을 활성화하는 트랜잭션을 생성하여 타사 계정이 금고의 자산을 완전히 제어할 수 있도록 했습니다.

자금 고갈

Evil Singleton이 활성화된 지 불과 30분 만에 공격자는 모든 자금을 자신의 계정으로 인출할 수 있었습니다. 이후 공격자는 Uniswap 및 Sushiswap을 통해 모든 자산을 ETH로 전환했습니다. 그런 다음 생성된 ETH는 경로의 끝인 여러 트랜잭션에서 Tornado Cash 계약으로 전송됩니다.

그래서 정확히 무슨 일이 일어났나요?

지금까지 수집한 내용으로 볼 때 Multisig의 서명자 키 중 하나가 손상된 것이 분명합니다. 이는 백도어 구현으로 이어지는 악의적인 트랜잭션이 백엔드 데이터를 기반으로 Multisig 서명자가 제안했기 때문입니다. 이것이 어떻게 발생했는지 정확히 말할 수는 없지만, 이를 초래했을 가능성이 있는 사건에는 크게 두 가지 범주가 있습니다.

  • 피싱

  • 소유자가 0xhabitat Multisig의 보안을 손상시키는 거래를 제안하도록 오도될 수 있는 몇 가지 방법이 있습니다. 가능한 옵션은 다음과 같습니다.

  • 악성 브라우저 확장: 브라우저 확장은 편리하지만 위험할 수도 있습니다. 확장 프로그램은 웹 애플리케이션의 모든 콘텐츠를 자유롭게 수정할 수 있기 때문입니다. 따라서 사용자를 속여 악의적인 거래를 하도록 사기성 브라우저 확장 프로그램을 사용하여 Gnosis Safe 웹 인터페이스를 수정했을 수 있습니다.

악성 인터페이스: 여기에 명시된 바와 같이 Gnosis Safe의 보안은 계정과 상호 작용하는 데 사용되는 인터페이스의 무결성에 따라 달라집니다. 영향을 받은 0xhabitat 사용자는 공식 Gnosis Safe 인터페이스를 모방한 인터페이스와 상호 작용했을 수 있지만 일반 트랜잭션의 대상 주소를 Evil Multisend 계약으로 변경하여 효과적으로 악의적인 트랜잭션을 생성했습니다.

공급망 공격/손상된 웹사이트: 문제의 원인은 공식 Gnosis Safe 소프트웨어의 적대적 인수였을 수 있지만 현재 평가에서는 그렇지 않은 것으로 나타났습니다(자세한 내용). 모든 신호는 공식 Gnosis Safe 인터페이스의 일반적인 문제가 아니라 0xhabitat Multisig에 대한 표적 공격임을 나타냅니다. 그러나 우리는 이 지역의 상황을 계속 조사하고 관찰합니다.

악의적인 소유자

두 번째 가상 옵션은 소유자가 악의적인 거래를 하도록 속인 것이 아니라 자발적으로 그렇게 했다는 것입니다. Multisig의 두 서명자 중 한 명이 다른 서명자를 속여 사기 거래에 서명하도록 하여 Multisig가 중단되도록 했습니다. 우리는 0xhabitat 팀의 무결성을 의심할 이유가 없습니다. 그러나 철저한 분석을 위해 우리는 여전히 이것을 사건에 대한 그럴듯한 설명으로 간주해야 합니다.

노시스 세이프 팀에서 배운 교훈

다중 전송 주소 노출

트랜잭션에 사용된 다중 전송 계약을 확인할 수 있도록 Safe Web UI는 다중 전송 계약 주소를 명시적으로 표시합니다. 더 읽어보세요.

이미지 설명

거래 세부 정보에는 확인을 위해 전체 다중 전송 계약 주소가 표시됩니다.

알 수 없는 다중 전송 트랜잭션 디코딩 방지

예기치 않은 대리인 호출 플래그 지정

트랜잭션이 위임을 사용하여 알지 못하는 계약을 호출할 때 명시적인 경고를 추가했습니다. 이는 트랜잭션에 특별한 주의가 필요함을 사용자에게 알리는 또 다른 방법입니다.

이미지 설명

Gnosis에 알려지지 않은 계약을 통해 이루어진 대리인 호출은 표시됩니다.

  • 노시스 안전 사용자를 위한 조언

  • 우리의 목표는 미래에 이러한 상황이 발생하지 않도록 안전 메커니즘을 마련하는 것이지만, Gnosis Safe와 상호 작용할 때 Gnosis Safe 사용자에게 운영 보안 관행을 상기시키는 것도 중요합니다.

  • 인터페이스 무결성 확인: 악의적인 인터페이스는 공동 서명자를 속여 악의적인 트랜잭션에 서명하도록 하여 Multisig의 전체 보안을 손상시킬 수 있습니다. Gnosis Safe 웹 애플리케이션을 사용하는 경우 공식 애플리케이션 링크를 북마크에 추가하고 URL 및 보안 인증서를 확인하십시오. 또는 더 좋은 방법은 Gnosis Safe Desktop 애플리케이션을 사용하는 것입니다.

  • DelegateCall에 주의하십시오. DelegateCall은 강력한 도구입니다. 예를 들어 금고에서 거래를 일괄 처리할 수 있습니다. 그러나 그것은 또한 엄청난 위험을 수반합니다. 따라서 노시스 세이프 사용자는 DelegateCall을 사용하여 트랜잭션을 식별할 때 특별한 주의를 기울여야 합니다. 거래 데이터를 검증할 때 올바른 Multisend 대상 주소가 사용되었는지 확인하십시오. Gnosis-validated Multisend 구현은 이 목록에서 찾을 수 있습니다.

이미지 설명

결론적으로

결론적으로

참조

  1. https://etherscan.io/address/0x3cb0652856d7eabe51f1e3cceda99c93b05d7cea

  2. https://etherscan.io/address/0x09afae029d38b76a330a1bdee84f6e03a4979359

  3. https://bafybeiat2xp7cicrlpq3h57wdnz4pzaoby2cx62c3lprh3lzgrworcitly.ipfs.infura-ipfs.io/Exploit_Info.pdf

  4. https://blog.gnosis.pm/the-impact-of-phishing-on-web-3-0-a62385c81310

  5. https://github.com/gnosis/safe-react/issues/3091

  6. https://github.com/gnosis/safe-react/issues/3090

DAO
Odaily 공식 커뮤니티에 가입하세요