Giới thiệu
Lỗ hổng RCE (Remote Code Execution) trong nginxWebUI vừa được phát hiện bởi Chaitin Security Research Lab đang đặt ra nhiều thách thức cho các nhà phát triển và quản trị hệ thống. Công cụ quản lý đồ họa này được sử dụng rộng rãi để cấu hình Nginx - một trong những máy chủ web phổ biến nhất hiện nay. Bài viết này sẽ đi sâu vào bản chất của lỗ hổng, cách phát hiện, biện pháp giảm thiểu và cách bảo mật cài đặt nginxWebUI.
Nội dung chính
- Tóm tắt lỗ hổng
- Công cụ phát hiện
- Giải pháp và biện pháp giảm thiểu
- Thực tiễn tốt nhất để bảo mật
Tóm tắt lỗ hổng
nginxWebUI cho phép thực thi các lệnh liên quan đến Nginx. Tuy nhiên, do thiếu kiểm tra đầu vào phù hợp, kẻ tấn công có thể tiêm lệnh tùy ý, dẫn đến việc thực thi mã từ xa. Hơn nữa, việc kiểm tra quyền truy cập không đúng cách cho phép truy cập trái phép đến chức năng này từ giao diện người dùng.
Thông tin lỗ hổng:
- Loại: Command Injection
- Phiên bản dễ bị tấn công: nginxWebUI <= 3.5.0
- Tác động: Thực thi mã từ xa, Tăng cường quyền truy cập
Công cụ phát hiện
Để giúp xác định lỗ hổng này, chúng tôi đã phát triển hai công cụ có sẵn cho công chúng:
Công cụ phát hiện từ xa X-POC
Lệnh phát hiện:
xpoc -r 106 -t [TARGET_URL]
Tải xuống từ GitHub hoặc Chaitin Security Stack.
Công cụ phát hiện cục bộ CloudWalker
Lệnh phát hiện:
./nginx_webui_runcmd_rce_scanner_linux_amd64
Tải xuống từ Chaitin Security Stack.
Các phiên bản bị ảnh hưởng
- nginxWebUI <= 3.5.0
Giải pháp và biện pháp giảm thiểu
Giải pháp tạm thời
Vì lỗ hổng này liên quan đến tiêm lệnh, việc sử dụng một Web Application Firewall (WAF) như SafeLine có thể giúp chặn các cuộc tấn công khai thác. Tuy nhiên, vì vấn đề cơ bản liên quan đến kiểm tra quyền không đúng cách, chỉ sử dụng WAF không thể giải quyết toàn bộ vấn đề.
Khuyến nghị:
- Giới hạn tiếp xúc công khai: Nếu có thể, tránh để nginxWebUI công khai trên Internet.
Sửa chữa chính thức
Nhà cung cấp đã phát hành bản vá khắc phục vấn đề vượt quyền và giới thiệu kiểm tra đầu vào để giảm nguy cơ thực thi lệnh. Tuy nhiên, do cơ chế lọc chưa hoàn chỉnh, một số rủi ro vẫn có thể tồn tại.
Khuyến nghị:
- Cập nhật lên phiên bản mới nhất để khắc phục lỗ hổng tăng cường quyền truy cập và giảm nguy cơ thực thi mã từ xa.
Sản phẩm bảo mật hỗ trợ phát hiện
- Yuntu: Hỗ trợ phát hiện dấu vân tay cho nginxWebUI và phát hiện dựa trên PoC.
- SafeLine: Tự động phát hiện các nỗ lực khai thác nhắm vào lỗ hổng này.
- Dongjian: Hỗ trợ phát hiện với engine và cơ sở dữ liệu lỗ hổng mới nhất.
- CloudWalker: Hỗ trợ phát hiện thông qua gói thông tin lỗ hổng mới nhất cho các nền tảng từ 23.05.001 trở lên.
- Quanxi: Đã phát hành bản cập nhật quy tắc phát hiện các nỗ lực khai thác cho vấn đề này.
Thời gian
- 19 tháng 5: Phát hành chính thức bản vá khắc phục lỗ hổng
- 22 tháng 5: Phòng thí nghiệm bảo mật Chaitin nhận được thông tin về lỗ hổng
- 22 tháng 5: Các sản phẩm quét bắt đầu hỗ trợ phát hiện
- 26 tháng 5: Chi tiết về lỗ hổng được công khai
- 27 tháng 6: Chaitin phát hành thông báo chính thức về lỗ hổng
Thực tiễn tốt nhất để bảo mật
- Kiểm soát quyền truy cập mạnh mẽ: Sử dụng các biện pháp kiểm soát truy cập nghiêm ngặt cho nginxWebUI.
- Bảo vệ WAF: Triển khai WAF để phát hiện và chặn các cuộc tấn công.
- Cập nhật thường xuyên: Đảm bảo cập nhật lên phiên bản mới nhất để giảm thiểu các lỗ hổng bảo mật.
Kết luận
Lỗ hổng thực thi mã từ xa trong nginxWebUI là một mối đe dọa nghiêm trọng, đặc biệt cho các hệ thống tiếp xúc với Internet. Mặc dù nhà cung cấp đã vá lỗi vượt quyền và thực hiện kiểm tra đầu vào, vấn đề vẫn chưa hoàn toàn được khắc phục. Chúng tôi khuyên bạn nên sử dụng kiểm soát quyền truy cập mạnh mẽ, bảo vệ WAF, và cập nhật lên phiên bản mới nhất để bảo vệ chống lại các khai thác tiềm tàng.
Để biết thêm chi tiết, hãy tham khảo trang web chính thức của nginxWebUI.
Tham gia cộng đồng SafeLine
Nếu bạn tiếp tục gặp vấn đề, hãy liên hệ với hỗ trợ SafeLine để được trợ giúp thêm.