온라인 접속 없던 지갑서 1억1500만달러 유출

Galaxy Research는 2026년 8월 13일까지 콜드카드 시드 결함 피해를 1억1500만달러로 집계했다. 원인과 영향 모델.

By Nestree 40 min read
$115M drained from wallets that never went online

콜드 스토리지는 논쟁의 종착점이어야 했다. 키를 인터넷에서 떼어 놓으면, 인터넷은 그 키를 가져갈 수 없다는 믿음이었다. 하지만 2026년 7월 30일부터 8월 중순 사이, 바로 그렇게 해 온 수천 명의 비트코인 보유자에게서 그 전제가 무너졌다.

한 번도 온라인에 연결되지 않은 지갑에서 1억 1,500만 달러는 어떻게 사라졌나?

Coldcard 손실은 원격 해킹이 아니었다. 복구 문구가 만들어지는 순간부터 예측 가능해진 시드 생성 엔트로피 결함의 결과였고, 실제 탈취가 일어나기 수년 전부터 문제가 심어져 있었다. Galaxy Research는 2026년 8월 13일까지의 데이터를 기준으로 Coldcard와 연결된 것으로 확인된 손실이 1억 1,500만 달러를 넘는다고 집계했다 . 결함이 있는 난수 경로가 재현 가능했기 때문에, 공격자는 피해자의 기기를 건드리지 않고도 자신의 하드웨어에서 후보 시드를 다시 만들어 오프라인으로 유효한 문구를 무차별 대입할 수 있었다.

빠른 답변: Coldcard 하드웨어 지갑은 하드웨어 TRNG 대신 소프트웨어 의사 난수 생성기를 사용해 시드를 만들었고, Mk3 기기에서는 엔트로피가 약 40비트 수준으로 줄었다. 공격자는 이 과정을 재현해 오프라인에서 지갑 자금을 쓸어 갔다. Galaxy Research는 2026년 8월 13일까지 도난액이 1억 1,500만 달러를 넘는다고 집계했다.

이 결함은 2021년 3월에 도입된 단 하나의 코드 경로로 거슬러 올라간다. libngu 마이그레이션 과정에서 지갑 시드 생성이 ngu.random.bytes()로 라우팅됐고, 이는 링크 시점에 Coldcard의 하드웨어 난수 생성기가 아니라 MicroPython의 Yasmarang 소프트웨어 PRNG로 해석됐다 . Block의 독립 엔지니어링 검토도 같은 결론에 도달했으며, 취약한 경로가 출시 펌웨어에 들어간 시점을 2021년 3월 17일 v4.0.0으로 특정했다 . Coinkite의 자체 권고문은 영향을 받은 Mk3 시드의 엔트로피가 의도한 128비트가 아니라 약 40비트였다고 설명한다 . 이 차이가 전부다. 128비트는 계산상 도달할 수 없지만, 40비트는 주말 프로젝트 수준이다.

피해자에게 이 실패 방식은 보이지 않았다. 160만 달러를 잃은 Jonathan Goodman은 TechCrunch에 자신의 처지를 단도직입적으로 설명했다.

"나는 모든 것을 제대로 했다... 내 기기들은 인터넷에 닿은 적이 없었다... 전부 원래 시드 문구를 만든 하드웨어의 2021년 코드 한 줄에 취약점이 있었기 때문이었다," — Jonathan Goodman, Coldcard 사용자 (source: TechCrunch, 2026-08).

헤드라인 숫자는 신중하게 다뤄야 한다. 첫 2주 동안 공개된 총액은 누가, 언제 집계했는지에 따라 꽤 크게 갈렸다.

  • 1억 1,200만~1억 1,500만 달러 — Galaxy Research가 8월 13일까지의 데이터를 사용해 8월 16일 보도한 확인 수치 .
  • 약 1억 1,600만 달러 — 5,200개 이상 주소에 걸친 약 1,816 BTC라는 TRM Labs의 집계 .
  • 약 1억 3,000만 달러 — 피해자가 확인한 것은 아니지만 의심되는 약 459 BTC 규모의 네 번째 탈취 물량까지 포함해 총액을 2,055 BTC로 끌어올린 수치 .

펌웨어 취약점 자체는 공급사가 확인했으며 더 이상 논쟁 대상이 아니다. 달러 기준 총액은 출처가 명시된 온체인 추정치이고 일부 구성 요소는 잠정적이며, Coinkite의 보안 상태 페이지는 보고된 개별 손실의 원인을 판단하지 않는다고 명시한다 . 자신의 노출 여부를 평가하는 사람에게는 이 구분이 헤드라인보다 중요하다. 확정된 것은 결함과 영향을 받은 펌웨어 범위이지, 최종 청구서가 아니다.

근본 원인: 2021년 3월 코드 마이그레이션이 난수 생성을 망가뜨린 과정

이 결함은 2021년 3월 1일 라이브러리 마이그레이션 과정에서 유입된 시드 생성 엔트로피 실패다. 당시 Coldcard 펌웨어는 지갑 시드 생성을 원래 의도된 하드웨어 진성 난수 생성기(TRNG) 경로에서 벗어나 libngu 마이그레이션의 일부로 ngu.random.bytes()를 사용하도록 바뀌었다 . 하지만 이 함수는 링크 시점에 Coldcard의 하드웨어 RNG로 연결되지 않았다. 대신 MicroPython의 Yasmarang 소프트웨어 의사 난수 생성기, 즉 물리적 엔트로피 소스가 아니라 결정론적 알고리즘으로 연결됐다. 따라서 그 경로로 생성된 모든 시드 문구는 예측 불가능한 하드웨어 노이즈가 아니라 예측 가능한 소프트웨어 수학의 출력이었다.

