크리스마스 폭락 사태: 트러스트 월렛 확장 월렛 해킹 분석
- 核心观点:Trust Wallet扩展程序遭恶意代码植入,用户资产被盗。
- 关键要素:
- 2.68版本代码被植入窃取助记词的恶意函数。
- 攻击者利用被控域名接收窃取的助记词数据。
- 已造成约600万美元的跨链资产损失。
- 市场影响:引发对主流钱包安全性的信任危机。
- 时效性标注:短期影响
배경
오늘 새벽 베이징 시간으로 @zachxbt는 자신의 채널에 "일부 트러스트 월렛 사용자들이 지난 몇 시간 동안 지갑 주소에서 자금이 도난당했다고 신고했다"는 메시지를 게시했습니다. 이후 트러스트 월렛 공식 계정에서도 트러스트 월렛 브라우저 확장 프로그램 버전 2.68에 보안 위험이 있음을 확인하는 공식 성명을 발표하고, 버전 2.68을 사용하는 모든 사용자에게 즉시 해당 확장 프로그램을 비활성화하고 버전 2.69로 업그레이드할 것을 권고했습니다.

전술과 기술
해당 정보를 입수한 SlowMist 보안팀은 즉시 관련 샘플 분석에 착수했습니다. 먼저 이전에 출시된 버전 2.67과 2.68의 핵심 코드를 비교해 보겠습니다.


두 버전의 코드를 비교한 결과, 해커가 추가한 다음과 같은 악성 코드가 발견되었습니다.

악성 코드는 플러그인에 등록된 모든 지갑을 순회하며 각 사용자의 지갑에 "니모닉 구문 가져오기" 요청을 보내 암호화된 니모닉 구문을 획득합니다. 마지막으로, 사용자가 지갑 잠금 해제 시 입력한 비밀번호 또는 패스키를 사용하여 니모닉 구문을 복호화합니다. 복호화에 성공하면 사용자의 니모닉 구문이 공격자의 도메인 `api.metrics-trustwallet[.]com`으로 전송됩니다.

또한 공격자의 도메인 정보를 분석했습니다. 공격자는 metrics-trustwallet.com이라는 도메인을 사용했습니다.

조사 결과에 따르면, 해당 악성 도메인 이름은 2025년 12월 8일 02시 28분 18초에 등록되었으며, 도메인 이름 서비스 제공업체는 NICENIC INTERNATIONA입니다.
api.metrics-trustwallet[.]com에 대한 첫 번째 요청은 2025년 12월 21일에 기록되었습니다.

이 시점은 백도어가 코드 12.22에 심어진 시점과 거의 정확히 일치합니다.
우리는 코드 추적 및 분석을 통해 전체 공격 과정을 계속해서 재현했습니다.
동적 분석 결과, 공격자는 지갑 잠금 해제 후 R1의 오류 필드에 니모닉 구문 정보를 입력하는 것으로 나타났습니다.

이 오류 데이터의 출처는 GET_SEED_PHRASE 함수 호출을 통해 얻어집니다. 현재 Trust Wallet은 비밀번호와 패스키비워드 두 가지 잠금 해제 방법을 지원합니다. 공격자는 잠금 해제 시 비밀번호 또는 패스키비워드를 획득한 후, GET_SEED_PHRASE 함수를 호출하여 지갑의 니모닉 구문(개인키와 유사)을 얻고, 이 니모닉 구문을 "errorMessage"에 저장합니다.

다음은 emit을 사용하여 GetSeedPhrase를 호출하여 니모닉 구문 데이터를 검색하고 이를 error에 채우는 코드입니다.

BurpSuite를 사용한 트래픽 분석 결과, 니모닉 구문을 획득한 후 요청 본문의 errorMessage 필드에 캡슐화하여 악성 서버(https://api.metrics-trustwallet.com)로 전송한 것으로 나타났으며, 이는 이전 분석 결과와 일치합니다.

위 과정을 통해 니모닉 구문/개인 키 탈취 공격이 완료됩니다. 또한 공격자들은 오픈 소스 엔드투엔드 제품 분석 플랫폼인 PostHogJS를 사용하여 사용자 지갑 정보를 수집하므로 확장된 소스 코드에 익숙할 가능성이 높습니다.
도난 자산 분석
(https://t.me/investigations/296)
ZachXBT가 공개한 해커 주소에 따르면, 현재(작성 시점 기준) 비트코인 블록체인에서 약 33 BTC(약 300만 달러 상당), 솔라나 블록체인에서 약 431달러, 그리고 이더리움 메인넷 및 레이어 2를 포함한 다양한 블록체인에서 약 300만 달러 상당의 자산이 도난당한 것으로 나타났습니다. 해커들은 도난 후 여러 중앙 집중식 거래소와 크로스체인 브리지를 이용하여 일부 자산을 이체 및 교환했습니다.


요약하다
이번 백도어 공격은 악성 npm 패키지와 같은 제3자 패키지를 변조한 것이 아니라, 트러스트 월렛의 내부 코드베이스(분석 서비스 로직)를 악의적으로 수정하여 발생한 것입니다. 공격자들은 정상적인 PostHog 라이브러리를 사용하여 분석 데이터를 악성 서버로 전송하도록 애플리케이션 자체 코드를 직접 수정했습니다. 따라서 이는 전문적인 APT 공격이며, 공격자들이 12월 8일 이전에 트러스트 월렛 개발자의 기기 또는 배포 권한을 확보했을 가능성이 높다고 판단됩니다.
제안:
1. Trust Wallet 확장 지갑을 설치한 경우, 문제 해결 및 기타 조치를 취하기 전에 즉시 인터넷 연결을 끊어야 합니다.
2. 즉시 개인 키/니모닉 구문을 내보내고 Trust Wallet 확장 지갑을 제거하십시오.
3. 개인 키/니모닉 구문을 백업한 후, 가능한 한 빨리 자금을 다른 지갑으로 이체하십시오.


