04/05/2020
Hướng dẫn này để giúp các chủ trang web xác định và làm sạch một website Joomla bị hack. Có thể nó không giải quyết được tất cả các trường hợp nhưng nó giúp xử lý đến 70% số trường hợp bị tấn công đã được xác định. Các dấu hiệu thông thường cho biết website Joomla bị hack.
Bạn có thể sử dụng các công cụ quét mã độc website để tìm các payload độc hại và vị trí của phần mềm độc hại. Dưới đây là một số phần mềm và công cụ miễn phí để bạn có thể tham khảo:
Các tệp tin mới hoặc mới bị sửa đổi gần đây có thể là một phần nguyên nhân của việc website bị tấn công. Các tệp tin trong core của Joomla cũng nên được kiểm tra để truy tìm các phần mềm độc hại. Cách nhanh nhất để xác nhận tính an toàn của các tệp tin trong core joomla là sử dụng lệnh diff
trong terminal, bạn cũng có thể tự kiểm tra các tập tin của mình thông qua SFTP. Bạn có thể tìm thấy tất cả các phiên bản của Joomla trên GitHub. Các lệnh sau đây sử dụng phiên bản 3.6.4 làm ví dụ về các tệp sạch và public_html để thay cho nơi mà Joomla được cài đặt. Để kiểm tra sự an toàn tập tin trong core của joomla với các lệnh sau:
$ mkdir joomla-3.6.4 $ cd joomla-3.6.4 $ wget https://github.com/joomla/joomla-cms/releases/download/3.6.4/Joomla_3.6.4-Stable-Full_Package.tar.gz $ tar -zxvf Joomla_3.6.4-Stable-Full_Package.tar.gz $ diff -r joomla-3.6.4 ./public_html
Lệnh diff cuối cùng sẽ so sánh tệp tin Joomla sạch với các tệp tin đã cài đặt trên website của bạn. Để tự kiểm tra các tệp đã sửa đổi gần đây:
$ find ./ -type f -mtime -15
Xác minh tài khoản Joomla của người dùng, đặc biệt là quản trị viên và quản trị viên cấp cao. Để kiểm tra người dùng độc hại trong Joomla:
Bây giờ khi đã có thông tin về những người dùng có nguy cơ bị xâm nhập và các vị trí của phần mềm độc hại, bạn có thể xóa phần mềm độc hại khỏi Joomla và khôi phục lại website.
Lưu ý: Những bước này yêu cầu máy chủ web và truy cập vào cơ sở dữ liệu. Nếu bạn không quen thuộc với các thao tác trên bảng cơ sở dữ liệu hoặc chỉnh sửa PHP, vui lòng tìm sự trợ giúp từ một người xử lý sự cố chuyên nghiệp, những người có thể gỡ bỏ hoàn toàn phần mềm độc hại khỏi Joomla.
Nếu bất kỳ lượt quét hoặc chẩn đoán nào tiết lộ các tên miền hoặc payload nguy hiểm, bạn có thể bắt đầu tìm kiếm những tệp này trên máy chủ web của Joomla. Bằng cách so sánh các tệp tin bị nhiễm với các tệp tin đã biết (từ các nguồn chính thức hoặc sao lưu an toàn đáng tin cậy), bạn có thể xác định và xóa các thay đổi độc hại. Để tự loại bỏ một phần mềm độc hại lây nhiễm từ các tập tin trên trang web Joomla của bạn, hãy:
Lưu ý:
Bạn cũng có thể sử dụng các công cụ như Search-Replace-DB hoặc Adminer. Để tự loại bỏ một phần mềm độc hại lây nhiễm ra khỏi bảng cơ sở dữ liệu của Joomla:
Bạn có thể tự tìm kiếm cơ sở dữ liệu độc hại của Joomla cho các hàm PHP, chẳng hạn như eval
, base64_decode
, gzinflate
, preg_replace
, str_replace
…
Lưu ý rằng các function này cũng được sử dụng chính thức bởi các Extention trong Joomla, vì vậy hãy đảm bảo bạn đã kiểm tra các thay đổi hoặc nhận trợ giúp để không vô tình làm hỏng trang web của mình.
Lưu ý: Tự xóa mã độc khỏi các tệp tin trong trang web có thể cực kỳ nguy hiểm. Không bao giờ thực hiện bất kỳ hành động nào mà không có bản sao lưu. Nếu bạn không chắc chắn, hãy tìm sự trợ giúp từ một chuyên gia.
Để loại bỏ backdoor bằng cách so sánh các tệp:
Cập nhật tất cả phần mềm bao gồm Joomla Core và các Extension, các template, các mô-đun và các plugin. Để kiểm tra và cập nhật phần mở rộng: