Ledger vá lỗ hổng ứng dụng Ethereum cho phép ký giao dịch với dữ liệu bị tráo
Tóm tắt thị trường bằng AI
Ledger đã vá một lỗ hổng trong ứng dụng Ethereum của mình (đã được khắc phục trong v1.22.2) có thể cho phép một ứng dụng web độc hại khai thác một điều kiện tranh chấp (race condition) để hoán đổi dữ liệu giao dịch sau khi được rà soát, có khả năng biến các hành động vô hại thành các phê duyệt gây hại. Dù không có khóa riêng tư hay firmware nào bị xâm phạm và không ghi nhận các khoản thiệt hại được xác nhận, sự cố này làm nổi bật rủi ro vận hành đối với người dùng Ethereum/ERC-20 khi tương tác với dApps qua WebHID và có thể làm suy giảm khẩu vị rủi ro trong ngắn hạn đối với hoạt động liên kết với ETH.
Mức ảnh hưởng
● Trung bình
Tài sản bị ảnh hưởng
ETH/USDT-1.32%
Quan điểm AI · ETH/USDTQuan điểm AI
▼ Giá giảm
Khám phá ngay
⚠️ Nhận định từ AI được tổng hợp từ tin tức và chỉ có giá trị tham khảo. Đây không phải là lời khuyên đầu tư và không thể hiện quan điểm của BingX. Đầu tư luôn đi kèm rủi ro. Vui lòng giao dịch có trách nhiệm.
Người dùng ví cứng Ledger đang quản lý Ether hoặc token ERC20 nên mở Ledger Live và kiểm tra phiên bản ứng dụng Ethereum trên thiết bị. Nếu thấp hơn 1.22.2, bạn đang thiếu một bản vá bảo mật quan trọng. Bản vá này xử lý lỗi làm suy yếu lời hứa cốt lõi của ví cứng: màn hình thiết bị phải hiển thị đúng nội dung mà bạn sắp ký.
Vụ việc được đưa ra ánh sáng ngày 24/08/2026 khi công ty an ninh TestMachine công bố phân tích. Trước thời điểm đó, bản sửa đã tồn tại, dẫn tới tranh cãi về việc ai phát hiện lỗi trước và Ledger đã phát hành bản vá khi nào. Với người dùng, điểm mấu chốt không nằm ở tranh chấp này, mà ở việc thiết bị của bạn đang chạy phiên bản nào và trước đây bạn đã cấp những quyền phê duyệt nào.
Lỗ hổng nằm ở đâu và đã xảy ra điều gì
Ledger cho biết firmware thiết bị và việc lưu giữ khóa riêng tư không bị ảnh hưởng. Vấn đề nằm trong ứng dụng Ethereum (coin app) cài thêm trên thiết bị để dùng với ETH và ERC20. Ứng dụng này chuẩn bị dữ liệu giao dịch, hiển thị để người dùng kiểm tra và nhận xác nhận.
Ở các bản có lỗi, trình tự đó có thể bị phá vỡ. Một ứng dụng web độc hại, khi đã có quyền truy cập tới thiết bị Ledger đang kết nối, có thể gửi lệnh ký thứ hai trong lúc giao dịch thứ nhất vẫn đang hiển thị và chờ người dùng duyệt. Khi đó, ứng dụng Ethereum có thể bị thay dữ liệu trong bộ nhớ mà không mở lại màn hình duyệt mới. Kết quả là bạn vẫn nhìn thấy một giao dịch chuyển khoản “vô hại” trên màn hình, nhưng thao tác xác nhận lại áp dụng cho dữ liệu đã bị tráo.
Theo nhóm nghiên cứu, kịch bản này đã được tái hiện trên Ledger Flex. Do nhiều thiết bị dùng chung mã nguồn ứng dụng Ethereum, các dòng Nano X, Nano S Plus, Stax và Apex cũng bị xem là có nguy cơ. Ledger không công bố phiên bản đầu tiên chứa lỗi; phía nghiên cứu đối chiếu từ 1.22.1 (bản gắn thẻ ngày 27/05/2026).
"Clear signing": vì sao màn hình thiết bị là cam kết an toàn quan trọng nhất
“Clear signing” nghĩa là hiển thị dữ liệu giao dịch đầy đủ, ở dạng dễ đọc, ngay trên màn hình ví cứng trước khi bạn xác nhận: địa chỉ nhận, số lượng, và với lệnh gọi hợp đồng (contract call) thì là hành động mà hợp đồng sẽ thực hiện.
Lý do ví cứng có giá trị là vì máy tính có thể bị nhiễm mã độc, trình duyệt có thể bị đánh lừa, website có thể là giả mạo. Khi thiết bị có màn hình riêng, độc lập với máy tính, bạn có thể phát hiện thao túng trước khi bấm xác nhận. Khóa riêng tư không rời khỏi thiết bị; thiết bị tự ký.
Lỗi lần này đánh trúng mắt xích đó: khóa vẫn an toàn, firmware không bị đụng tới, nhưng bạn có thể vô tình ký một nội dung khác với thứ mình vừa đọc. Nếu màn hình không còn là “ràng buộc” cho nội dung ký, ở khía cạnh này ví cứng không hơn ví phần mềm chạy trên máy nhiễm độc.
Cốt lõi kỹ thuật: race condition và lệnh APDU
Race condition là lỗi trong đó kết quả phụ thuộc vào việc hai lệnh gần như đồng thời được xử lý theo thứ tự nào. Kiểu lỗi này khó chịu vì phần lớn thời gian mọi thứ vẫn chạy đúng, chỉ lộ ra khi kẻ tấn công cố ý sắp đặt thời điểm.
APDU là định dạng lệnh dùng để thẻ thông minh và ví cứng trao đổi với máy tính. Một quy trình ký gồm nhiều lệnh như vậy. Ứng dụng Ethereum duy trì một trạng thái (state) để biết giao dịch nào đang ở bước duyệt. Trạng thái này có thể bị ghi đè khi quá trình duyệt vẫn chưa kết thúc, dẫn tới tình huống “hai lệnh cùng lúc, trạng thái không rõ ràng”.
Vì sao website có thể nói chuyện trực tiếp với thiết bị: WebHID
WebHID là giao diện trên trình duyệt cho phép website giao tiếp trực tiếp với thiết bị USB sau khi người dùng cấp quyền rõ ràng. Nhờ đó ví cứng có thể dùng thuận tiện trong các ứng dụng phi tập trung (dApp), nhưng đồng thời website cũng "gần" thiết bị hơn nhiều người tưởng.
Kịch bản tấn công yêu cầu bạn đã cấp quyền WebHID cho một trang bị thao túng/chiếm quyền và bạn chủ động khởi tạo giao dịch tại đó. Nó không thể tấn công từ xa một thiết bị đang để trong ngăn kéo. Dù vậy, nhóm người dùng hay giao dịch trên DEX, bridge hoặc staking thường xuyên cấp quyền kiểu này.
Vì sao nguy hiểm nhất thường là "approve" chứ không phải chuyển token
Thiệt hại trong các vụ tráo dữ liệu ký thường không đến từ lệnh chuyển khoản, mà từ thứ có thể được thay vào. Token approval (phê duyệt) là việc bạn cho phép một hợp đồng thông minh được quyền chi tiêu một lượng token của bạn về sau mà không cần bạn xác nhận từng lần trừ.
Nhiều ứng dụng xin quyền theo kiểu “không giới hạn” để tiện dùng. Approval đã cấp không tự hết hạn và chỉ dừng khi bạn chủ động thu hồi (revoke).
Khác biệt thực tế:
- Transfer: bạn mất đúng số lượng đã xác nhận.
- Unlimited approval: trong kịch bản xấu nhất, bạn có thể mất toàn bộ số dư token liên quan, vào thời điểm bên nhận chọn.
Cập nhật ứng dụng Ethereum lên 1.22.2 trong Ledger Live
Phiên bản 1.22.2 chặn đường tấn công bằng hai cơ chế: ứng dụng từ chối mở phiên ký mới khi đang có phiên duyệt, và từ chối xác nhận gửi tới nếu trạng thái không còn khớp với nội dung đã hiển thị.
Ghi chú phát hành của ứng dụng Ethereum tại Ledger chỉ nêu “đã sửa vấn đề bảo mật” mà không mô tả chi tiết lỗ hổng.
Cách cập nhật: kết nối thiết bị, mở Ledger Live, vào mục quản lý ứng dụng trên thiết bị (Manager) và cập nhật Ethereum app. Số dư không bị ảnh hưởng vì khóa được suy ra từ recovery phrase, không nằm trong ứng dụng. Gỡ rồi cài lại ứng dụng cũng không làm mất coin.
Cách kiểm tra phiên bản đang dùng
Trong Ledger Live, phần quản lý thiết bị sẽ hiển thị phiên bản cho từng ứng dụng. Nếu Ethereum app là 1.22.2 trở lên, bản vá đã có. Nếu là 1.22.1 hoặc thấp hơn, bạn cần cập nhật. Chỉ nhìn phiên bản Ledger Live là không đủ.
Vì sao cập nhật firmware không đồng nghĩa cập nhật ứng dụng Ethereum
Firmware, Ledger Live và các coin app được duy trì độc lập và cập nhật độc lập. Nhiều người cập nhật firmware xong tưởng đã an toàn, nhưng Ethereum app vẫn cũ. Trong các sự cố ví cứng, vị trí lỗi khác nhau dẫn tới cách xử lý khác nhau: có vụ nằm ở seed nên phải tạo seed mới; có vụ nằm ở firmware; trường hợp này nằm ở ứng dụng có thể thay thế nên chỉ cần cập nhật app. Bạn không cần tạo lại recovery phrase.
Bước thứ hai sau cập nhật: rà soát và thu hồi các token approval cũ
Bản cập nhật chỉ bảo vệ các chữ ký trong tương lai. Nó không xóa các quyền đã cấp trước đây. Nếu bạn đã dùng dApp trong vài tháng gần đây, nên kiểm tra các approval còn mở trên địa chỉ của mình.
Các block explorer và công cụ chuyên dụng có thể liệt kê hợp đồng nào đang được phép chi tiêu token nào. Những quyền không còn dùng nên được thu hồi từng cái. Thu hồi là một giao dịch bình thường và tốn phí mạng, vì vậy nên thực hiện khi phí thấp.
Một hệ quả ít người để ý: mỗi lần revoke đều xuất hiện trong lịch sử giao dịch và tạo phí. Người dùng ghi chép luồng tài sản cẩn thận sẽ nhẹ việc hơn khi quyết toán thuế; nhiều công cụ thuế/portfolio có thể tự đọc các sự kiện này.
Tranh cãi công bố giữa Ledger và TestMachine
Hai bên đưa ra hai tường thuật không trùng khớp, và hiện chưa có xác nhận độc lập.
CTO Ledger, ông Charles Guillemet, nói nhóm bảo mật nội bộ Ledger Donjon tự phát hiện lỗi và đã phát hành bản sửa khoảng hai tuần trước khi TestMachine công bố. Ông cho rằng TestMachine chỉ gửi báo cáo qua chương trình bug bounty sau đó và mô tả truyền thông của họ là gây sợ hãi để thu hút chú ý.
TestMachine đáp lại rằng hệ thống kiểm thử tự động Azimuth của họ phát hiện điểm yếu trong một lần chạy trên Ledger Flex và đã chia sẻ kết quả với Ledger. Theo quan điểm của họ, tại thời điểm công bố, chưa có bản sửa khả dụng.
Các mốc có thể đối chiếu nằm ở giữa: changelog của 1.22.2 ghi ngày 12/08/2026, thẻ ký (signed tag) trong kho mã nguồn ngày 13/08. Dù vậy, bản phát hành chỉ xuất hiện công khai khoảng 24/08, trùng thời điểm bài phân tích của TestMachine. Trong khoảng thời gian trước đó, người dùng muốn kiểm tra bản vá cũng không dễ tìm thấy. CryptoSlate đã tổng hợp diễn biến kỹ thuật kèm các mốc thời gian này.
Có thất thoát tiền không?
Theo thông tin hiện tại từ cả hai phía, chưa có trường hợp được xác nhận là lỗ hổng đã bị khai thác. Không có tổn thất được ghi nhận, và con đường này cũng không thể trích xuất khóa riêng tư.
Dù vậy cần lưu ý: nếu một chữ ký bị lấy theo cách này, trên chuỗi nó trông như một chữ ký tự nguyện. Người dùng có thể chỉ nhận ra khi token bị rút đi sau đó và nhầm là phishing thông thường. Vì thế, việc chưa có ca xác nhận không đồng nghĩa chắc chắn chưa từng xảy ra.
Lỗ hổng này nói gì về ví cứng và tự lưu ký
Không nên từ vụ việc này suy ra rằng ví cứng là vô dụng. Kịch bản tấn công cần quyền truy cập thiết bị đã được cấp, cần ứng dụng độc hại, không đụng tới khóa và hiện đã được vá.
Kết luận thực tế hơn: ví cứng chuyển niềm tin từ máy tính sang một thiết bị có màn hình riêng, nhưng hệ thống đó gồm firmware, các ứng dụng coin và phần mềm đi kèm, đều được cập nhật tách rời. An toàn không phải thứ bạn "mua một lần là xong"; đó là việc bảo trì liên tục: cập nhật ứng dụng, dọn quyền phê duyệt định kỳ, và với tài sản lớn nên bổ sung thêm lớp xác nhận.
Những việc cần làm ngay
1) Kiểm tra phiên bản và cập nhật: trong Ledger Live, kiểm tra Ethereum app. Bất kỳ phiên bản nào dưới 1.22.2 đều cần cập nhật; chỉ cập nhật firmware là chưa đủ.
2) Dọn các token approval còn mở: kiểm tra hợp đồng nào có quyền chi tiêu token của bạn và thu hồi những quyền không còn cần.
3) Ghi nhận giao dịch: revoke và điều chuyển tạo phí và xuất hiện trong lịch sử. Nên ghi lại khi thực hiện thay vì đợi tới mùa kê khai sau.
(Tính đến 25/08/2026. Bài viết không phải khuyến nghị đầu tư. Giá và cấu trúc phí có thể thay đổi; hãy kiểm tra điều khoản với nhà cung cấp trước khi mua.)