Block의 독립 엔지니어링 팀도 같은 결론에 도달했고, 잘못된 경로로 연결된 정확한 메커니즘을 문서화했다. 펌웨어 빌드 설정에서 MICROPY_HW_ENABLE_RNG는 값이 0으로 정의되어 있었다. Libngu의 코드는 그 매크로가 활성화되어 있는지가 아니라 정의되어 있는지만 확인했다. C 전처리기 관점에서는 #ifdef와 값 검사 사이의 한 글자 차이에 가까운 문제였다. 0으로 설정된 매크로도 여전히 정의된 매크로이기 때문에 검사는 통과했고, 하드웨어 경로가 사용 가능한 것처럼 보였으며, 폴백이 조용히 대신 작동했다 . 아무것도 크게 실패하지 않았다. 사용자에게 오류가 표시되지도 않았다. 기기는 예상대로 정상처럼 보이는 24단어 문구를 생성했다.

Block은 취약한 경로가 릴리스 펌웨어에 들어간 시점을 2021년 3월 17일 배포된 버전 4.0.0으로 본다. 이는 마이그레이션 커밋 이후 16일 뒤였다 . 이 날짜는 자신의 보유 자산을 점검하는 사람에게 실질적인 경계선이다. 2021년 봄 Coldcard에서 생성된 시드는 5년 넘게 금속 백업 플레이트나 은행 대여 금고 안에 있었을 수 있고, 소유자는 그 기간 내내 문제가 있다는 어떤 신호도 받지 못했다. 기기는 정상적으로 동작했고, 자체 점검을 통과했으며, 네트워크에 연결되지도 않았다. 실패는 이후에 유입된 것이 아니라 생성 순간에 이미 박혀 있었다.

공격에 단 한 대의 기기에 대한 물리적 접근이 필요하지 않았던 이유도 여기에 있다. 결정론은 양방향으로 작동한다. 제조사가 재현할 수 있는 과정은 오픈소스 펌웨어를 읽는 누구에게나 똑같이 재현 가능하다. 공격자들은 자신들의 하드웨어에서 결함 있는 생성 경로를 다시 만들고, 도달 가능한 출력 공간을 열거한 뒤, 각 후보 문구에서 비트코인 주소를 도출해 공개 블록체인에서 자금이 들어 있는 주소와 일치하는지 확인했다 . 멀웨어도, 피싱도, 공급망 가로채기도, 손상된 업데이트 서버도 없었다. 절도는 전적으로 산술과 공개 데이터만으로 이루어졌다.

이 버그의 세 가지 속성이 서로 겹치며 이런 결과를 만들었다:

  • 침묵. 폴백은 올바른 길이와 형식의 출력을 만들어냈기 때문에, 펌웨어도 사용자도 엔트로피 품질이 무너졌다는 사실을 감지할 수 없었다.
  • 지속성. 시드는 한 번 생성된 뒤 무기한 재사용된다. 세션 키와 달리 나쁜 시드는 시간이 지나도 노출 상태에서 저절로 벗어나지 않는다.
  • 공개 검증 가능성. 비트코인의 투명한 원장은 공격자들이 어떤 것도 브로드캐스트하기 전에 후보 키를 실제 잔액과 오프라인으로, 비용 없이, 속도 제한 없이 대조할 수 있게 했다.

Coinkite는 누가 처음 이 결함을 발견했는지 알지 못한다고 밝혔고, 오래된 코드를 훑는 자동화 도구가 사용됐을 것으로 의심했다. 특히 회사는 자금 이동이 시작되기 몇 주 전 바로 그 영역에 대한 감사를 직접 시도했지만 이를 잡아내지 못했다 . 의존성 경계에서 발생한 빌드 플래그 의미론 오류는 사람이 하는 코드 리뷰에서는 지나치기 쉽고, 기계적 분석이 잡아내기 쉬운 결함 유형에 정확히 해당한다.

영향을 받는 Coldcard 모델과 펌웨어 버전은?

문제가 된 펌웨어에서 시드를 생성한 모든 Coldcard 모델은 노출 대상이지만, 심각도는 하드웨어 세대에 따라 크게 갈립니다. 버전 4.0.1부터 4.1.9까지를 실행한 Mk2와 Mk3 기기는 대략 40비트 엔트로피의 시드를 생성했으며, Coinkite의 자체 권고문도 이를 "critically low"라고 표현합니다 . Mk4, Mk5, Coldcard Q의 시드는 상대적으로 나았지만, 의도한 128비트가 아니라 약 72비트 수준이었습니다. 구형 보드에는 없던 보안 요소 재시드가 엔트로피를 추가했기 때문입니다 . 현대 기준에서는 어느 쪽도 안전하지 않습니다. 충분한 연산 자원이 있다면 둘 다 무차별 대입 공격 대상이 될 수 있습니다.

