Cảnh báo lỗ hổng PHP2Shell (CVE-2026-109618 & CVE-2026-109619): Website WordPress cần cập nhật PHP ngay

4.9/5 - (118 bình chọn)

Cập nhật 21/10/2026: Dự án PHP công bố hai lỗ hổng nghiêm trọng CVE-2026-109618 và CVE-2026-109619 (cộng đồng gọi là PHP2Shell). Cả hai đều ở mức Critical (CVSS khoảng 9.2), có thể dẫn tới remote code execution (RCE) không cần đăng nhập trên máy chủ đang phục vụ HTTP bằng PHP. CISA cũng kêu gọi vá ngay và đã đưa các CVE này vào danh mục KEV.

Nếu doanh nghiệp của bạn chạy WordPress, Laravel, Magento hay bất kỳ website PHP nào — đây là cảnh báo cần xử lý trong ngày, không phải “tin kỹ thuật để đọc sau”.

PHP2Shell là gì? Vì sao nguy hiểm hơn lỗ hổng plugin WordPress?

Khác với nhiều cảnh báo WordPress (theme/plugin/core) trước đây trên blog Hatena, PHP2Shell nằm trong engine PHP — lớp xử lý request trước khi WordPress chạy code ứng dụng. Vì vậy:

  • Chỉ cập nhật WordPress / cài plugin bảo mật không vá được lỗ hổng này.
  • Kẻ tấn có thể gửi HTTP request đặc biệt tới worker PHP (Apache mod_php, PHP-FPM, php-cgi…).
  • Tác động: thực thi mã từ xa, lộ bộ nhớ request, hoặc DoS — tùy vector.

Theo mô tả chính thức và các bulletin (PHP Foundation, AWS, CISA):

  • CVE-2026-109618 — RCE qua lỗi xử lý hết bộ nhớ (OOM): khi request chạm memory_limit đúng thời điểm, dữ liệu nội bộ có thể khởi tạo dở rồi bị cleanup coi như hợp lệ.
  • CVE-2026-109619 — RCE qua “stale global state”: trạng thái của request cũ có thể còn sót sau khi bộ nhớ đã giải phóng; request sau trên cùng worker dùng lại vùng nhớ đó (use-after-free / RCE).

Apache với mod_php được đánh giá rủi ro cao; RCE cũng được xác nhận trên một số cấu hình PHP-FPM.

Phiên bản PHP nào đã vá?

Cập nhật lên (hoặc mới hơn cùng nhánh):

Nhánh PHP Bản vá tối thiểu
PHP 8.5 8.5.12+
PHP 8.4 8.4.27+
PHP 8.3 8.3.36+
PHP 8.2 8.2.35+
PHP 8.1 trở xuống EOL — không có bản vá upstream đầy đủ; cần nâng lên nhánh còn hỗ trợ hoặc bản backport từ nhà cung cấp hosting/LTS

PHP khẳng định: không có biện pháp giảm thiểu hoàn chỉnh — cập nhật runtime là lựa chọn an toàn duy nhất.

Checklist xử lý cho website doanh nghiệp Việt Nam

  1. Kiểm tra phiên bản ngay: trên hosting/VPS chạy php -v (CLI) và kiểm tra phiên bản PHP của website trong panel (MultiPHP / Select PHP Version). Lưu ý CLI và PHP-FPM có thể khác nhau.
  2. Snapshot / backup trước khi đổi PHP (file + database).
  3. Nâng PHP lên 8.2.35+ / 8.3.36+ / 8.4.27+ / 8.5.12+ tùy nhánh hosting hỗ trợ. Với WordPress, ưu tiên 8.2 hoặc 8.3 ổn định nếu theme/plugin tương thích.
  4. Restart PHP-FPM / Apache / LiteSpeed sau khi cập nhật.
  5. Kiểm tra site: trang chủ, giỏ hàng/form, đăng nhập admin, cron.
  6. Giám sát: process lạ, file PHP mới trong uploads, thay đổi wp-config.php, user admin mới.
  7. Nếu chưa nâng được ngay: cân nhắc tạm thời hạn chế public nếu là hệ thống critical; WAF chỉ là lớp phụ, không thay thế bản vá. Một số mitigation tạm (ví dụ tắt session.upload_progress) được PHP nhắc nhưng không đủ an toàn.

WordPress có “tự hết nguy hiểm” sau khi update core không?

Không. Update WordPress 6.x/7.x không nâng PHP giúp bạn. Hosting Shared thường đổi PHP trong cPanel/DirectAdmin; VPS cần admin cập nhật package. Nếu agency/hosting vẫn giữ PHP 7.4 hoặc 8.0 — site vẫn trong vùng rủi ro cao và đã hết vòng đời hỗ trợ bảo mật thường xuyên.

Hatena trước đó đã có bài về cập nhật WordPress Core và dấu hiệu website bị hack — bạn nên đọc kèm để có quy trình ứng cứu toàn diện sau khi vá PHP.

Dấu hiệu cần nhờ chuyên gia ngay

  • Hosting báo chưa có bản PHP vá, hoặc vẫn kẹt PHP 7.x/8.0/8.1.
  • Website WordPress cũ, nhiều plugin lâu không bảo trì — dễ lỗi khi nhảy PHP.
  • Phát hiện file shell, redirect lạ, CPU tăng đột biến sau ngày công bố (21/10/2026).

Kết luận

PHP2Shell là sự kiện bảo mật cấp hạ tầng web năm 2026: ảnh hưởng mọi CMS PHP, vá bằng cách nâng runtime, không phải “cài thêm plugin”. Doanh nghiệp nên kiểm tra phiên bản PHP hôm nay, lên lịch nâng cấp, và theo dõi log sau khi vá.

Cần hỗ trợ kiểm tra hosting WordPress / nâng PHP an toàn / rà soát xâm nhập? Liên hệ Hatena để được hỗ trợ kỹ thuật nhanh.

Câu hỏi thường gặp

CVE-2026-109618 và CVE-2026-109619 khác nhau chỗ nào?

Một lỗi liên quan xử lý hết bộ nhớ (OOM) và dữ liệu khởi tạo dở; lỗi còn lại liên quan trạng thái toàn cục sót lại giữa các request trên cùng worker. Cả hai đều Critical và đều cần bản PHP đã vá.

Chỉ dùng Cloudflare/WAF có đủ không?

Không đủ. WAF có thể giảm một phần pattern exploit đã biết nhưng PHP và CISA đều nhấn mạnh phải cập nhật PHP.

Site tĩnh HTML có bị không?

Không chạy PHP thì không dính engine này. Site WordPress/PHP-FPM thì có.