AI tìm ra lỗi trong mã vận hành 70% trang web

AI giúp phát hiện hai lỗ hổng PHP2Shell đạt 9,2 điểm CVSS. Việc xây dựng phương thức khai thác mất khoảng một tuần, còn quá trình phối hợp vá lỗi kéo dài gần hai tháng.

Minh họa AI phân tích các lỗ hổng trong mã nguồn PHP
AI giúp phát hiện hai lỗ hổng nghiêm trọng trong lõi PHP.

AI đã giúp các nhà nghiên cứu phát hiện hai lỗ hổng nghiêm trọng trong lõi PHP, ngôn ngữ vận hành khoảng 70% số trang web trên toàn cầu theo Wiz Research. Hai lỗi PHP2Shell đạt 9,2 điểm CVSS 4.0 và có thể bị lợi dụng để chạy mã mà không cần đăng nhập. Quá trình phối hợp xác nhận, sửa lỗi và chuẩn bị biện pháp bảo vệ kéo dài khoảng hai tháng.

Theo bài viết gốc của The New Stack, Calif.io phát hiện một lỗ hổng bằng GPT-5.6 Sol của OpenAI. Wiz độc lập tìm ra cả hai bằng Wiz Atlas, Gemini 4 Argon của Google và GPT-5.6 Sol. Cloudflare cũng nêu tên Quarkslab trong nhóm các bên đã báo cáo lỗi.

Minh họa mô hình AI hỗ trợ nghiên cứu lỗi PHP
AI hỗ trợ quá trình phân tích lỗi trong lõi PHP.

Hai lỗ hổng mang mã CVE-2026-109618 và CVE-2026-109619, được gọi chung là PHP2Shell. Phát hiện cho thấy AI có thể rút ngắn quá trình xây dựng một phương thức khai thác, nhưng việc vá lỗi trên một hệ sinh thái phần mềm lớn vẫn cần sự phối hợp giữa nhà duy trì, nhà cung cấp hạ tầng và các tổ chức bảo mật.

Minh họa AI kiểm tra mã nguồn để tìm PHP2Shell
Mô hình AI được dùng để tìm và kiểm tra PHP2Shell.

Nội dung các lỗi đã nằm trong PHP suốt một thập kỷ

PHP2Shell gồm các lỗi an toàn bộ nhớ đã tồn tại trong mã PHP nhiều năm. Theo Wiz Research, ít nhất một lỗ hổng ảnh hưởng tới mọi bản phát hành PHP trong mười năm qua, còn một phần mã dễ bị tấn công đã xuất hiện từ PHP 5.4.

Vấn đề bắt đầu từ cách PHP xử lý lỗi. Khi một yêu cầu làm cạn bộ nhớ hoặc khiến tiến trình gặp sự cố, PHP có thể để lại tham chiếu tới vùng nhớ đã được giải phóng. Yêu cầu tiếp theo do cùng tiến trình xử lý vẫn có thể coi tham chiếu đó là hợp lệ. Wiz cho biết kẻ tấn công có thể lợi dụng hành vi này để truy cập dữ liệu nhạy cảm hoặc chạy mã độc.

Cách các lỗi bộ nhớ bị khai thác

Các lỗi liên quan đến việc tiếp tục sử dụng vùng nhớ đã giải phóng và nhầm lẫn kiểu dữ liệu. Lõi PHP được viết bằng C, ngôn ngữ yêu cầu lập trình viên trực tiếp kiểm soát nhiều thao tác quản lý bộ nhớ. Wiz chứng minh rằng lỗi có thể bị khai thác để chạy mã trên WordPress, Drupal và Joomla mà không cần đăng nhập. Nhóm nghiên cứu cũng trình diễn cách làm lộ bộ nhớ máy chủ mà không phải thực thi mã.

Các lỗi không bị phát hiện trong thời gian dài vì việc khai thác đòi hỏi phải kết hợp nhiều điểm yếu theo một chuỗi khó nhận ra. Theo Wiz, một nhà nghiên cứu sử dụng các mô hình AI tiên tiến hoàn thành quá trình này trong khoảng một tuần, trong khi trước đây một nhóm chuyên gia có thể cần nhiều tháng.

Wiz nhận định các lỗ hổng vốn đã tồn tại trong mã, còn AI giúp việc biến chúng thành phương thức khai thác hoạt động được trở nên dễ dàng hơn. Diễn biến này cho thấy vì sao AI đang làm thay đổi hoạt động rà soát mã: đội phòng thủ có thể tìm lỗi sớm hơn, nhưng kẻ tấn công cũng có thể dùng cùng năng lực để tìm điểm yếu trước khi nhà phát triển kịp vá.

Từ phát hiện đầu tiên đến bản vá mất hai tháng

