CHƯƠNG 1: TONG QUAN VỀ BOTNET VÀ PHÁT HIỆN BOTNET 1. TONG QUAN VỀ BOTNET 1. Khái quát về botnet và phương thức hoạt động 1. Giới thiệu về bot, botnet Bot là một loại phần mềm độc hai cho phép kẻ tan công giành quyền kiểm soát máy tính, hoặc thiết bị tính toán bị lây nhiễm.
Máy tính bị nhiễm bot thường được gọi là zombie hay là máy tính ma. Trên thực tế có hàng ngàn, hàng trăm ngàn máy tính và thiết bị tính toán có kết nối Internet bị nhiễm một số loại bot mà người dùng, không biết và không nhận ra chúng. Kẻ tan công có thé truy cập các zombie và kích hoạt chúng thực thi các cuộc tấn công từ chối dịch vụ, hoặc gửi hàng loạt thư rác. Khi thực hiện truy vết ngược lại nguồn khởi phát các cuộc tan công, người ta thường tìm thấy các zombie - cũng là nạn nhân chứ không phải là kẻ tắn công thực sự.
Các bot do một hoặc một nhóm kẻ tan công thông qua một hoặc một số máy tính (gọi là botmaster) kiểm soát và chúng được liên kết tạo thành một mạng lưới các máy bị kiểm soát được gọi là botnet. Botmaster thường điều khiển các bot trong botnet do mình kiểm soát thông qua hệ thống các máy chủ chỉ huy và kiểm soát (Command and Control, hoặc C&C, hoặc CnC), như minh họa trên Hình 1. Kênh giao tiếp giữa các bot và các máy chủ CnC trong một botnet có thể là IRC, HTTP hoặc giao thức truyền thông khác.1: Mô hình botmaster kiêm soát các bot thông qua các máy chủ CnC Botnet là mối đe dọa an ninh hàng đầu đối với mạng Internet toàn cầu, một phan là do các bot có thé lây nhiễm vào mọi hệ thống có kết nối Internet ở bat cứ nơi nao. Hơn nữa, so với các dạng, phần mềm độc hại khác, các bot có phần vượt trội vì chúng có khả năng tương tác, phối hợp hành động với các bot khác trong botnet.
Ngoài ra, sự phát triển của Internet và sự gia tăng của băng thông, đường truyền mạng đã làm tăng thêm đáng ké sức mạnh của các botnet. Mỗi botnet có thé có hàng ngàn, hàng chục ngàn, thậm chí hàng trăm ngàn thành viên là các máy tính, hoặc các thiết bị tính toán bị lây nhiễm bot. Botnet rất khó bị phát hiện bởi chúng có khả năng thích ứng nhanh để lần tránh các hệ thống an ninh phổ biến hiện nay. Botnet đã trở thành một mối đe dọa thường trực trên mạng Internet do chúng thường trực tiếp hoặc gián tiếp liên quan đến các hành vi độc hại khác nhau bao gồm: gửi thư rac, tấn công từ chối dịch vụ phân tán và tham gia thực thi nhiều hành vi nguy hiêm và độc hại khác, như lan truyền, lây nhiễm các phần mềm gián điệp và mã độc đến hàng triệu máy tính, thực hiện đánh cắp dữ liệu nhận dạng và tham gia vào các hành vi gian lận, hăm dọa và tống tiền khác [67].
Nghiên cứu về botnet và phát hiện, ngăn chặn botnet thu hút được sự quan tâm lớn của cộng đồng mạng bởi sự nguy hiểm của botnet và sự cấp thiết tìm ra các phương pháp hiệu quả cho phát hiện và ngăn chặn botnet. Phương thức hoạt động, vòng đời Hình 1.2 biểu diễn vòng đời của một mạng botnet [60] [63] [106]. Theo đó, các bước trong vòng đời botnet bao gồm Khởi tạo, Đăng ký, Lay nhiễm sơ bộ, Xây dung mang bot, Tập hợp, Khởi động tắn công, và Nâng cấp và Bảo trì. “Khởi tạo” là bước cơ bản trong vòng đời của botnet, ở đó botmaster thiết lập các thông số của các bot để bắt đầu truyền thông.
Sau giai đoạn đầu, botmaster thực hiện “Đăng ký” tên miền và địa chỉ IP tĩnh cho các máy chủ CnC với hệ thống tên miền động (DDNS). Ở giai đoạn “Lây nhiễm sơ bộ”, thủ thuật lây nhiễm mã bot thường được tiến hành dưới nhiều hình thức khác nhau, như thông qua việc tải nội dung không mong muốn và chạy các tệp đính kèm độc hại từ thư điện tử, hoặc thông qua 6 đĩa di động bị nhiém mã độc [3] [60] [75] [106]. Trong bước “Xây dựng mạng bot”, các bot tiếp tục quá trình lây nhiễm và cài đặt mã độc sang các hệ thông mới. Máy bị nhiễm bot tìm kiếm các nạn nhân mới và thực hiện cài đặt mã độc tải từ các máy chủ CnC.
Sau khi được tải và cài đặt vào hệ thống, máy bị nhiễm mã độc hoạt động như một bot thực thụ. Quá trình tải mã độc về hệ thống thường được thực hiện thông qua các giao thức HTTP, FTP, hay P2P. Dang ký (DDNS va IP finh) Lay nhiễm sơ bộ (bất đâu lây nhiềm may nạn nhân trực tiép hoặc gián tiếp) Xây dựng mạng bot Tập hợp (giữa các bots và C&C) Khởi động tan cong (DDoS, trộm cấp darhtirh v.v) Nâng cap va bảo tri Hình 1.2: Vòng đời của botnet Trong bước “Tập hợp” tiếp theo, các kết nỗi được thiết lập giữa các bot và máy chủ CnC của chúng. Một số nhà nghiên cứu đặt tên cho bước này là "giai đoạn kết nôi" [60].
Trong thực tế, bước này luôn xảy ra bất cứ khi nào các bot khởi động lại và duy trì trạng thái kết nối với máy chủ CnC để có thể nhận được các lệnh thực thi các hành động từ botmaster. Do đó, giai đoạn Tập hợp là một quá trình có tính chu kỳ trong toàn bộ vòng đời của botnet [49]. Sau khi thiết lập thành công kết nói đến máy chủ CnC, trong giai đoạn “Khởi động tấn công”, các bot nhận lệnh từ máy chủ CnC và bắt đầu thực hiện các hoạt động độc hại. Mục đích cuối cùng của các mạng botnet là thực hiện các hoạt động độc hại, bao gồm tấn công DDoS, phân tích lưu lượng mạng, trộm cap tài nguyên máy tính hoặc mạng, lây lan các loại mã độc khác, tìm kiếm lỗ hong trong hệ thống máy tính, đánh cắp dữ liệu danh tính, khai thác các tài liệu cá nhân và thao túng các trò chơi trực tuyến [28] [72] [106].
Giai đoạn cuối cùng của vòng đời botnet là “Nâng cấp và bảo trì”. Bảo trì là một việc cần thiết để giữ mối liên hệ giữa botmaster với các bot cho các cuộc tan công tiếp theo. Hơn nữa, có nhiều lý do cho việc cập nhật mã nhị phân cho các bot, như lan tránh các kỹ thuật rà quét, phát hiện và b6 sung thêm các tính năng mới cho các bot [3] [60] [106]. Đây được xem là bước botnet dé bị tồn thương do nó có thể bị phát hiện trong giai đoạn này bằng cách quan sát, phân tích các hành vi mạng.
Phân loại botnet Các loại botnet có thé được phân loại theo 2 tiêu chi: (i) theo kiến trúc mang và (ii) theo giao thức truyền thông. Botnet có thé được tô chức theo nhiều mô hình mạng, chủ yếu theo mô hình tô chức hệ thông các máy chủ CnC là trung gian giữa botmaster và các bot. Các giao thức truyền thông là các giao thức hỗ trợ giao tiếp giữa các máy chủ CnC và các bot trong botnet. Phân loại botnet theo kiến trúc mạng Sức mạnh của các botnet nằm ở khả năng hình thành và điều khiển một mạng lưới linh hoạt các máy bị điều khién có kết nói Internet.
Do đó, các cách tiếp cận khác nhau được sử dụng dé giải quyết các van đề truyền thông giữa các thực thể trong mạng botnet.3 biểu diễn các kiến trúc mang botnet [100] [22] [48] [49] [63], btKoriúềnec Phan mém ứng dụng Bot Phuc vụ Bot Khách Hình 1.3: Phân loại botnet theo kiến trúc mang Kiến trúc tập trung: Botnet với kiến trúc hệ thống CnC tập trung tương tự như mô hình khách-chủ (client-server) truyền thống, như biểu diễn trên Hình 1. Giao thức IRC là một giao thức điển hình được sử dụng trong kiến trúc CnC hệ thống tập trung [63], trong đó các bot thiết lập kênh truyền thông với một hoặc nhiều điểm kết nối. Các máy chủ CnC được triển khai trên các điểm kết nói có trách nhiệm gửi các lệnh và mã cập nhật đến các bot. IRC và HTTP thường được sử dụng là các giao thức chính trong kiến trúc tập trung.
bal _ (anal [= | i= - a Bots Hình 1.4: Kiến trúc CnC tập trung Các ưu điểm của kiến trúc tập trung bao gồm: (i) triển khai dé dàng, không đòi hỏi các phần cứng chuyên dụng: (ii) phản ứng nhanh do các máy chủ CnC trực tiếp điều phối các bot trong mạng mà không bị can thiệp bởi bên thứ ba; (iii) khả năng tiếp cận tốt do có sự phối hợp trực tiếp giữa botmaster và các bot; (iv) cập nhật kip thời thông tin từ botmaster; và (v) khả năng mở rộng tốt. Hạn chế của kiến trúc tập trung là máy chủ CnC được xem như là điểm yếu duy nhất trong hệ thống botnet [100] [63] va dé dang bị vô hiệu hóa. Kiến trúc ngang hàng: Với kiến trúc ngang hàng hoặc phi tập trung, các botnet có tính linh hoạt cao hơn [48], hỗ trợ một số lượng lớn các bot và đạt được hiệu quả tối đa, như biểu diễn trên Hình 1. Nhìn chung, khó đối phó với các botnet phi tập trung vì những lý do sau: (i) Việc vô hiệu hóa botnet phụ thuộc vào việc phát hiện từng nhóm bot hoạt động như botnet đơn lẻ, do đó rất khó đẻ thống kê được tổng số lượng bot trong botnet sử dụng kiến trúc ngang hàng dé cuối cùng có thé vô hiệu hóa toàn bộ botnet; (ii) Botnet theo kiến trúc ngang hàng không có một mạng lưới máy chủ CnC tập trung do đó rất khó đề chuẩn đoán phạm vi bị ảnh hưởng bởi botnet; và (iii) Rất khó để tạm dừng một botnet vì sự liên kết lỏng lẻo giữa các bot.
Ưu điểm của kiến trúc ngang hàng là khó bị vô hiệu hóa do botnet có thể duy trì hoạt động mà không cần sử dụng các máy chủ CnC tập trung. Tuy nhiên, các mạng botnet ngang hàng chậm hội tụ và phản ứng, khó quản lý và khả năng mở rộng kém. Nhiễm độc Thông tin đánh cắp i) Máy chủ(9nC Hình 1.5: Kiến trúc botnet ngang hang Kiến trúc lai: Kiến trúc lai kế thừa các thuộc tính của kiến trúc tập trung và kiến trúc ngang hàng, như mô tả trên Hình 1. Trong botnet với kiến trúc lai, có 2 loại bot hoạt động [100]: bot phục vụ (servant bot) và bot khách (client bot).
Bot phục vụ hoạt động đồng thời như một máy khách và một máy chủ, được cấu hình với các địa chỉ IP định tuyến (IP tinh); Ngược lai, bot khách chỉ hoạt động như một may khách và được cấu hình với các địa chỉ IP không định tuyến (IP động). Bot phục vụ gửi thông tin địa chỉ IP của mình đến danh sách bot và ở chế độ lắng nghe chờ các kết nối đến từ các bot khách.