Website bị tự chuyển hướng sang trang lạ — thường là trang cờ bạc, cá độ hay hàng giả — gần như luôn là dấu hiệu web đã bị chèn mã độc. Khó chịu nhất là nó hay “lọc” người xem: bạn gõ thẳng tên miền thì bình thường, nhưng khách từ Google hoặc trên điện thoại lại bị đẩy đi. Bài này chỉ nơi mã ẩn và cách xử lý.
Vì sao bạn không thấy mà khách lại bị
Mã chuyển hướng độc (malicious redirect) thường cài điều kiện để né chủ web:
- Chỉ kích hoạt với khách đến từ kết quả Google, không kích hoạt khi gõ thẳng tên miền.
- Chỉ giở trò trên điện thoại, hoặc khi người xem chưa đăng nhập quản trị.
Vì vậy muốn kiểm đúng, hãy bấm vào web từ Google, mở bằng chế độ ẩn danh và thử trên điện thoại — đúng như góc nhìn của một khách lạ (xem thêm các dấu hiệu web bị nhiễm).

Mã chuyển hướng giấu ở đâu
Kiểm lần lượt theo thứ tự hay gặp:
- File
.htaccess— rule chuyển hướng chạy ở tầng máy chủ, trước cả WordPress. So với bản.htaccessmặc định, tìm các dòngRewriteCond/RewriteRulelạ trỏ ra tên miền ngoài. - Cơ sở dữ liệu — bảng
wp_options: kiểmsiteurlvàhomecó đúng tên miền của bạn không; bị sửa thành domain lạ là cả web chuyển hướng. - Cơ sở dữ liệu — bảng
wp_posts: thẻ<script>hoặc iframe bị chèn vào bài viết, widget. - JavaScript bị chèn trong file theme (header/footer/
functions.php) hoặc file.jscủa theme/plugin — tìm các đoạnwindow.locationhay mã bị làm rối.
Đây cũng nằm trong danh sách những nơi mã độc hay giấu.
Cách sửa cho dứt điểm
- Khôi phục
.htaccessvề bản mặc định; sửa lạisiteurl/homecho đúng. - Gỡ script/iframe lạ trong cơ sở dữ liệu; thay theme/plugin nghi nhiễm bằng bản gốc.
- Quan trọng nhất: sau khi sửa, phải truy và dọn cửa hậu. Chỉ xoá phần chuyển hướng mà bỏ cửa hậu thì vài hôm sau nó sẽ bị chèn lại.
Kiểm cụ thể từng nơi
Để soi nhanh và đỡ bỏ sót, làm lần lượt: mở .htaccess ở thư mục gốc, đối chiếu với bản mặc định của WordPress và xoá mọi dòng RewriteRule trỏ ra tên miền lạ. Tiếp đó kiểm hai giá trị siteurl và home đã đúng tên miền chưa — qua phpMyAdmin trong bảng wp_options, hoặc bằng lệnh wp option get siteurl và wp option get home nếu dùng được dòng lệnh. Sau đó tìm trong cơ sở dữ liệu các chuỗi như <script, window.location hoặc tên miền lạ; và cuối cùng mở file header/footer của theme đang dùng để soi đoạn JavaScript bị chèn. Mỗi nơi sửa xong nên kiểm lại web ngay (bấm từ Google, mở ẩn danh, thử trên điện thoại) để biết đã trúng chưa.
Đặc thù ở Việt Nam
Rất nhiều ca tại Việt Nam là chuyển hướng sang web cờ bạc, cá độ, nổ hũ — loại trang vốn bị chặn. Ngoài việc cướp khách, hacker còn lợi dụng web bạn để nhồi liên kết cho các trang này. Nếu web bỗng dưng đẩy khách sang trang cá độ, gần như chắc chắn đã bị chèn mã — và đây cũng là lý do Google lẫn nhà cung cấp hosting xử lý rất mạnh tay.
Sửa hoài vẫn bị lại?
Nếu chuyển hướng cứ quay lại sau khi bạn đã xoá, gần như chắc chắn còn cửa hậu chưa truy hết. Web22 nhận xử lý mã độc chuyển hướng tận gốc — rà cả .htaccess, cơ sở dữ liệu, file theme và cửa hậu, rồi gia cố để chấm dứt.
Câu hỏi thường gặp
Xoá cache hoặc cài lại theme là hết chuyển hướng?
Không, nếu chưa dọn cơ sở dữ liệu, .htaccess và cửa hậu. Web sẽ chuyển hướng lại.
Tôi gõ tên miền vẫn vào bình thường, vậy đã hết chưa?
Chưa chắc. Mã chuyển hướng thường có điều kiện. Hãy test bằng cách bấm từ Google, mở ẩn danh và trên điện thoại.
