Bảo mật & quyền riêng tư

PHP khuyến nghị tắt tính năng theo dõi tiến trình tải lên phiên để giảm thiểu rủi ro RCE mới

PHP đã đưa ra cảnh báo về CVE-2026-115560, một lỗ hổng thực thi mã từ xa (RCE) ảnh hưởng đến các cấu hình cụ thể. Quản trị viên được khuyên nên tắt tính năng theo dõi tiến trình tải lên phiên cho đến khi có bản vá định kỳ.

Các kệ máy chủ dưới mái vòm kính với đèn cảnh báo màu hổ phách chỉ ra các cảnh báo bảo mật
Ảnh minh họa tạo riêng cho bài viết

Bài được dịch tự động từ bản gốc tiếng Anh.

Dự án PHP đã phát hành một thông báo tư vấn cung cấp thông tin về một lỗ hổng thực thi mã từ xa (RCE) mới, được xác định là CVE-2026-115560. Cảnh báo này xuất hiện chỉ hai ngày sau khi các bản vá khẩn cấp cho các lỗi nghiêm trọng PHP2Shell được phát hành. Dự án khuyến nghị quản trị viên ngay lập tức tắt tính năng theo dõi tiến trình tải lên phiên như một chiến lược giảm thiểu rủi ro.

Chuyện gì đã xảy ra

Vào ngày 23 tháng 10, nhóm phát triển PHP đã công bố một thông báo ngắn chi tiết về vấn đề bảo mật mới. Khác với các lỗ hổng nghiêm trọng trước đó, lỗi này không ảnh hưởng đến tất cả các cài đặt PHP. Nó nhắm vào một cấu hình hẹp và hiếm gặp, nơi ứng dụng thay đổi động bộ xử lý tuần tự hóa phiên trong thời gian chạy. Cụ thể, rủi ro tồn tại khi ứng dụng đặt tùy chọn session.serialize_handler thành php_binary hoặc php_serialize trong cấu hình của nó, sau đó chuyển sang php bằng cách sử dụng ini_set() trước khi gọi session_start(), trong khi tính năng theo dõi tiến trình tải lên phiên vẫn được bật.

Nhóm PHP đã phân loại đây là một rủi ro khó xảy ra trên thực tế vì hầu hết các ứng dụng không thay đổi bộ xử lý tuần tự hóa một cách linh hoạt. Do đó, họ không phát hành bản vá khẩn cấp. Thay vào đó, bản sửa lỗi sẽ được bao gồm trong bản phát hành sửa lỗi định kỳ tiếp theo. Thông báo tư vấn nêu rõ rằng việc thiết lập session.upload_progress.enabled=0 sẽ vô hiệu hóa mối đe dọa. Đây cũng chính là biện pháp giảm thiểu được khuyến nghị cho lỗ hổng PHP2Shell trước đó, nghĩa là những quản trị viên đã áp dụng thay đổi đó cũng sẽ được bảo vệ khỏi vấn đề mới này.

Lỗ hổng mới này khác biệt so với hai lỗi nghiêm trọng đã được vá vào ngày 21 tháng 10, được biết đến với tên CVE-2026-109618 và CVE-2026-109619. Những lỗi trước đó cho phép kẻ tấn công chưa xác thực thực thi mã trên máy chủ và đã được khắc phục trong các phiên bản PHP 8.5.12, 8.4.27, 8.3.36 và 8.2.35. Vấn đề hiện tại, CVE-2026-115560, không được giải quyết bởi các bản cập nhật đó. Cho đến nay, chưa có báo cáo nào về các cuộc khai thác nhắm vào lỗ hổng mới này.

Chi tiết quan trọng

  • ID Lỗ hổng: CVE-2026-115560 ảnh hưởng đến các cài đặt PHP có cấu hình tuần tự hóa phiên động cụ thể.
  • Biện pháp giảm thiểu: Đặt session.upload_progress.enabled=0 trong cấu hình PHP của bạn cho đến khi có bản sửa lỗi định kỳ được phát hành.
  • Phạm vi: Rủi ro chỉ giới hạn ở các ứng dụng thay đổi session.serialize_handler qua ini_set() trước khi gọi session_start().
  • Trạng thái: Không có bản vá khẩn cấp nào được phát hành; bản sửa lỗi sẽ xuất hiện trong bản phát hành bảo trì thường xuyên tiếp theo.
  • Các bản vá trước đó: Các bản phát hành khẩn cấp ngày 21 tháng 10 cho CVE-2026-109618 và CVE-2026-109619 không khắc phục vấn đề mới này.
  • Khai thác: Chưa có báo cáo về nỗ lực khai thác CVE-2026-115560, mặc dù các cuộc tấn công vào các lỗi PHP2Shell trước đó vẫn đang gia tăng mạnh mẽ.

Bối cảnh

