Vào tháng 5 năm 2026, các nhà phát triển Redis đã khắc phục một lỗ hổng nghiêm trọng cho phép thực thi mã từ xa sau khi xác thực, được đặt tên là DarkReplica (CVE-2026-23631). Lỗ hổng này cho phép kẻ tấn công giành quyền kiểm soát hoàn toàn máy chủ Redis.
Chi tiết về Lỗ hổng DarkReplica (CVE-2026-23631)
Redis cung cấp các engine Lua mạnh mẽ phía máy chủ, cho phép quản trị viên chạy logic tùy chỉnh trực tiếp trong cơ sở dữ liệu. Có hai loại engine: engine script cũ và engine hàm mới hơn, lưu trữ các thư viện và đồng bộ hóa chúng giữa các node.
Cơ chế Khai thác
DarkReplica nhắm mục tiêu vào engine hàm trong quá trình replication. Kẻ tấn công có thể xác thực vào một phiên bản Redis và sử dụng lệnh SLAVEOF để chỉ thị cho máy chủ đó trở thành một replica của một master do kẻ tấn công kiểm soát.
Khi replica đồng bộ hóa, máy chủ có thể tải một ngữ cảnh hàm mới từ tệp RDB (Redis dump) nhận được. Vấn đề này được phát hiện trong một nghiên cứu của ZeroDay.Cloud năm 2025.
Nguyên nhân gốc rễ
Redis xử lý các hàm Lua chạy dài bằng cách định kỳ nhường quyền để xử lý sự kiện, đây là cách hoạt động của FUNCTION KILL. Tuy nhiên, việc xử lý các sự kiện replication trong khi một hàm chậm bị tạm dừng đã tạo ra một lỗ hổng. Bộ xử lý replication giải phóng engine Lua đang chạy và thay thế nó bằng một ngữ cảnh mới mà không ngăn hàm bị tạm dừng tiếp tục thực thi.
Hàm bị tạm dừng sau đó tiếp tục thực thi với lua_State và các đối tượng liên quan đã bị giải phóng, dẫn đến tình trạng use-after-free.
Kỹ thuật Khai thác nâng cao
Việc khai thác điều kiện use-after-free này rất phức tạp nhưng khả thi. Các nhà nghiên cứu đã xây dựng các nguyên tắc cơ bản để rò rỉ địa chỉ heap, buộc cấp phát heap có thể xác định và tạo các đối tượng Lua giả.
Bằng cách chạy mã dễ bị tổn thương bên trong các coroutine và xịt (spray) cẩn thận vào vùng nhớ Lua, họ đã giành lại quyền kiểm soát Lua VM và tạo ra các nguyên tắc đọc/ghi. Từ đó, họ chuyển hướng các con trỏ hàm nội bộ để gọi các hàm libc. Cuối cùng, họ đã thực thi thành công các lệnh hệ thống, đạt được remote code execution trên máy chủ.
Ảnh hưởng Hệ thống và Các Phiên bản bị Tác động
Lỗ hổng này ảnh hưởng đến nhiều chuỗi bản phát hành Redis được duy trì. Nó đã được vá vào ngày 5 tháng 5 năm 2026 trên các phiên bản:
- 7.2.x
- 7.4.x
- 8.2.x
- 8.4.x
- 8.6.x
Các nhà khai thác cần nâng cấp ngay lập tức lên các bản phát hành đã sửa lỗi và kiểm tra các phiên bản Redis đang bị lộ.
Đánh giá Rủi ro và Khuyến nghị Bảo mật
Vì việc khai thác yêu cầu xác thực và các kỹ thuật thao tác bộ nhớ nâng cao, rủi ro cao nhất thuộc về các máy chủ cấu hình sai cho phép sử dụng thông tin xác thực yếu hoặc không có, hoặc các môi trường nơi kẻ tấn công có thể lấy được thông tin xác thực hợp lệ.
Sự cố nhấn mạnh rằng các tính năng scripting và replication phức tạp trong cùng một tiến trình làm tăng bề mặt tấn công, làm nổi bật tầm quan trọng của việc đồng bộ hóa và quản lý vòng đời cẩn thận.
Người dùng nên cập nhật Redis, thực thi xác thực mạnh mẽ và các biện pháp kiểm soát mạng, đồng thời theo dõi các thay đổi không mong muốn đối với cấu hình hoặc chức năng của agent.
Các nhà nghiên cứu đã công bố báo cáo kỹ thuật đầy đủ và mã khai thác. Các nhà cung cấp và công cụ bảo mật đám mây hiện cung cấp các khuyến cáo để phát hiện các cài đặt bị ảnh hưởng.
Để có thêm thông tin chi tiết về lỗ hổng CVE và các phân tích bảo mật mới nhất, hãy tham khảo các nguồn tin cậy như NVD (National Vulnerability Database) hoặc các blog của hãng bảo mật uy tín.










