Chỉ huy và điều khiển Botnet theo cơ chế Peer-to-Peer

Một phần của tài liệu NGHIÊN CỨU, XÂY DỰNG VÀ PHÒNG CHỐNG BOTNET (Trang 26 - 30)

Botnet peer-to-peer (P2P) (ngang hàng) là Botnnet cĩ cơ chế chỉ huy và điều khiển dựa trên P2P[4]. Cũng giống như các mạng P2P, sự giao tiếp trong Botnet P2P sẽ khơng bị phá vỡ khi bị mất đi một vài Bot. Như ở hình 4, Botnet P2P khơng cĩ máy

chủ trung tâm, các Bot được kết nối với mỗi topo khác và hoạt động như một máy khách để nhận lệnh hoặc như một máy chủ để phát tán lệnh. Botnet P2P đã chỉ ra được những lợi thế vượt trội Botnet tập trung truyền thống. Là thế hệ tiếp theo của Botnet, Botnet P2P mạnh hơn và khĩ khăn hơn đối với đội ngũ an ninh mạng.

Hình 1.5: P2P Botnet

Xây dựng Botnet P2P

Quá trình xây dựng Botnet P2P là một quá trình gồm hai bước. Bước một, kẻ tấn cơng cần xâm nhập nhiều máy tính trong mạng Internet, để cĩ thể điều khiển chúng từ xa. Tất cả các phần mềm độc hại như sâu máy tính, virus, trojan house, tin nhắn độc hại,.. cĩ thể được sử dụng để thực hiện nhiệm vụ này. Bước hai, các hành động cần tiếp tục được thực hiện trên các máy tính bị xâm nhập để tạo thành một mạng Botnet. Tùy thuộc vào mục tiêu mà kẻ tấn cơng nhắm vào, các hành động trong bước hai cĩ thể hơi khác nhau. Vì vậy, chi tiết xây dựng Botnet P2P được thể hiện từ hai khía cạnh: (1) Làm thế nào để lựa chọn và xâm nhập ứng viên Bot; (2) Làm thế nào để tạo thành một mạng Botnet.

1) Lựa chọn ứng viên Bot

Mạng P2P đang phổ biến của các ứng dụng phân tán, chẳng hạn như chia sẻ tập tin, lưu trữ web, lưu trữ mạng,... Trong các mạng P2P trao đổi nội dung, nếu khơng cĩ

một cơ quan trung tâm thì khĩ cĩ thể đảm bảo các tập tin trao đổi khơng độc hại. Vì thế, các mạng này trở thành địa điểm lý tưởng cho các phần mềm độc hại lây lan. Mạng P2P đơn giản đối với những kẻ tấn cơng nhằm mục tiêu vào các máy chủ đang tồn tại trong mạng P2P và xây dựng đội quân các máy tính bị lây nhiễm cho Botnet của họ.

Cĩ nhiều phần mềm độc hại P2P đã được phát hiện, ví dụ như Gnuman, VBS.Gnutella, SdDrop, storm worm, Trojan. Peacom,... Lấy sâu trong mạng P2P làm ví dụ, chúng cĩ thể được phân loại theo dạng hoạt động, như sâu topological, hay dạng bị động, như các sâu chia sẻ tập tin. Một nút trong mạng ngang hàng mà bị xâm nhập bởi sâu máy tính P2P chủ động thì nút đĩ sẽ cố gắng lây nhiễm đến các nút khác trong danh sách “hit” của mình thay vì tìm kiếm các lỗ hổng máy tính một cách mù quáng qua việc quét ngẫu nhiên. Các nút trong danh sách “hit” cĩ thể là những máy tính đã được tiếp xúc trước đĩ, hoặc những máy đã phản ứng sau một truy vấn tìm kiếm tập tin. Các sâu máy tính P2P thụ động tự nhân đơi và cư trú trong thư mục chia sẻ tập tin cục bộ giống như một tập tin với những cái tên phổ biến, và chờ đợi các nút khác tải về, thực thi chúng và bị lây nhiễm. Các phần mềm độc hại P2P khác như virus, trojan, …lan truyền theo cách tương tự như sâu thụ động.

Khi một máy chủ dễ bị tổn thương trong một mạng P2P đã bị xâm nhập bởi mã độc hại, máy chủ đĩ cĩ thể trực tiếp trở thành một Bot thành viên mà khơng cần bất kỳ hành động kết nối Botnet nào nữa. Bởi vì Botnet cư trú trong mạng P2P, các Bot cĩ thể tìm thấy và giao tiếp với nhau thơng qua giao thức P2P đĩ. Như vậy mạng Botnet đã xây dựng xong, sẵn sàng để Botmaster điều khiển. Nếu như tất cả ứng viên Bot được lựa chọn từ mạng P2P thì việc xây dựng Botnet P2P rất đơn giản, Botnet này được gọi là "parasite P2P Botnet".

Tuy nhiên, quy mơ của một Botnet parasite bị giới hạn bởi số lượng máy chủ dễ bị xâm nhập trong mạng P2P, điều đĩ khơng đủ và làm giảm đáng kẻ số lượng ứng viên Bot tiềm năng. Do đĩ các Botnet P2P gần đây khơng giới hạn trong các mạng P2P, việc tìm các thành viên mới trên tồn bộ mạng Internet thơng qua tất cả các phương tiện lây lan cĩ thể như email, tin nhắn dụ, tập tin trao đổi,…Đối với kiểu Botnet P2P này, điều quan trọng nhất là để các máy tính mới bị xâm nhập tham gia trong mạng và kết nối với các Bot khác, kết nối trực tiếp hoặc gián tiếp.