Block의 독립 엔지니어링 분석은 이 격차를 더 정밀하게, 일부 지점에서는 벤더 권고문보다 더 냉정하게 수치화합니다. v4 펌웨어의 Mk2/Mk3는 기기 UID, 타이머 상태, 호출 이력을 알고 있을 경우 지갑 생성이 사실상 결정론적이며, 숨겨진 타이머를 느슨하게 잡아도 후보 공간 상한은 2^40.7 미만입니다. Mk4/Q/Mk5의 경우 보안 요소 재시드는 다이제스트 4바이트만 유지했기 때문에, 고정된 폴백 상태와 호출 이력에서는 많아야 2^32개의 안전하게 구분되는 출력 스트림만 기여합니다. 알려진 UID 기준의 느슨한 상한은 약 2^73.3입니다 . Block은 2^73.3이 73비트 암호학적 보안과 같은 뜻이 아니라고 강조합니다. 이는 검색 공간의 상한이지, 공격 비용의 하한이 아닙니다.

모델 / 트랙취약한 펌웨어대략적인 시드 엔트로피수정 빌드(2026-07-31 출시)
Coldcard Mk2 / Mk34.0.1 – 4.1.9 전체약 40비트(Coinkite: "critically low")4.2.0
Coldcard Mk4 / Mk5(standard)5.6.0 이전의도한 128비트 대비 약 72비트5.6.0
Coldcard Q(standard)1.5.0Q 이전의도한 128비트 대비 약 72비트1.5.0Q
Mk4 / Mk5 Edge6.6.0X 이전의도한 128비트 대비 약 72비트6.6.0X
Coldcard Q Edge6.6.0QX 이전의도한 128비트 대비 약 72비트6.6.0QX
TAPSIGNER / OPENDIME / SATSCARD영향 없음변경 없음조치 불필요

Coinkite는 2026년 7월 31일 영향을 받은 모든 모델과 트랙에 대해 수정 빌드를 배포했습니다 . 또한 자매 제품 세 가지인 TAPSIGNER, OPENDIME, SATSCARD는 완전히 별도의 코드베이스에서 실행되어 libngu 경로를 거친 적이 없기 때문에 영향을 받지 않습니다 . 회사는 취약한 빌드가 탑재된 남은 재고도 재플래싱 후 재판매하지 않고 폐기했습니다 .

결정적인 변수는 시드가 지금 어디에 있느냐가 아니라 어디에서 생성됐느냐입니다. 안전한 기기에서 만든 시드를 이후 영향을 받은 Coldcard로 가져왔다고 해서 그 시드가 약해지지는 않습니다. 반대의 경우도 성립하며, 이쪽이 더 위험합니다. 취약한 Coldcard에서 생성된 약한 시드는 Ledger, Trezor 또는 어떤 소프트웨어 지갑으로 복원하더라도 계속 약합니다. 엔트로피 부족이 복구 문구 자체에 이미 들어 있기 때문입니다 . 노출 여부를 추적하는 사용자는 현재 보관 장치가 아니라 모든 시드의 출처를 감사해야 합니다. 여기에는 BIP85 하위 시드와 영향을 받은 키에 의존하는 모든 멀티시그 정책도 포함됩니다.

공격 타임라인: 2주 동안 이어진 네 차례의 조직적 공격

이번 탈취는 조금씩 새어 나간 사건이 아니라, 짧은 시간에 고속으로 쓸어 담는 방식의 연속 공격이었다. 첫 번째 공격은 2026년 7월 30일 41분 만에 1,196개 주소에서 1,083 BTC, 당시 기준 약 7,020만 달러를 빼냈다 . 이후 며칠 동안 세 차례의 추가 공격이 이어졌고, 8월 중순에는 추적 기관들이 확인된 손실을 1억 1,500만 달러 이상으로 집계했으며, 의심되는 네 번째 공격까지 포함하면 상단 추정치는 1억 3,000만 달러에 가까워졌다 . 핵심 특징은 속도였다. 유효한 복구 문구가 이미 오프라인에서 브루트포스로 뚫린 상태였기 때문에, 온체인 단계에서는 단순히 거래를 브로드캐스트하고 컨펌을 기다리는 일만 남아 있었다.

두 번째 공격은 약 500개의 단일 서명 지갑에서 25분 만에 594 BTC, 약 3,800만 달러를 가져갔다 . 이 공격은 독립적으로 확인된 자료가 가장 촘촘한 사례다. 추적 사이트 coldcardentropy.org는 7월 30일의 조직적 스윕에 대해 500건의 거래, 1,324개의 소스 UTXO, 500개의 고유 소스 주소, 그리고 소스 입력 기준 594.51379184 BTC를 포함한 확인된 핵심 데이터셋을 공개하고 있다 . 특히 이 추적 사이트는 언론 보도에서 오간 더 큰 주소 집합을 확정 피해자 수가 아니라 귀속 또는 잠정 집계로 표시한다. 어떤 수치를 인용하든 이 구분은 반드시 함께 가져가야 한다.

세 번째 공격에서는 1,912개 주소에서 208 BTC가 추가로 빠져나갔고, 네 번째 공격은 그다음 월요일에 감지됐다 . Galaxy Research는 세 차례의 공격과 14건의 소규모 사건을 합쳐 약 7,300개 주소에서 1,596 BTC가 탈취된 것으로 확인했으며, 피해자 확인이 완전히 끝나지 않은 의심 단계의 네 번째 공격 약 459 BTC까지 더하면 누적 합계가 2,055 BTC, 약 1억 3,000만 달러로 올라간다고 집계했다 . TRM Labs는 별도 집계에서 5,200개가 넘는 주소에 걸쳐 약 1,816 BTC, 약 1억 1,600만 달러가 탈취됐다고 봤고, 2026년 현재까지 276건의 사건에서 도난당한 총 12억 달러 가운데 이번 사건을 세 번째로 큰 암호화폐 공격으로 평가했다 .

