NỘI DUNG
Hướng dẫn khắc phục Spam SEO website WordPress
Dạo gần đây tôi nhận được từ người dùng và nhờ xử lý mã độc các website WordPress bị nhiễm mã độc, chuyển hướng, index tiếng Trung tiếng Nhật. Bị spam index, spam SEO trên công cụ Google search. Trong quá trình tìm hiểu và xử lý. Tôi viết lại bài hướng dẫn này và chia sẻ lại đến bạn đọc để hiểu hơn để dễ dàng xử lý.
Thuật ngữ chung mà người dùng đặt cho vấn đề này là Spam SEO. Spam SEO bao gồm Spam URL Injection và Cloaking SEO Spam, là các kỹ thuật mũ đen được tin tặc sử dụng để thao túng công cụ tìm kiếm, tăng thứ hạng website hoặc chuyển hướng người dùng đến các trang độc hại. Những kỹ thuật này thường được triển khai thông qua mã độc chèn vào các file WordPress.
1. Hiểu thêm về Spam SEO
1.1 Spam URL Injection
Spam URL Injection là kỹ thuật chèn hàng loạt URL giả hoặc không cần thiết vào website, nhằm:
- Tạo các trang giả để công cụ tìm kiếm lập chỉ mục, tăng thứ hạng.
- Chuyển hướng người dùng đến các trang spam hoặc độc hại.
- Nhồi nhét từ khóa để thao túng kết quả tìm kiếm.
Dấu hiệu nhận biết:
- Xuất hiện các URL lạ trong nội dung HTML hoặc sitemap, ví dụ: id/12345.html.
- Tự động tạo sitemap chứa hàng nghìn URL giả với từ khóa ngẫu nhiên.
- Các liên kết
<a>
được chèn vào nội dung với URL không liên quan đến nội dung website.

1.2 Cloaking SEO Spam
Cloaking SEO Spam là kỹ thuật hiển thị nội dung khác nhau cho công cụ tìm kiếm (bot) và người dùng, nhằm:
- Phục vụ nội dung tối ưu hóa (nhồi nhét từ khóa, liên kết giả) cho bot để tăng thứ hạng.
- Chuyển hướng người dùng đến các trang độc hại hoặc hiển thị nội dung khác.
- Che giấu hành vi độc hại để tránh bị phát hiện.
Dấu hiệu nhận biết
- Website hiển thị nội dung bình thường cho người dùng, nhưng bot tìm kiếm nhận được nội dung nhồi nhét từ khóa hoặc liên kết giả.
- Chuyển hướng người dùng đến domain bên ngoài khi truy cập từ nguồn cụ thể (như công cụ tìm kiếm).
- Mã kiểm tra
user agent
hoặcreferrer
để quyết định nội dung trả về.
2. Phân tích mã độc trong file WordPress
Đây là một website WordPress khi kiểm tra index trên Google thì bị rất nhiều. Điều này gây ảnh hưởng nghiêm trọng đến trải nghiệm người dùng, uy tín và thương hiệu website.

Thông thường đến kẻ tấn công sẽ lợi dùng Googlebot
để mà index, thực hiện Spam SEO. Vì vậy với các website đang bị Spam SEO như trên tôi sẽ thực hiện một mẹo nhỏ kiểm tra như sau.
Tôi sử dụng lệnh bên dưới để tìm từ khoá Googlebot
. Vì mục tiêu của kẻ tấn công là Spam trên Google
egrep -Rl "Googlebot" thư_mục_web
Kết quả trả về có 1 file .php
có chứa từ khoá này. Và file này nằm ở thư mục gốc nhưng không thuộc core WordPress. Đối với các file còn lại thuộc Plugin khác sẽ tuỳ vào trường hợp để kiểm tra.

Sau khi mở file ra đọc, phân tích bởi AI thì mã độc nó rất tinh vi như. Đánh lừa được người dùng và công cụ quét mã độc (Imunify360, cPGuard)

