-
09/04/2020
-
115
-
1.155 bài viết
Redis dính lỗ hổng "10 điểm", tin tặc có thể chiếm quyền máy chủ từ xa
Một lỗ hổng được các chuyên gia an ninh mạng "gắn nhãn nghiêm trọng bậc nhất” vừa được phát hiện trong Redis - nền tảng lưu trữ dữ liệu trong bộ nhớ (in-memory database) phổ biến toàn cầu, được hàng triệu hệ thống sử dụng để tăng tốc hiệu năng ứng dụng.
Lỗ hổng được định danh là CVE-2025-49844 có điểm CVSS 10 (điểm tối đa). Vấn đề này cho phép tin tặc thực thi mã độc từ xa (RCE) trên máy chủ Redis chỉ với quyền đăng nhập hợp lệ, mà không cần thêm bất kỳ tương tác nào từ người dùng.
Redis hỗ trợ ngôn ngữ Lua để người dùng viết các đoạn script tự động xử lý dữ liệu (ví dụ như gộp, lọc hoặc tính toán). Tuy nhiên, chính tính năng tiện lợi này lại trở thành “con dao hai lưỡi”.
Các nhà nghiên cứu cho biết lỗi xuất phát từ quá trình thu hồi bộ nhớ (garbage collection) trong Lua. Redis đã không xử lý đúng cách các vùng nhớ đã được giải phóng, dẫn đến hiện tượng use-after-free, khi chương trình vẫn cố truy cập vào vùng nhớ đã bị thu hồi.
Bằng cách khéo léo điều chỉnh thời điểm Lua dọn bộ nhớ, kẻ tấn công có thể tái sử dụng vùng nhớ cũ để chèn mã độc và cuối cùng thực thi lệnh tùy ý với quyền của tiến trình Redis. Điều này đồng nghĩa với việc toàn bộ dữ liệu trên máy chủ hoặc thậm chí các tài nguyên khác trong cùng hệ thống, có thể bị chiếm quyền kiểm soát.
Theo Wiz, lỗ hổng này cực kỳ nguy hiểm vì:
Hiện tại, nhóm phát triển Redis vẫn đang hoàn thiện bản vá cho CVE-2025-49844. Trong lúc chờ đợi, các chuyên gia khuyến nghị quản trị viên nên:
Lỗ hổng được định danh là CVE-2025-49844 có điểm CVSS 10 (điểm tối đa). Vấn đề này cho phép tin tặc thực thi mã độc từ xa (RCE) trên máy chủ Redis chỉ với quyền đăng nhập hợp lệ, mà không cần thêm bất kỳ tương tác nào từ người dùng.
Redis hỗ trợ ngôn ngữ Lua để người dùng viết các đoạn script tự động xử lý dữ liệu (ví dụ như gộp, lọc hoặc tính toán). Tuy nhiên, chính tính năng tiện lợi này lại trở thành “con dao hai lưỡi”.
Các nhà nghiên cứu cho biết lỗi xuất phát từ quá trình thu hồi bộ nhớ (garbage collection) trong Lua. Redis đã không xử lý đúng cách các vùng nhớ đã được giải phóng, dẫn đến hiện tượng use-after-free, khi chương trình vẫn cố truy cập vào vùng nhớ đã bị thu hồi.
Bằng cách khéo léo điều chỉnh thời điểm Lua dọn bộ nhớ, kẻ tấn công có thể tái sử dụng vùng nhớ cũ để chèn mã độc và cuối cùng thực thi lệnh tùy ý với quyền của tiến trình Redis. Điều này đồng nghĩa với việc toàn bộ dữ liệu trên máy chủ hoặc thậm chí các tài nguyên khác trong cùng hệ thống, có thể bị chiếm quyền kiểm soát.
Theo Wiz, lỗ hổng này cực kỳ nguy hiểm vì:
- Dễ khai thác: Chỉ cần tài khoản Redis có quyền sử dụng lệnh EVAL hoặc EVALSHA, kẻ tấn công có thể khai thác từ xa qua mạng.
- Không cần đặc quyền cao: Chỉ cần quyền “đăng nhập bình thường”, không cần root hay admin.
- Ảnh hưởng lan rộng: Redis thường chạy trên hạ tầng backend của các hệ thống web, API, ứng dụng tài chính, IoT, hay thậm chí trong môi trường đám mây. Một máy chủ Redis bị tấn công có thể trở thành “cửa hậu” để xâm nhập toàn mạng nội bộ.
Hiện tại, nhóm phát triển Redis vẫn đang hoàn thiện bản vá cho CVE-2025-49844. Trong lúc chờ đợi, các chuyên gia khuyến nghị quản trị viên nên:
- Tạm thời vô hiệu hóa hoặc giới hạn lệnh EVAL và EVALSHA trong Redis bằng Access Control List (ACL).
- Kiểm tra quyền truy cập, đảm bảo chỉ người thực sự cần mới được phép chạy script Lua.
- Đặt Redis sau tường lửa, chỉ cho phép các máy chủ nội bộ hoặc VPN tin cậy kết nối.
- Theo dõi nhật ký và hoạt động bất thường, đặc biệt là các đoạn script lạ hoặc kết nối từ IP không quen thuộc.
- Cập nhật ngay khi bản vá chính thức phát hành và kiểm thử bảo mật toàn hệ thống Redis sau khi cập nhật.
WhiteHat