TechFlow tin tức, đồng sáng lập Cosmos Ethan Buchman đã đưa ra quan điểm về vụ tấn công cầu nối chéo BSC, cho biết điểm mấu chốt của sự cố này nằm ở việc tin tặc có thể giả mạo bằng chứng Merkle. Điều này đáng lẽ không nên xảy ra vì bằng chứng Merkle phải đảm bảo tính toàn vẹn cao. Các client nhẹ của blockchain (và IBC) được xây dựng dựa trên bằng chứng Merkle, và nhiều blockchain lưu trữ dữ liệu trong cây Merkle để có thể tạo ra các bằng chứng chứng minh rằng một số dữ liệu nhất định được chứa trong cây.
Các chuỗi Cosmos sử dụng một loại cây Merkle gọi là IAVL, kho mã nguồn IAVL cung cấp một API dùng "Bằng chứng phạm vi" (RangeProof), nhưng thực tế cho thấy cơ chế nội bộ của RangeProof có lỗi nghiêm trọng. Vấn đề trong mã IAVL RangeProof nằm ở chỗ nó cho phép điền dữ liệu vào các trường Left và Right bên trong InnerNode. Tin tặc đã tận dụng lỗ hổng này bằng cách dán thông tin vào trường Right — những thông tin này chưa từng được xác minh và cũng không ảnh hưởng đến quá trình tính toán hash — nhằm đánh lừa hệ thống xác minh rằng một số nút lá nhất định là một phần của cây. Do đó, chúng đã thành công trong việc giả mạo bằng chứng Merkle.
Buchman cho biết, mặc dù việc sử dụng RangeProof vốn không phải là một ý tưởng tốt, nhưng vẫn có cách có thể giải quyết vấn đề này, đó là từ chối trước bất kỳ bằng chứng nào nếu một nút nội bộ đồng thời điền đầy đủ cả hai trường trái và phải. Trong IBC, các bằng chứng Merkle không sử dụng hệ thống RangeProof tích hợp sẵn của cây IAVL, mà thay vào đó dùng tiêu chuẩn ICS23 để tạo và xác minh bằng chứng Merkle từ cây IAVL. Mã ICS23 không bị lỗi này, vì nó rõ ràng "từ chối" các bằng chứng RangeProof.Xem thêm