Dựa trên file wp-template.php
, chúng ta có thể thấy các kỹ thuật Spam SEO được triển khai như sau:
2.1 Spam URL Injection
Tạo URL động:
- Hàm
getsuijiurl()
vàcharshuzis()
tạo URL ngẫu nhiên nhưid/12345.html
. - Hàm
getcurlhtmlcontent()
chèn thẻ<a>
với liên kết tới các URL động, sử dụng từ khóa ngẫu nhiên từgetkeywordinfo()
. Nếu trang có ít hơn 10 liên kết, mã sẽ chèn thêm tới 60 liên kết giả.
Sitemap giả:
- Hàm
smlocalgetcurlurlforgoogle()
tạo sitemap XML với 1600 URL, mỗi URL kết hợp thư mục ngẫu nhiên (như news, game, hot) và số ngẫu nhiên. - Các hàm
smgetcurlurlforbaidu()
vàsmgetcurlurlforgoogle()
lấy sitemap từ server bên ngoài (như http://103.197.184.172), chứa các URL spam để đánh lừa bot.
Nhồi nhét từ khoá:
- Mã thay thế tiêu đề (<title>) và thẻ meta (description, keywords) bằng từ khóa ngẫu nhiên, làm tăng khả năng lập chỉ mục các trang giả.
2.2 Cloaking SEO Spam
Phát hiện bot:
- Hàm
isspidercode()
vàgnisspidercode()
kiểm tra user agent để phát hiện bot tìm kiếm (như Googlebot, Baiduspider). Nếu phát hiện bot, mã phục vụ nội dung tối ưu hóa hoặc sitemap giả.
Chuyển hướng có điều kiện
- Mã kiểm tra referrer qua
iscomefromhttpreferer()
vàgniscomefromhttpreferer()
. Nếu yêu cầu đến từ công cụ tìm kiếm, mã chuyển hướng tới các domain như http://144.168.104.190 hoặc http://klbqf.com. - Hàm
getcurlurl()
lấy nội dung từ server bên ngoài để phục vụ bot, trong khi người dùng có thể bị chuyển hướng.
Mã hoá phức tạp
- Phần
wp-style
sử dụng chuỗi mã hóa (như\x73\x74\x79\x6c\x65
cho style) và cấu trúcgoto
để che giấu logic, hỗ trợ cloaking bằng cách chỉ kích hoạt hành vi spam cho bot.
Hành vi khác của đoạn mã độc trên
- Sửa đổi file: Mã chèn file
wp-style.php
vào các thư mục WordPress (wp-content, wp-includes, wp-admin) với nội dung mã hóa, đảm bảo mã độc tồn tại lâu dài. - Lấy tài nguyên bên ngoài: Sử dụng cURL để lấy nội dung từ các server như
http://103.204.76.213
, thường là nguồn cung cấp nội dung spam hoặc chuyển hướng.
3. Cách khắc phục Spam SEO
3.1 Xoá file độc hại trên
- Kiểm tra và xóa file. File này không thuộc WordPress core và chứa mã độc. Xóa ngay file
wp-template.php
khỏi server/host (thường nằm ở thư mục gốc hoặcwp-includes
). - Tìm và xóa các file như
wp-style.php
trong các thư mục nhưwp-content
,wp-includes
,wp-admin
, hoặcwp-content/uploads
. - Kiểm tra
wp-load.php
xem có bị chèn mã độc (ví dụ: tham chiếu đếnwp-template.php
) hay không.
3.2 Khôi Phục Từ Bản Sao Lưu
Khôi phục website từ bản sao lưu trước khi bị nhiễm mã độc. Đảm bảo bản sao lưu không chứa các file độc hại.
3.3 Quét Và Làm Sạch Website
Việc quét và làm sạch website là cách ưu tiên hàng đầu. Tôi đã có sẵn một bài viết hướng dẫn xử lý mã độc website rất chi tiết. Tôi sẽ để liên kết bên dưới mời tham khảo nhé.
3.4 Vô hiệu xoá nội dung Spam
Kiểm tra lại siteemap
- Xóa các sitemap giả (như
sitemap.xml
chứa URL động). Tạo lại sitemap hợp pháp bằng plugin như Yoast SEO hoặc Rank Math.
Xóa liên kết và từ khóa giả
- Sử dụng công cụ như Search Console của Google để kiểm tra các URL được lập chỉ mục. Gửi yêu cầu xóa (Remove URLs) cho các URL spam.
- Kiểm tra nội dung HTML để xóa các thẻ
<a>
hoặc meta tag chứa từ khóa không liên quan.
3.5 Ngăn chặn chuyển hướng
- Kiểm tra file
.htaccess
. Tin tặc có thể chèn quy tắc chuyển hướng trong.htaccess
. So sánh với file.htaccess
mặc định của WordPress và xóa các quy tắc đáng ngờ. - Kiểm tra chuyển hướng JavaScript/PHP: Tìm các đoạn mã trong file PHP hoặc JavaScript thực hiện chuyển hướng (như
header()
,echo $_tourl
). Xóa các đoạn mã này.
4. Phòng Ngừa Spam SEO Trong Tương Lai
4.1. Cập Nhật Và Bảo Mật WordPress
- Cập nhật thường xuyên: Cập nhật WordPress, theme, và plugin lên phiên bản mới nhất để vá lỗ hổng bảo mật.
- Xóa plugin/theme không sử dụng: Xóa các plugin hoặc theme không còn sử dụng, vì chúng có thể là điểm yếu để tin tặc khai thác.
- Xử dụng mật khẩu mạnh: Đổi mật khẩu admin, cơ sở dữ liệu, và tài khoản hosting. Sử dụng mật khẩu dài, phức tạp và lưu trữ an toàn.
4.2. Tăng Cường Bảo Mật Server
Hạn chế quyền truy cập file:
- Đặt quyền file/thư mục đúng cách: 644 cho file, 755 cho thư mục.
- Vô hiệu hóa thực thi PHP trong các thư mục như
wp-content/uploads
bằng cách thêm quy tắc vào.htaccess
:
<Files *.php>
Order Deny,Allow
Deny from all
</Files>
Sử dụng firewall
- Cài đặt firewall ứng dụng web (WAF) như Cloudflare, Wordfence, AIOS hoặc Sucuri để chặn các yêu cầu đáng ngờ.
4.3. Giám Sát Và Kiểm Tra Thường Xuyên
Theo dõi Google Search Console: Kiểm tra các URL được lập chỉ mục và báo cáo bất kỳ URL bất thường nào.
Sử dụng công cụ giám sát: Plugin như Wordfence hoặc Solid Security có thể cảnh báo khi file bị thay đổi hoặc có hành vi đáng ngờ.
5. Kết luận
Spam SEO, bao gồm Spam URL Injection và Cloaking SEO Spam, là mối đe dọa nghiêm trọng đối với website WordPress, làm giảm uy tín và gây hại cho người dùng. File wp-template.php là một ví dụ điển hình của mã độc triển khai các kỹ thuật này thông qua tạo URL giả, nhồi nhét từ khóa, và cloaking nội dung. Bằng cách xóa file độc hại, khôi phục từ bản sao lưu, và áp dụng các biện pháp bảo mật, bạn có thể khắc phục và ngăn chặn vấn đề này.
Nếu bạn nghi ngờ website của mình bị nhiễm mã độc hoặc cần hỗ trợ thêm, hãy liên hệ với tôi để hỗ trợ bạn kiểm tra bảo mật web.
Tài liệu tham khảo thêm:
- https://cheq.ai/blog/what-is-seo-spam-2/
- https://solidwp.com/blog/seo-spam/
- https://blog.sucuri.net/2020/11/hidden-seo-spam-link-injections-on-wordpress-sites.html
- https://websitehcm.com/cloaking-trong-spam-seo/