공격날짜 / 감지 시점스윕된 BTC대략적 달러 가치주소 수소요 시간상태
1차 공격2026년 7월 30일1,083 BTC약 7,020만 달러1,19641분확인됨
2차 공격2026년 7월 30일594 BTC약 3,800만 달러약 500개 단일 서명 지갑25분확인됨; 500건 거래 / 1,324개 UTXO 문서화
3차 공격2026년 8월 초208 BTC별도 공개 없음1,912공개 없음확인됨
4차 공격그다음 월요일 감지약 459 BTC총액을 약 1억 3,000만 달러까지 끌어올리는 규모별도 공개 없음공개 없음의심 단계, 피해자 확인은 완전하지 않음

이들이 일상적인 배경성 탈취가 아니라 조직적으로 실행된 작전이었다는 점을 가장 분명하게 보여주는 정량 신호는 스윕 속도다. 의심되는 네 번째 공격 동안 스윕은 비트코인 블록당 약 13.8개 지갑까지 올라갔는데, 사건 전 기준선은 약 0.3개였다. 블록당 스윕 활동이 약 46배 증가한 셈이다 . Galaxy의 전사 리서치 책임자 Alex Thorn은 이 취약점을 독립적으로 악용한 공격자가 “최소 15명”이라고 지목했고, 스윕이 의도적으로 이뤄졌으며 LLM으로 조율됐을 가능성이 높다고 설명했다 . TRM도 다른 경로로 비슷한 결론에 도달했다. 특정 행위자 이름을 붙여 귀속하지는 않았지만, 공격 차수별로 거래 구성 방식이 달랐다고 지적했다. 이는 여러 주체가 같은 결함을 병렬로 공략했을 때 나타날 수 있는 패턴이다 .

소수의 보유자에게는 한 가지 운영상 세부 사항이 결과를 갈랐다. 공격자들이 replace-by-fee를 선택했기 때문에, 자신의 주소가 멤풀에서 스윕 거래에 걸려 있는 것을 발견한 피해자는 더 높은 수수료로 경쟁 거래를 내보내 코인을 구할 수 있었다 . Galaxy는 8월 6일 이후 공격자 활동으로 볼 만한 높은 신뢰도의 움직임은 없었다고 보고하면서도, 추가 손실 가능성은 남아 있다고 경고했다 . 공격 차수 집계는 잠정적인 것으로 보는 편이 맞다. Galaxy, TRM, coldcardentropy.org 데이터셋 사이의 차이는 확정된 장부가 아니라 서로 다른 확인 기준을 반영한다.

누가 훔쳤고, 왜 대부분의 자금은 아직 움직이지 않았나

단일 행위자가 저지른 사건은 아니다. Galaxy Research의 전사 리서치 책임자 Alex Thorn은 최소 15명의 서로 다른 공격자가 Coldcard 엔트로피 결함을 서로 독립적으로 악용했다고 밝혔다 . 이 다수성은 이번 사건의 핵심 특징이다. 시드 생성 결함이 일반 하드웨어에서도 재현 가능해지자, 악용은 일부만 가진 특권적 능력이 아니라 먼저 검색을 돌린 쪽이 가져가는 경쟁이 됐다. Thorn은 주소 타깃팅의 속도와 일관성을 근거로, 이 스윕이 의도적으로 이뤄졌고 대형 언어 모델로 조율됐을 가능성이 높다고 설명했다 .

블록체인 인텔리전스 기업 TRM Labs도 방향은 비슷하지만 더 신중한 결론을 냈다. 특정 행위자나 그룹의 소행이라고 단정하지 않았다. TRM의 판단은 추측이 아니라 포렌식에 가깝다. 각 공격 물결마다 거래 구성 방식이 눈에 띄게 달랐고, 수수료 로직, 입력 선택, 출력 구조가 일관되지 않았다. 이는 한 운영자가 단일 툴체인을 돌렸다기보다, 여러 독립 주체가 같은 공개 취약점을 바탕으로 움직였다는 쪽을 가리킨다 . 자동화 규모는 스윕 강도에서도 드러난다. 의심되는 네 번째 물결 당시 비트코인 블록당 약 13.8개 지갑이 스윕됐는데, 사건 전 기준선은 약 0.3개 수준이었다 .

공격자의 한 가지 선택은 피해자에게 유리하게 작용했다. 스윕 거래가 replace-by-fee를 선택했기 때문이다. 이는 미확정 거래를 같은 입력을 쓰는 더 높은 수수료의 거래로 대체할 수 있게 하는 비트코인 정책이다. 그래서 멤풀을 지켜보던 보유자가 자신의 주소에서 자금이 빠져나가는 것을 발견했다면, 더 높은 수수료의 경쟁 거래를 브로드캐스트해 확정 전에 코인을 구할 수 있었다 . 다만 그 시간은 몇 분 단위였고 적극적인 모니터링이 필요했다. 결국 기술적으로 대응할 수 있는 보유자에게 유리했는데, 도난 코인이 평균 3.18년 동안 손대지 않은 채 남아 있었다는 점을 감안하면 그런 보유자는 좁은 범위에 그쳤다 .

