Hướng dẫn cách xử lý website bị dính mã độc

Lưu lại ngay bài viết này bởi lẽ, hơn 9 000 trang web bị Google chặn mỗi ngày vì malware; nếu không xử lý kịp, bạn có nguy cơ mất 100 % traffic organic và dữ liệu khách hàng

 

Dưới đây là lộ trình “giải cứu” website khi bị nhiễm mã độc (đặc biệt là hack chèn ký tự tiếng Nhật). Mình chia toàn bộ quy trình thành 4 giai đoạn, với tư duy: Phát hiện → Làm sạch server → Làm sạch index → Tăng cường nội dung. Mỗi giai đoạn kèm checklist chi tiết để bạn có thể tự triển khai hoặc giao team thực hiện.

1. PHÁT HIỆN & XÁC NHẬN SỰ CỐ

Kiểm tra thông báo trong Google Search Console (GSC):

• Vào Bảo mật và tác vụ thủ công ➜ Vấn đề bảo mật, nếu Google phát hiện phần mềm độc hại/hack, bạn sẽ thấy cảnh báo ngay

• Đây là tín hiệu “chính thức” nhanh nhất.

Quét nhanh index rác:

• Tìm site:yourdomain.com kèm vài ký tự Nhật (例: カジノ, 購入)

• Xuất danh sách sang Google Sheets/CSV. Bạn có thể dùng SEOQuake hoặc Mozbar để tải về.

Dò back-door & mã độc:

• Chạy WPScan, Sucuri,… đồng thời xem log server để phát hiện file/SQL lạ, (nếu mã nguồn là WP)

• Ưu tiên log 24 – 48h trước khi traffic tụt.

Safe Browsing Transparency:

• Kiểm tra https://transparencyreport.google.com/safe-browsing/search?url=yourdomain.com

• Nếu hiển thị “Dangerous”, Google đã gắn cờ.

Kết quả: Bạn có 2 file:

