NỘI DUNG
WordPress vừa vá một lỗ hổng bảo mật cực kỳ nghiêm trọng nằm ngay trong phần lõi (core) của nền tảng, cho phép kẻ tấn công không cần bất kỳ tài khoản hay quyền truy cập nào vẫn có thể thực thi mã tùy ý trên website. Điều đáng lo ngại nhất: lỗ hổng này tồn tại ngay cả trên một bản cài đặt WordPress “sạch”, không cài thêm plugin nào.
Website nào bị ảnh hưởng?
Lỗi nằm trong chính lõi WordPress, không phải plugin hay theme, nên phạm vi ảnh hưởng rất rộng:
- Phiên bản 6.9.0 đến 6.9.4 — đã được vá trong bản 6.9.5
- Phiên bản 7.0.0 đến 7.0.1 — đã được vá trong bản 7.0.2
Hai bản vá này được WordPress phát hành ngày 17/7/2026. Đáng chú ý, nhánh 6.9 ra mắt từ tháng 12/2025, nghĩa là mọi website bị ảnh hưởng đều đang chạy một phiên bản chưa đầy 8 tháng tuổi.
Ngoài ra, bản beta 2 của WordPress 7.1 cũng đã tích hợp sẵn bản vá. Các site vẫn dùng nhánh 6.8 cũng có bản cập nhật 6.8.6, nhưng đó là để vá một lỗi SQL injection khác, do một nhóm nghiên cứu riêng biệt phát hiện.
Ai phát hiện ra lỗ hổng?
Lỗ hổng được nhà nghiên cứu Adam Kues thuộc Assetnote — đơn vị quản lý bề mặt tấn công của Searchlight Cyber — tìm ra và báo cáo qua chương trình HackerOne của WordPress. Trong bài công bố với tên gọi “wp2shell”, nhóm nghiên cứu mô tả cuộc tấn công không đòi hỏi bất kỳ điều kiện tiên quyết nào và có thể bị khai thác bởi người dùng ẩn danh.
Về phía WordPress, thông báo phát hành mô tả đây là lỗi kết hợp giữa nhầm lẫn route trong tính năng xử lý hàng loạt (batch) của REST API và lỗi SQL injection, dẫn đến khả năng thực thi mã từ xa. Bản vá gồm một lỗi mức nghiêm trọng (critical) và một lỗi mức cao (high), nhưng WordPress không nói rõ lỗi nào thuộc mức nào.
Nhóm nghiên cứu tạm thời chưa công bố chi tiết kỹ thuật để tránh bị lợi dụng khai thác hàng loạt trước khi các site kịp vá. Thay vào đó, họ cung cấp một công cụ kiểm tra tại wp2shell.com để quản trị viên tự kiểm tra website của mình.
Vì sao khó phát hiện qua các công cụ quét thông thường?
Tính đến ngày 18/7/2026, lỗ hổng này chưa được cấp mã CVE và cũng chưa có điểm CVSS. Điều này có nghĩa là các công cụ quét bảo mật dựa trên CVE sẽ không phát hiện ra nó, và CISA cũng chưa thể đưa vào danh mục KEV (lỗ hổng đang bị khai thác) vì thiếu mã CVE. Vì vậy, cách duy nhất để xác định mình có bị ảnh hưởng hay không là kiểm tra trực tiếp số phiên bản WordPress đang chạy.
Ba tệp lõi liên quan đến bản vá 7.0.2 gồm:
/wp-includes/rest-api/class-wp-rest-server.php/wp-includes/class-wp-query.php/wp-includes/rest-api.php
Điểm đáng chú ý là endpoint batch API không phải tính năng mới — nó đã tồn tại từ phiên bản 5.6 (tháng 11/2020) và được công khai tài liệu từ lâu. Hiện chưa rõ điều gì đã thay đổi ở bản 6.9 khiến lỗ hổng này xuất hiện.
Bạn nên làm gì ngay bây giờ?
1. Cập nhật ngay lập tức
Đây là giải pháp duy nhất triệt để: nâng cấp lên 6.9.5 hoặc 7.0.2 tùy theo nhánh đang sử dụng. WordPress đã kích hoạt cơ chế cập nhật bắt buộc (forced update) qua hệ thống tự động cập nhật, nhưng chưa rõ cơ chế này có áp dụng được cho các site đã tắt tính năng auto-update hay không — vì vậy đừng chủ quan, hãy tự kiểm tra phiên bản thực tế đang chạy trên site của bạn.
2. Nếu chưa thể cập nhật ngay, hãy áp dụng các biện pháp tạm thời sau
Tất cả các biện pháp dưới đây đều chỉ mang tính tạm thời và có thể ảnh hưởng đến các tích hợp hợp lệ đang sử dụng REST API, vì vậy chỉ nên dùng trong lúc chờ cập nhật:
- Chặn ở tường lửa ứng dụng web (WAF): cần chặn cả hai đường dẫn
/wp-json/batch/v1vàrest_route=/batch/v1. Nếu chỉ chặn một trong hai, kẻ tấn công vẫn có thể lách qua đường còn lại. - Tắt hoàn toàn WordPress REST API nếu site không cần đến chức năng này — tuy nhiên cách này sẽ vô hiệu hóa toàn bộ truy cập REST API ẩn danh.
- Cài một plugin nhỏ chặn request ẩn danh tới
/batch/v1bằng hookrest_pre_dispatch.
Mức độ nguy hiểm thực tế đến đâu?
Tính đến thời điểm hiện tại, chưa ghi nhận trường hợp khai thác thực tế nào. Vì lỗ hổng chưa có mã CVE hay dấu hiệu nhận diện công khai, giới tấn công có thể chưa để ý đến nó — nhưng điều này có thể thay đổi rất nhanh.
Điều đáng lưu ý là mã nguồn WordPress là mã nguồn mở, và cả hai bản 7.0.1, 7.0.2 đều nằm công khai trong kho lưu trữ phát hành. Điều này có nghĩa là bất kỳ ai cũng có thể so sánh hai phiên bản để tìm ra chính xác đoạn mã đã được sửa — một rủi ro cố hữu của mô hình mã nguồn mở: không thể phát hành bản vá mà không đồng thời “chỉ đường” cho kẻ tấn công tìm ra lỗi gốc.
Để hình dung mức độ nghiêm trọng khi một lỗ hổng WordPress bị khai thác hàng loạt: trước đó, một lỗi trong plugin cache (đã được vá và chỉ ảnh hưởng đến cấu hình không mặc định) từng bị một nhóm tấn công lợi dụng để xâm nhập hơn 17.000 website. Với một lỗ hổng nằm ngay trong lõi WordPress và không cần điều kiện tiên quyết như wp2shell, tốc độ lan rộng nếu bị khai thác có thể còn nhanh hơn nhiều.
Kết luận
Nếu bạn đang quản trị một website WordPress, hãy kiểm tra ngay phiên bản đang sử dụng và cập nhật lên 6.9.5 hoặc 7.0.2 càng sớm càng tốt — bất kể site của bạn có cài plugin bảo mật hay không, vì lỗ hổng này nằm ở lõi hệ thống. Trong lúc chờ cập nhật, hãy chặn hoặc hạn chế truy cập ẩn danh vào endpoint /batch/v1 như một lớp phòng thủ tạm thời.
Gợi ý: Nếu website bị khai thác qua lỗ hổng WordPress và cần rà soát toàn bộ, Anh có thể tham khảo xử lý mã độc website WordPress để được kiểm tra, làm sạch mã độc, gỡ redirect bẩn và hardening lại website sau khi xử lý.
Với kinh nghiệm thực chiến từ việc tiếp xúc hàng ngày với vô vàn vấn đề về Website, Hosting, VPS, Server tại Phòng Kỹ thuật AZDIGI, mình luôn ấp ủ niềm đam mê chia sẻ kiến thức.
Mình xây dựng các blog không chỉ để tự trau dồi kỹ năng mà còn để cung cấp những tài liệu, hướng dẫn hữu ích nhất đến cộng đồng. Rất mong nhận được sự quan tâm của các bạn!
Để lại thông tin, mình sẽ phản hồi ngay.
