Sau một thời gian nghiên cứu và tìm lỗ hổng về framework Joomla và tìm được vài CVEs. Sau đây mình sẽ write up về 3 lỗ hổng và phương pháp tìm.

  1. CVE-2019-19845
    Lỗi được phát hiện trong quá trình tìm chain dựa vào CVE-2019-18650 để tìm WEBROOT, tuy nhiên lại chỉ khai thác được nếu máy chủ chưa tắt thông báo lỗi.
    Như vậy, ý tưởng để tìm lỗi này sẽ như sau:
  • Bật chế độ thông báo lỗi của máy chủ.
  • Tìm toàn bộ các file thỏa điều kiện sau:
    - Sử dụng các hàm gọi thư viện như use, include, include_once, require, require_once
    - Không sử dụng _JEXEC , là cơ chế ngăn chặn truy cập trực tiếp vào file của Joomla.
Hình 1 Ví dụ cách sử dụng JEXEC chặn truy cập trực tiếp vào file ở Joomla
Hình 2 Kết quả chạy script
Hình 3 Lộ webroot ở file DelegatingPsrLogger do path mapping sai địa chỉ.

(Còn tiếp)

Author: Le Quang Thao