Website bị cảnh báo “chứa phần mềm độc hại”: Nguyên nhân và cách xử lý từ A-Z

Bạn mở website của mình và thấy trình duyệt hiện màn hình đỏ chặn truy cập, kèm dòng chữ kiểu “Deceptive site ahead” hay “The site ahead contains malware”? Khách truy cập sẽ rời đi ngay, còn thứ hạng trên Google có thể tụt nhanh. Tin tốt là phần lớn trường hợp đều xử lý được nếu làm đúng quy trình dưới đây.

1. Vì sao website bị gắn cảnh báo?

Cảnh báo này đến từ Google Safe Browsing, hệ thống mà Chrome, Firefox, Safari và nhiều trình duyệt khác dùng chung. Khi bot của Google phát hiện website có dấu hiệu nguy hiểm, trang sẽ bị gắn cờ và trình duyệt hiện cảnh báo trước khi người dùng vào được nội dung.

Những nguyên nhân thường gặp:

  • Website bị hack hoặc nhiễm mã độc. Đây là nguyên nhân phổ biến nhất. Kẻ tấn công chèn mã vào file hệ thống, upload webshell, hoặc tạo trang giả mạo (phishing) ngay trong hosting của bạn.
  • Plugin, theme hoặc CMS lỗi thời. Lỗ hổng bảo mật chưa vá là cửa ngõ quen thuộc, đặc biệt với WordPress.
  • Plugin/theme lậu (nulled). Các bản “crack” thường được cài sẵn backdoor.
  • Mạng quảng cáo hoặc script bên thứ ba có vấn đề. Đoạn mã nhúng từ nguồn kém tin cậy có thể phát tán mã độc đến khách truy cập.
  • Mật khẩu yếu hoặc bị lộ (FTP, cPanel, quản trị WordPress), khiến kẻ xấu đăng nhập thẳng vào.

Các kiểu cảnh báo thường gặp:

Cảnh báo Ý nghĩa
The site ahead contains malware Trang chứa mã độc
The site ahead contains harmful programs Trang chứa chương trình độc hại
Deceptive site ahead / Deceptive website warning Nghi ngờ trang lừa đảo (phishing)
This page is trying to load scripts from unauthenticated sources Trang tải script từ nguồn không an toàn

Cách kiểm tra nhanh: dán tên miền vào công cụ Google Safe Browsing Site Status (nằm trong Google Transparency Report). Công cụ sẽ cho biết Google đang đánh giá domain của bạn như thế nào.

2. Quy trình làm sạch website

Bước 1: Sao lưu toàn bộ trước khi động vào bất cứ thứ gì

Backup cả source code lẫn database. Dù website đang nhiễm, bản sao lưu vẫn giúp bạn đối chiếu hoặc khôi phục khi lỡ xóa nhầm file.

Bước 2: Quét để xác định file nhiễm

Không công cụ nào phát hiện được 100%, nên hãy kết hợp nhiều lớp:

  • Imunify360 / ImunifyAV: nếu hosting hoặc VPS của bạn có cài, đây là lựa chọn nhanh nhất vì quét trực tiếp trên server và có thể tự động làm sạch.
  • Wordfence hoặc iThemes Security (Solid Security): dành cho WordPress, dùng để quét file core, theme, plugin và so sánh với bản gốc.
  • Sucuri SiteCheck: quét từ bên ngoài, báo các đoạn script lạ, redirect đáng ngờ và tình trạng blacklist.

Bước 3: Dọn mã độc

Tùy dạng nhiễm, bạn xử lý khác nhau:

  • File lạ nằm ngoài cấu trúc website (webshell, file .php trong thư mục uploads, file tên ngẫu nhiên): xóa hẳn.
  • Mã độc chèn vào file hợp lệ (thường là index.php, functions.php, wp-config.php, .htaccess): mở file, loại bỏ đoạn mã chèn thêm. Cách an toàn hơn là thay file đó bằng bản gốc sạch.
  • WordPress core, theme, plugin: cài lại toàn bộ từ nguồn chính thức thay vì sửa tay từng file.

Bước 4: Rà lại những chỗ kẻ tấn công hay “ẩn mình”

Nhiều người dọn xong vài ngày sau lại bị nhiễm lại vì bỏ sót bước này:

  • Kiểm tra tài khoản quản trị lạ trong WordPress.
  • Kiểm tra cron job và các tác vụ định kỳ trên hosting.
  • Xem lại file .htaccess (các rule redirect lạ) và thư mục wp-content/uploads (không nên có file PHP).
  • Rà database: bảng wp_options, wp_posts đôi khi bị chèn script.

Bước 5: Vá lỗ hổng và đổi toàn bộ thông tin đăng nhập

  • Cập nhật WordPress, theme, plugin lên bản mới nhất; gỡ những plugin không dùng.
  • Đổi mật khẩu: quản trị website, hosting/cPanel, FTP/SFTP, database. Nên đổi cả khóa bảo mật (salt) trong wp-config.php.
  • Bật xác thực hai lớp (2FA) cho tài khoản quản trị.
  • Cân nhắc cài tường lửa ứng dụng web (WAF) để chặn tấn công ngay từ đầu.

3. Gỡ cảnh báo trên Google

Sau khi website đã sạch hoàn toàn, bạn cần báo để Google quét lại.

  1. Đăng nhập Google Search Console và chọn đúng website (cần đã xác minh quyền sở hữu).
  2. Vào mục Bảo mật & Hành động thủ công (Security & Manual Actions), chọn Vấn đề bảo mật (Security issues).
  3. Xem danh sách vấn đề Google phát hiện, rồi bấm Yêu cầu xem xét (Request review).
  4. Mô tả ngắn gọn những gì bạn đã làm. Ví dụ:

“Website đã bị nhiễm mã độc. Chúng tôi đã quét toàn bộ mã nguồn, xóa các file độc hại, cập nhật hệ thống, đổi mật khẩu và vá lỗ hổng. Đề nghị Google kiểm tra lại và gỡ cảnh báo.”

  1. Gửi yêu cầu và chờ phản hồi. Thông thường mất vài ngày, có trường hợp nhanh hơn. Nếu bị từ chối, Google sẽ cho biết còn vấn đề gì, bạn xử lý tiếp rồi gửi lại.

Lưu ý: chỉ gửi yêu cầu khi chắc chắn đã sạch. Gửi sớm mà vẫn còn mã độc sẽ bị từ chối và mất thêm thời gian.

4. Phòng tránh để không bị lặp lại

  • Sao lưu định kỳ và lưu bản sao ở nơi tách biệt với hosting.
  • Chỉ dùng plugin/theme từ nguồn chính thức, tuyệt đối không dùng bản lậu.
  • Cập nhật thường xuyên và giữ số lượng plugin ở mức tối thiểu cần thiết.
  • Dùng mật khẩu mạnh, khác nhau cho từng dịch vụ.
  • Cài giải pháp quét mã độc tự động và theo dõi cảnh báo.

Kết luận

Website bị cảnh báo mã độc không phải dấu chấm hết. Chỉ cần xác định đúng nguyên nhân, dọn sạch triệt để, vá lỗ hổng rồi gửi yêu cầu xem xét với Google, bạn hoàn toàn có thể lấy lại uy tín cho website. Nếu không tự xử lý được, hãy nhờ đơn vị hosting hoặc chuyên gia bảo mật hỗ trợ để tránh bỏ sót.