Một lỗi trong phần mềm máy khách thực thi Reth của Ethereum có thể khiến một số giao dịch đặc biệt tạo ra kết quả tính toán trạng thái blockchain không chính xác. Reth, Optimism, Base và Tempo đã phối hợp phát hành bản vá vào khoảng ngày 5/11. Georgios Konstantopoulos, Giám đốc công nghệ của Paradigm, cho biết hệ thống rút tiền trên các mạng liên quan không bị ảnh hưởng; Base cũng xác nhận người dùng không gặp tác động, song các đơn vị vận hành hạ tầng vẫn cần cài đặt bản cập nhật.
Lỗi nằm trong cách Reth tính state root
Lỗi xuất hiện trong mã tính state root của các phiên bản Reth cũ, tại một trường hợp đặc biệt liên quan đến cấu hình lưu trữ của hợp đồng thông minh. State root là dấu vân tay mật mã của trạng thái blockchain hiện tại, bao gồm số dư tài khoản và dữ liệu hợp đồng thông minh. Nếu phép tính sai, các nút có thể không thống nhất được một khối có hợp lệ hay không, từ đó ảnh hưởng đến việc xử lý giao dịch hoặc đồng bộ mạng.
Konstantopoulos cho biết kẻ tấn công cần tạo một giao dịch cụ thể để kích hoạt lỗi. Những môi trường phần cứng hiệu năng thấp sử dụng phần mềm dựng khối của Reth, cùng các mạng xây dựng trên OP Stack của Optimism, có thể đi qua luồng tính toán bị ảnh hưởng. Vì vậy, vấn đề không chỉ liên quan đến hạ tầng mạng chính Ethereum.
Reth, Optimism, Base và Tempo phát hành bản vá
Nhóm phát triển Tempo phát hiện lỗi bằng fuzz testing, phương pháp tự động đưa dữ liệu bất thường hoặc ít gặp vào phần mềm để tìm những lỗi có thể bị bỏ sót trong các bài kiểm thử thông thường. Paradigm phát hành Reth 2.10.0, Optimism ra mắt OP Reth v2.8.1 và Base phát hành phiên bản 1.5.3. Konstantopoulos cho biết Tempo cũng đã khắc phục lỗi.
Reth xếp bản cập nhật vào nhóm ưu tiên cao đối với các đơn vị vận hành nút. Những bên dựng khối cũng được khuyến nghị nâng cấp. Do nhiều mạng phụ thuộc vào cùng một phần mềm thực thi hoặc các thành phần liên quan, lỗi trong mã nền tảng có thể tác động đến nhiều blockchain cùng lúc. Việc các dự án phối hợp sửa lỗi cho thấy xử lý rủi ro từ phần mềm dùng chung đòi hỏi sự phối hợp giữa nhiều mạng.
Base xác minh state root, LayerZero tạm hạn chế một số tuyến
Base cho biết hệ thống chứng minh của mạng sử dụng một cách triển khai độc lập để xác minh state root. Nhóm đã tính toán lại và đối chiếu state root hiện tại, xác nhận kết quả chính xác và người dùng không bị ảnh hưởng. Base cũng nói hệ thống rút tiền liên quan không bị tác động bởi lỗi tính toán này. Các cầu nối trong hệ sinh thái thường dựa vào root biên nhận giao dịch hoặc cơ chế phê duyệt đa chữ ký, thay vì phép tính state root bị ảnh hưởng.
Bản Base 1.5.3 còn xử lý một vấn đề vận hành khác: ngăn trình xác thực dừng hoạt động khi gặp state root không hợp lệ. Base khuyến nghị các đơn vị vận hành nút cài đặt bản cập nhật, nhưng cho biết không cần đồng bộ lại nút hay thực hiện biện pháp khôi phục bổ sung.
Ngày 5/11, Frax Finance cho biết giao thức nhắn tin xuyên chuỗi LayerZero đã tạm dừng một số tuyến chuyển tài sản trong lúc đánh giá tình hình. Frax nói tài sản và hoạt động của các hợp đồng thông minh vẫn bình thường, tiền của người dùng an toàn. Thông tin hiện có không cho thấy các hợp đồng cầu nối LayerZero bị ảnh hưởng bởi lỗi Reth; việc hạn chế tuyến chuyển là biện pháp phòng ngừa trong quá trình đánh giá rủi ro từ hạ tầng dùng chung.
Chưa có báo cáo được xác nhận về việc tiền bị đánh cắp do lỗi state root này. Các bản sửa lỗi đã được phát hành, nhưng từng đơn vị vận hành độc lập vẫn cần xác nhận đã nâng cấp hay chưa. Những dịch vụ đang tạm hạn chế cũng cần đánh giá thời điểm khôi phục hoạt động bình thường.