This post is popular. 1.453 Views

Cách loại bỏ Malware shell WordPress mới nhất

Từ 20/3/2019 đã có rất rất nhiều web Wordpress tại Việt Nam cũng như trên thế giới, dính Malware nguy hiểm, chiếm quyền điều khiển Adminstrator của website. Đâu các cách khắc phục tốt nhất?

Malware shell Wordpress

WordPress đang có biến lớn, rất nhiều trang bị dính mã độc chuyển hướng sang 1 web khác. SEO MAX là một trong những nạn nhân đầu tiên của con Malware nguy hiểm này. Nó không hẳn do một người nào đó tạo ra mà có thể từ một tổ chức hacker chuyên nghiệp nào đó – có thể, vì mình cũng không biết đó là ai.

Triệu chứng nhiễm Malware


Sáng nay đẹp giời, tỉnh dậy và vào web check tin mới. Vèo… seomax.net chuyển hướng ngay sang một domain khác, hiện tin tức loằng ngoằng và các thông cáo. Không thấy đòi tiền gì cả.. xong! Xác định đã dính hack.

Cố vào /wp-admin nhưng tất cả đều bị chuyển hướng (redirect) sang domain khác. Xong, chắc chắn bị hack kinh rồi! Cũng hoang mang vì blog cỏn con, ai sờ vào làm gì?

Vào hosting, kiểm tra các kiểu thì “WARNING_Malware” cảnh báo đỏ lòm, list file bị dính malware dài như sớ đến 0,98mb – ôi thôi, tầm này có tìm cụ thể bằng mắt. Giật mình hơn là tất cả website chạy trên hosting này đều dính malware!! Hoang mang tột độ, ngồi thần một lúc.

Quay sang xem các web khác, ở các hosting khác, cũng vài web dính. Tổng mình bị khoảng 12 web, chạy trên 4 hosting khác nhau, của 4 nhà cung cấp khác nhau. Vậy không phải do nhà cung cấp rồi. Giờ xem một số nguyên nhân chính nhé

malware shell wordpress
malware này đây – bạn đã bị hack, chuyển hướng sang domain khác.

Nguyên nhân Malware


Có vô vàn nguyên nhân, nó đến từ những nguyên nhân chủ quan và cả khách quan. Đen thì dính – vậy thôi 🙂 ngoài ra, một phần do sự bất cẩn của đội ngũ Admin, có vẻ như vậy.

Ngoài ra, nguyên nhân cũng một phần – nhỏ thôi, do mã nguồn mở WordPress có rất nhiều “phần chắp vá tính năng” là các Plugin – vừa để nâng cấp, nhưng cũng vừa tạo ra rất nhiều lỗ hổng cho hacker tìm cách xâm nhập.

malware shell wordpress
Topic này Hot nhất Cộng đồng WordPress Việt Nam trong 24h qua

Như lỗi ở trên, qua tham khảo nhiều nguồn và tự tìm hiểu, nguyên nhân dính Malware có thể đến từ hai vấn đề. Bài viết dành cho web dùng theme sạch, plugin sạch. Bác dùng Theme & Plugin Null (lậu) thì em chịu đấy.

1. Do CMS WordPress


Có thể – chưa khẳng định nhưng với WordPress, lỗ hổng này do: Bất kỳ ai cũng có thể Đăng ký thành viên để Bình luận. Mà chết tội ở chỗ: Nội dung comment có thể chứa bất kỳ điều gì, kể cả những đoạn Script thần thánh của hacker. (có lọc n.dung bình luận, chủ yếu là từ ngữ bậy bạ)

Sơ qua, hacker có thể làm như sau: Đăng ký thành viên -> Bình luận bằng 1 đoạn mã code đặc dụng -> nhờ đoạn code này, họ thay đổi quyền Thành viên đăng ký (Customer) thành Quản trị viên cao nhất (Administrator). Và từ đó, họ có thể làm việc bất kỳ với web bạn. Tất nhiên họ thao tác bằng Tool, một phát vài nghìn web.

Lý thuyết là vậy, nhưng thực tế mình cũng không rõ làm như thế nào vì mình không phải hacker 🙂 Trước khi bị hack, mình có nhận được email này:

malware wordpress
Malware xâm nhập qua đường Bình Luận & Đăng ký thành viên

Lỗ hổng tồn tại trong các phiên bản trước của WordPress 5.1.1 và có thể được khai tác bằng các cài đặt thông qua bình luận mặc định. Theo báo cáo của WordPress thì có hơn 33% các trang web Internet đang sử dụng nền tảng WordPress. Nhận xét bài viết là một tính năng cốt lõi của blog và được bật theo mặc định, điều này ảnh hưởng đến hàng triệu trang web.