Wiz phát hiện lỗ hổng đầu tiên ngày 19 tháng 8 và báo cáo các lỗi cho nhóm bảo mật PHP ngày 24 tháng 8. Các phiên bản đã vá được phát hành ngày 21 tháng 10, sau gần hai tháng xác nhận lỗi, kiểm tra các biến thể và chuẩn bị biện pháp bảo vệ.

Một ngày sau phát hiện ban đầu, nhóm nghiên cứu xác nhận có thể thực thi mã trên Drupal mà không cần xác thực. Đến ngày 21 tháng 8, Wiz chứng minh được hình thức tấn công tương tự trên WordPress.

Theo Wiz, nhóm PHP xác nhận báo cáo vào ngày 21 tháng 9 và bắt đầu xây dựng bản sửa lỗi có phối hợp. Các bản PHP đã vá được phát hành vào ngày 21 tháng 10, cùng ngày thông tin kỹ thuật được công khai.

Kiểm tra các biến thể trước khi phát hành

Việc sửa lỗi không chỉ liên quan đến một đoạn mã. Wiz cho biết các nhà nghiên cứu tìm thấy nhiều biến thể của cùng một vấn đề trong cách PHP quản lý bộ nhớ. Nhóm phụ trách phải bảo đảm bản vá xử lý được toàn bộ các biến thể đã xác định.

Các nhà cung cấp dịch vụ lưu trữ, nền tảng đám mây, hãng bảo mật và đơn vị phát hành Linux cũng cần thời gian chuẩn bị trước khi chi tiết lỗ hổng được công khai. Wiz ghi nhận Cloudflare, Google Cloud, AWS, Microsoft và Akamai đã hỗ trợ phối hợp biện pháp bảo vệ và hướng dẫn.

Khoảng thời gian chuẩn bị có ý nghĩa khi nhiều đội bảo mật đang phải xử lý lượng lỗi chưa vá lớn. Một khảo sát khác trên Sine cho thấy 66% lãnh đạo bảo mật tại các công ty tỷ đô vẫn để tồn tại lỗi chưa vá.

Thông tin rò rỉ trước giờ công bố chín tiếng

Chi tiết về PHP2Shell bị rò rỉ trước thời điểm công bố dự kiến. Cloudflare bắt đầu tự động bảo vệ khách hàng lúc 3 giờ 02 phút theo giờ phối hợp quốc tế ngày 21 tháng 10, sớm hơn thông báo công khai khoảng chín tiếng. Công ty đã quan sát thấy lưu lượng tấn công trong khoảng thời gian này.

Cloudflare cho biết những kẻ khai thác liên tục điều chỉnh dữ liệu gửi lên để vượt qua các quy tắc phòng vệ. Công ty cũng lưu ý rằng dữ liệu từ yêu cầu gửi tới máy chủ không phải lúc nào cũng cho biết cuộc khai thác có thành công hay không. Vì vậy, biện pháp bảo vệ mới còn kiểm tra phản hồi từ máy chủ.

Tường lửa chỉ là lớp phòng vệ bổ sung trong thời gian cập nhật. Cloudflare nhấn mạnh rằng khách hàng vẫn cần vá các kho mã PHP. Quy tắc tường lửa có thể chặn một số nỗ lực khai thác, nhưng không loại bỏ lỗ hổng trong phần mềm đang chạy trên máy chủ.

AI buộc quy trình công bố lỗ hổng phải thay đổi

OpenAI đề xuất quy trình năm giai đoạn để xử lý các lỗ hổng nghiêm trọng do AI tiên tiến phát hiện. Quy trình ưu tiên xác nhận và vá lỗi, kiểm tra lại bản vá bằng AI, thông báo sớm cho các tổ chức có thể hành động, chuẩn bị phân phối bản cập nhật và công bố hướng dẫn kiểm chứng.

Trong hai tháng xử lý PHP2Shell, OpenAI dẫn dắt một nỗ lực phối hợp thuộc sáng kiến Patch the Planet. Công ty cho biết các nhà duy trì PHP phụ trách sửa lỗi và phát hành phiên bản mới, còn OpenAI cùng các đối tác hỗ trợ nghiên cứu, kỹ thuật và điều phối.

Ở giai đoạn đầu, nhà duy trì, nhà nghiên cứu và các đối tác kỹ thuật thiết yếu cùng xác nhận và sửa lỗi. Bản vá sau đó được kiểm tra bằng những mô hình tiên tiến để tìm cách vượt qua biện pháp sửa chữa.

Thông báo sớm cho các đơn vị có thể hành động

Các tổ chức bị ảnh hưởng tiếp theo nhận thông tin sớm tùy theo khả năng hành động. Đơn vị phát hành có thể đưa bản sửa lỗi trở lại các phiên bản cũ, nhà cung cấp dịch vụ lưu trữ thử biện pháp giảm thiểu, còn hãng bảo mật xây dựng quy tắc phát hiện. Cơ quan chính phủ tham gia sau đó để đưa hướng dẫn tới các đơn vị vận hành hạ tầng trọng yếu.