2) Hình thành một Botnet

Nếu tất cả ứng viên Bot tiềm năng đều tồn tại trong mạng P2P thì khơng cần thực hiện bất kỳ hành động nào nữa để hình thành mạng Botnet. Tuy nhiên, nếu một

máy chủ ngẫu nhiên bị xâm nhập thì làm thế nào chúng cĩ thể tìm và tham gia vào Botnet. Hiện nay các mạng chia sẻ tập tin P2P cung cấp hai cách chung để các nút mới tham ra mạng:

• Danh sách các nút ban đầu được mã hĩa cứng trong mỗi máy khách P2P. Khi một nút mới hoạt động, nút đĩ cố gắng kết nối liên lạc với mỗi nút trong danh sách ban đầu để cập nhật thơng tin các nút lân cận.

• Các nút mới cĩ thể cập nhật danh sách nút lân cận của mình bằng cách vào web cache và lấy các bản cập nhật mới nhất.

Thủ tục tìm kiếm và tham gia vào một mạng P2P thường được gọi là thủ tục "bootstrap" (chương trình khởi động). Thủ tục này cĩ thể thích nghi ngay để xây dựng Botnet P2P. Danh sách các nút định trước hoặc vị trí lưu trữ các web cache định trước cần mã hĩa cứng trong mã Bot. Sau đĩ, máy chủ mới bị nhiễm nhận biết các nút để liên lạc, hoặc tìm kiếm các ứng viên nút lân cận sẽ liên lạc sau này.

Tuy nhiên, thủ tục bootstrap cĩ hạn chế, nếu danh sách các nút ban đầu hoặc web cache bị người quản trị thu được, họ cĩ thể ngăn chặn Botnet tăng lên bằng cách tắt các nút hoặc web cache. Do đĩ, mặc dù Botnet P2P parasite giới hạn lựa chọn ứng viên Bot, nhưng khơng bị hạn chế bootstrap vì cách lựa chọn ứng viên Bot từ mạng P2P.

Kẻ tấn cơng đã khắc phục được hạn chế này. Ví dụ trong Botnet P2P lai, khi máy chủ A lây nhiễm máy chủ dễ bị xâm nhập B, A đưa cho B danh sách nút lân cận của mình, và B sẽ thêm A vào danh sách nút lân cận này. Bất kể hai Bot nào tìm thấy nhau (ví dụ thơng qua quét trên Internet) sẽ trao đổi danh sách nút của họ để xây dựng danh sách mới. Bằng cách này, Botnet P2P tránh thủ tục bootstrap dựa trên danh sách mã hĩa cứng.

Phân loại Botnet P2P

Dựa trên việc lựa chọn ứng viên Bot và mạng Botnet tham gia, Botnet P2P cĩ thể chia thành ba loại: parasite P2P Botnet, đề cập đến Botnet mà máy chủ dễ bị tổn thương nằm trong mạng P2P; leeching P2P Botnet, các Bot được chọn từ khắp nơi trên Internet nhưng cuối cùng chúng sẽ tham gia vào và dựa trên một mạng P2P; Bot- only P2P Botnet, đề cập đến Botnet nằm trong một mạng độc lập.

Cơ chế chỉ huy và điều khiển Botnet là phần chính trong thiết kế một Botnet. Cơ chế này trực tiếp xác định cấu trúc liên kết của một Botnet, và do đĩ ảnh hưởng đến sức mạnh của một Botnet, chống lại lỗi mạng, giám sát an ninh và phịng thủ.

Botnet truyền thống, như Botnet dựa trên IRC, là Botnet tập trung, chúng cĩ một vài máy chủ trung tâm để tất cả các Bot kết nối đến và nhận lệnh. Botnet P2P cĩ mơ hình chỉ huy và điều khiển dựa trên P2P, khơng cĩ máy chủ trung tâm. Mỗi thành viên Bot vừa hoạt động như một máy chủ phân phối lệnh, vừa như một máy khách nhận lệnh. Vì thế Botnet P2P đàn hồi hơn so với Botnet tập trung truyền thống.

Cơ chế chỉ huy và điều khiển cĩ thể phân loại thành cơ chế kéo (pull) và cơ chế đẩy (push). Cơ chế kéo đề cập đến cách thức mà các Bot lấy lệnh từ nơi mà Botmaster ban bố lệnh. Ngược lại, cơ chế đẩy nghĩa là các thành viên Bot thụ động chờ đợi lệnh đến và chuyển tiếp lệnh đến các Bot khác.

Trong leeching P2P Botnet và parasite P2P Botnet, Bot lẫn lộn với người dùng P2P bình thường, chúng cĩ thể giao tiếp với nhau thơng qua giao thức P2P tương ứng. Mặt khác, Bot-only P2P Botnet khơng bị giới hạn trong bất kỳ giao thức P2P nào. Botmaster linh hoạt lựa chọn giao thức P2P đang tồn tại hoặc thiết kế một giao thức liên lạc mới.

Một phần của tài liệu NGHIÊN CỨU, XÂY DỰNG VÀ PHÒNG CHỐNG BOTNET (Trang 26 - 30)

Tải bản đầy đủ (DOCX)

(54 trang)
w