도난 자금은 대체로 그대로 머물러 있다. 코인의 약 86~90%가 공격자 통제 주소에서 움직이지 않았고, 지금까지 확인된 세탁 시도는 두 건에 그쳤다. Wasabi 코인조인 서비스로 64.9 BTC가 한 차례 입금됐고, 2026년 8월 4일 Tornado Cash로 200 ETH가 전송됐다 . 데이터와 부합하는 설명은 두 가지이며, 아직 어느 쪽도 배제할 수 없다:

  • 추적 압박. Galaxy는 공격자 주소 목록을 거래소, 컴플라이언스 및 조사 업체, 법 집행기관과 공유했다. 그만큼 규제권 거래소에 대규모 입금이 들어올 경우 동결될 가능성이 커졌다 .
  • 유동성 제약. 네 자릿수 BTC 잔고를 심한 슬리피지나 노출 없이 믹서나 OTC 채널로 옮기는 데는 시간이 걸린다. Wasabi와 Tornado Cash로 간 소규모 전송은 본격적인 대규모 세탁 프로그램이라기보다 시험에 가까워 보인다 .

트레이더 입장에서 실무적으로 읽어야 할 점은, 휴면 잔고가 여전히 살아 있는 추적 신호라는 것이다. 표시된 클러스터에서 의미 있는 규모의 자금 이동이 발생하면 온체인에서 보일 것이고, 현물 매도 압력보다는 거래소 입금 흐름으로 먼저 포착될 가능성이 높다. 그 전까지 1억1500만 달러 이상의 피해액은 이미 시장으로 재투입된 자본이라기보다, 감시 아래 묶여 있는 재고로 이해하는 편이 맞다 .

Coldcard 지갑은 아직 위험할까? 실제 해결책은 무엇인가

시드 문구가 영향을 받은 기기와 영향을 받은 펌웨어에서 생성됐다면, 패치를 설치한 뒤에도 Coldcard는 여전히 위험합니다. Coinkite는 이 점을 명확히 밝히고 있습니다. 펌웨어 업데이트는 기존 시드를 고쳐 주지 않으며, 수정된 빌드를 설치한 뒤 새로 만든 지갑만 보호됩니다 . 패치는 앞으로 생성되는 키의 엔트로피 결함을 막는 것이지, 이미 블록체인에 존재하는 키에 빠진 비트를 되돌려 추가할 수는 없습니다. 따라서 영향을 받은 사용자가 해야 할 일은 업데이트가 아니라 마이그레이션입니다.

영향을 받은 시드라도 위험하다고 보지 않는 경우는 아주 좁게 두 가지뿐입니다. 첫 번째는 주사위로 만든 엔트로피입니다. Add Dice Rolls 기능을 통해 공정하고, 독립적이며, 비공개로 굴린 주사위 결과를 최소 50회 입력해 만든 시드가 여기에 해당합니다. Coinkite는 50~98회 굴림이 최소 128비트의 엔트로피를 제공하고, 99회 이상은 대략 256비트를 제공해 결함 있는 소프트웨어 출력값을 압도한다고 설명합니다 . 두 번째는 강력하고 고유한 BIP-39 패스프레이즈입니다. 다만 이는 더 약한 보호 방식입니다. 근본적인 시드를 고치는 것이 아니라 공격자의 비용을 높일 뿐이며, Coinkite는 패스프레이즈 사용자에게도 여전히 마이그레이션을 지시하고 있습니다 . 이 두 경우에 미치지 못한다면 노출된 것으로 봐야 합니다.

사람들이 자주 헷갈리는 두 번째 지점은 위치입니다. 노출 여부는 코인이 지금 어디에 있는지가 아니라 시드가 어디에서 생성됐는지로 결정됩니다. 영향을 받은 Coldcard에서 만든 시드를 나중에 휴대폰 지갑, 다른 하드웨어 기기, 멀티시그 코디네이터로 가져왔더라도 같은 취약성을 그대로 품고 있습니다. 반대도 마찬가지입니다. 다른 하드웨어에서 안전하게 생성한 시드를 Coldcard로 가져왔다고 해서 그 시드가 약해지지는 않습니다 . 같은 손상된 시드에서 파생한 새 주소로 자금을 옮기는 것은 아무 의미가 없습니다. 공격자는 개별 주소가 아니라 마스터 키를 재구성하기 때문입니다.

Coinkite가 공개한 마이그레이션 절차는 순차적이며, 순서가 중요합니다:

  • 해당 모델과 트랙에 맞는 수정 펌웨어를 설치합니다. 2026년 7월 31일 공개된 버전은 Mk2/Mk3용 4.2.0, Mk4/Mk5 표준용 5.6.0, Q 표준용 1.5.0Q, Edge 빌드용 6.6.0X 및 6.6.0QX입니다 .
  • 패치된 기기에서 완전히 새로운 시드를 생성합니다. 기존 시드를 복제하거나, 복원하거나, 중복 생성하지 마세요. 복제하면 약한 엔트로피가 그대로 이어집니다.
  • 새 백업과 지갑 핑거프린트를 먼저 확인합니다. 기기에 다른 작업을 하기 전에 확인해야, 이제 자금을 보낼 지갑이 실제로 적어 둔 그 지갑인지 알 수 있습니다.
  • 새 지갑으로 소액 테스트 거래를 보냅니다. 그리고 그 지갑에서 지출할 수 있는지 확인합니다.
  • 그 확인이 성공한 뒤에만 남은 자금을 옮깁니다 .

