PHP2Shell là tên gọi chung của hai lỗ hổng nghiêm trọng trong lõi PHP: CVE-2026-109618 và CVE-2026-109619. Cả hai được chấm 9,2 — mức Critical — theo CVSS v4.0, và có thể cho phép kẻ tấn công chưa xác thực chạy mã trên máy chủ dễ bị tấn công. Dự án PHP đã phát hành bản vá khẩn cấp vào ngày 21/10/2026.
47
Việc cần làm trước tiên là cập nhật PHP. Các báo cáo về nỗ lực khai thác, trong đó có một dấu hiệu được Amazon ghi nhận trên hệ thống honeypot trước khi lỗ hổng được công bố, là lý do để xử lý nhanh. Tuy nhiên, chúng không chứng minh rằng một hệ thống sản xuất cụ thể đã bị xâm nhập.
48
36
Hai lỗ hổng PHP2Shell hoạt động như thế nào?
Hai lỗi được mô tả có cơ chế khác nhau:
- CVE-2026-109618 liên quan đến xử lý tình trạng hết bộ nhớ. Khi gặp lỗi hết bộ nhớ, PHP có thể ngắt quá trình xử lý trong lúc dữ liệu yêu cầu nội bộ mới được khởi tạo một phần. Khi dọn dẹp, PHP có thể xử lý dữ liệu không hợp lệ như thể dữ liệu đó hợp lệ.
58
- CVE-2026-109619 liên quan đến trạng thái nội bộ cũ. Theo các báo cáo, một số trạng thái gắn với yêu cầu vẫn còn tồn tại sau khi vùng nhớ lưu chúng đã được giải phóng, tạo ra lỗi use-after-free — tức sử dụng bộ nhớ sau khi đã giải phóng.
9
Các lỗi này liên quan đến cách PHP xử lý những yêu cầu HTTP được tạo đặc biệt, bao gồm dữ liệu biểu mẫu multipart — định dạng thường dùng khi tải tệp lên.
47 Nếu khai thác thành công, mã sẽ chạy với quyền của tài khoản web-worker. Điều đó không đồng nghĩa kẻ tấn công tự động có quyền quản trị viên hoặc root.
1
Vì sao điểm số là 9,2 — và con số này không nói lên điều gì?
Cả hai lỗ hổng được chấm 9,2/10, mức Critical, theo CVSS v4.0. Khả năng thực thi mã từ xa mà không cần xác thực là một lý do chính khiến chúng đáng lo ngại: kẻ tấn công không cần đăng nhập để thử chạy mã trên máy chủ bị ảnh hưởng.
47
Tài liệu nguồn hiện có không nêu đầy đủ vector CVSS, nên chưa đủ cơ sở để phân tích chính xác từng yếu tố dẫn đến điểm 9,2. Điểm số thể hiện mức độ nghiêm trọng; nó không cho biết khả năng một máy chủ cụ thể bị nhắm tới, cũng không xác nhận một nỗ lực khai thác đã thành công.
Phiên bản PHP bị ảnh hưởng và bản vá cần cài
Các báo cáo mô tả phạm vi bị ảnh hưởng bắt đầu từ PHP 5.4.
55 Những bản phát hành sửa lỗi khẩn cấp được liệt kê cho các nhánh PHP 8.x gồm:
| Nhánh PHP |
Bản đã sửa lỗi |
| 8.2 |
8.2.35 |
| 8.3 |
8.3.36 |
| 8.4 |
8.4.27 |
| 8.5 |
8.5.12 |
Các phiên bản này được phát hành ngày 21/10/2026. Hãy nâng cấp lên bản đã sửa lỗi tương ứng với nhánh đang sử dụng, hoặc bản mới hơn trong cùng nhánh.
47
Danh sách trên bao gồm các nhánh từ 8.2 đến 8.5. Nếu hệ thống chạy nhánh cũ hơn hoặc đã hết hỗ trợ, hãy kiểm tra hướng dẫn vá lỗi từ đơn vị phân phối PHP hoặc nhà cung cấp hệ điều hành; không nên mặc định rằng một phiên bản trong bảng có thể áp dụng trực tiếp.
Lỗ hổng bị lộ sớm, nhưng nỗ lực khai thác không đồng nghĩa đã bị xâm nhập
Thông tin về các lỗ hổng xuất hiện công khai vào ngày 20/10, sớm hơn kế hoạch công bố ngày 22/10. PHP phát hành bản vá khẩn cấp vào ngày 21/10.
8
42 Các nguồn hiện có ghi nhận việc lộ thông tin sớm và bản vá được phát hành trước lịch, nhưng không xác nhận rằng một video trình diễn của Calif bị đăng nhầm là nguyên nhân dẫn đến thay đổi này.
Amazon Threat Intelligence cho biết đã phát hiện một nỗ lực khai thác PHP2Shell trong dữ liệu từ honeypot MadPot, với thời điểm ghi nhận là ngày 17/10 — bốn ngày trước khi lỗ hổng được công bố rộng rãi. Amazon cũng cho biết đã phát hiện các bản khai thác thử nghiệm (proof of concept) vào khoảng thời điểm bản vá được phát hành ngày 21/10. Dữ liệu honeypot cho thấy hoạt động nhắm vào một hệ thống mồi, chứ không xác nhận một tổ chức thật đã bị xâm nhập.
48
Cloudflare cho biết đã triển khai biện pháp bảo vệ vào khoảng thời điểm công bố; các báo cáo cùng thời điểm cũng ghi nhận lưu lượng hoặc nỗ lực tấn công do các đơn vị bảo mật quan sát được.
55
35 Tuy nhiên, các nguồn đưa tin không thống nhất về quy mô và mức độ thành công: một số nhà cung cấp nói có hoạt động khai thác đang diễn ra hoặc trên diện rộng, trong khi các báo cáo khác lưu ý rằng cơ quan chính phủ chưa xác nhận các cuộc tấn công thành công.
33
36
Bằng chứng hiện có cho thấy cần xem nghiêm túc các nỗ lực khai thác, nhưng không đủ để coi mọi nỗ lực được báo cáo là một vụ xâm nhập thành công hay kết luận rằng tấn công đã lan rộng. Khi đánh giá mức độ phơi nhiễm hoặc báo cáo sự cố, cần phân biệt rõ các khái niệm này.
Nên làm gì trong lúc triển khai bản vá?
Cài bản PHP đã sửa lỗi là biện pháp xử lý chính. AWS cho biết nâng cấp là cách khắc phục đầy đủ duy nhất. Nếu chưa thể vá ngay, có thể tạm giảm mức độ phơi nhiễm bằng cách chặn tải tệp multipart; đây chỉ là biện pháp tình thế, không thay thế việc cập nhật.
47
48
Trung tâm An ninh mạng Canada đã phát cảnh báo mức nghiêm trọng về hai lỗ hổng và nguy cơ thực thi mã từ xa mà không cần xác thực.
2 Các nguồn hiện có cũng cho biết NSA khuyến nghị đưa hệ thống ngoại tuyến nếu chưa thể cập nhật ngay.
27 Hãy làm theo khuyến cáo phù hợp từ nhà cung cấp và cơ quan chức năng đối với môi trường của bạn, đặc biệt nếu PHP được tích hợp trong một sản phẩm hoặc do nhà cung cấp dịch vụ lưu trữ quản lý.
Tóm lại: xác định những nơi đang chạy PHP, cài đúng bản vá và đánh giá cảnh báo một cách thận trọng. Mức độ nghiêm trọng của PHP2Shell đòi hỏi phải hành động khẩn trương — nhưng nỗ lực khai thác, khai thác thành công và xác nhận hệ thống sản xuất bị xâm nhập là ba việc khác nhau.