Các nhà nghiên cứu an ninh mạng đã làm sáng tỏ một vụ xâm nhập WordPress, trong đó kẻ tấn công đã triển khai nhiều cơ chế duy trì (persistence) để đảm bảo payload cuối cùng liên tục quay trở lại mà không cần phải lây nhiễm lại trang web.
Backdoor này được đặt mã là SC theo các ký hiệu "SC_" có trong nội dung bị chèn vào. Sucuri mô tả mã độc này là một "mạng lưới tự phục hồi" (self-healing mesh) được điều khiển thông qua blockchain.
"Payload tồn tại ở ít nhất tám vị trí cùng một lúc, rải rác trong các tệp tin, cơ sở dữ liệu và bộ nhớ dùng chung (shared memory), và mỗi vị trí đó đều có thể tái tạo lại tất cả các vị trí còn lại," nhà nghiên cứu bảo mật Gabriel Barbosa cho biết.
"Xóa plugin thì một drop-in sẽ viết lại nó. Xóa drop-in thì theme sẽ viết lại nó. Dọn dẹp mọi tệp trên đĩa, và lần tải trang tiếp theo sẽ khôi phục toàn bộ từ cơ sở dữ liệu hoặc từ một phân đoạn bộ nhớ dùng chung. Kết quả là một hệ thống vòng tròn không có điểm yếu duy nhất nào mà bạn có thể loại bỏ để dừng nó lại."
Theo Sucuri, mã độc này không có bất kỳ tên hàm nào có thể đọc được, thay vào đó nó sử dụng một bộ giải mã để giải xáo trộn mã bằng mã hóa thay thế (substitution cipher). Dưới đây là tóm tắt về tám thành phần của nó:
- .user.ini: thiết lập "auto_prepend_file" để chạy một loader trước mọi yêu cầu PHP trong cây thư mục đó.
- wp-content/c1b12371.php: loader bao gồm một tệp ẩn có tiền tố dấu chấm nếu nó tồn tại trong cùng một vị trí.
- wp-content/.c1b12371.php: tệp ẩn đóng vai trò là loader giai đoạn một để xác định một plugin giả và xây dựng lại nó trong mu-plugins từ ba nguồn: bản sao hiện có trong thư mục plugins, một stub được mã hóa trong thư mục cache và một gói khôi phục ZIP với tên hex ngẫu nhiên.
- wp-content/db.php: được tải trong quá trình bootstrap và mang toàn bộ payload backdoor ở định dạng nén, mã hóa Base64. Nó giải mã và triển khai lại plugin bất cứ khi nào thiếu hoặc kích thước quá nhỏ.
- wp-content/advanced-cache.php: được WordPress tải trước các plugin thông thường khi tính năng caching được bật, và xây dựng lại plugin từ năm nguồn độc lập: mu-plugin hiện có, bản sao plugin hiện có, phân đoạn bộ nhớ dùng chung System V chứa PHP, gói ZIP và cơ sở dữ liệu. Sau đó, nó hook vào plugins_loaded và thực thi nó.
- wp-content/themes/khorshidi/functions.php: một bản sao nằm trong theme của db.php với cùng một backdoor và viết lại plugin mỗi khi nó không hiện diện.
- wp-content/mu-plugins/hyper-engine-kit.php: mã độc thực sự được cài đặt dưới dạng cả must-use plugin và plugin thông thường.
- wp-content/plugins/hyper-engine-kit/hyper-engine-kit.php: một bản sao của cùng payload backdoor để dự phòng.
Bất kể phương thức khởi chạy backdoor nào, nó đều thực hiện một loạt các hành động, bao gồm ẩn mình khỏi màn hình quản trị plugin hoặc kiểm tra cập nhật, giao tiếp với máy chủ điều khiển (C2) bằng blockchain Ethereum, thu thập thông tin trang web bị nhiễm (fingerprinting) và tải xuống các payload bổ sung, tạo tài khoản quản trị ẩn và chạy vòng lặp tái lây nhiễm.
Khả năng của backdoor cho phép kẻ vận hành kiểm soát trang web WordPress, lấy JavaScript tùy ý để chèn và nhắm mục tiêu khách truy cập bằng skimmer (hoặc mã độc khác), chạy mã PHP và hủy kích hoạt hoặc xóa các plugin cụ thể.
"Trên các máy chủ hỗ trợ System V shared memory, payload được ghi vào một phân đoạn được xác định bằng một khóa số cố định," Sucuri cho biết. "Phân đoạn đó nằm trong RAM, vì vậy nó tồn tại sau cả khi xóa tệp và dọn dẹp cơ sở dữ liệu, và trên shared hosting, nó thậm chí có thể được sở hữu bởi một tài khoản khác."
"Việc lây nhiễm đăng ký các cron hooks, bao gồm các tên ngẫu nhiên cùng với một fetch hook đã biết. System cron chạy tệp cron của WordPress, không phải lưu lượng truy cập của khách truy cập, sau đó kích hoạt việc triển khai lại theo lịch trình."
Hiện chưa rõ mã độc này được đưa vào trang web WordPress bằng cách nào. Tuy nhiên, các vector truy cập ban đầu điển hình bao gồm các lỗ hổng bảo mật đã biết trong WordPress, plugin và theme; thông tin đăng nhập yếu; các cuộc tấn công chuỗi cung ứng phần mềm nhắm vào các plugin phổ biến; và việc khai thác các tính năng tải lên biểu mẫu hoặc phương tiện không an toàn để đẩy PHP web shell vào thư mục máy chủ.
"SC là một lời nhắc nhở rằng một vụ lây nhiễm WordPress hiện đại có thể là một hệ thống thay vì chỉ là một tệp tin," Sucuri nói. "Bộ công cụ này phát tán các bản sao giống hệt nhau của một backdoor trên các drop-in, theme, một plugin giả ở hai vị trí, cơ sở dữ liệu và bộ nhớ dùng chung, ẩn kênh điều khiển bên trong hạ tầng blockchain hợp pháp và tự viết lại chính nó từ bất kỳ bản sao nào còn sót lại ngay trong yêu cầu tiếp theo."
Lỗ hổng Plugin WordPress wpForo Forum bị khai thác
Tiết lộ này được đưa ra khi một lỗ hổng unauthenticated SQL injection mức độ nghiêm trọng cao trong plugin wpForo Forum (CVE-2026-1581, điểm CVSS: 7.5) đang bị khai thác tích cực. Vấn đề ảnh hưởng đến tất cả các phiên bản của plugin cho đến phiên bản 2.4.14.
Theo dữ liệu từ Previdian, chưa đến 20 nỗ lực khai thác nhắm vào lỗ hổng này đã được quan sát kể từ ngày 3 tháng 7 năm 2026. Hoạt động này bắt nguồn từ năm địa chỉ IP của kẻ tấn công nằm ở Bulgaria, Thụy Sĩ, Pháp, Mỹ và Yemen.