Drupal được coi là thực sự an toàn và đây là lý do cho sự phổ biến của nó. Drupal là một CMS mã nguồn mở và được biết đến là mạnh mẽ. Là mã nguồn mở, mã nguồn của nó được hiển thị công khai. Đây là một mỏ vàng dành cho những thợ săn tiền thưởng lỗi. Drupal đã phải chịu đựng "Pharma Hack" khét tiếng "Kitty Cryptomining Malware" trong vài tháng gần đây. Một sự lây nhiễm khác đang gia tăng là “ chuyển hướng hack Drupal ”Chuyển hướng khách truy cập trang web của bạn đến các trang web spam.
Vụ tấn công chuyển hướng Drupal xảy ra sau khi kẻ tấn công khai thác lỗ hổng trong trang web của bạn và sửa đổi nội dung trang web để cài đặt phần mềm độc hại. Kết quả là, khách truy cập vào trang web của bạn được chuyển hướng đến các liên kết spam và có vấn đề. Chủ sở hữu trang web đã phàn nàn rằng phần mềm độc hại này chuyển hướng người dùng đến các trang lừa đảo và người lớn bán viagra hoặc khiêu dâm.
Sự cố chuyển hướng của Drupal Hack trông như thế nào?
Có nhiều loại nhiễm trùng chuyển hướng này:
- Khách truy cập trang web được chuyển hướng đến các trang spam khi truy cập trang chủ của bạn
- Bất cứ khi nào nhấp vào nút / liên kết, trang sẽ chuyển hướng đến các trang Hiệu thuốc giả bán Viagra, Cialis
Để xem liệu trang web Drupal của bạn có bị nhiễm phiên bản thứ hai hay không, bạn có thể sử dụng Google dork. Google dork sau đây cung cấp cho chúng ta phần giới thiệu về những gì chúng ta sẽ đi sâu vào.
site:your-website.com "viagra"
Ở đây, con chuột này hiển thị tất cả các trang web Drupal chuyển hướng đến các trang viagra. Tuy nhiên, bạn có thể tìm kiếm nhiều chuyển hướng hơn bằng cách thay thế từ viagra bằng các từ khóa khác như:‘ poker ‘,‘ khiêu dâm ‘,‘ khoản vay ’ vv
Sau khi nhấp vào liên kết trang web đầu tiên đã tạo ra các lỗi sau.
Điều này có nghĩa là kẻ tấn công đã khai thác trang web và nó đang chuyển hướng. Tuy nhiên, do các yếu tố khác, chuyển hướng có thể không hoạt động ngay bây giờ.
Các loại chuyển hướng tấn công Drupal (Mã trạng thái HTTP):
- Chuyển hướng 301: Đây cũng có thể được gọi là chuyển hướng vĩnh viễn. Khi Google hoặc bất kỳ công cụ tìm kiếm nào khác cho vấn đề đó, hãy nhìn vào URL này. Nó sẽ thông báo rằng URL đã chuyển sang một vị trí mới vì vậy hãy cập nhật tất cả các quan hệ trước đó. Những kẻ tấn công có nhiều khả năng sử dụng chuyển hướng này vì tính đơn giản.
- Chuyển hướng 302: Việc sử dụng 302 bây giờ là dư thừa vì nó đã được thay thế bằng 303. Chuyển hướng 303 về cơ bản cho biết rằng một tài liệu tạm thời có sẵn.
- Chuyển hướng 303: Đây là phiên bản tinh chỉnh của 302. Chuyển hướng 303 cung cấp một trang tạm thời có thể không tồn tại trên cùng một địa chỉ trong tương lai. Đó có thể là biểu mẫu dữ liệu thẻ tín dụng, trình tạo thông tin chi tiết tạm thời, v.v. Điều này ít bị kẻ tấn công mong đợi nhất trừ khi đó là một cuộc tấn công thực sự tinh vi.
- Chuyển hướng 307: Nó là một biến thể của chuyển hướng 303 với một vài điểm khác biệt. Hơn nữa, có một chuyển hướng 308 là một chuyển hướng thử nghiệm. Rất ít khả năng sẽ được sử dụng nhưng không thể loại trừ khả năng.
Dấu hiệu chuyển hướng phần mềm độc hại Drupal:
- Lưu lượng truy cập trang web cao bất thường
- Các tệp không xác định đã được thêm vào trang web Drupal của bạn
- Người dùng mới có quyền Quản trị viên đã được tạo
- Việc nhấp vào các liên kết trên trang chủ trang web của bạn sẽ chuyển hướng đến spam
- Quảng cáo độc hại hoặc nội dung khiêu dâm bật lên trên trang web của bạn
- Các nút, tệp, v.v. mới chưa biết trước đây có thể xuất hiện
- Các công cụ tìm kiếm có thể hiển thị nội dung spam
- Cảnh báo bảo mật hoặc danh sách đen của các công cụ tìm kiếm như Google, Bing, v.v.
Nguyên nhân của sự cố chuyển hướng do hack Drupal:
Nguyên nhân của việc chuyển hướng hack Drupal có thể rất đa dạng và không thể tóm gọn trong một bài báo. Tuy nhiên, chúng ta có thể xem xét ngắn gọn các nguyên nhân chính:
Chuyển hướng DNS
Chuyển hướng DNS xảy ra khi ai đó sửa đổi các mục nhập của Máy chủ DNS của bạn. Vì vậy, khi ai đó yêu cầu trang web của bạn, các máy chủ DNS sẽ gửi người dùng đến mục nhập đó. Như một bài kiểm tra heuristic, bạn có thể thực hiện tra cứu DNS. Windows có công cụ theo dõi mặc định. Nó có thể được truy cập bằng dòng lệnh tracert www.your-site.com
Tương tự, người dùng Linux có thể sử dụng host www.your-site.com
. Nếu tra cứu DNS trả về địa chỉ IP sai, thì vấn đề của bạn là ở DNS, không phải trên trang web của bạn. Người dùng nâng cao hơn có thể kiểm tra các mục nhập máy chủ DNS giả mạo.
Tệp giả mạo
Kẻ tấn công có thể đã giả mạo .htaccess
và index.php
các tập tin. Có lẽ muốn tìm mã độc hại bên trong chúng. Mã có thể có định dạng sau:
data:text/html,<html><meta http-equiv="refresh" content="0; url=https://malicious_site.com/process/route/1673246826.html?refresh=non-ie&bl=0"></html>
Đây, đoạn mã này đang chuyển hướng trang web đến miền https://malicious_site.com.
Tính toàn vẹn cốt lõi
Cần kiểm tra thủ công kỹ lưỡng tất cả các tệp như vậy. Bạn không thể kiểm tra bên trong tất cả các trang web theo cách thủ công. Vì vậy, bước đầu tiên theo hướng này là kiểm tra giá trị toàn vẹn cốt lõi của các tệp đã cài đặt. Bắt đầu bằng:
mkdir drupal-8.3.5
cd drupal-8.3.5
wget https://github.com/drupal/core/archive/8.3.5.tar.gz
tar
-zxvf core-8.3.5.tar.gz
Đoạn mã này ở đây tạo một thư mục có tên Drupal-8.3.5 và sau đó thay đổi thành thư mục đó. Dòng thứ ba của nó sau đó tải xuống các tệp cài đặt gốc từ kho Github và dòng thứ tư giải nén chúng. Bây giờ đến phần quan trọng của việc so sánh chúng. diff -r core-8.3.5 ./public_html
lệnh này ở đây sẽ cung cấp cho chúng tôi những thay đổi trong tệp của chúng tôi v / s cài đặt ban đầu. Tiếp tục ở định dạng này để kiểm tra tất cả các tệp.
Nguyên nhân khác
- Cuộc thảo luận công khai đầu tiên về SQL injection được viết vào năm 1998. Có một lý do tại sao nó ám ảnh các trang web cho đến tận ngày nay. Sự xuất hiện của một SQL injection là kết quả của đầu vào không được vệ sinh. Chỉ bỏ qua dấu chấm phẩy trong mã hóa có thể dẫn đến lỗ hổng chèn SQL.
- Có thể bạn muốn tìm kiếm các tên mô-đun hấp dẫn như
modules/system/wxeboa.php
. Đây không phải là một phần của cài đặt gốc. - Báo cáo minh bạch của Google có thể giúp ích rất nhiều trong khi tìm kiếm nguyên nhân chuyển hướng hack Drupal. Nó có thể cho bạn biết nhiều điều về trang web của bạn.
- Mật khẩu trang web hoặc FTP yếu có thể là nguyên nhân dẫn đến chuyển hướng hack Drupal. Nếu bạn đang sử dụng, hãy thay đổi cấu hình mặc định ngay bây giờ!
Kiểm soát thiệt hại cho sự cố chuyển hướng do tấn công Drupal:
Dựa trên liên kết giới thiệu có chứa từ khóa
Quy tắc ngón tay cái của an ninh mạng là bạn không bao giờ có thể loại bỏ khả năng bị tấn công, bạn chỉ có thể trì hoãn nó. Theo hướng này, một thủ thuật thông minh khác là chỉnh sửa tệp .htaccess. Tệp có thể được chỉnh sửa đến mức ngay cả khi sự lây nhiễm xảy ra trong tương lai, trang web của bạn sẽ chặn người dùng truy cập vào thư rác. Điều này sẽ thúc đẩy sự tin tưởng giữa người dùng. Vì vậy, bất chấp sự lây nhiễm, các công cụ tìm kiếm sẽ không đưa bạn vào danh sách đen vì bạn sẽ tự động chặn thư rác. Điều này sẽ giúp bạn có chút thời gian và giúp thứ hạng tìm kiếm của bạn không bị tụt dốc. Do đó, nó hoạt động như kiểm soát thiệt hại.
<Limit GET>
order allow, deny
allow from all
deny from env = spammer
SetEnvIfNoCase Referer ". * (Poker | credit | money). *" Spammer
</ Limit>
Đoạn mã này chặn người dùng truy cập vào các trang có liên kết như poker, tín dụng, v.v. dựa trên số nhận dạng (liên kết giới thiệu HTTP). Vì trang web của chúng tôi không có nội dung nào trong số này, chúng tôi có thể loại bỏ việc chặn những từ như vậy. Điều này hoạt động như một bộ lọc với các ký tự đại diện.
Dựa trên Số nhận dạng riêng
Phương pháp thứ hai là chặn quyền truy cập dựa trên định danh của chính nó (HTTP REFERRERS)
Rewrite Engine On
RewriteBase /
# allow referrals from search engines:
RewriteCond% {HTTP_REFERER}!. * xyz \ .com /.*$ [NC]
RewriteCond% {HTTP_REFERER}! ^ Http: // ([^ /] +) google \ .. * $ [NC]
Tiếp tục thay thế cụm từ google bằng tất cả các công cụ tìm kiếm như yahoo, bing, v.v. mà bạn muốn cho phép.
# Conditions for don`t wanted referrals
RewriteCond% {HTTP_REFERER} ^. * Loans. * $ [OR]
Tiếp tục thay thế từ cho vay bằng các từ spam như viagra, khiêu dâm, v.v. mà bạn muốn chặn. Tuy nhiên, điều đáng chú ý ở đây là Apache’s ModRewrite phải được bật thì cái này mới hoạt động được. Hơn nữa, bạn cũng có thể hạn chế một số IP nhất định được công khai để gửi thư rác.
Làm sạch trang web bị nhiễm phần mềm độc hại chuyển hướng Drupal.
Dọn dẹp cơ sở dữ liệu:
Kiểm tra người dùng
Trước hết, chúng ta sẽ bắt đầu với việc thăm dò SQL injection. Hãy chú ý đến bất kỳ bảng đáng tin cậy nào như Sqlmap. Bảng có tên Sqlmap này là kết quả của truy vấn rác trong khi sử dụng công cụ kiểm tra bút tự động Sqlmap dựa trên một trang web. Để hiển thị tất cả các bảng chỉ cần sử dụng lệnh. show tables ;
. Kẻ tấn công cũng có thể đã tạo các mục nhập người dùng mới và giành được các đặc quyền của quản trị viên. Để kiểm tra việc sử dụng:
Select * from users as u
AND u.created > UNIX_TIMESTAMP(STR_TO_DATE('Oct 15 2018', '%M %d %Y '));
Tại đây, nó sẽ hiển thị tất cả những người dùng được tạo sau ngày 15 tháng 10 năm 2018. Bạn có thể điều chỉnh dòng này theo ngày bạn chọn. Trong trường hợp bạn phát hiện người dùng hoặc bảng giả mạo, bạn có thể xóa nó bằng cách sử dụng drop database database-name.dbo;
.
Chặn người dùng
Hơn nữa, bạn có thể chặn người dùng hoặc thay đổi mật khẩu cho mọi người dùng. Sử dụng lệnh sau:
update users set pass = concat('ZZZ', sha(concat(pass, md5(rand()))));
Câu lệnh SQL này thay đổi mật khẩu người dùng ở định dạng MD5. Định dạng MD5 là một chức năng bảo mật mật mã. Không bao giờ lưu trữ mật khẩu của bạn ở định dạng văn bản thuần túy. Kẻ tấn công khá dễ dàng để trích xuất mật khẩu văn bản thuần túy từ cơ sở dữ liệu bị xâm phạm. Giá trị MD5 vẫn cung cấp thêm một lớp bảo mật. Như từ admin
sẽ dẫn đến băm 86fb269d190d2c85f6e0468ceca42a20
. Là một hàm một chiều, rất khó để tính toán ngược lại.
Dọn dẹp tệp:
- Khôi phục cài đặt thành bản sao lưu của các tệp.
- Các mô-đun bên ngoài có thể được sử dụng để quét nhiễm trùng. Mô-đun bị tấn công là một trong những sản phẩm phổ biến như vậy.
- Không cho phép truy cập vào các tệp nhạy cảm bên ngoài và thư mục gốc.
- Tắt tính năng báo cáo lỗi để chống rò rỉ thông tin nhạy cảm.
- Nếu cài đặt của bạn là Cập nhật lỗi thời! Cập nhật! Cập nhật!
- Đặt lại tất cả các khóa API và mật khẩu FTP đã sử dụng trước đó. Đảm bảo rằng bạn sử dụng mật khẩu mạnh.
- Xoá bộ nhớ cache của bạn bằng lệnh sau:
drush cache-rebuild
(Drupal 8) hoặcdrush cache-clear all
(Drupal 7). - Sử dụng một số loại giải pháp WAF như một lớp bảo mật bổ sung chống lại hành vi hack chuyển hướng Drupal.
Tuy nhiên, vẫn có nhiều lỗi có thể xảy ra và dẫn đến chuyển hướng hack Drupal. Nếu bạn vẫn không thể tìm ra, hãy liên hệ với các chuyên gia. Nếu làm sạch thủ công có vẻ quá mệt mỏi, hãy sử dụng các công cụ tự động. Cập nhật thường xuyên từ các blog, trang web, v.v. về các lỗ hổng được phát hiện trong CMS của bạn.