Đang tải bài viết...
Khẩn cấp: Phân tích chi tiết cặp lỗ hổng RCE trọng yếu trong lõi PHP (CVE-2026-109618 và CVE-2026- 109619)
1. Phân tích chi tiết bản chất kỹ thuật lỗ hổng
Sự cố này không nằm ở các mã nguồn mở hay CMS (như WordPress, Drupal, hay Magento), mà nằm sâu
bên trong tầng thực thi mã nguồn (runtime engine) của ngôn ngữ PHP:
- CVE-2026-109618 (OOM Memory Corruption): Lỗi phát sinh trong cách bộ quản lý bộ nhớ của PHP xử lý các giới hạn tài nguyên (memory_limit) khi tiếp nhận các yêu cầu HTTP đặc biệt lớn hoặc dị biệt. Kẻ tấn công có thể kích hoạt tình trạng hỏng hóc bộ nhớ (memory corruption) trong tiến trình xử lý, từ đó thao túng con trỏ lệnh và chiếm quyền điều khiển luồng thực thi của tiến trình PHP.
- CVE-2026-109619 (Stale Global State trong session.upload_progress): Lỗi liên quan đến cơ chế theo dõi tiến trình tải lên tệp tin (session.upload_progress). Khi xử lý đồng thời nhiều kết nối tải tệp lên được cấu hình khéo léo, trạng thái toàn cục cũ (stale global state) trong vùng nhớ chia sẻ của PHP-FPM worker không được làm sạch đúng cách, cho phép kẻ tấn công ghi đè bộ nhớ và thực thi mã lệnh từ xa mà không cần bất kỳ quyền hạn nào.
2. Phạm vi tác động hệ thống
- Các SAPI bị ảnh hưởng: Toàn bộ các mô hình chạy PHP phổ biến bao gồm PHP-FPM, Apache mod_php, php-cgi, LiteSpeed, và FrankenPHP.
- Trạng thái xác thực: Không cần tài khoản, không cần lộ thông tin đăng nhập — kẻ tấn công chỉ cần gửi HTTP Request trực tiếp đến endpoint xử lý PHP của máy chủ web.
- Mức độ nguy hiểm: Bất kỳ ứng dụng nào cho phép người dùng tải tệp lên (upload file) hoặc xử lý dữ liệu lớn đều có nguy cơ bị khai thác trực tiếp để chiếm quyền root/www-data của hệ thống.
3. Bảng tổng hợp phiên bản vá lỗi chính thức
PHP Group đã phát hành các bản cập nhật khẩn cấp. Quản trị viên hệ thống cần tiến hành nâng cấp lõi
PHP lên các phiên bản tối thiểu sau tùy theo nhánh đang sử dụng:
|
Nhánh PHP |
Phiên bản chưa vá (Dính lỗi) |
Phiên bản đã vá (An toàn) |
|
PHP 8.2 |
<= 8.2.34 |
8.2.35 |
|
PHP 8.3 |
<= 8.3.35 |
8.3.36 |
|
PHP 8.4 |
<= 8.4.26 |
8.4.27 |
|
PHP 8.5 |
<= 8.5.11 |
8.5.12 |
Lưu ý quan trọng: Các phiên bản cũ hơn như PHP 7.4, 8.0, 8.1 đã kết thúc vòng đời hỗ trợ (EOL). Nếu hệ
thống của bạn vẫn sử dụng các nhánh này, bạn bắt buộc phải áp dụng bản vá cục bộ (backport) từ nhà
phân phối OS hoặc nâng cấp mã nguồn lên nhánh được hỗ trợ.
4. Quy trình khắc phục và giảm thiểu rủi ro (Remediation)
Bước 1: Nâng cấp gói PHP trực tiếp trên máy chủ
Đối với các hệ thống Linux (Ubuntu / Debian / AlmaLinux), thực hiện cập nhật thông qua trình quản lý
gói của hệ thống (ví dụ với PHP 8.3):
Cập nhật danh sách gói và nâng cấp PHP
sudo apt update
sudo apt --only-upgrade install php8.3-fpm php8.3-cli php8.3-common php8.3-opcacheKhởi động lại tiến trình PHP-FPM và Web Server
sudo systemctl restart php8.3-fpm
sudo systemctl restart nginx # hoặc apache2
Bước 2: Áp dụng biện pháp giảm thiểu tạm thời (Nếu chưa thể nâng cấp ngay)
Nếu chưa thể thực hiện nâng cấp phiên bản PHP ngay lập tức do vướng lịch bảo trì, có thể vô hiệu hóa
tính năng session.upload_progress để tạm thời vô hiệu hóa hướng khai thác của CVE-2026-109619:
- Mở file cấu hình php.ini (ví dụ: /etc/php/8.3/fpm/php.ini hoặc /etc/php/8.3/apache2/php.ini).
- Tìm dòng thiết lập và chuyển giá trị thành 0:
session.upload_progress.enabled = 0
- Lưu file và khởi động lại dịch vụ PHP-FPM:
sudo systemctl restart php8.3-fpm
Bình luận (0)
Vui lòng để bình luận.