Khi bản vá và kế hoạch công bố đã ổn định, nhà phân phối cùng nhà cung cấp dịch vụ chuẩn bị cập nhật cho sản phẩm. Hướng dẫn công khai giúp người vận hành xác nhận rằng bản sửa lỗi thực sự đang hoạt động. OpenAI cho biết quá trình xử lý PHP có sự tham gia của CISA, Văn phòng Giám đốc Không gian mạng Quốc gia Mỹ, Lực lượng Siêu trí tuệ của Nhà Trắng và các đối tác quốc tế.

Đề xuất này xuất hiện trong bối cảnh AI vừa tăng tốc viết mã, vừa tạo thêm áp lực xác minh. Đây cũng là vấn đề được đặt ra khi AI tăng tốc phát triển phần mềm nhưng hoạt động kiểm chứng vẫn phải được củng cố.

Cùng một công cụ phục vụ cả phòng thủ và tấn công

Các mô hình AI có thể giúp đội phòng thủ tìm lỗ hổng nhanh hơn, nhưng cũng có thể giúp kẻ tấn công phát triển phương thức khai thác. OpenAI gọi hai lỗi PHP là một trong những vấn đề bảo mật có ảnh hưởng lớn nhất trong thời gian gần đây và thừa nhận năng lực này có tính hai mặt.

Để hỗ trợ phía phòng thủ, OpenAI cam kết cung cấp 1 tỷ USD quyền truy cập được trợ giá thông qua chương trình Daybreak for Frontline Defenders. Chương trình hướng tới các tổ chức có nguồn lực bảo mật hạn chế nhưng đang bảo vệ dịch vụ thiết yếu. Công ty cũng hỗ trợ nhà duy trì phần mềm nguồn mở bằng gói Codex for OSS và tài trợ trực tiếp cho các dự án.

Kinh phí và quyền truy cập mô hình không giải quyết toàn bộ khối lượng công việc. Công cụ phát hiện lỗ hổng cũng tạo ra mã do AI viết mà nhà duy trì phải xem xét. OpenAI thừa nhận mỗi dự án có ưu tiên riêng, nên hỗ trợ có thể không đến được với tất cả những người cần nó.

Khâu xác minh vẫn giữ vai trò trung tâm ngay cả khi AI có thể phân tích mã nhanh hơn con người. Cách tiếp cận này tương đồng với bài toán xác minh 2.000 yêu cầu hợp nhất mã mỗi tháng: tốc độ chỉ có giá trị khi kết quả được kiểm tra trước khi đưa vào hệ thống thật.

Quản trị viên PHP cần làm gì

Quản trị viên cần kiểm tra thông báo của nhà cung cấp và xác nhận hệ thống đã nhận bản vá, thay vì chỉ dựa vào số phiên bản PHP hoặc tường lửa. Thông báo bảo mật của PHP liệt kê bốn phiên bản đã vá: PHP 8.5.12, 8.4.27, 8.3.36 và 8.2.35.

  • Kiểm tra hệ thống đang chạy một trong các bản PHP đã vá hoặc bản phân phối đã đưa bản sửa lỗi trở lại phiên bản hiện tại.
  • Đối chiếu trạng thái cập nhật với nhà cung cấp Linux, dịch vụ lưu trữ hoặc nền tảng được quản lý.
  • Duy trì tường lửa và các biện pháp giảm thiểu trong khi triển khai bản vá.
  • Xác nhận bản sửa lỗi hoạt động thay vì chỉ kiểm tra số phiên bản hiển thị.

Xác nhận bản vá với nhà cung cấp

Các đội sử dụng bản phân phối Linux hoặc dịch vụ lưu trữ được quản lý nên kiểm tra trực tiếp với nhà cung cấp. Bản sửa lỗi có thể được đưa trở lại phiên bản hiện tại mà không làm thay đổi số phiên bản PHP hiển thị trên hệ thống.

OpenAI cũng phát hành công cụ kiểm tra phiên bản PHP cùng hai kỹ năng Codex để kiểm tra máy chủ cục bộ và trang web. Công cụ có thể cảnh báo phiên bản dễ bị tấn công, nhưng không xác nhận chắc chắn bản vá đã được áp dụng, nhất là khi nhà cung cấp đưa bản sửa lỗi trở lại một phiên bản cũ.

PHP2Shell cho thấy AI có thể rút ngắn quá trình tìm và xây dựng phương thức khai thác xuống khoảng một tuần. Tuy nhiên, theo Wiz Research, việc sửa lỗi an toàn trên hệ sinh thái vận hành khoảng 70% số trang web vẫn cần gần hai tháng phối hợp.

Hãy theo dõi Sine để cập nhật những thay đổi bảo mật và AI có thể tác động trực tiếp tới hệ thống của bạn.