가장 자주 빠뜨리는 단계는 반복입니다. 마이그레이션은 주 잔액만이 아니라 영향을 받은 시드에서 파생된 모든 지갑에 대해 실행해야 합니다. 패스프레이즈 지갑, BIP85 자식 키, 별도 계정, 영향을 받은 키가 포함된 모든 멀티시그 정책이 여기에 들어갑니다 . 멀티시그가 가장 번거로운 경우입니다. 한 공동 서명자 키를 교체하려면 정족수에 포함된 모든 기기에서 정책을 다시 만들고 다시 등록해야 하며, 자금은 기존 디스크립터 아래에 남겨 두는 것이 아니라 새로 만든 정책으로 쓸어 옮겨야 합니다.

마지막으로 위험 상황을 정리할 때 알아둘 실무적 주의점이 두 가지 있습니다. Coinkite는 영향을 받은 모든 모델에 긴급 펌웨어를 배포했고 취약한 빌드가 들어간 남은 재고를 폐기했지만, 보상은 제공하지 않았습니다. 따라서 마이그레이션 비용과 수고는 보유자가 부담해야 합니다 . 또한 Galaxy Research는 2026년 8월 6일 이후 높은 신뢰도로 확인된 공격자 활동은 없다고 보고했지만, 추가 손실 가능성은 여전히 남아 있다고 명시적으로 경고했습니다 . 멤풀에서 조용하다고 해결된 것은 아닙니다. 유일한 해결책은 새 시드입니다.

150억 달러 규모의 파장: 장기 보유자들이 코인을 옮기는 이유

Coldcard 결함이 낳은 가장 큰 금융적 여파는 도난 자체가 아니라 그로 인해 촉발된 대피였다. Casa CEO Nick Neuman이 인용한, 애널리스트 James Check가 집계한 Checkonchain 데이터에 따르면 침해 전후 며칠 동안 장기 보유자 지갑에서 약 233,000 BTC, 약 150억 달러가 이동했다 . 이는 공격자가 가져간 금액의 약 100배에 해당하며, 보유자들이 지갑을 새 시드로 다시 만들거나, 새 주소로 통합하거나, 아예 셀프 커스터디에서 물러나면서 자발적으로 옮긴 물량이다.

이 흐름에서는 headline 숫자보다 구성이 더 중요하다. 보유자들이 위험을 줄이면서 약 22,000 BTC가 거래소로 이동했고, 나머지는 매도 창구가 아니라 새로 생성한 지갑과 멀티시그 구조로 옮겨진 것으로 보인다 . Glassnode는 같은 기간 장기 보유자 공급량이 약 1,500만 BTC에서 1,470만 BTC로 줄었다고 기록했는데, 이는 2024년 12월 이후 해당 집단에서 가장 큰 주간 감소폭이다 . 코인이 한 번이라도 쓰이면 코인의 나이를 초기화하는 온체인 지표에서는 시드 이전과 패닉 매도가 똑같이 기록된다. 따라서 이 감소는 먼저 커스터디 이벤트로, 그다음에 심리 신호로 읽어야 한다.

"도난당한 비트코인의 약 10배에서 100배 사이 물량이, 사람들이 경보를 울리면서 안전한 곳으로 옮겨졌다." — Casa CEO Nick Neuman (source: Decrypt, 2026-08).

피해자들의 특성을 보면 왜 해당 집단 데이터가 이렇게 급격히 움직였는지 이해할 수 있다. 공격자가 쓸어 간 코인들은 평균 3.18년 동안 움직이지 않았고, 이는 피해를 본 사람들이 활발한 트레이더가 아니라 압도적으로 장기 보유자였다는 뜻이다 . Coldcard 사용자층은 기기를 한 번 설정하고, 백업을 확인한 뒤, 의도적으로 더 이상 건드리지 않는 보유자 쪽으로 기울어져 있다. 바로 그 행동 때문에 취약한 펌웨어에서 생성된 시드가 몇 년 동안 검증되지 않은 채 남아 있었다. 이런 원칙적인 관리 방식은 지갑을 피싱과 거래소 장애로부터 보호했지만, 동시에 2021년 3월부터 2026년 7월 사이에 그 기기를 다시 살펴볼 이유가 없게 만들었다.

시세 흐름을 읽는 트레이더에게 실질적인 의미는 공급 연령 지표가 적어도 일주일 동안 왜곡됐다는 점이다. 코인 데이즈 디스트로이드 급증이나 장기 보유자 공급 감소는 보통 분배를 의미한다. 그러나 이번에는 상당 부분이 같은 잔고를 새 키로 다시 기록한 결과였다. 22,000 BTC의 거래소 유입분은 실제 매도 압력을 동반한 하위 집합이며, 전체 이동 물량의 10% 미만이다 . 단일 벤더의 보안 이벤트는 집단 지표에 잡음을 만들 수 있다는 점을 감안하고, 방향성을 결론 내리기 전에 주소 이동과 실제 거래소 입금을 분리해서 봐야 한다.

다음 단계: 조사 현황과 아직 남은 질문들