• Danh sách URL nhiễm (có index

• Danh sách file/mã độc (thường nằm ở /cache/, /uploads/, hoặc trong DB)

2. KHÓA CỬA & LÀM SẠCH

• Thay toàn bộ thông tin đăng nhập, update CMS & plugin

◦ Đổi user/pass SSH, DB, FTP, admin.

◦ Cập nhật core & plugin lên bản mới nhất; xóa plugin/theme không dùng .

• Sao lưu song song

◦ Backup full mã nguồn + DB vào nơi an toàn trước khi can thiệp, đề phòng lỗi.

• Gỡ mã độc

◦ Tự tay xóa file/row SQL lạ.

◦ Kiểm tra wp_options, functions.php, crontab, .htaccess, wp-config.php – đây là nơi hacker hay chèn redirect/base64.

• Đóng lỗ hổng

◦ Vô hiệu hoá XML-RPC, limit login attempts, chặn /wp-admin theo IP, cài WAF (Cloudflare, Imunify360).

3. LÀM SẠCH INDEX & GIAO TIẾP VỚI GOOGLE

3.1 Xử lý URL nhiễm mã độc

• Nếu trùng slug với URL hợp lệ: khôi phục nội dung sạch, sau đó ép index lại. Hoặc tạo URL mới chuyển nội dung nếu URL mãi ko khôi phục TOP sau 1-2 tuần.

• Nếu là URL sinh ra 100 % rác: Xoá và để hiển thị mã phản hồi 404, sau đó vào Google Search console xoá tiếp

• Chỉ dùng 301 về homepage khi không thể 404, trường hợp này lỗi do lúc code website không có làm mã phản hồi 404.

3.2 Submit lại trang quan trọng

• Dùng công cụ ép index trong Search Consile+ submit XML Sitemap để Google thu thập nhanh và nhiều.

3.3 Giám sát re-crawl

• Theo dõi tab Page Indexed/Not Indexed trong GSC.

• Log Googlebot (user-agent) trong access log để chắc Google đã thu thập phiên bản sạch.

3.4 Gửi “Reconsideration Request”(nếu có Manual Action)

• Trình bày ngắn gọn: nguyên nhân → biện pháp → kết quả; đính kèm bằng chứng (ảnh log, diff code).

Kinh nghiệm thực tế: Nếu 100 % URL rác trả 404/410 & sitemap mới chỉ chứa trang sạch, Google thường xoá hết dấu vết trong 7-14 ngày (có case 3-4 ngày). Trường hợp redirect 301 về homepage thời gian có thể lâu hơn vì Google phải chạy thêm chu trình canonical. webmasters.stackexchange.com

4. KHÔI PHỤC TỐI ĐA KẾT QUẢ SEO

4.1 Audit nội dung “lõi”

• Đánh giá E.E.A.T – xoá/merge bài trùng lặp, bổ sung tác giả, nguồn, ngày cập nhật. Các trang mỏng nội dung phải viết lại – nếu không, noindex tạm thời. (Google Quality Guidelines yêu cầu nội dung kém, bị hack phải xếp Lowest ).

• Tối ưu on-page: thẻ <title>, <meta description>, heading, alt ảnh, Schema FAQ/Product.

• Liên kết nội bộ: trải lại topical map, bảo đảm mọi trang quan trọng ≤3 click từ trang chủ.

4.2 Mở rộng chủ đề & khôi phục authority

• Nghiên cứu key mở rộng bằng Keyword tool/Ahrefs/Semrush (chủ đề ngang).

• Bổ sung thêm các bài giải pháp: viết bài trả lời intent phụ → trỏ về trang chính, giống mô hình “topic cluster”.

4.3 Kỹ thuật & Tốc độ

• Sửa Core Web Vitals, HTTPS, HTTP/2, lazy-load,…

• Thiết lập auto-backup hàng ngày + quét malware theo lịch, định kỳ hàng tuần.

4.4 Theo dõi & Báo cáo

 

(phần này có bảng, xem tại URL ở cmt cho dễ nhìn nhé)

5. TẠI SAO LÀM ĐỦ 4 BƯỚC TRÊN LẠI QUAN TRỌNG?

• Google phạt trang bị hack không phải do ý đồ xấu, mà vì rủi ro cho người dùng; xử lý nhanh, minh bạch → Google dỡ cảnh báo nhanh hơn .

• 404 dứt khoát giúp Google “quên” URL rác nhanh – tránh loãng crawl budget.

• Cập nhật CMS & plugin là biện pháp phòng ngừa số 1; 46 % site tái nhiễm vì quên bước này comodosslstore.com.

• Audit content bảo đảm E.E.A.T & loại bỏ nội dung rác, giúp Google “tin” website là chính chủ, không còn spam, nó chỉ là 1 sự cố .

6. BIỆN PHÁP PHÒNG TRÁNH.

Nếu bạn làm đúng thứ tự Phát hiện → Làm sạch server → Làm sạch index → Tăng cường nội dung thì trong thực tế thứ hạng có thể phục hồi 60 % sau 7 ngày và cán mốc 90-95 % trong 3-4 tuần.

• Google sẽ cảnh báo trên Search Console và dán nhãn “Suspected malicious behavior”; những URL bị chèn mã độc thường bị đánh giá Lowest trong Quality Guidelines, dẫn tới rớt hạng và mất tín nhiệm .

• Hơn 9 000 trang web bị Google chặn mỗi ngày vì malware; nếu không xử lý kịp, bạn có nguy cơ mất 100 % traffic organic và dữ liệu khách hàng wpbeginner.com.

(phần này có bảng, xem tại URL ở cmt cho dễ nhìn nhé)

 

7. CHECKLIST XỬ LÝ KHẨN CẤP KHI PHÁT HIỆN MÃ ĐỘC

Mục tiêu: cô lập – làm sạch – khôi phục thứ hạng trong ≤ 14 ngày.

 

0–2 giờ đầu

1. Đóng cửa: đổi tất cả password & token API; tạm khóa đăng nhập quản trị theo IP.

2. Backup forensics: sao lưu mã nguồn + DB gốc để phân tích.

2–12 giờ

1. Quét & xoá mã độc

◦ Dùng WP-CLI, Sucuri, ImunifyAV để liệt kê file lạ; kiểm tra .htaccess, wp-config.php, cron jobs sucuri.net.

◦ Xoá hoặc khôi phục file sạch từ bản backup.

2. Cập nhật lõi & plugin lên bản mới nhất; vô hiệu hoá/ghi log plugin không dùng.

12–24 giờ

1. Làm sạch index

◦ Tạo danh sách URL rác (thường chứa ký tự Nhật) bằng site:.

◦ Cho URL rác trả 404/410 hoặc remove thủ công trong GSC; chỉ 301 về trang chủ khi buộc phải giữ link ngoài developers.google.com.

2. Submit lại URL quan trọng + sitemap mới trong Search Console để Google crawl bản sạch nhanh hơn developers.google.com.

Ngày 2–7

1. Giám sát Googlebot: kiểm tra log “200 clean” cho URL đã xử lý.

2. Gửi Reconsideration Request (nếu có Manual Action) kèm mô tả nguyên nhân → biện pháp → bằng chứng (ảnh diff code).

Ngày 7–14

1. Audit nội dung & liên kết: xoá/viết lại bài mỏng, loại bỏ link ẩn; bổ sung E.E.A.T để lấy lại tín nhiệm .

2. Kiểm thử bảo mật: chạy lại quét toàn diện, benchmark PageSpeed & Core Web Vitals để chắc site sạch + nhanh.

Kết luận

Thực hiện “phòng vẫn hơn chữa” bằng 8 biện pháp bảo vệ chủ động, bạn giảm > 90 % nguy cơ bị chèn mã độc. Nếu sự cố vẫn xảy ra, bám sát checklist 10 bước trên sẽ giúp bạn cô lập và phục hồi thứ hạng chỉ trong 1–2 tuần.

Nguồn: Hà Việt Nam -SEONGON