Lỗi ví Coldcard khiến thất thoát Bitcoin ước tính 130 triệu USD

Nhóm Kỹ thuật & An ninh Bitcoin của Block cùng các nhà phát triển độc lập Bitcoin Core cho biết họ đã lần ra nguyên nhân loạt vụ mất tiền gần đây liên quan đến ví phần cứng Coinkite Coldcard: một lỗi firmware khiến quá trình tạo seed trở nên yếu ngay từ thời điểm thiết bị sinh khóa, trước cả khi người dùng từng nhập hay sao lưu cụm từ khôi phục. Theo kết quả phân tích, lỗi đã khiến thiết bị không dùng nguồn số ngẫu nhiên phần cứng trên chip STM32, mà chuyển sang cơ chế dự phòng Yasmarang của MicroPython vốn mang tính tất định. Với các máy Mk2 và Mk3 chạy firmware từ 4.0.1 đến 4.1.9, seed được tạo ra có độ ngẫu nhiên "sụp" xuống một tập nhỏ có thể dò tìm. Các mẫu Mk4, Q và Mk5 bị ảnh hưởng nhẹ hơn nhưng vẫn chỉ tạo seed khoảng 72 bit entropy, thấp đáng kể so với mức 128 bit theo thiết kế. Điểm nguy hiểm nằm ở chỗ: người dùng có thể ghi lại 12 hoặc 24 từ, cất trong két, để thiết bị ngoại tuyến nhiều năm, nhưng kẻ tấn công vẫn có thể tái tạo khóa bằng cách quét không gian đầu ra hẹp của bộ sinh số dự phòng. Bản vá firmware chỉ bảo vệ các seed được tạo sau khi cập nhật; những seed đã sinh ra theo cơ chế lỗi không thể "sửa" bằng cập nhật. Coinkite khuyến nghị người dùng thuộc diện bị ảnh hưởng phải tạo seed hoàn toàn mới và chuyển toàn bộ tài sản sang ví mới. Việc nhập cụm từ cũ vào ví của hãng khác cũng không giải quyết được, vì điểm yếu gắn với chính nguồn gốc seed và "đi theo" cụm từ khôi phục. Lỗ hổng này tồn tại trong các bản firmware được phát hành từ năm 2021 và chỉ được công bố vào tháng 7 vừa qua, tức kéo dài khoảng 5 năm dù mã nguồn ở trạng thái công khai. Việc có thể tái dựng firmware từ mã nguồn và đối chiếu với bản nhị phân phân phối chỉ chứng minh tính toàn vẹn khâu phát hành; phát hiện khiếm khuyết thiết kế đòi hỏi kiểm toán sâu hơn ngay trong logic sinh seed. Ghi chú kỹ thuật của Coinkite cho biết các đợt rà soát trước đây từng xác nhận bộ sinh số ngẫu nhiên phần cứng có mặt ở đâu đó trong binary, nhưng chưa xác nhận chắc chắn luồng sinh seed thực sự gọi tới nguồn đó. Coinkite cũng nêu hai nhóm người dùng có thêm "lớp giả định" giúp giảm rủi ro trước kiểu tấn công tái dựng seed. Nhóm thứ nhất đặt BIP39 passphrase mạnh và duy nhất: do seed ví được dẫn xuất từ mnemonic cộng với "muối" chứa passphrase, thay đổi passphrase sẽ tạo ra ví khác dù các từ khôi phục giống nhau. Passphrase tách biệt với PIN (PIN chỉ mở khóa thiết bị), và dù vậy Coinkite vẫn khuyến nghị các trường hợp này cân nhắc di chuyển. Nhóm thứ hai là những người tự thêm entropy bên ngoài bằng tối thiểu 50 lần gieo xúc xắc công bằng, độc lập và riêng tư khi tạo seed, khiến bộ sinh số lỗi của thiết bị không còn là đầu vào duy nhất. Andrew Mannoukas, CISO của Xapo Bank, nhận định với CryptoSlate rằng bài học không phải "ví phần cứng là xấu", mà là rủi ro tập trung: khi an toàn Bitcoin bị quy về một bí mật duy nhất, tạo trên một thiết bị duy nhất, tại một thời điểm không thể lặp lại, người dùng cũng chấp nhận toàn bộ các giả định gắn với khoảnh khắc đó. Ông bổ sung dữ liệu ngành trong nhiều năm cho thấy phần lớn tổn thất hiện đến từ quản trị khóa và vận hành, không phải từ việc bẻ gãy mật mã nền tảng. Trong bối cảnh này, lời khuyên phổ biến về multisig cũng có điểm mù: cấu hình 2-trên-3 chỉ hữu ích khi các khóa thật sự độc lập. Nếu cả ba khóa được tạo từ cùng một triển khai có lỗi thì thực chất vẫn nằm trong cùng một "miền thất bại". Tài liệu của Coldcard cho phép một thiết bị tạo nhiều cosigner bằng các passphrase khác nhau, bề ngoài có vẻ đa dạng nhưng vẫn truy về cùng một nền tảng sinh seed. Trọng tâm vì thế chuyển từ "có dùng multisig hay không" sang "ai tạo từng khóa, tạo bằng triển khai nào và dùng nguồn entropy nào". Vụ việc cũng được so sánh với dịch vụ Ledger Recover: Recover cho phép Secure Element sao chép và mã hóa entropy của ví, chia thành ba mảnh mã hóa và gửi tới các nhà cung cấp lưu trữ, quy trình đòi hỏi đăng ký và xác nhận vật lý trên thiết bị mỗi lần. Nếu Ledger bị đặt câu hỏi ở ranh giới "đưa bí mật ra ngoài thiết bị" trong những điều kiện người dùng chấp thuận, thì sự cố Coldcard nằm xa hơn về thượng nguồn: firmware làm suy yếu bí mật ngay trước khi bất kỳ "ranh giới" phần cứng nào có ý nghĩa. Về thiệt hại, các đợt quét ban đầu đã rút khoảng 594 BTC từ gần 500 ví. Các nhà nghiên cứu on-chain sau đó liên kết ít nhất ba "làn sóng" nghi vấn với lỗ hổng, tổng cộng gần 1.367 BTC trên hơn 4.500 địa chỉ, trị giá khoảng 89 triệu USD tại thời điểm đó. Các báo cáo lan truyền ngày 3/8 cho rằng có thể có làn sóng thứ tư, nâng tổng lên gần 114 triệu USD. Alex Thorn của Galaxy Digital cảnh báo các mô hình trên blockchain không đủ để khẳng định chắc chắn mọi địa chỉ bị quét đều liên quan firmware Coldcard dễ tổn thương, nên việc quy kết vẫn mang tính tạm thời khi con số tiếp tục tăng. Đến cập nhật ngày 4/8 từ Lookonchain (dẫn Galaxy Research), ước tính tổn thất liên quan Coldcard có thể đã lên 2.055 BTC, trị giá khoảng 130 triệu USD, trên hơn 7.700 địa chỉ bị ảnh hưởng. Ở bức tranh rộng hơn, TRM Labs cho biết hạ tầng và vận hành bị xâm phạm, chủ yếu là đánh cắp private key và seed phrase, chiếm khoảng 76% giá trị bị đánh cắp trong các vụ hack crypto nửa đầu năm 2026, dù chỉ khoảng 15% tổng số vụ. CertiK cũng thống kê nhóm tấn công gây thiệt hại lớn nhất cùng kỳ là "xâm phạm ví", hơn 444 triệu USD qua 33 sự cố. Thực tế này cho thấy kẻ tấn công kiếm tiền nhiều hơn từ việc khai thác quy trình và hệ thống quanh khóa hơn là phá mã học. Nhà sáng lập Coinkite Rodolfo Novak đã công khai xin lỗi, nhận trách nhiệm đầy đủ và đề nghị hỗ trợ người dùng về hồ sơ cảnh sát, yêu cầu bảo hiểm và điều tra trên blockchain. Tính đến ngày 3/8, phương án bồi hoàn chưa nằm trong các biện pháp khắc phục được công bố. Khác với sàn giao dịch có thể dùng dự trữ, bảo hiểm hoặc bảng cân đối, nhà sản xuất ví phần cứng thường chỉ bán thiết bị và để việc lưu ký Bitcoin thuộc về người dùng, khiến trách nhiệm khi sản phẩm có lỗi trở thành khoảng trống khó xử giữa hai bên. Triển vọng tiếp theo của tự lưu ký Bitcoin phụ thuộc vào tốc độ di chuyển tài sản so với việc xuất hiện thêm các làn sóng mới. Kịch bản tích cực là tổn thất sớm ổn định, người dùng chuyển ví kịp thời, các hãng bổ sung cơ chế kiểm tra entropy, chứng thực quy trình sinh seed và công cụ xoay vòng khóa khẩn cấp rõ ràng hơn. Passphrase, entropy từ xúc xắc và multisig đa dạng nguồn khóa có thể chuyển từ "mẹo nâng cao" thành khuyến nghị mặc định. Ở kịch bản tiêu cực, nếu nghiên cứu tiếp tục phát hiện thêm các đường sinh seed yếu ở thiết bị hay quy trình thiết lập khác, niềm tin có thể suy giảm nhanh hơn khả năng vá lỗi của nhà sản xuất. Các đợt di chuyển trong hoảng loạn cũng tự tạo ra rủi ro: tái sử dụng địa chỉ, chuyển khoản vội vàng, và làn sóng lừa đảo giả danh hỗ trợ ví nhắm vào người dùng đang tìm cách đưa tiền về nơi an toàn. Tự giữ khóa giúp người dùng tránh rủi ro bị sàn đóng băng rút tiền, tái thế chấp tài sản hoặc phá sản kéo theo tiền khách hàng. Dù vậy, trong tự lưu ký vẫn tồn tại một phụ thuộc quan trọng: nhà sản xuất đứng sau thiết bị biến entropy thành khóa. Một seed duy nhất, sinh ra trên phần cứng của một công ty tại một thời điểm không thể lặp lại, chỉ thực sự trở thành "chủ quyền" khi có thêm một giả định độc lập đứng phía sau nó. Sự cố Coldcard trị giá 130 triệu USD là lời nhắc rằng khẩu hiệu "không phải khóa của bạn, không phải coin của bạn" chưa đủ nếu toàn bộ niềm tin vẫn dồn vào một thiết bị duy nhất để tạo khóa.