DinteATTT - Block_DinteAttt_PageBreadcrumb

DinteATTT - Block_DinteAttt_Article_Toolbar

Lỗ hổng thoát khỏi hộp cát trong Judge0 khiến hệ thống bị chiếm quyền hoàn toàn

 

Các lỗ hổng này, được phát hiện và báo cáo vào tháng 3 năm 2024, cho phép kẻ tấn công thực hiện "sandbox escape" và có quyền root trên máy chủ mục tiêu. Cụ thể, CVE-2024-28185 và CVE-2024-28189 cho phép tấn công qua việc sử dụng symlink và lệnh chown không đáng tin cậy trong thư mục sandbox, trong khi CVE-2024-29021 cho phép kẻ tấn công thực hiện Server-Side Request Forgery (SSRF) để thoát khỏi sandbox. Hệ thống Judge0 là một nền tảng mã nguồn mở được sử dụng cho việc thực thi mã trực tuyến trong các ứng dụng như đánh giá ứng viên và giảng dạy trực tuyến.

Vấn đề nằm ở một script Ruby tên là "isolate_job.rb", chịu trách nhiệm thiết lập sandbox và thực thi mã trong hệ thống. Kẻ tấn công có thể tạo một symlink trong thư mục trước khi script bash thực thi, cho phép ghi vào các file ngoài sandbox và đạt quyền truy cập vào hệ thống ngoài container Docker. Nếu kẻ tấn công có đủ quyền, họ có thể thay đổi các tệp hệ thống hoặc cài đặt mã độc như cron job để chiếm quyền kiểm soát máy chủ.

Ngoài việc có thể nâng quyền trong hệ thống, kẻ tấn công còn có thể lợi dụng lỗ hổng SSRF để kết nối tới cơ sở dữ liệu PostgreSQL của Judge0, thay đổi các cột dữ liệu và thực hiện lệnh tiêm mã vào hệ thống. Các lỗ hổng đã được khắc phục trong phiên bản Judge0 1.13.1 phát hành vào ngày 18 tháng 4, 2024.

 

thehackernews.com

DinteATTT - Block_DinteAttt_TinTuc_LienQuan

DinteATTT - Block_DinteAttt_Right