Theo dõi tiến trình tải lên phiên là một tính năng tích hợp sẵn của PHP, cho phép các ứng dụng web theo dõi trạng thái tải tệp lên theo thời gian thực. Tính năng này được bật theo mặc định trong nhiều cấu hình tiêu chuẩn. Mặc dù hữu ích cho trải nghiệm người dùng, nó làm phức tạp cách dữ liệu phiên được xử lý. Tuần tự hóa là quá trình chuyển đổi các cấu trúc dữ liệu sang định dạng có thể lưu trữ hoặc truyền tải. PHP hỗ trợ các bộ xử lý tuần tự hóa khác nhau, chẳng hạn như php, php_binary và php_serialize. Việc chuyển đổi giữa các bộ xử lý này một cách động trong suốt một yêu cầu có thể dẫn đến sự không nhất quán trong cách diễn giải dữ liệu phiên, tiềm ẩn tạo ra các lỗ hổng bảo mật nếu không được quản lý cẩn thận.

Các lỗ hổng PHP2Shell gần đây đã nhấn mạnh những nguy hiểm của việc xử lý đầu vào không đúng cách trong các hàm lõi của PHP. Những lỗi đó cho phép kẻ tấn công chèn mã độc hại thông qua các yêu cầu trông có vẻ vô hại. Cộng đồng bảo mật đã phản hồi nhanh chóng, với các nhà cung cấp đám mây như Cloudflare báo cáo hàng triệu nỗ lực khai thác chỉ trong vài giờ sau khi công bố. Kẻ tấn công đã cố gắng cài đặt các biến thể botnet Mirai, mặc dù việc khai thác đáng tin cậy tỏ ra khó khăn. Việc hiểu rõ sự khác biệt giữa các lỗi đang bị khai thác tích cực này và vấn đề cấu hình rủi ro thấp mới được công bố là rất quan trọng để ưu tiên các nỗ lực phản hồi.

Tại sao điều này quan trọng

Đối với các đội ngũ quản lý phần mềm tự lưu trữ (self-hosted), thông báo tư vấn này củng cố tầm quan trọng của việc giữ gìn vệ sinh cấu hình hơn là chỉ đơn thuần cập nhật phiên bản. Trong khi việc vá lỗi lên phiên bản PHP mới nhất là rất quan trọng đối với các lỗi RCE trước đó, nó không giải quyết được vấn đề mới này. Quản trị viên phải chủ động xem xét các thiết lập php.ini hoặc cấu hình cấp ứng dụng của họ. Nếu bạn phụ thuộc vào tính năng theo dõi tiến trình tải lên phiên cho chức năng hợp lệ, bạn cần đánh giá xem ứng dụng của mình có thay đổi bộ xử lý tuần tự hóa một cách động hay không. Nếu không, bạn vẫn có thể chọn tắt tính năng này như một biện pháp phòng thủ đa lớp, xét thấy khả năng cần đến nó trong các kiến trúc hiện đại là rất thấp.

Sự gia tăng nhanh chóng của các cuộc tấn công vào các lỗi PHP2Shell trước đó cho thấy tốc độ mà các bot tự động quét tìm các lỗ hổng mới được công bố. Mặc dù CVE-2026-115560 hiện được coi là rủi ro thấp, mô hình các nỗ lực khai thác ngay lập tức gợi ý rằng bất kỳ điểm yếu nào được công khai đều sẽ bị dò xét. Bằng cách áp dụng thay đổi cấu hình được khuyến nghị ngay bây giờ, bạn loại bỏ một vector tấn công tiềm năng trước khi bản vá chính thức có sẵn. Cách tiếp cận chủ động này giảm thiểu cửa sổ phơi nhiễm và đơn giản hóa việc bảo trì trong tương lai, vì bạn sẽ không cần phải vội vàng cập nhật khẩn cấp khi bản sửa lỗi định kỳ cuối cùng được phát hành.

Bạn có thể làm gì

  • Tắt theo dõi tiến trình tải lên phiên: Thêm session.upload_progress.enabled=0 vào tệp php.ini hoặc cấu hình ứng dụng của bạn ngay lập tức.
  • Xác minh các biện pháp giảm thiểu hiện có: Nếu bạn đã tắt tính năng theo dõi tiến trình tải lên phiên để giảm thiểu CVE-2026-109619, thì không cần thêm hành động nào cho vấn đề cụ thể này.
  • Kiểm tra logic tuần tự hóa: Xem xét mã ứng dụng của bạn để xem nó có sử dụng ini_set() để thay đổi session.serialize_handler trước khi gọi session_start() hay không.
  • Theo dõi các bản cập nhật: Chờ đợi bản phát hành sửa lỗi PHP định kỳ tiếp theo, chứa bản sửa lỗi vĩnh viễn cho CVE-2026-115560.
  • Kiểm toán nhật ký: Tiếp tục giám sát nhật ký máy chủ để tìm các hoạt động bất thường liên quan đến xử lý phiên hoặc tải tệp lên, mặc dù hiện chưa có báo cáo về các cuộc khai thác.
  • Cập nhật phiên bản PHP: Đảm bảo bạn đang chạy PHP 8.5.12, 8.4.27, 8.3.36 hoặc 8.2.35 để duy trì sự bảo vệ chống lại các lỗi nghiêm trọng PHP2Shell.

Tin khác

Tất cả tin