
Lỗi tạo seed kéo dài 5 năm của Coldcard đã làm dấy lên những lời kêu gọi mới về việc kiểm tra độc lập firmware ví phần cứng sau khi các cuộc tấn công bị nghi ngờ đã rút cạn gần 90 triệu USD Bitcoin từ hàng nghìn ví.
Giám đốc an ninh của Kraken, Nick Percoco, cho biết trong một bài đăng trên X vào Chủ Nhật rằng sự cố này nên được coi là một lời cảnh báo cho ngành ví phần cứng, lập luận rằng các nhà sản xuất không nên là bên duy nhất xác minh cách thức cụm từ seed của ví được tạo ra.
Ông nói rằng firmware sản xuất nên được kiểm tra độc lập để xác nhận rằng nguồn ngẫu nhiên được phê duyệt là nguồn thực sự được sử dụng khi tạo các bí mật ví.
Theo phân tích blockchain mới nhất của Galaxy Research, những kẻ tấn công bị nghi ngờ hiện đã rút hơn 1.800 BTC từ hơn 5.200 địa chỉ nạn nhân tiềm năng qua bốn đợt tấn công được ghi nhận, mặc dù công ty đã nhấn mạnh rằng những con số này là ước tính trên chuỗi chứ không phải tổn thất được xác nhận. Coinkite chưa xác minh mọi ví bị ảnh hưởng, và dữ liệu blockchain riêng lẻ không thể xác định liệu một tác nhân duy nhất đã thực hiện tất cả các cuộc tấn công hay không.
Coinkite tiết lộ vào thứ Năm rằng lỗ hổng này có từ tháng 3 năm 2021, khi công ty di chuyển một phần firmware của mình trong khi tích hợp một thư viện mật mã mới.
Thay vì sử dụng bộ tạo số ngẫu nhiên thực sự được hỗ trợ bằng phần cứng của Coldcard để tạo seed ví, firmware cập nhật đã vô tình gọi một bộ tạo số giả ngẫu nhiên xác định yếu hơn do MicroPython cung cấp.
Theo báo cáo phân tích sau sự cố của Coinkite, bộ tạo số ngẫu nhiên dự kiến vẫn hoạt động ở những nơi khác trong firmware, cho phép các cuộc đánh giá mã xác minh sự hiện diện của nó mà không tiết lộ rằng việc tạo ví lại dựa vào một nguồn entropy khác.
Công ty cho biết họ không biết rằng bộ tạo MicroPython tồn tại trong đường dẫn mã liên quan cho đến khi điều tra. Trong khi bộ tạo số ngẫu nhiên phần cứng tiếp tục hoạt động cho các chức năng khác, nó không còn chịu trách nhiệm tạo ra các bí mật ví mới nữa.
Nhóm kỹ thuật và bảo mật Bitcoin của Block đã độc lập đi đến cùng một kết luận trong quá trình xem xét kỹ thuật của họ. Công ty cho biết firmware bị ảnh hưởng đã gọi phương án dự phòng MicroPython xác định thay vì bộ tạo số ngẫu nhiên phần cứng STM32 khi tạo seed ví. Mặc dù Block cho biết họ chưa hoàn thành thử nghiệm thực nghiệm đầy đủ trên mọi thiết bị, họ đã quyết định công bố phát hiện của mình vì các báo cáo về hành vi trộm cắp đang diễn ra đã xuất hiện.
Coinkite ước tính rằng các seed được tạo trên các thiết bị Mk2 và Mk3 bị ảnh hưởng có thể chứa khoảng 40 bit entropy hiệu quả, trong khi các mẫu Mk4, Mk5 và Q bị ảnh hưởng có thể chứa khoảng 72 bit thay vì 128 bit dự kiến.
Lấy sự cố Coldcard làm ví dụ, Percoco lập luận rằng chứng nhận ví phần cứng đã bỏ qua một trong những phần quan trọng nhất của bảo mật ví.
Ông nói rằng người dùng hiện tại phải tin tưởng rằng các nhà sản xuất triển khai việc tạo seed một cách chính xác vì không có quy trình độc lập nào xác minh rằng firmware sản xuất thực sự gọi nguồn entropy đã được phê duyệt. Các chứng nhận hiện có, bao gồm đánh giá Common Criteria cho các yếu tố bảo mật, đánh giá CSPN và kiểm toán do nhà cung cấp tài trợ, không xác thực một cách có hệ thống mối quan hệ đó, theo Percoco.
Để minh họa khoảng trống này, ông đã chỉ ra NIST SP 800-90B, tiêu chuẩn của Hoa Kỳ quy định việc thiết kế và xác thực các bộ tạo số ngẫu nhiên thực sự được sử dụng trong các hệ thống mật mã, cùng với khung BSI AIS-31 của Đức, đặt ra các yêu cầu kiểm tra tương tự. Ông lập luận rằng việc xác minh đầu cuối tương đương hiện không tồn tại đối với ví phần cứng.
Percoco cũng so sánh lĩnh vực này với bảo mật thanh toán, lưu ý rằng các thiết bị nhập mã PIN không thể được xuất xưởng nếu không có thử nghiệm độc lập của phòng thí nghiệm, trong khi các mô-đun mật mã của chính phủ Hoa Kỳ yêu cầu xác thực nguồn entropy trước khi được phê duyệt.
Khi hoạt động tấn công tiếp tục trong suốt cuối tuần, Coinkite cho biết họ đã ngừng tất cả các lô hàng sau khi xác nhận lỗ hổng và phá hủy mọi thiết bị còn lại trong cơ sở của họ có chứa firmware bị ảnh hưởng.
Tuy nhiên, công ty đã khuyên khách hàng không nên vứt bỏ các thiết bị bị ảnh hưởng vì chúng có thể trở nên quan trọng nếu số tiền bị đánh cắp cuối cùng được thu hồi thông qua các thủ tục pháp lý. Coinkite nói thêm rằng đội ngũ pháp lý của họ sẽ phối hợp với các cơ quan thực thi pháp luật ở nhiều khu vực tài phán khi thích hợp.
Các bản cập nhật firmware đã được phát hành cho mọi mẫu bị ảnh hưởng, bao gồm phiên bản 4.2.0 cho Mk2 và Mk3, phiên bản 5.6.0 cho Mk4 và Mk5, phiên bản 1.5.0Q cho Coldcard Q, và các phiên bản 6.6.0X và 6.6.0QX cho các bản phát hành Edge. Theo công ty, việc cài đặt firmware đã cập nhật chỉ sửa lỗi cho việc tạo ví trong tương lai và không củng cố các cụm từ seed đã được tạo trước bản vá.
Vì lý do đó, người dùng nằm trong diện khuyến nghị được hướng dẫn tạo hoàn toàn cụm từ seed mới sau khi cập nhật thiết bị của họ, xác minh địa chỉ nhận, gửi một giao dịch thử nghiệm nhỏ và chỉ di chuyển số dư còn lại sau khi xác nhận giao dịch thành công.
Coinkite cho biết các ví được tạo bằng ít nhất 50 lần tung xúc xắc công bằng, riêng tư không bị coi là lộ diện bởi riêng lỗi tạo số ngẫu nhiên. Công ty nói thêm rằng một cụm mật khẩu BIP-39 mạnh và độc đáo cung cấp một lớp bảo vệ khác nhưng không loại bỏ điểm yếu khỏi một seed đã bị ảnh hưởng, nghĩa là việc di chuyển vẫn là hành động được khuyến nghị.
Phân tích blockchain riêng biệt từ Galaxy Research chỉ ra rằng các cuộc tấn công đã tiếp tục kể từ khi lỗ hổng được công khai.
Alex Thorn, trưởng bộ phận nghiên cứu tại Galaxy, đã xác định một làn sóng tấn công phối hợp thứ tư bị nghi ngờ vào ngày 3 tháng 8, nâng tổng số quan sát của công ty lên khoảng 1.815,75 BTC trên 5.294 địa chỉ nạn nhân tiềm năng nếu không có nhóm địa chỉ nào trùng lặp. Thorn mô tả các ví là “nạn nhân Coldcard có khả năng” và nhấn mạnh rằng các con số này đến từ phân tích blockchain chứ không phải từ hồ sơ thiết bị được xác nhận hoặc phát hiện của cơ quan thực thi pháp luật.
Galaxy cũng báo cáo rằng hoạt động tấn công đạt 13,8 lượt rút ví mỗi khối trong đợt mới nhất, so với mức cơ sở là 0,3 lượt rút mỗi khối trước sự cố. Công ty quan sát thấy rằng hầu hết số dư của nạn nhân đã được gửi đến các địa chỉ mới tạo thay vì một ví thu gom duy nhất, trong khi một số tiền đã di chuyển qua các giao dịch "second-hop", khiến Bitcoin bị đánh cắp khó theo dõi hơn.
Theo Galaxy, người dùng có số tiền bị đánh cắp vẫn còn trong các giao dịch Bitcoin chưa được xác nhận vẫn có thể có một cơ hội hẹp để phát đi một giao dịch thay thế với phí cao hơn trước khi các thợ đào xác nhận giao dịch ban đầu.
Trích dẫn tài liệu của Bitcoin Core, công ty nghiên cứu lưu ý rằng Replace-by-Fee chỉ có thể được thử khi giao dịch vẫn chưa được xác nhận và không đảm bảo khôi phục ngay cả khi chủ sở hữu hợp pháp vẫn kiểm soát các khóa bị ảnh hưởng.