Lỗ hổng được vá trong trước WordPress 5.1.1 sẽ khiến các tác nhân xấu có thể chiếm lấy các trang web bằng cách sử dụng lỗ hổng giả mạo yêu cầu chéo trang (CSRF) bằng cách dụ quản trị viên đăng nhập truy cập vào trang web độc hại có payload XSS. ( tức nó sẽ khiến website bạn bị chuyển hướng – tất nhiên vì nó sẽ dễ dụ hơn

2. Do Plugin Easy WP SMTP


Dò qua tất cả các web dính Malware, mình thấy có một điểm chung là: đều sử dụng Plugin Easy WP SMTP – Đây là Plugin rất hay, giúp giửi thông báo email SMTP cho web WordPress, 90% website mình sử dụng ẻm nó.

Theo thông báo mới nhất từ Easy WP SMTP, họ đã fix thành công lỗi bảo mật này ở bản mới nhất. Điều quan trọng là lỗ hổng bảo mật này chỉ có trong Easy WP SMTP 1.3.9.0, sau khi nâng cấp lên Easy WP SMTP 1.3.9.1 thì lỗ hổng này đã được vá.

Easy WP SMTP plugin
Easy WP SMTP plugin

Cách loại bỏ Malware


Nếu bị dính con Shell này, việc đầu tiên là bình tĩnh, phải thật bình tĩnh vì nóng vội sẽ hỏng việc đó. Xem kỹ xem có đúng lỗi mô tả như trên không? nếu đúng, các bác làm theo các bước sau là được nhé:

Phương án tạm thời

Bước 1


Báo ngay bên hosting: Restore lại toàn bộ Host của bạn, về cách đó 24 tiếng, chắc nhất là về khoảng 48 tiếng trước đó. Nếu Host có R1soft thì các bác có thể tự thao tác, chỉ mất vài phút là phiên bản web sạch trước đó thôi. Tìm hiểu R1soft là gì?

Nếu web chạy VPS hoặc Hosting không có backup tự động? mệt đấy, việc này khiến bạn phải mò tay từng dòng code. Con shell này nó tự động tạo rất nhiều file.php, len lỏi vào nhiều chỗ trong code. Nếu không có backup và không tự mò mắt thường được, xem phần Gỡ malware nâng cao ở dưới

R1Soft Cpanel
R1Soft trong hệ quản trị Cpanel

Bước 2


1. Nâng cấp phiên bản WordPress của bạn lên mới nhất WP 5.1.1.
Lưu ý: Nếu theme không hỗ trợ và custom quá nhiều: đừng dại update, tạm bỏ qua update WP.

2. Tạm thời tắt chức năng Bình luận trong WordPress. Tắt Bình luận ở tất cả các bài viết và bình luận bài viết mới. Xem cách làm như 2 hình dưới:

tắt bình luận wordpress
Đầu tiên: Tắt bỏ bình luận mới trong wordpress
Cách bỏ bình luận wordpress
Tiếp theo, làm 5 thao tác: Tắt bình luận các bài đã post trong wordpress

Bước 3


Nâng cấp ngay và ngay lập tức plugin Easy WP SMTP lên phiên bản mới nhất 1.3.9.1. Theo mình thấy, mình chạy nhiều phiên bản plugin này trên 30 web, có cả bản cũ như V1.3.6.0 nhưng web không bị hack, có thể – lỗ hổng bảo mật chỉ có trong Easy WP SMTP 1.3.9.0

Easy WP SMTP 1.3.9..1
Easy WP SMTP 1.3.9..1 – Vá lỗi bảo mật nguy hiểm

Nếu không còn niềm tin thì gỡ plugin này ra, tìm một plugin SMTP khác thay thế, hoặc tự code.

Bước 4


Vào Admin kiểm tra lại thành phần Quản trị viên 🙂 tất nhiên, có thể vẫn còn lưu lại tài khoản hacker đấy, hãy xóa ngay.Tiếp, truy cập phpMyadmin kiểm tra table user xem có liên kết lạ không, nếu có xoá ngay lập tức.

Sau khi thực hiện 4 bước vá tạm thời trên, web seomax đã ổn định, sau 24h hacker có quét lại lỗ hổng trên, vẫn thay đổi được mật khẩu tài khoản của họ nhưng họ không còn quyền Admin cao nhất nữa. Tạm yên thân.

malware wordpress
Hacker tiếp tục quét lỗi tìm lỗ hổng sau 24h, nhưng không hack được nữa!

Gỡ malware nâng cao

1. Cài đặt lại WordPress


Sau khi Restore web lại bản sạch (trước khi bị nhiễm malware), bạn nên cài lại phiên bản WordPress đang dùng. Nhất là với các web không Update lên WP 5.1.1 được, phải cài lại ngay. Lên WordPress.org download ngay bản sạch và xem hướng dẫn cài đặt lại WP – cho newbie 🙂

Trước tiên, trong thư mục chứa website, phải giữ lại các file và thư mục sau:

  • wp-content: chứa nội dung của website như: theme, plugin, ảnh,…
  • .htaccess: chứa một số thông tin cấu hình của server
  • wp-config.php: chứa thông tin cấu hình liên quan đến database, user, password,…

Còn lại thì xóa bỏ hếtthay thế chúng bởi mã nguồn sạch của WordPress mà bạn mới tải về.

2. Dùng Script xóa mã .js


Dùng cho VPS: Script xóa tất cả mã JS malware chuyển hướng website nằm trong tập tin *.js đang hoành hành
Tác giả: Anh Tuấn từ datuan.dev

Vui lòng tự backup web trước khi thực hiện, mình không chịu bất cứ mất mát dữ liệu nào. Nếu script chạy rồi vẫn còn, vui lòng gửi file js mẫu cho mình để mình kiểm tra và hướng dẫn lại.

Lưu ý: đoạn Script này chỉ giúp bạn khôi phục nhanh nhất website về trạng thái ban đầu. Malware lây nhiễm từ file .php nên hoàn toàn có thể bị nhiễm lại.

  1. Nơi cài đặt Script: cd /var/www/thư-mục-gốc-website/
  2. Chạy đoạn mã này

Tất cả các file javascript bị chèn mã như trong video dẫn tới bị chuyển hướng khi truy cập trang. Chạy 1 dòng lệnh là xóa toàn bộ và vẫn giữ nội dung gốc.

Phương án lâu dài


Bảo mật lại toàn bộ web là một bước quan trọng, không nên bỏ qua. Nếu không biết, hãy nhờ hoạc thuê chuyên gia. Nếu web bạn có tiềm năng phát triển thì hãy lo bảo mật ngay từ bây giờ, nếu web bạn kiếm ra tiền – dù ít hay nhiều, càng phải lo bảo mật ngay.

Hiện có khá nhiều đơn vị nhận dịch vụ Bảo mật web với giá bèo hàng tháng, đây là một phương án tốt.

Tăng bảo mật web


Không gì là không thể, đến Google hay Facebook còn bị hack thì bạn chả là gì. Nếu không phải chuyên gia, bạn tham khảo một số cách sau để tăng bảo mật cơ bản cho em web còi nhé:

Hạn chế malware, shell


Có 2 cách chính để chèn header HTTP Content-Security-Policy vào response của website nhưng mình khuyên nếu có thể, hãy chèn vào cài đặt của webserver (Apache, Nginx,…) thay cho PHP vì hacker vẫn có thể vô hiệu hóa đoạn mã của chúng ta đi.

Triển khai bằng PHP


Chèn đoạn script dưới vào cuối tập tin functions.php của WP theme (child theme), sau đó tận hưởng thành quả.

Triển khai Webserver


Đây là cách mình khuyên dùng, một bởi vì hacker khó có thể can thiệp làm thay đổi giá trị này đi, hai bởi vì bạn có thể chèn vào cấu hình của các webserver, bảo đảm tất cả các trang trên server đều được triển khai header này ngay lập tức.

1. Nginx

Chèn vào tập tin /etc/nginx/nginx.conf, đặt trong block http, sau đó restart lại Nginx.

2. Apache

Với apache có thể đơn giản hơn, bạn chỉ việc chèn vào tập tin .htaccess (vẫn khuyên không nên vì hacker có thể can thiệp, nếu không còn cách nào khác, hãy chmod hợp lý trước khi dùng) là được, hoặc chèn vào /etc/httpd/conf/httpd.conf. Sau đó restart lại Apache.

Lời kết


Không có mã nguồn hay website nào dám khẳng định không thể bị hack, nhất là với WordPress – mã nguồn mở đến hơn 30 triệu website trên toàn thế giới. Các hacker vốn đã không phải người thường, họ sẽ luôn tìm cách phá hoại với nhiều mục đích.

Hy vọng bài hướng dẫn giúp bạn gỡ được lỗi Malware mới nhất hiện đang hoành hành với WordPress, thêm nữa, đọc được chút ít kiến thức mình mới lượm nhặt. Chúc thành công nhé.

SEO Max
Tham khảo datuan.dev

Like
Like Love Haha Wow Sad Angry
21151

2 Bình luận

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Nội dung hay

NHẬN TIN BÀI MỚI

NHẬN TIN BÀI MỚI

Thấy bác ghé web em cũng lâu lâu, bác có muốn

- Nhận bài viết và thông tin mới ?
- Nhận Theme & Plugin miễn phí?

Đăng ký ngay nhé! Em gửi qua email cho

Thành công! Xin cảm ơn.