Coldcard 익스플로잇의 활성 단계는 멈춘 것으로 보이지만, 사건이 끝난 것은 아니다. Galaxy Research는 2026년 8월 6일 이후 신뢰도 높은 공격자 활동은 확인되지 않았다고 보고했지만, 아직 마이그레이션되지 않은 취약한 시드가 온체인에 남아 있어 추가 손실 가능성은 여전히 있다고 경고했다 . 스윕이 잠시 멈췄다는 것은 해결됐다는 뜻이 아니다. 영향을 받은 펌웨어에서 생성됐고 한 번도 교체되지 않은 시드를 가진 모든 지갑은 이미 생성 과정을 재현한 어느 쪽에게든 계속 노출된 표적이다.

조사는 탐지에서 피해자 연락과 자금 추적으로 옮겨가고 있다. Galaxy의 전사 리서치 책임자인 Alex Thorn은 190명에서 200명 이상의 피해자와 대화했으며, Galaxy는 공격자 주소 목록을 거래소, 컴플라이언스 업체, 조사 회사, 법 집행기관에 배포했다 . 이번에는 그 배포가 평소보다 더 중요하다. 도난당한 비트코인의 약 86~90%가 아직 공격자 통제 주소에서 움직이지 않았기 때문이다 . 움직이지 않는 코인은 현금화 지점에서 표시될 수 있는 코인이다. 하지만 표시가 동결을 뜻하는 것은 아니며, 복구가 보고된 적도 없다.

보유자들이 주목해야 할 Coinkite의 입장도 아직 정리되지 않았다. 이 캐나다 제조사는 2026년 7월 31일 영향을 받은 모든 모델과 트랙에 긴급 펌웨어를 배포했고, 취약한 빌드가 실린 잔여 재고를 폐기했다 . 그러나 피해 사용자에게 보상은 제시하지 않았다. 또한 보안 상태 페이지에는 개별 손실 신고의 원인을 판정하려 하지 않는다고 명시돼 있어, 피해자들은 자신들의 청구에 대한 벤더 측 판단 없이 남겨져 있다 . 공식 기술 사후 분석은 2026년 8월 13일 기준으로 아직 진행 중이었다 .

아직 열린 질문은 네 가지이며, 각각은 단정하지 말고 계속 추적해야 한다.

  • 최종 손실 규모. 공개 집계는 2주 사이 1억1,200만 달러에서 1억3,000만 달러까지 갈렸고, Galaxy가 의심한 약 459 BTC 규모의 네 번째 웨이브도 아직 피해자 확인이 완전히 끝나지 않았다 . 확정 숫자가 아니라 출처와 날짜를 함께 인용해야 한다.
  • 운영자 구조. TRM Labs는 이 절도를 특정 명명된 행위자에게 귀속하지 않았다. 웨이브마다 트랜잭션 구성 방식이 달랐다는 점을 들어, 하나의 조직이 아니라 여러 독립 세력이 개입했을 가능성을 시사했다 .
  • 알림 도달 범위. 등록하지 않았고, 벤더 채널을 팔로우하지 않으며, 크립토 매체도 읽지 않는 에어갭 기기 소유자에게 도달할 방법은 없다.
  • 사후 분석 결과. Coinkite는 누가 버그를 발견했는지 모른다고 밝혔고, 자동화된 코드 검색 도구를 의심한다고 했다. Coinkite도 몇 주 전 자체적으로 비슷한 감사를 시도했지만 해당 결함을 잡아내지 못했다 .

핵심은 분명하다. 8월 6일을 안전 선언이 아니라 소강 상태로 봐야 한다. 본인이 관리하는 시드 중 하나라도 Mk2/Mk3 펌웨어 4.0.1~4.1.9, 5.6.0 미만의 Mk4/Mk5, 1.5.0Q 미만의 Q, 또는 6.6.0X/6.6.0QX 미만의 Edge 트랙에서 실행되던 Coldcard에서 생성됐다면, 사후 분석을 기다리지 말고 이번 주 안에 새로 생성한 시드로 이전해야 한다 . 앞으로 나올 보고서가 애초에 없었던 엔트로피를 되살릴 수는 없으며, 지금까지 나온 어떤 벤더 성명도 피해자를 온전히 보전하겠다고 약속하지 않았다.

Last updated: 2026-08-18. 수치는 2026년 8월 16일까지 공개된 Galaxy Research, TRM Labs, Coinkite 발표를 반영한다. 총액은 Coinkite의 기술 사후 분석이 나오기 전까지 잠정치다.

자주 묻는 질문

Coldcard 하드웨어 지갑 해킹의 원인은 무엇인가요?

네트워크 침해가 아니라 코드 마이그레이션이 원인이었습니다. 2021년 3월 Coinkite는 Coldcard의 시드 생성을 libngu 라이브러리로 옮겼고, 새 호출인 ngu.random.bytes()가 링크 시점에 기기의 하드웨어 진성 난수 생성기가 아니라 MicroPython의 Yasmarang 소프트웨어 의사 난수 생성기로 해석되었습니다 . Block의 엔지니어링 리뷰는 그 메커니즘을 더 자세히 추적했습니다. MICROPY_HW_ENABLE_RNG가 0으로 정의돼 있었지만 libngu는 해당 매크로가 정의됐는지만 확인하고 활성화됐는지는 확인하지 않았으며, 취약한 경로는 2021년 3월 17일 펌웨어 v4.0.0에 포함돼 배포되었습니다 . 소프트웨어 PRNG 출력은 재현 가능하기 때문에 공격자는 자체 하드웨어에서 생성 과정을 복제하고 유효한 복구 문구를 오프라인으로 무차별 대입할 수 있었습니다. 그 결과 Mk3의 엔트로피는 의도한 128비트가 아니라 약 40비트 수준으로 떨어졌습니다 .

