Cảnh báo về lỗ hổng PHP2Shell và cách khắc phục

15:45 | 22/10/2026

Hai lỗ hổng mang tên PHP2Shell, mã định danh CVE-2026-109618 và CVE-2026-109619, đang được cảnh báo có nguy cơ cho phép kẻ tấn công thực thi mã từ xa (RCE) trên máy chủ chạy PHP. Trong lúc chờ bản vá chính thức, các đơn vị vận hành website cần chủ động kiểm tra hệ thống và áp dụng biện pháp giảm thiểu rủi ro tạm thời.

Windows 11 âm thầm rò rỉ dữ liệu qua lỗ hổng DNS mã hóa Windows 11 âm thầm rò rỉ dữ liệu qua lỗ hổng DNS mã hóa
Dữ liệu cá nhân của hầu hết nhà ngoại giao Hàn Quốc có thể bị rò rỉ sau tấn công mạng Dữ liệu cá nhân của hầu hết nhà ngoại giao Hàn Quốc có thể bị rò rỉ sau tấn công mạng
Lỗ hổng Bluetooth ô tô đe dọa hơn 2 triệu xe tại Mỹ Lỗ hổng Bluetooth ô tô đe dọa hơn 2 triệu xe tại Mỹ

Hai lỗ hổng mang tên PHP2Shell, mã định danh CVE-2026-109618 và CVE-2026-109619, đang được cảnh báo có nguy cơ cho phép kẻ tấn công thực thi mã từ xa (RCE) trên máy chủ chạy PHP. Trong lúc chờ bản vá chính thức, các đơn vị vận hành website cần chủ động kiểm tra hệ thống và áp dụng biện pháp giảm thiểu rủi ro tạm thời.

Cảnh báo về lỗ hổng  PHP2Shell và cách khắc phục

Cảnh báo về PHP2Shell

Theo thông báo bảo mật chính thức vừa được phát đi, PHP2Shell, tên gọi chung của hai lỗ hổng CVE-2026-109618 và CVE-2026-109619. Theo cảnh báo, đây là các lỗ hổng có nguy cơ thực thi mã từ xa, tức là kẻ tấn công có thể điều khiển máy chủ từ bên ngoài nếu khai thác thành công. Với một ngôn ngữ lập trình phổ biến như PHP, phạm vi ảnh hưởng tiềm tàng là rất rộng, từ website doanh nghiệp, cổng thông tin đến các hệ thống thương mại điện tử.

Các máy chủ dùng PHP cần được rà soát, trong đó ưu tiên những hệ thống chạy PHP 5.x, PHP 7.x và các phiên bản đã hết hỗ trợ. Bản vá PHP dự kiến được công bố lúc 21:00 ngày 21/10/2026 (giờ Việt Nam). Tuy nhiên, quản trị viên cần tự xác minh trạng thái phát hành và việc repository của hệ điều hành đã cung cấp gói vá hay chưa trước khi cập nhật.

Bước 1: Kiểm tra phiên bản PHP đang chạy

Trước hết, quản trị viên đăng nhập SSH để xác định phiên bản PHP và vị trí tệp cấu hình:

php -v

php --ini

Nếu máy chủ cài nhiều phiên bản PHP, cần kiểm tra đúng phiên bản đang phục vụ website, vì phiên bản dùng cho dòng lệnh có thể khác với phiên bản chạy trên web.

Bước 2: Giảm thiểu rủi ro tạm thời

Trong tệp php.ini của PHP phục vụ website, nếu ứng dụng không dùng chức năng theo dõi tiến trình upload qua session, có thể đặt:

session.upload_progress.enabled = Off

Sau khi lưu, phải khởi động lại dịch vụ tương ứng để cấu hình có hiệu lực:

# Apache – RHEL/CentOS/AlmaLinux/Rocky

sudo apachectl configtest && sudo systemctl restart httpd

# Apache – Ubuntu/Debian

sudo apache2ctl configtest && sudo systemctl restart apache2

# PHP-FPM, ví dụ PHP 8.2

sudo systemctl restart php8.2-fpm

Sau đó, kiểm tra lại giá trị bằng lệnh;

php -i | grep session.upload_progress.enabled;

Xác nhận giá trị thực tế trong môi trường PHP chạy web, bởi CLI có thể dùng cấu hình khác. Ngoài ra, nên bật WAF/ModSecurity, hạn chế địa chỉ IP quản trị, kiểm soát chặt việc tải tệp lên, rà soát nhật ký hệ thống và sao lưu dữ liệu.

Lưu ý quan trọng: việc tắt tính năng nói trên không phải là bản vá đã được xác nhận cho hai CVE. Đây chỉ là biện pháp giảm thiểu tạm thời, không thay thế việc cập nhật chính thức.

Bước 3: Cập nhật bản vá chính thức

Khi PHP hoặc nhà cung cấp hệ điều hành xác nhận đã phát hành bản vá đúng cho CVE và gói đang dùng, quản trị viên nên sao lưu hoặc tạo snapshot rồi kiểm tra các gói có thể cập nhật:

# Ubuntu/Debian

sudo apt update && apt list --upgradable

# RHEL/AlmaLinux/Rocky

sudo dnf check-update

# CentOS cũ

sudo yum check-update

Sau khi xác minh repository đã có gói vá, có thể thực hiện lệnh cập nhật phù hợp (sudo apt upgrade, sudo dnf upgrade hoặc sudo yum update). Các lệnh này có thể nâng cấp nhiều gói khác cùng lúc, vì vậy cần xem kỹ danh sách giao dịch trước khi xác nhận. Nếu PHP được cài qua control panel, repository bên thứ ba hoặc biên dịch từ mã nguồn, phải dùng đúng cơ chế cập nhật tương ứng. Cập nhật xong, cần khởi động lại Apache hoặc PHP-FPM, kiểm tra phiên bản PHP thực tế của website và thử các chức năng quan trọng.

Phiên bản PHP hết hỗ trợ: rủi ro lớn nhất

Đối với PHP 5.x và 7.x đã hết hỗ trợ chính thức, không mặc định có bản vá qua apt, yum hay dnf. Giải pháp là nâng cấp lên phiên bản PHP còn được hỗ trợ, hoặc sử dụng bản vá bảo trì mở rộng do nhà cung cấp xác nhận. Đây là nhóm hệ thống cần được ưu tiên xử lý sớm nhất.

Khuyến nghị

Ba việc nên làm ngay: xác định chính xác phiên bản PHP đang phục vụ website; áp dụng biện pháp giảm thiểu tạm thời nếu ứng dụng cho phép; theo dõi thông tin phát hành bản vá tại trang php.net/releases và cập nhật ngay khi bản vá đúng gói đã sẵn sàng. Với hệ thống đang chạy phiên bản hết hỗ trợ, nên lập kế hoạch nâng cấp lên bản PHP còn được duy trì thay vì chỉ trông chờ vào các biện pháp tạm thời.

Đường dẫn bài viết: https://dientuungdung.vn/canh-bao-ve-lo-hong-php2shell-va-cach-khac-phuc-19050.html

In bài biết

Bản quyền thuộc Tạp chí Điện tử và Ứng dụng.