1. Tổng quan và phân tích
Qua hoạt động theo dõi giám sát diễn biến an toàn thông tin trên không gian mạng, Team CyberSec CMC Telecom ghi nhận lỗ hổng CVE-2024-47823 mức độ nghiêm trọng cao trong Laravel sử dụng framework Livewire. Lỗ hổng liên quan đến việc xác thực không đúng phần mở rộng tệp trong quá trình upload file, cho phép kẻ tấn công bỏ qua kiểm tra bảo mật và có khả năng thực thi mã từ xa (RCE).
Lỗ hổng xuất phá từ cách Livewire xử lý phần mở rộng tệp dựa trên hai loại MIME mà không xác minh phần mở tệp thực tế được cung cấp bởi tên tệp. Nếu khai thác thành công, tác nhân đe dọa có thể tải lên các tệp độc hại (ví dụ: tệp PHP độc hại dưới dạng hình ảnh) và thực thi mã tùy ý trên máy chủ:
- MIME Type Guessed Extension: Khi một tệp được tải lên máy chủ, Livewire đoán phần mở rộng tệp từ loại MIME thay vì xác thực phần mở rộng tệp trong chính tên tệp. Ví dụ một tệp có loại MIME hợp lệ như
image/png
vẫn có thể có phần mở rộng độc hại như .php. - Improper Filename Composition: Tên của tệp đã tải lên bắt nguồn từ
$file -> getClientOriginalName()
, tên này giữa nguyên tên tệp gốc của người dùng mà không làm sạch (sanitization). - Exploitable Scenario: Nếu tệp được lưu trữ trên máy chủ được cấu hình để thực thi tệp .php, kẻ tấn công có thể bỏ qua quá trình xác thực và tải lên tập lệnh PHP được ngụy trang dưới dạng hình ảnh, dẫn đến việc thực thi mã từ xa (RCE).
2. Ảnh hưởng và giảm thiểu rủi ro
STT | Tên Ứng dụng | Phiên bản ảnh hưởng | Phiên bản cần nâng cấp |
---|---|---|---|
1 | Laravel Livewire | < v3.5.2 | >= v3.5.2 |
Khai thác lỗ hổng CVE-2024-47823 yêu cầu kỹ thuật tối thiểu và có thể gây ra hậu quả nghiêm trọng, bao gồm:
- Cho phép thực thi mã từ xa.
- Kẻ tấn công có thể truy cập vào dữ liệu nhạy cảm được lưu trữ trên máy chủ.
- Mã độc hại có thể dẫn đến mất ổn định hệ thống hoặc đánh sập các dịch vụ do máy chủ làm quá tải.
**Khuyến nghị
Thực hiện kiểm tra, rà soát và xác minh đối với các cảnh báo lỗ hổng, nếu có sử dụng thì cần áp dụng các biện pháp như sau:
- Cấu hình máy chủ web để không thực thi các tệp từ thư mục public.
- Thực hiện xác minh cơ chế việc tải tệp lên, bao gồm xác minh cả loại MIME và phần mở rộng tệp.
**Liên quan
Livewire Remote Code Execution on File Uploads · Advisory · livewire/livewire