엔트로피 결함의 영향을 받는 Coldcard 모델은 무엇인가요?

Coinkite 권고문은 영향을 받는 네 가지 계열을 명시합니다. 버전 4.0.1부터 4.1.9까지를 실행하는 Mk2와 Mk3, 5.6.0 이전 Mk4와 Mk5 표준 펌웨어, 1.5.0Q 이전 Coldcard Q 표준, 그리고 6.6.0X(Mk4/Mk5) 및 6.6.0QX(Q) 이전 Edge 계열입니다 . TAPSIGNER, OPENDIME, SATSCARD는 별도 코드베이스를 사용하므로 영향을 받지 않습니다 . 노출 여부는 시드가 지금 어디에 있는지가 아니라 어디에서 생성됐는지에 따라 결정됩니다. 다른 기기에서 안전하게 생성된 시드는 Coldcard로 가져와도 약해지지 않으며, Coldcard에서 생성된 약한 시드는 다른 지갑으로 복원해도 계속 약한 상태로 남습니다 .

Coldcard 펌웨어를 업데이트하면 기존 지갑도 해결되나요?

아니요. 패치된 펌웨어는 업데이트 이후 생성되는 시드만 보호합니다. 이미 약한 엔트로피로 만들어진 키에 엔트로피를 사후에 추가할 수는 없습니다 . Coinkite는 2026년 7월 31일 영향을 받는 모든 계열에 대해 수정 빌드를 배포했습니다. Mk2/Mk3용 4.2.0, Mk4/Mk5 표준용 5.6.0, Q 표준용 1.5.0Q, Edge 계열용 6.6.0X와 6.6.0QX입니다 . 공급사의 마이그레이션 가이드는 영향을 받은 소유자에게 수정 펌웨어를 설치하고, 기존 시드를 복제하지 말고 완전히 새 시드를 생성한 뒤, 백업과 지갑 핑거프린트를 확인하고, 소액 테스트 거래를 보낸 다음, 남은 자금을 옮기라고 안내합니다. 또한 영향을 받은 시드에 의존하는 기본 지갑, 패스프레이즈 지갑, BIP85 하위 지갑, 추가 계정, 모든 멀티시그 정책에 대해 이 과정을 반복하라고 설명합니다 .

Coldcard에서 생성한 내 시드가 위험한지 어떻게 알 수 있나요?

두 가지 좁은 조건 중 하나에 해당하지 않는 한 위험하다고 보는 것이 맞습니다. Coinkite는 Add Dice Rolls 기능을 통해 공정하고 독립적이며 비공개인 주사위 굴림을 최소 50회 입력해 시드를 만들었거나, 강력하고 고유한 BIP-39 패스프레이즈로 지갑을 보호하는 경우에만 자금이 보호된다고 설명합니다. 50~98회의 굴림은 최소 128비트의 엔트로피를 추가하고, 99회 이상은 약 256비트를 추가합니다 . 패스프레이즈는 즉각적인 노출을 낮추지만 underlying seed 자체를 고치지는 못하며, Coinkite는 패스프레이즈 사용자에게도 마이그레이션을 권고합니다 . 취약한 펌웨어 기간에 영향을 받는 모델에서 시드가 생성됐고 두 조건 모두 충족하지 않는다면, 해당 키가 손상됐다고 보고 새로 생성한 시드로 자금을 옮기세요. Coinkite의 상태 페이지는 현재 펌웨어 제공 현황을 공개하며, 개별 신고 손실의 원인 판단은 명시적으로 하지 않는다고 밝히고 있습니다 .

Coldcard 해킹으로 지금까지 얼마나 도난당했나요?

추정치는 추적 주체, 방법론, 기준일에 따라 약 1억 1,200만 달러에서 1억 3,000만 달러까지 차이가 있어, 단일 수치로 확정되지는 않았습니다. Galaxy Research는 세 차례의 공격 물결과 14건의 소규모 사건에서 약 7,300개 주소로부터 1,596 BTC가 도난당한 것으로 확인했으며, 약 459 BTC 규모로 의심되는 네 번째 물결까지 포함하면 총액은 2,055 BTC, 약 1억 3,000만 달러로 늘어난다고 집계했습니다 . 2026년 8월 13일까지의 데이터를 바탕으로 8월 16일 보도된 Galaxy 수치는 손실액을 1억 1,500만 달러 이상으로 제시했습니다 . 한편 TRM Labs는 5,200개가 넘는 주소에서 약 1,816 BTC, 약 1억 1,600만 달러를 집계해, 2026년 연초 이후 276건의 사건에서 도난당한 12억 달러 가운데 이 사건을 세 번째로 큰 사건으로 분류했습니다 . 독립 추적 사이트 coldcardentropy.org는 7월 30일 조율된 스윕에 대해 확인된 핵심 데이터셋을 문서화하고 있습니다. 여기에는 거래 500건, 소스 UTXO 1,324개, 고유 소스 주소 500개, 소스 입력 594.51379184 BTC가 포함되며, 더 넓은 주소 집합은 attributed 또는 provisional로 표시합니다 .