Lỗi xác minh khoản ký gửi trên cầu nối liên chuỗi (cross-chain bridge) của Coreum đã khiến 199.916 Ripple (XRP), tương đương 99,7% dự trữ, bị rút khỏi hệ thống. Kẻ tấn công không cần gửi XRP thật vào cầu nối mà vẫn khiến hệ thống ghi nhận đây là một khoản ký gửi hợp lệ, từ đó rút được dự trữ.
Theo Protos đưa tin ngày 9 tháng 8 (giờ địa phương), vụ tấn công xảy ra đúng ngày này với thiệt hại vượt 200.000 USD. Toàn bộ số tiền được rút qua 94 giao dịch, mỗi giao dịch đều có đủ chữ ký từ nhiều relayer (bên vận hành trung gian) của cầu nối.
Nguyên nhân sự cố không phải do lộ khóa riêng tư (private key) mà đến từ lỗi xác minh trong phần mềm relayer. Relayer là bên giám sát giao dịch giữa các blockchain khác nhau và cung cấp bằng chứng cần thiết để xác nhận tài sản đã được chuyển.
Kẻ tấn công đã lợi dụng trường "memo" trong giao dịch trên XRP Ledger. Phần mềm relayer chỉ giám sát các khoản thanh toán trên tài khoản cầu nối có kèm memo ghi địa chỉ nhận trên Coreum.
Vấn đề nằm ở chỗ phần mềm này không kiểm tra đích đến thực sự của khoản thanh toán. Giao dịch có memo trông hợp lệ, nhưng XRP thực tế lại được chuyển đến ví của kẻ tấn công chứ không phải tài khoản cầu nối.
Các relayer nhận diện giao dịch này là khoản ký gửi hợp lệ và ký duyệt lệnh rút tiền. Dù có nhiều bên vận hành tham gia, tất cả đều dùng chung một đoạn mã chứa lỗi, khiến cơ chế xác minh độc lập giữa các bên mất tác dụng.
TX là thương hiệu hợp nhất cộng đồng Coreum và Sologenic. Xác nhận sự cố, TX cho biết phần mềm đã "ghi nhận sai một giao dịch chưa từng chuyển XRP thực sự vào cầu nối là một khoản ký gửi, và từ đó phát hành XRP cầu nối tương ứng trên chuỗi TX".
Quá trình này khiến chuỗi TX phát sinh lượng XRP cầu nối không có XRP thật đứng sau. Kẻ tấn công đã lợi dụng số XRP "ảo" này để rút XRP thật đang nằm trong tài khoản thanh khoản của cầu nối.
TX cho biết cầu nối này đã trải qua nhiều vòng kiểm toán nội bộ và kiểm toán độc lập từ bên thứ ba trước khi triển khai. Tuy nhiên, lỗi xác minh không kiểm tra đích đến thực tế của khoản thanh toán vẫn tồn tại sau các đợt kiểm toán đó.
Sau sự cố, tài khoản thanh khoản của cầu nối chỉ còn lại 493 XRP. Với 99,7% dự trữ ban đầu đã bị rút cạn, lượng XRP cầu nối trên chuỗi TX cũng rơi vào tình trạng không được đảm bảo đầy đủ.
Cầu nối liên chuỗi hoạt động theo cơ chế thế chấp tài sản trên một blockchain để phát hành tài sản tương ứng trên blockchain khác. Nếu việc xác nhận khoản nạp tài sản gốc bị sai, tài sản tương ứng có thể được phát hành mà không có gì đảm bảo, dẫn đến việc dự trữ thực bị rút.
Cơ chế đa chữ ký (multisig) yêu cầu nhiều bên cùng ký mới có thể di chuyển tài sản. Tuy nhiên, nếu tất cả các bên ký đều dùng chung một phần mềm xác minh, một lỗi logic duy nhất có thể lặp lại trên toàn bộ chữ ký.
Sự cố lần này cho thấy rõ hơn cách thức tấn công trong vụ rò rỉ cầu nối Coreum mà TokenPost từng đưa tin trước đó. Khi đó, giới phân tích cũng xác định lỗ hổng nằm ở khâu xác minh khoản nạp tiền của phần mềm relayer, chứ không phải ở bản thân XRP Ledger.
TX xác nhận lượng XRP cầu nối trên chuỗi TX hiện chưa được đảm bảo đầy đủ. Vụ việc đã được trình báo lên Cục Điều tra Liên bang Mỹ (FBI).
Bình luận 0