Một lỗi mã hóa tại một công ty chứng chỉ ở Ấn Độ đã lọt vào ethereum, nơi nó có thể cho phép kẻ tấn công lặng lẽ chuyển phần thưởng khối của một số validator về cho chính mình.
Teku, phần mềm mà nhiều người xác thực sử dụng để chạy side proof-of-stake của Ethereum, đã phát hành phiên bản 26.10.3 vào thứ Ba. Besu, phần mềm xử lý các giao dịch Ethereum, đã phát hành phiên bản 26.10.2 vào thứ Hai. Cả hai bản cập nhật đều ngừng tin tưởng các chứng chỉ liên quan đến eMudhra, một cơ quan cấp chứng chỉ của Ấn Độ, trong các hình ảnh Docker — các phiên bản đã được đóng gói sẵn mà nhiều người vận hành sử dụng.
Các validator là những máy tính stake ETH để bảo mật ethereum và kiếm phí khi đề xuất khối. Một số trong số chúng kết nối với các dịch vụ khác qua internet và phụ thuộc vào các chứng chỉ số để đảm bảo chúng đang giao tiếp với đúng đối tượng.
Vào ngày 17 tháng 10, các nhà nghiên cứu phát hiện rằng các khóa riêng phía sau tám cơ quan cấp chứng chỉ trung gian của eMudhra đã được tạo ra với độ ngẫu nhiên quá thấp.
Điều đó có nghĩa là các khóa có thể được suy ra từ chính các chứng chỉ, vốn là công khai. Bất kỳ ai sở hữu các khóa đó đều có thể phát hành chứng chỉ mà phần mềm chưa vá sẽ chấp nhận là thật. Các trình duyệt đã chặn các chứng chỉ này, eMudhra đã thu hồi chúng một ngày sau đó, và công ty sau đó đã tuyên bố sẽ thoát khỏi kinh doanh chứng chỉ.
Đọc thêm: Một công ty xác minh trang web đã có các khóa bí mật quá yếu, đến mức 8 khóa đã bị bẻ khóa
Java, ngôn ngữ lập trình mà Teku và Besu chạy trên đó, không kiểm tra xem chứng chỉ đã bị thu hồi hay chưa theo mặc định. Vì vậy, các hình ảnh Docker của Teku vẫn tiếp tục tin tưởng các chứng chỉ xấu ngay cả sau khi trình duyệt đã loại bỏ chúng.
Một kẻ tấn công đứng giữa một validator và dịch vụ mà nó kết nối có thể giả danh dịch vụ đó. Trong thông báo bảo mật của mình, Teku cho biết một validator bị lừa theo cách này có thể đề xuất một khối chuyển phí cho địa chỉ của kẻ tấn công.
Một trình ký bên ngoài giả mạo, dịch vụ riêng biệt lưu trữ khóa của validator, có thể chuyển các chữ ký được sử dụng để thay đổi nơi phần thưởng được chuyển đến, điều mà Teku xếp vào thiết lập rủi ro nhất.
“Một nút mạng Teku mặc định trên mạng chính không bị ảnh hưởng và không cần hành động nào,” nhóm viết, đồng thời bổ sung rằng “chưa có báo cáo nào về việc khai thác lỗ hổng.” Consensys Diligence, đối tác bảo mật của Teku, ban đầu đã phát hiện vấn đề này.
Các người vận hành chạy Teku hoặc Besu trực tiếp trên máy của họ, không sử dụng Docker, phải tự cập nhật Java, vì việc cập nhật phần mềm ethereum không ảnh hưởng đến danh sách chứng chỉ đáng tin cậy của Java. Các hình ảnh Docker mới cũng không sửa chữa Java được cài đặt trên máy chủ.
Tuy nhiên, những người vẫn dùng Java 26 sẽ gặp khó khăn hơn trong việc khắc phục. Teku cho biết phiên bản này đã hết thời hạn hỗ trợ và sẽ không có bản cập nhật vá lỗi, do đó những người vận hành cần chuyển sang Java 25.




