Trong phần này, chúng ta sẽ tìm hiểu về các khái niệm cơ bản về Trojan để hiểu rõ hơn về các loại mã độc Trojan và backdoor cũng như tác động của chúng đối với hệ thống. Mình sẽ giới thiệu về Trojan, mục đích, dấu hiệu nhận biết và các port mà trojan thường sử dụng. Ngoài ra, ta cũng sẽ thảo luận về các phương pháp mà các hacker dùng để cài đặt Trojan vào mục tiêu.
Mỗi ngày, hacker phát hiện ra hoặc tạo ra những Trojan mới, Trojan được phân loại dựa trên cách chúng xâm nhập vào hệ thống và các hành động mà chúng thực hiện trên các hệ thống này.
Các bạn có thể đọc tất cả bài viết về CEH Tiếng Việt tại đây.
Trojan là gì?
Theo thần thoại Hy Lạp cổ đại, người Hy Lạp đã chiến thắng Chiến tranh Troy nhờ vào một con ngựa gỗ khổng lồ được xây dựng để giấu lính của họ. Người Hy Lạp để con ngựa này trước cổng thành Troy. Người dân Troy tưởng rằng con ngựa là một món quà từ người Hy Lạp, được họ để lại trước khi rút lui khỏi cuộc chiến, và đã đưa nó vào thành phố. Vào ban đêm, các lính Hy Lạp đã thoát ra khỏi con ngựa gỗ và mở cửa thành phố để cho quân đội Hy Lạp còn lại xâm nhập, cuối cùng phá hủy thành phố Troy.
Được truyền cảm hứng từ câu chuyện này, Trojan máy tính là một chương trình trong đó mã độc được chứa bên trong một chương trình hoặc dữ liệu vốn không có hại, dường như vô hại, nhưng sau đó có thể tiếp quản và gây hại. Hacker sử dụng Trojan máy tính để lừa người nạn nhân thực hiện một hành động đã được xác định trước. Khi kích hoạt, chúng có thể cung cấp cho hacker quyền truy cập không hạn chế vào tất cả dữ liệu được lưu trữ trên hệ thống thông tin bị xâm nhập và có thể gây ra thiệt hại nghiêm trọng. Ví dụ, người dùng có thể tải xuống một file phim, nhưng khi chạy, nó sẽ phóng một chương trình nguy hiểm xóa ổ cứng hoặc gửi số thẻ tín dụng và mật khẩu cho hacker.
Một Trojan được bao bọc bên trong hoặc gắn kết vào một chương trình hợp pháp, có nghĩa là chương trình có thể có chức năng mà người dùng không nhận thấy. Hacker có thể sử dụng máy tính của nạn nhân để tấn công DoS bất hợp pháp.
Dấu hiệu bị nhiễm Trojan
Các sự cố máy tính sau đây là dấu hiệu của một cuộc tấn công Trojan:
- Khay DVD-ROM mở và đóng tự động.
- Màn hình máy tính nhấp nháy, lật ngược hoặc bị đảo ngược sao cho mọi thứ hiển thị ngược lại.
- Cài đặt hình nền mặc định hoặc hình nền thay đổi tự động.
- Máy in tự động in tài liệu.
- Trang web đột ngột mở mà không có sự tương tác từ người dùng,
- Bàn phím và chuột bị đóng băng, con trỏ chuột di chuyển tự động, các chức năng nhấp chuột trái và phải được đảo ngược, con trỏ chuột biến mất hoàn toàn hay tự động nhấp vào các biểu tượng và không thể kiểm soát
- Cài đặt màu sắc của hệ điều hành thay đổi tự động, ngày và giờ của máy tính thay đổi, nút Start của Windows biến mất
- Màn hình chờ chuyển thành thông điệp cuộn cá nhân, âm lượng âm thanh đột ngột dao động.
- Chương trình diệt virus tự động bị vô hiệu hóa và dữ liệu bị hỏng, thay đổi hoặc xóa khỏi hệ thống.
- …
Một số port Trojan thường sử dụng
Một số loại Trojan
Remote Access Trojans
Remote Access Trojans (RATs) cho phép hacker hoàn toàn kiểm soát từ xa, truy cập vào file, dữ liệu trong máy nạn nhân. RAT hoạt động như một server và lắng nghe trên một port do đó, nếu người dùng đang sử dụng tường lửa trong mạng, khả năng hacker tấn công từ xa kết nối vào Trojan sẽ ít hơn. Tuy nhiên, nếu hacker trong cùng mạng hoặc nằm phía sau tường lửa có thể dễ dàng truy cập vào Trojan.
Ví dụ, Jason là một attacker muốn tận dụng máy tính của Rebecca để đánh cắp dữ liệu. Jason lây nhiễm máy tính của Rebecca bằng file server.exe và cài đặt một Trojan reverse shell. Trojan này kết nối thông qua port 80 đến máy tính của attacker, tạo nên một kết nối ngược. Kể từ đó, Jason hoàn toàn kiểm soát máy tính của Rebecca.
Hacker sử dụng RAT để lây nhiễm vào mục tiêu và thu được quyền truy cập quản trị.
njRAT là một RAT với khả năng đánh cắp dữ liệu mạnh mẽ. Ngoài việc ghi lại các phím đã gõ, nó còn có thể truy cập vào camera, lấy thông tin đăng nhập trong trình duyệt, upload và download file, thực hiện các thao tác với tiến trình và file.
RAT này có thể được sử dụng để kiểm soát botnets, giúp hacker cập nhật, gỡ cài đặt, ngắt kết nối, khởi động lại và đóng RAT. Hacker cũng có thể tạo và cấu hình mã độc để lan truyền qua ổ USB.
Botnet Trojans
Ngày nay, hầu hết các cuộc tấn công mạng đều liên quan đến botnet. Hacker sử dụng Trojan botnet để xâm nhập vào một số lượng lớn máy tính trên diện rộng, tạo thành một mạng lưới bot có thể được điều khiển thông qua một trung tâm điều khiển và kiểm soát (C&C). Một số Trojan botnet cũng có tính năng tự động lây lan sang các hệ thống khác trong mạng.
Botnet Necurs là một nguồn phân phối nhiều loại mã độc, nổi bật nhất là Dridex và Locky. Nó phân phối một số Trojan trong tài chính ngân hàng và là mã độc tống tiền tệ đáng sợ nhất thông qua hàng triệu email cùng một lúc, và nó liên tục tái tạo bản thân.
Rootkit Trojans
Như tên gọi của nó, “rootkit” bao gồm hai thuật ngữ là “root” và “kit“. “Root” là thuật ngữ trong UNIX/Linux tương đương với “quản trị viên” trong Windows. Thuật ngữ “kit” chỉ đến các chương trình cho phép ai đó đạt được quyền truy cập cấp root/admin vào máy tính bằng cách thực thi các chương trình trong bộ kit. Rootkit là backdoor tấn công trực tiếp vào root hoặc hệ điều hành. Khác với backdoor thông thường, rootkit không thể được phát hiện bằng cách quan sát các dịch vụ, tiến trình đang chạy và bản thân nó không thể tự lây lan, điều này đã gây ra rất nhiều sự nhầm lẫn. Trên thực tế, rootkit chỉ là một thành phần của mối đe dọa kết hợp. Mối đe dọa kết hợp thường bao gồm ba đoạn code: dropper, loader và rootkit. Dropper là chương trình hoặc file thực thi cài đặt rootkit. Kích hoạt chương trình dropper thường liên quan đến sự can thiệp của con người như nhấp chuột vào một link lạ. Khi được khởi chạy, dropper sẽ khởi động loader và sau đó tự xóa bản thân. Khi hoạt động, loader thường gây ra tràn bộ đệm, từ đó tải rootkit vào bộ nhớ.
EquationDrug là một rootkit máy tính nguy hiểm tấn công vào nền tảng Windows. Nó tải xuống và thực thi chương trình Trickier được đặt tên là “DoubleFantasy,” được che giấu bởi TSL20110614-01 (Trojan.Win32.Micstus.A). Nó cho phép hacker từ xa thực thi các lệnh shell trên hệ thống bị nhiễm.
E-banking Trojans
Các Trojan E-banking rất nguy hiểm và đã trở thành một mối đe dọa đáng kể đối với ngành ngân hàng. Chúng chặn thông tin tài khoản nạn nhân trước khi mã hóa và gửi nó đến trung tâm điều khiển của hacker. Hacker sẽ lấy cắp số tiền tối thiểu và tối đa, để không rút toàn bộ tiền trong tài khoản, từ đó tránh bị nghi ngờ. Các Trojan này cũng tạo các ảnh chụp màn hình sao kê tài khoản, để nạn nhân nghĩ rằng không có biến động trong số dưvà không nhận ra trừ khi kiểm tra số dư từ một hệ thống khác hoặc máy ATM.
Dreambot, còn được biết đến với tên gọi là các phiên bản cập nhật của Ursnif hoặc Gozi. Trojan Dreambot được sử dụng bởi các hacker trong thời gian dài và thường xuyên được cập nhật với các khả năng tinh vi hơn. Chúng có thể được truyền qua công cụ Emotet dropper hoặc RIG exploit kit. Trojan này cũng có thể nhúng như một macro trong tài liệu MS Word và gửi cho nạn nhân. Nếu Trojan này xâm nhập vào máy tính, nó sẽ bí mật tạo các registry và tiến trình, và cố gắng kết nối với nhiều server C2C bên ngoài.
Service Protocol Trojans
Những Trojan này có thể tận dụng các giao thức dịch vụ có lỗ hổng như VNC, HTTP/HTTPS, ICMP để tấn công.
VNC Trojans
Một Trojan VNC khởi chạy một tiến trình VNC server trên hệ thống bị nhiễm (nạn nhân), qua đó hacker có thể kết nối với nạn nhân bằng VNC Viewer. Do chương trình VNC được coi là một tiện ích, nên Trojan này sẽ khó được phát hiện bằng phần mềm diệt virus. Các mã độc tài chính nổi tiếng như Vultur, Dridex, Neverquest và Gozi sử dụng một module ảo hóa mạng máy tính (HVNC), cho phép hacker có quyền truy cập cấp người dùng vào máy tính bị nhiễm.
HTTP/HTTPS Trojans
Trojan HTTP/HTTPS có thể vượt qua bất kỳ tường lửa nào và hoạt động theo chiều ngược lại. Chúng sử dụng giao diện web và port 80. Việc thực thi của những Trojan này tạo ra một chương trình con vào một thời gian đã định sẵn. Chương trình con được coi là một người dùng của tường lửa; do đó, tường lửa cho phép chương trình truy cập Internet. Tuy nhiên, chương trình con này lại thực thi shell, kết nối đến web server mà hacker sở hữu trên Internet thông qua một HTTP request có vẻ hợp pháp và gửi một tín hiệu sẵn sàng đến nó. Phản hồi vẻ hợp pháp từ web server của hacker thực tế là một loạt các lệnh mà chương trình con có thể thực thi trên shell trên máy bị nhiễm. Hacker chuyển đổi toàn bộ lưu lượng truy cập thành một cấu trúc giống như Base64 và đưa nó làm giá trị cho một chuỗi cgi-string để tránh bị phát hiện.
Ví dụ nạn nhân (slave) gửi:
GET/cgi-bin/order? M5mAejTgZdgYOdgIOOBqFfVYTgjFLdgxEdblHe7krj HTTP/1.0
Web server của hacker (master) sẽ trả lời:
g5mAlfbknz
Câu trả lời là một lệnh “ls” được mã hóa. Slavecố gắng kết nối với master hàng ngày vào một thời gian cụ thể. Nếu cần thiết, chương trình con sẽ được tạo ra nếu shell bị treo.
SHTTPD
SHTTPD là một HTTP server nhỏ gọn có thể được nhúng vào bên trong bất kỳ chương trình nào. Nó có thể được bao bọc bằng một chương trình bình thường. Khi được thực thi, nó sẽ biến một PC thành một web server vô hình.
HTTP RAT
HTTP RAT (Remote Access Trojan) sử dụng giao diện web và port 80 để có quyền truy cập. Nó có thể được hiểu đơn giản như một HTTP tunnel, chỉ khác là nó hoạt động theo chiều ngược lại. Những Trojan này có tính nguy hiểm cao hơn so với các loại khác vì chúng hoạt động gần như khắp mọi nơi nơi mà Internet có thể truy cập được.
Mobile Trojans
Trojan mobile là mã độc nhắm vào điện thoại di động. Hacker lừa nạn nhân cài đặt ứng dụng chứa mã độc, Trojan sẽ thực thi. BasBanke là một họ Trojan chạy trên nền tảng Android. Trojan này được xác định lần đầu vào năm 2018 trong thời gian bầu cử Brazil, với hơn 10.000 lượt cài đặt tính đến tháng 4 năm 2019. Đây là một loại Trojan tấn công ngân hàng, và khi nó xâm nhập vào thiết bị, nó sẽ thực hiện việc ghi lại các phím được nhấn, ghi màn hình, chặn tin nhắn SMS và lấy cắp thông tin thẻ tín dụng. Để lừa người dùng tải xuống Trojan này, hacker quảng cáo qua tin nhắn WhatsApp và Facebook. Phiên bản của BasBanke phổ biến nhất và được tải xuống nhiều nhất là CleanDroid. CleanDroid tự xưng là một ứng dụng dọn rác và tăng cường bộ nhớ di động; tuy nhiên, thực tế đó là một Trojan tấn công ngân hàng.
loT Trojans
Trojan IoT là các chương trình độc hại tấn công vào các mạng IoT. Các Trojan này tận dụng botnet để tấn công các máy tính khác nằm ngoài mạng IoT.
Mirai là một botnet tự lây nhiễm trong mạng IoT, tấn công vào các thiết bị Internet (thiết bị IoT) có bảo mật yếu. Mirai sử dụng port telnet (23 hoặc 2323) để tìm các thiết bị đang sử dụng username và mật khẩu mặc định của nhà sản xuất. Hầu hết các thiết bị IoT sử dụng thông tin đăng nhập mặc định. Mirai có thể xâm nhập vào các thiết bị như vậy và điều phối chúng để tấn công DDoS vào mục tiêu đã chọn.