๑۩۞۩๑ Cuộc sống vốn bất công và ta phải học cách chấp nhận nó ๑۩۞۩๑

Danh sách bài đã đăng

Sửa Đóng
Author: »»--(¯`° [¯`•.º:¦:♥* Dunggttn Blog*♥:¦:º.•´¯]~† °´¯)--«« Copyright © 2009.
*Bản quyền hoàn toàn thuộc về blog dunggttn - cvak36a1.co.cc. Nghiêm cấm mọi hành vi sao chép bất hợp pháp và mạo danh tác giả. Xin ghi rõ nguồn khi được cho phép sao chép bài viết này

[Hacking] Mạng Botnet hoạt động như thế nào

Một trong những phương thức tấn công DDoS hiệu quả và phổ biến nhất hiện nay là hoạt động dựa trên hàng trăm máy tính bị chiếm quyền điều khiển (tức các zombie). Những zombie này thường bị kiểm soát và quản lý qua các mạng IRC, sử dụng được gọi là các botnet. Ở bài này chúng ta sẽ xem xét một số cách thức tin tặc có thể dùng để tấn công và chiếm quyền điều khiển máy tính đích, cùng một số biện pháp đối phó hiệu quả nhằm bảo vệ máy tính trước những mối đe doạ nguy hiểm luôn rình rập xung quanh.

Chúng ta sẽ tìm hiểu về:

• Như thế nào là bot, botnet; cách thức hoạt động của chúng.
• Những thành phần phổ biến nhất trong bot.
• Một host có thể bị tấn công và chiếm quyền điều khiển như thế nào.
• Biện pháp ngăn chặn hiệu quả và cách đối phó trước hoạt động phá hoại của chúng.


Điều gì bạn nên biết?

• Cách thức hoạt động của phần mềm độc hại (malware) như trojan, worm, ….
• Cơ chế được dùng trong kiểu tấn công DDoS.
• Hiểu các khái niệm cơ bản của TCP/IP, DNS và IRC.


Cuối thế kỷ 19 cũng như đầu thiên niên kỷ mới đánh dấu bước phát triển nhanh, mạnh của một số chiến lược tấn công khác biệt nhắm vào hệ thống mạng. DDoS, tức Distributed Denial of Services, hình thức tấn công từ chối dịch vụ phân tán khét tiếng ra đời. Tương tự với người anh em DoS (tấn công từ chối dịch vụ), DDoS được phát tán rất rộng, chủ yếu nhờ tính đơn giản nhưng rất khó bị dò tìm của chúng. Đã có nhiều kinh nghiệm đối phó được chia sẻ, với khối lượng kiến thức không nhỏ về nó, nhưng ngày nay DDoS vẫn đang là một mối đe doạ nghiêm trọng, một công cụ nguy hiểm của hacker. Chúng ta hãy cùng tìm hiểu về DDoS và sản phẩm kế thừa từ nó: các cuộc tấn công botnet.

Giới thiệu về Bot và Botnet

Bot là viết tắt của robot, tức các chương trình tự động hoá (chứ không phải là người máy như nghĩa chúng ta vẫn gọi) thường xuyên được sử dụng trong thế giới Internet. Người ta định nghĩa spider được dùng bởi các công cụ tìm kiếm trực tuyến, ánh xạ website và phần mềm đáp ứng theo yêu cầu trên IRC (như eggdrop) là robot. Các chương trình tự động phản ứng khi gặp sự kiện ngoài mạng nội bộ cũng được gọi là robot. Trong bài này, chúng ta sẽ quan tâm tới một kiểu robot cụ thể (hay bot như tên tắt vẫn thường được gọi) là IRC bot. IRC bot sử dụng các mạng IRC như một kênh liên lạc để nhận lệnh từ người dùng từ xa. Ví dụ cụ thể như, người dùng là một kẻ tấn công, còn bot là một Trojan horse. Một lập trình viên giỏi có thể dễ dàng tạo ra một số bot riêng của mình, hoặc xây dựng lại từ các bot có sẵn. Chúng có thể dễ dàng ẩn nấp trước những hệ thống bảo mật cơ bản, sau đó là phát tán đi nhanh chóng trong thời gian ngắn.

IRC 

IRC là tên viết tắt của Internet Relay Chat. Đó là một giao thức được thiết kế cho hoạt động liên lạc theo kiểu hình thức tán gẫu thời gian thực (ví dụ RFC 1459, các bản update RFC 2810, 2811, 2812, 2813) dựa trên kiến trúc client-server. Hầu hết mọi server IRC đều cho phép truy cập miễn phí, không kể đối tượng sử dụng. IRC là một giao thức mạng mở dựa trên nền tảng TCP (Transmission Control Protocol - Giao thức điều khiển truyền vận), đôi khi được nâng cao với SSL (Secure Sockets Layer - Tầng socket bảo mật).


Một server IRC kết nối với server IRC khác trong cùng một mạng. Người dùng IRC có thể liên lạc với cả hai theo hình thức công cộng (trên các kênh) hoặc riêng tư (một đối một). Có hai mức truy cập cơ bản vào kênh IRC: mức người dùng (user) và mức điều hành (operator). Người dùng nào tạo một kênh liên lạc riêng sẽ trở thành người điều hành. Một điều hành viên có nhiều đặc quyền hơn (tuỳ thuộc vào từng kiểu chế độ do người điều hành ban đầu thiết lập ) so với người dùng thông thường.

Các bot IRC được coi như một người dùng (hoặc điều hành viên) thông thường. Chúng là các quy trình daemon, có thể chạy tự động một số thao tác. Quá trình điều khiển các bot này thông thường dựa trên việc gửi lệnh để thiết lập kênh liên lạc do hacker thực hiện, với mục đích chính là phá hoại. Tất nhiên, việc quản trị bot cũng đòi hỏi cơ chế thẩm định và cấp phép. Vì thế, chỉ có chủ sở hữu chúng mới có thể sử dụng.

Một thành phần quan trọng của các bot này là những sự kiện mà chúng có thể dùng để phát tán nhanh chóng tới máy tính khác. Xây dựng kế hoạch cần thận cho chương trình tấn công sẽ giúp thu được kết quả tốt hơn với thời gian ngắn hơn (như xâm phạm được nhiều máy tính hơn chẳng hạn). Một số n bot kết nối vào một kênh đơn để chờ lệnh từ kẻ tấn công thì được gọi là một botnet.

Cách đây chưa lâu, các mạng zombie (một tên khác của máy tính bị tấn công theo kiểu bot) thường được điều khiển qua công cụ độc quyền, do chính những kẻ chuyên bẻ khoá cố tình phát triển. Trải qua thời gian, chúng hướng tới phương thức điều khiển từ xa. IRC được xem là công cụ phát động các cuộc tấn công tốt nhất nhờ tính linh hoạt, dễ sử dụng và đặc biệt là các server chung có thể được dùng như một phương tiện liên lạc. IRC cung cấp cách thức điều khiển đơn giản hàng trăm, thậm chí hàng nghìn bot cùng lúc một cách linh hoạt. Nó cũng cho phép kẻ tấn công che đậy nhân dạng thật của mình với một số thủ thuật đơn giản như sử dụng proxy nặc danh hay giả mạo địa chỉ IP. Song cũng chính bởi vậy mà chúng để lại dấu vết cho người quản trị server lần theo.

Trong hầu hết các trường hợp tấn công bởi bot, nạn nhân chủ yếu là người dùng máy tính đơn lẻ, server ở các trường đại học hoặc mạng doanh nghiệp nhỏ. Lý do là bởi máy tính ở những nơi này không được giám sát chặt chẽ và thường để hở hoàn toàn lớp bảo vệ mạng. Những đối tượng người dùng này thường không xây dựng cho mình chính sách bảo mật, hoặc nếu có thì không hoàn chỉnh, chỉ cục bộ ở một số phần. Hầu hết người dùng máy tính cá nhân kết nối đường truyền ADSL đều không nhận thức được các mối nguy hiểm xung quanh và không sử dụng phần mềm bảo vệ như các công cụ diệt virus hay tường lửa cá nhân.

Bot và các ứng dụng của chúng

Khả năng sử dụng bot và các ứng dụng của chúng cho máy tính bị chiếm quyền điều khiển hoàn toàn phụ thuộc vào sức sáng tạo và kỹ năng của kẻ tấn công. Chúng ta hãy xem một số ứng dụng phổ biến nhất.

DDoS

Các botnet được sử dụng thường xuyên trong các cuộc tấn công Distributed Denial of Service (DDoS). Một kẻ tấn công có thể điều khiển số lượng lớn máy tính bị chiểm quyền điều khiển tại một trạm từ xa, khai thác băng thông của chúng và gửi yêu cầu kết nối tới máy đích. Nhiều mạng trở nên hết sức tồi tệ sau khi hứng chịu các cuộc tấn công kiểu này. Và trong một số trường hợp, thủ phạm được tìm thấy ngay khi đang tiến hành cuộc phá hoại (như ở các cuộc chiến dotcom).

Tấn công từ chối dịch vụ phân tán (DDoS)

Tấn công DDoS là một biến thể của Foolding DoS (Tấn công từ chối dịch vụ tràn). Mục đích của hình thức này là gây tràn mạng đích, sử dụng tất cả băng thông có thể. Kẻ tấn công sau đó sẽ có toàn bộ lượng băng thông khổng lồ trên mạng để làm tràn website đích. Đó là cách phát động tấn công tốt nhất để đặt được nhiều máy tính dưới quyền kiểm soát. Mỗi máy tính sẽ đưa ra băng thông riêng (ví dụ với người dùng PC cá nhân nối ADSL). Tất cả sẽ được dùng một lần, và nhờ đó, phân tán được cuộc tấn công vào website đích. Một trong các kiểu tấn công phổ biến nhất được thực hiện thông qua sử dụng giao thức TCP (một giao thức hướng kết nối), gọi là TCP syn flooding (tràn đồng bộ TCP). Cách thức hoạt động của chúng là gửi đồng thời cùng lúc một số lượng khổng lồ yêu cầu kết nối TCP tới một Web Server (hoặc bất kỳ dịch vụ nào khác), gây tràn tài nguyên server, dẫn đến tràn băng thông và ngăn không cho người dùng khác mở kết nối riêng của họ. Quả là đơn giản nhưng thực sự nguy hiểm! Kết quả thu được cũng tương tự khi dùng giao thức UDP (một giao thức không kết nối).

Giới tin tặc cũng bỏ ra khá nhiều thời gian và công sức đầu tư nhằm nâng cao cách thức tấn công của chúng. Hiện nay, người dùng mạng máy tính như chúng ta đang phải đối mặt với nhiều kỹ thuật tinh vi hơn xa so kiểu tấn công DDoS truyền thống. Những kỹ thuật này cho phép kẻ tấn công điều khiển một số lượng cực kỳ lớn máy tính bị chiếm quyền điều khiển (zombie) tại một trạm từ xa mà đơn giản chỉ cần dùng giao thức IRC.

Spamming (phát tán thư rác)

Botnet là một công cụ lý tưởng cho các spammer (kẻ phát tán thư rác). Chúng đã, đang và sẽ được dùng vừa để trao đổi địa chỉ e-mail thu thập được, vừa để điều khiển cơ chế phát tán thư rác theo cùng một cách với kiểu tấn công DDoS. Thư rác được gửi tới botnet, sau đó phân phối qua các bot và từ đó phát tán tới máy tính đang bị chiếm quyền điều khiển. Tất cả spammer đều lấy tên nặc danh và mọi hậu quả thì máy tính bị phá hoại gánh chịu.


Sniffing và Keylogging

Các bot cũng có thể được sử dụng một cách hiệu quả để nâng cao nghệ thuật cổ điển của hoạt động sniffing. Nếu theo dõi lưu lượng dữ liệu truyền đi, bạn có thể xác định được con số khó tin lượng thông tin được truyền tải. Đó có thể là thói quen của người dùng, trọng tải gói TCP và một số thông tin thú vị khác (như mật khẩu, tên người dùng). Cũng tương tự như vậy với keylogging, một hình thức thu thập tất cả thông tin trên bàn phím khi người dùng gõ vào máy tính (như e-mail, password, dữ liệu ngân hàng, tài khoản PayPal,…).

Ăn cắp nhân dạng

Các phương thức được đề cập ở trên cho phép kẻ tấn công điều khiển botnet để thu thập một lượng thông tin cá nhân khổng lồ. Những dữ liệu có thể được dùng để xây dựng nhân dạng giả mạo, sau đó lợi dụng để có thể truy cập tài khoản cá nhân hoặc thực hiện nhiều hoạt động khác (có thể là chuẩn bị cho nhiều cuộc tấn công khác) mà người gánh chịu hậu quả không ai khác chính là chủ nhân của các thông tin đó.

Sở hữu phần mềm bất hợp pháp

Đây là hình thức cuối cùng, nhưng chưa phải là kết thúc. Các máy tính bị tấn công theo kiểu bot có thể được dùng như một kho lưu trữ động tài liệu bất hợp pháp (phần mềm ăn cắp bản quyền, tranh ảnh khiêu dâm,…). Dữ liệu được lưu trữ trên ổ cứng trong khi người dùng ADSL không hề hay biết.

Còn rất nhiều, rất nhiều kiểu ứng dụng khác nữa được phát triển dựa trên botnet (như trả tiền cho mỗi lần kích chuột để sử dụng một chương trình, phishing, hijacking kết nối HTTP/HTTPS…), nhưng liệt kê ra được hết có lẽ sẽ phải mất hàng giờ. Bản thân bot chỉ là một công cụ với khả năng lắp ghép và thích ứng dễ dàng cho mọi hoạt động đòi hỏi đặt quyền kiểm soát đơn lên một số lượng lớn máy tính.

Các kiểu bot khác nhau

Nhiều kiểu bot đã được xây dựng và cho phép download được cung cấp nhan nhản khắp Internet. Mỗi kiểu có những thành phần đặc biệt riêng. Chúng ta sẽ xem xét một số bot phổ biến nhất và thảo những thành phần chính và các yếu tố phân biệt của chúng.

GT-Bot

Tất cả các bot GT (Global Threat) đều dựa trên kiểu client IRC phổ biến dành cho Windows gọi là mIRC. Cốt lõi của các bot này là xây dựng tập hợp script (kịch bản) mIRC, được dùng để điểu khiển hoạt động của hệ thống từ xa. Kiểu bot này khởi chạy một phiên client nâng cao với các script điều khiển và dùng một ứng dụng thứ hai, thông thường là HideWindows để ẩn mIRC trước người dùng máy tính đích. Một file DLL bổ sung sẽ thêm một số thành phần mới vào mIRC để các script có thể chi phối nhiều khía cạnh khác nhau trên máy tính bị chiếm quyền điều khiển.

Agobot

Agobot là một trong những kiểu bot phổ biến nhất thường được các tay bẻ khoá (craker) chuyên nghiệp sử dụng. Chúng được viết trên nền ngôn ngữ C++ và phát hành dưới dạng bản quyền GPL. Điểm thú vị ở Agobot là mã nguồn. Được modul hoá ở mức cao, Agobot cho phép thêm chức năng mới vào dễ dàng. Nó cũng cung cấp nhiều cơ chế ẩn mình trên máy tính người dùng. Thành phần chính của Agobot gồm: NTFS Alternate Data Stream (Xếp luân phiên dòng dữ liệu NTFS), Antivirus Killer (bộ diệt chương trình chống virus) và Polymorphic Encryptor Engine (cơ chế mã hoá hình dạng). Agobot cung cấp tính năng sắp xếp và sniff lưu lượng. Các giao thức khác ngoài IRC cũng có thể được dùng để điều khiển kiểu bot này.


DSNX

Dataspy Network X (DSNX) cũng được viết trên nền ngồn ngữ C++ và mã nguồn dựa trên bản quyền GPL. Ở kiểu bot này có thêm một tính năng mới là kiến trúc plug-in đơn giản.

SDBot 

SDBot được viết trên nền ngôn ngữ C và cũng sử dụng bản quyền GPL. Không giống như Agobot, mã nguồn của kiểu bot này rất rõ ràng và bản thân phần mềm có một lượng giới hạn chức năng. Nhưng SDBot rất phổ biến và đã được phát triển ra nhiều dạng biến thể khác nhau.


Các yếu tố của một cuộc tấn công

(IMG:http://files.myopera.com/vnitblog/files/botnet_1.jpg

Hình 1: thể hiện cấu trúc của một botnet điển hình

• Đầu tiên kẻ tấn công sẽ phát tán trojan horse vào nhiều máy tính khác nhau. Các máy tính này trở thành zombie (máy tính bị chiếm quyền điều khiển) và kết nối tới IRC server để nghe thêm nhiều lệnh sắp tới.

• Server IRC có thể là một máy công cộng ở một trong các mạng IRC, nhưng cũng có thể là máy chuyên dụng do kẻ tấn công cài đặt lên một trong các máy bị chiếm quyền điều khiển.

• Các bot chạy trên máy tính bị chiếm quyền điều khiển, hình thành một botnet.

Một ví dụ cụ thể

Hoạt động của kẻ tấn công có thể chia thành bốn giai đoạn khác nhau:

  • Tạo
  • Cấu hình
  • Tấn công
  • Điều khiển
Giai đoạn Tạo phụ thuộc lớn vào kỹ năng và đòi hỏi của kẻ tấn công. Nếu là người bẻ khoá chuyên nghiệp, họ có thể cân nhắc giữa việc viết mã bot riêng hoặc đơn giản chỉ là mở rộng, tuỳ biến cái đã có. Lượng bot có sẵn là rất lớn và khả năng cấu hình cao. Một số còn cho phép thao tác dễ dàng hơn qua một giao diện đồ hoạ. Giai đoạn này không có gì khó khăn, thường dành cho những kẻ mới vào nghề.

Giai đoạn Cấu hình là cung cấp server IRC và kênh thông tin. Sau khi cài đặt lên một máy tính đã được kiểm soát, bot sẽ kết nối tới host được chọn. Đầu tiên kẻ tấn công nhập dữ liệu cần thiết vào để giới hạn quyền truy cập bot, bảo vệ an toàn cho kênh và cuối cùng cung cấp một danh sách người dùng được cấp phép (những người có thể điều khiển bot). Ở giai đoạn này, bot có thể được điều chỉnh sâu hơn, như định nghĩa phương thức tấn công và đích đến.

Giai đoạn Tấn công là sử dụng nhiều kỹ thuật khác nhau để phát tán bot, cả trực tiếp và gián tiếp. Hình thức trực tiếp có thể là khai thác lỗ hổng của hệ điều hành hoặc dịch vụ. Còn gián tiếp thường là triển khai một số phần mềm khác phục vụ cho công việc đen tối, như sử dụng file HTML dị dạng để khai thác lỗ hổng Internet Explorer, sử dụng một số phần mềm độc hại khác phân phối qua các mạng ngang hàng hoặc qua trao đổi file DCC (Direct Client–to–Client) trên IRC. Tấn công trực tiếp thường được thực hiện tự động thông qua các sâu (worm). Tất cả công việc những sâu này phải làm là tìm kiếm mạng con trong hệ thống có lỗ hổng và chèn mã bot vào. Mỗi hệ thống bị xâm phạm sau đó sẽ tiếp tục thực hiện chương trình tấn công, cho phép kẻ tấn công ghi lại tài nguyên đã dùng trước đó và có được nhiều thời gian để tìm kiếm nạn nhân khác.

Cơ chế được dùng để phân phối bot là một trong những lý do chính gây nên cái gọi là tạp nhiễu nềnInternet. Một số cổng chính được dùng cho Windows, cụ thể là Windows 2000, XP SP1 (xem Bảng 1). Chúng dường như là đích ngắm yêu thích của hacker, vì rất dễ tìm ra một máy tính Windows chưa được cập nhật bản vá đầy đủ hoặc không cài đặt phần mềm tường lửa. Trường hợp này cũng rất phổ biến với người dùng máy tính gia đình và các doanh nghiệp nhỏ, những đồi tượng thường bỏ qua vấn đề bảo mật và luôn kết nối Internet băng thông rộng.



Cổng Dịch vụ
42 WINS (Host Name Server)
80 HTTP (lỗ hổng IIS hay Apache)
135 RPC (Remote Procedure Call) 
137 NetBIOS Name Service
139 NetBIOS Session Service
445 Microsoft–DS–Service
1025 Windows Messenger 
1433 Microsoft–SQL–Server
2745 Bagle worm backdoor
3127 MyDoom worm backdoor 
3306 MySQL UDF (User Definable Functions) 
5000 UPnP (Universal Plug and Play)

Bảng 1: Danh sách các cổng gắn với lỗ hổng dịch vụ

Giai đoạn Điều khiển gồm một số hoạt động thực hiện sau khi bot đã được cài đặt lên máy đích trong một thư mục chọn. Để khởi động với Windows, bot update các khoá đăng ký, thông thường làHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\. Việc đầu tiên bot thực hiện sau khi được cài đặt thành công là kết nối tới một server IRC và liên kết với kênh điều khiển thông qua sử dụng một mật khẩu. Nickname trên IRC được tạo ngẫu nhiên. Sau đó, bot ở trạng thái sẵn sàng chờ lệnh từ ứng dụng chủ. Kẻ tấn công cũng phải sử dụng một mật khẩu để kết nối tới botnet. Điều này là cần thiết để không ai khác có thể sử dụng mạng botnet đã được cung cấp.

(IMG:http://files.myopera.com/vnitblog/files/botnet_2.jpg

Hình 2: Kỹ thuật botnet hardening

IRC không chỉ cung cấp phương tiện điều khiển hàng trăm bot mà còn cho phép kẻ tấn công sử dụng nhiều kỹ thuật khác nhau để ẩn nhân dạng thực của chúng. Điều đó khiến việc đối phó trước các cuộc tấn công trở nên khó khăn. Nhưng may mắn là, do đặc điểm tự nhiên của chúng, các botnet luôn tạo ra lưu lượng đáng ngờ, tạo điều kiện dễ dàng để có thể dò tìm nhờ một số kiểu mẫu hay mô hình đã biết. Điều đó giúp các quản trị viên IRC phát hiện và can thiệp kịp thời, cho phép họ gỡ bỏ các mạng botnet và những sự lạm dụng không đáng có trên hệ thống của họ.

Trước tình hình này, những kẻ tấn công buộc phải nghĩ ra cách thức khác, cải tiến kỹ thuật C&C (Control and Command - Điều khiển qua lệnh) thành botnet hardening. Ở kỹ thuật mới này, các bot thường được cấu hình để kết nối với nhiều server khác nhau, sử dụng một hostname ánh xạ động. Nhờ đó, kẻ tấn công có thể chuyển bot sang server mới dễ dàng, vẫn hoàn toàn nắm quyền kiểm soát ngay cả khi bot đã bị phát hiện. Các dịch vụ DNS động như dyndns.com hay no-IP.com thường được dùng trong kiểu tấn công này.

DNS động

Một DNS động (như RFC 2136) là một hệ thống liên kết tên miền với địa chỉ IP động. Người dùng kết nối Internet qua modem, ADSL hoặc cáp thường không có địa chỉ IP cố định. Khi một đối tượng người dùng kết nối tới Internet, nhà cung cấp dịch vụ mạng (ISP) sẽ gán một địa chỉ IP chưa được sử dụng lấy ra từ vùng được chọn. Địa chỉ này thường được giữ nguyên cho tới khi người dùng ngừng sử dụng kết nối đó.

Cơ chế này giúp các hãng cung cấp dịch vụ mạng (ISP) tận dụng được tối đa khả năng khai thác địa chỉ IP, nhưng cản trở đối tượng người dùng cần thực hiện một số dịch vụ nào đó qua mạng Internet trong thời gian dài, song không phải sử dụng địa chỉ IP tĩnh. Để giải quyết vấn đề này, DNS động được cho ra đời. Hãng cung cấp sẽ tạo cho dịch vụ một chương trình chuyên dụng, gửi tín hiệu tới cơ sở dữ liệu DNS mỗi khi địa chỉ IP của người dùng thay đổi.

Để ẩn hoạt động, kênh IRC được cấu hình giới hạn quyền truy cập và ẩn thao tác. Các mô hình IRC điển hình cho kênh botnet là: +k (đòi hỏi phải nhập mật khẩu khi dùng kênh); +s (không được hiển thị trên danh sách các kênh công cộng); +u (chỉ có người điều hành (operator) là được hiển thị trên danh sách người dùng); +m (chỉ có người dùng ở trạng thái sử dụng âm thanh +v mới có thể gửi tin đến kênh). Hầu hết mọi chuyên gia tấn công đều dùng server IRC cá nhân, mã hoá tất cả liên lạc trên kênh dẫn. Chúng cũng có khuynh hướng sử dụng nhiều biến thể cá nhân hoá của phần mềm IRC server, được cấu hình để nghe trên các cổng ngoài tiêu chuẩn và sử dụng phiên bản đã được chỉnh sửa của giao thức, để một IRC client thông thường không thể kết nối vào mạng.

Một C&C thực tế - Agobot

Bây giờ là một vụ tấn công mẫu, cho phép chúng ta quan sát và hiểu một chương trình Command and Control (điều khiển qua lệnh) được thực hiện như thế nào. Hai máy tính sẽ được sử dụng. Máy đầu tiên chạy một server IRC dựa trên UnrealIRCd 3.2.3 và hai hệ điều hành Windows XP SP1 ảo dựa trên VMware Workstation (hai máy đích có khả năng bị tấn công). Máy thứ hai dành cho người chủ trì, điều khiển botnet qua Irssi, một text IRC client.

Để tạo chương trình thiết kế đối chiếu (reverse engineering) thật khó, Agobot thực hiện một số thường trình tự bảo vệ trước các bộ gỡ lỗi như SoftICE hay OllyDbg và trước các máy ảo như VMware, Virtual PC. Điều đó là cần thiết để hack được mã nguồn nhằm vượt qua chương trình bảo vệ của VMware, trước khi có thể cài đặt bot lên các máy ảo mẫu của chúng ta.

Cấu hình

Bước đầu tiên là cấu hình bot thông qua giao diện đồ hoạ đơn giản của nó (Xem hình 3). Thông tin được nhập vào bao gồm tên, số cổng IRC server, tên kênh, danh sách người sử dụng với mật khẩu master (chủ điều khiển), cuối cùng là tên file và thư mục cài đặt bot. Một số thành phần bổ sung cũng được kích hoạt như hỗ trợ sniffing và cơ chế trạng thái. Kết quả của giai đoạn này là file config.h, file nền tảng trong quá trình biên dịch bot được tạo.

(IMG:http://files.myopera.com/vnitblog/files/botnet_3.jpg

Hình 3: Giao diện cấu hình Agobot.

Điều khiển theo lệnh (Command and Control)

Sau khi bot được biên dịch, hai hệ thống còn lại sẽ tấn công theo kiểu “thủ công”. Máy chủ (master) kết nối tới IRC server và liên kết với kênh dẫn để có thể ra lệnh điều khiển cho bot (xem hình 4).


(IMG:http://files.myopera.com/vnitblog/files/botnet_4.jpg

Hình 4: Máy chủ và kết nối kênh

Muốn thu được quyền điều khiển qua các bot, một cơ chế thẩm định là cần thiết. Cơ chế này được tạo đơn giản bằng cách gửi một lệnh tới kênh (xem hình 5).

.login FaDe dune

(IMG:http://files.myopera.com/vnitblog/files/botnet_5.jpg

Hình 5: Thẩm định username và password

Sau đó, bot đầu tiên được yêu cầu đưa ra danh sách tất cả chương trình đang chạy trên máy tính bị chiếm quyền kiểm soát (xem hình 6):

/msg FakeBot–wszyzc .pctrl.list

(IMG:http://files.myopera.com/vnitblog/files/botnet_6.jpg

Hình 6: Máy chủ đưa ra yêu cầu cho bot đầu tiên

Sau đó, bot thứ hai được yêu cầu đưa ra thông tin và khoá cdkey của các chương trình ứng dụng cài đặt trên máy (hình 7):

/msg FakeBot2–emcdnj .bot.sysinfo
/msg FakeBot2–emcdnj .harvest.cdkeys


(IMG:http://files.myopera.com/vnitblog/files/botnet_7.jpg

Hình 7: Máy chủ đưa ra yêu cầu cho bot thứ hai

Ở ví dụ này chúng ta sử dụng những tính năng hết sức đơn giản. Còn thực tế, Agobot cung cấp một tập hợp rất phongphus các lệnh và chức năng. Một trong số chúng bạn có thể xem ở Bảng 2:



Lệnh Mô tả
command.list Danh sách tất cả các lệnh có thể sử dụng 
bot.dns Xử lý một địa chỉ IP hoặc hostname 
bot.execute Chạy một file .exe trên máy từ xa 
bot.open Mở một file trên máy từ xa 
bot.command Chạy một lệnh với system() 
irc.server Kết nối tới một IRC server 
irc.join Nhập thông tin của một kênh dẫn cụ thể 
irc.privmsg Gửi thư riêng cho một người dùng 
http.execute Download và thực thi file qua HTTP 
ftp.execute Download và thực thi file qua FTP 
ddos.udpflood Khởi động một chương trình UDP tràn 
ddos.synflood Khởi động một Syn tràn 
ddos.phaticmp Khởi động một PHATicmp tràn 
redirect.http Khởi động một HTTP proxy 
redirect.socks Khởi động một SOCKS4 proxy 
pctrl.list Đưa ra danh sách chương trình 
pctrl.kill Loại bỏ các chương trình 

Bảng 2: Một số lệnh Agobot

Bảo vệ máy tính của bạn như thế nào

Bây giờ chúng ta sẽ xem xét một số phương thức bảo vệ trước khả năng xâm phạm và phá hoại của kiểu tấn công bot, dưới góc nhìn của cả người dùng và nhà quản trị.


Các chiến lược bảo vệ cho người dùng PC

Như đã đề cập tới ở trên, tấn công bot chủ yếu được thực hiện qua các loại sâu, lướt trên mạng để tìm kiếm lỗ hổng thâm nhập được. Do đó, bước đầu tiên là phải cập nhật thường xuyên, download cá bản vá và bản update hệ thống cho cả hệ điều hành cũng như các ứng dụng truy cập Internet. Sử dụng chương trình update tự động là một ý kiến hay. Bạn cũng nên cẩn thận khi mở các file đính kèm đáng ngờ trong e-mail. Cũng sẽ là khôn ngoan khi loại bỏ hỗ trợ hình thức ngôn ngữ kịch bản như ActiveX và JavaScript (hoặc ít nhất là kiểm soát việc sử dụng của chúng). Cuối cùng, yếu tố cơ sở là bạn phải dùng ít nhất một chương trình diệt virus, trojan và luôn luôn update phiên bản mới nhất của chúng. Dẫu vậy, nhiều bot được cấu hình lần tránh khởi sự kiểm soát của các chương trình diệt virus. Vì thế, bạn nên dùng thêm phần mềm tường lửa cá nhân, nhất là khi sử dụng máy tính nối mạng liên tục 24 giờ/ngày.


Dấu hiệ chính khi có hiện diện của bot là tốc độ máy và tốc độ kết nối mạng trở nên cực kỳ chậm. Một cách kiểm tra các kết nối đáng ngờ đơn giản và hiệu quả là sử dụng công cụ netstat (xem hình 8):

C:/>netstat –an

(IMG:http://files.myopera.com/vnitblog/files/botnet_8.jpg



Hình 8: Netstat trên một máy bị tấn công

Netstat 

Netstat là một công cụ linh hoạt, tương thích được cả trên hệ điều hành Windows và các hệ thống *NIX. Chức năng của nó là kiểm soát các cổng đã được kích hoạt. Netstat kiểm tra quá trình nghe trên cổng TCP và UDP, sau đó cung cấp thông tin chi tiết và hoạt động mạng. Trên hệ thống *NIX, netstat hiển thị tất cả các dòng mở. Nó cũng sử dụng các bộ lọc chọn ngoài.

Trạng thái kết nối có thể trên Netstat gồm:

  • ESTABLISHED – tất cả các host đều được kết nối
  • CLOSING – host từ xa đang đóng kết nối
  • LISTENING – host đang nghe kết nối đến
  • SYN_RCVD – một host từ xa đuwocj yêu cầu khởi động kết nối
  • SYN_SENT – host đang khởi động kết nối mới
  • LAST_ACK – host phải gửi báo cáo trước khi đóng kết nối
  • TIMED_WAIT, CLOSE_WAIT – một host từ xa đang kết thúc kết nối
  • FIN_WAIT 1 – client đang kết thúc kết nối
  • FIN_WAIT 2 – cả hai host đều đang kết thúc kết nối
Quan sát các kết nối ESTABLISHED tới cổng TCP trong phạm vi 6000 đến 7000 (thông thường là 6667). Nếu bạn thấy mình tính của mình bị xâm hại, hãy ngắt nó ra khỏi mạng Internet, làm sạch hệ thống, khởi động lại và kiểm tra.

Nguồn: http://vnitweb.com

VI.Cách tạo một con "Bot":

Với ví dụ này NoHat sẽ dùng ngôn ngữ lập trình Visual Basic để minh họa vì ngôn ngữ này đc nhiều người sử dụng nếu có thời gian NoHat sẽ post thêm bài viết về cách viết bot trên nền ngôn ngữ C++

Con bot này sẽ có tính năng cơ bản là kết nối tới server IRC và trả lời khi hacker hỏi "LiveOrNot"

1.Điều đầu tiên mà bạn phải học là tập lệnh IRC:

Tập lệnh IRC sẽ có sự khác biệt đôi chút khi nó chạy trên các chương trình quản lý IRC server khác nhau
CODE
USER  là lệnh thiết lập tên thật cho bot khi nó vào IRC server

NICK  là lệnh thiết lập nick name cho bot

JOIN  là lệnh cho bot truy cập vào một "kênh" (channel),channel tương tự như một room chat vậy

PRIVMSG  :  là lệnh gửi tin nhắn tới hacker
Thứ tự các lệnh từ 1 tới 3 mà NoHat nêu chính là thứ tự các lệnh mà bạn phải gửi tới IRC server

2.Một số Sub chính cho bot:

Khai báo hằng và biến:
CODE
Const Server As String = "irc.datviet.net" 'tên channel 
Const Port As Integer = 23 'port 
Const Channel As String = "NoHat" 'Kênh mà bot sẽ chui vào
Dim Nick As String 'Nick của bot
Bạn tạo môt Form mới và kéo thả vào đó thành phần WinSock đặt thuộc tính name là ws
CODE
Private Sub Form_Load()
ws.Connect Server, Port 'Tạo một kết nối tới server IRC 
Nick = "Tester" & LTrim(RTrim(Str(Int(Rnd * 100)))) 
End Sub
Sub thực hiện việc gời command sau khi kết nối hoàn thành
CODE
Private Sub ws_Connect()
Dim UserName, RealName As String 
UserName = Nick 
RealName = Nick 
ws.SendData "USER " & UserName & " 0 * " & RealName & vbCrLf 
ws.SendData "NICK " & Nick & vbCrLf 
ws.SendData "JOIN " & Channel & vbCrLf
ws.SendData "PRIVMSG " & Channel & ":" & " Bot chao master" & vbCrLf
End Sub
Sub đáp trả khi bot nhận đc lệnh
CODE
Private Sub ws_DataArrival(ByVal bytesTotal As Long)
Dim strData As String
Dim Pos As Integer
Dim Master As String
ws.GetData strData
DoEvents 
If InStr(strData, "liveornot") <> 0 Then
Pos = InStr(1, strData, "!")
Master = Mid(strData, 2, Pos - 2)
ws.SendData Replace(strData, "liveornot", "Live") & vbCrLf
ws.SendData "PRIVMSG " & Master & " " & Replace(strData, "liveornot", "Live") & vbCrLf
End If
EndSub
VII.Điều khiển bot thế nào ?

Để điều khiển bot bạn hãy cho chạy thử con bot trên để làm ví dụ
Sau đó bật một chương trình IRC Client nào đó ví dụ mIRC
Rồi kết nối vào máy server là irc.datviet.net với port 23 ( đáng nhẽ là port 6667 nhưng không hiểu sao đa phần các IRC server của Việt Nam lại dùng port 23 ?! ) với một nick tùy ý

gõ lệnh:
CODE
/JOIN NoHat (phải có dấu "/" vì mIRC .... bắt phải thế chứ IRC server không bắt thế đâu )
là bạn đã có mặt trong cùng channel với bot của bạn

sau đó hãy gõ lệnh:
CODE
LiveOrNot (chú ý viết hoa y chang nếu không con bot nó ngu ra mặt [img]http://www.hvaonline.net/hvaonline/images/smilies/85f758dd90f8f9d2587ecc9d55b16cf3.gif[/img] )
Con bot sẽ trả lời bạn rằng 
CODE
Live


Nguồn: xNoHat theo hvaonline.net 

Link: http://www.angiangonline.net/diendan/index.php?showtopic=934


Posted by Tôi là Benina Lúc 18:26 0 nhận xét

[Hacking] DoS và DDoS toàn tập – Phần II

DoS và DDoS toàn tập – Phần II

(IMG:http://www.3c.com.vn/Uploaded/hoangtv/07-04-008/dostoantap.JPG)
Trong phần II của bài viết về tấn công DoS và DDoS tôi sẽ trình bày với các bạn nội dung chi tiết về mạng Bot, các dạng mạng Bot và cách tạo ra mạng Botnet. Khi hiểu về mạng Botnet bạn có thể hình dung ra phương thức tấn công DDoS.
Trong phần II này tôi cũng trình bày với các bạn chi tiết các phương thức tấn công DDoS các thực hiện các phương thức tấn công này. Nhưng bài viết này chỉ có tác dụng giúp các bạn hiểu biết sâu về tấn công DDoS mà thôi, các tools giới thiệu chỉ mang tính giới thiệu vì nó là các tools DDoS cũ.

VI. Mạng BOT NET
1. Ý nghĩa của mạng BOT
- Khi sử dụng một Tool tấn công DoS tới một máy chủ đôi khi không gây ảnh hưởng gì cho máy chủ - Giả sử bạn sử dụng tool Ping of Death tới một máy chủ, trong đó máy chủ kết nối với mạng tốc độ 100Mbps bạn kết nối tới máy chủ tốc độ 3Mbps - Vậy tấn công của bạn không có ý nghĩa gì.
- Nhưng bạn hãy tưởng tượng có 1000 người như bạn cùng một lúc tấn công vào máy chủ kia khi đó toàn bộ băng thông của 1000 người cộng lại tối đa đạt 3Gbps và tốc độ kết nối của máy chủ là 100 Mbps vậy kết quả sẽ ra sao các bạn có khả năng tưởng tượng.
- Nhưng tôi đang thử hỏi làm cách nào để có 1000 máy tính kết nối với mạng – tôi đi mua một nghìn chiếc và thuê 1000 thuê bao kết nối - chắc chắn tôi không làm như vậy rồi và cũng không kẻ tân công nào sử dụng phương pháp này cả.
- Kẻ tấn công xây dựng một mạng gồm hàng nghìn máy tính kết Internet (có mạng BOT lên tới 400.000 máy). Vậy làm thể nào chúng có khả năng lợi dụng người kết nối tới Internet để xây dựng mạng BOT trong bài viết này tôi sẽ giới thiệu với các bạn các mạng BOT và cách xây dựng, những Tool xây dựng.
- Khi có trong tay mạng BOT kẻ tấn công sử dụng những tool tấn công đơn giản để tấn công vào một hệ thống máy tính. Dựa vào những truy cập hoàn toàn hợp lệ của hệ thống, cùng một lúc chúng sử dụng một dịch vụ của máy chủ, bạn thử tưởng tượng khi kẻ tấn công có trong tay 400.000 máy chủ và cùng một lúc ra lệnh cho chúng download một file trên trang web của bạn. Và đó chính là DDoS – Distributed Denial of Servcie
- Không có một phương thức chống tấn công DDoS một cách hoàn toàn nhưng trong bài viết này tôi cũng giới thiệu với các bạn những phương pháp phòng chống DDoS khi chúng ta đã hiểu về nó.

2. Mạng BOT

- BOT từ viết tắt của từ RoBOT
- IRCbot – còn được gọi là zombia hay drone.
- Internet Relay Chat (IRC) là một dạng truyền dữ liệu thời gian thực trên Internet. Nó thường được thiết kế sao cho một người có thể nhắn được cho một group và mỗi người có thể giao tiếp với
nhau với một kênh khác nhau được gọi là – Channels.
- Đầu tiên BOT kết nối kênh IRC với IRC Server và đợi giao tiếp giữa những người với nhau.
- Kẻ tấn công có thể điều khiển mạng BOT và sử dụng mạng BOT cũng như sử dụng nhằm một mục đích nào đó.
- Nhiều mạng BOT kết nối với nhau người ta gọi là BOTNET – botnet.

3. Mạng Botnet.
- Mạng Botnet bao gồm nhiều máy tính
- Nó được sử dụng cho mục đích tấn công DDoS
- Một mạng Botnet nhỏ có thể chỉ bao gồm 1000 máy tính nhưng bạn thử tưởng tượng mỗi máy tính này kết nối tới Internet tốc độ chỉ là 128Kbps thì mạng Botnet này đã có khả năng tạo băng thông là 1000*128 ~ 100Mbps – Đây là một con số thể hiện băng thông mà khó một nhà Hosting nào có thể share cho mỗi trang web của mình.

4. Mục đích sử dụng mạng Botnets
- Tấn công Distributed Denial-of-Service - DDoS
+ Botnet được sử dụng cho tấn công DDoS
- Spamming
+ Mở một SOCKS v4/v5 proxy server cho việc Spamming
- Sniffing traffic
+ Bot cũng có thể sử dụng các gói tin nó sniffer (tóm được các giao tiếp trên mạng) sau khi tóm được các gói tin nó cố gắng giải mã gói tin để lấy được các nội dung có ý nghĩa như tài khoản ngân hàng và nhiều thông tin có giá trị khác của người sử dụng.
- Keylogging
+ Với sự trợ giúp của Keylogger rất nhiều thông tin nhạy cảm của người dùng có thể sẽ bị kẻ tấn công khai thác như tài khoản trên e-banking, cũng như nhiều tài khoản khác.
- Cài đặt và lây nhiễm chương trình độc hại
+ Botnet có thể sử dụng để tạo ra mạng những mạng BOT mới.
- Cài đặt những quảng cáo Popup
+ Tự động bật ra những quảng cáo không mong muốn với người sử dụng.
- Google Adsense abuse
+ Tự động thay đổi các kết quả tìm kiếm hiển thị mỗi khi người dùng sử dụng dịch vụ tìm kiểm của Google, khi thay đổi kết quả nó sẽ lừa người dùng kích vào những trang web nguy hiểm.
- Tấn công vào IRC Chat Networks
+ Nó được gọi là clone attack
- Phishing
+ Mạng botnet còn được sử dụng để phishing mail nhằm lấy các thông tin nhạy cảm của người dùng.
5. Các dạng của mạng BOT.
Agobot/Phatbot/Forbot/XtremBot
- Đây là những bot được viết bằng C++ trên nền tảng Cross-platform và mã nguồn được tìm trên GPL. Agobot được viết bởi Ago nick name được người ta biết đến là Wonk, một thanh niên trẻ người Đức
– đã bị bắt hồi tháng 5 năm 2004 với tội danh về tội phạm máy tính.
- Agobot có khả năng sử dụng NTFS Alternate Data Stream (ADS) và như một loại Rootkit nhằm ẩn các tiến trình đang chạy trên hệ thống

SDBot/Rbot/UrBot/UrXbot 
- SDBot được viết bằng ngồn ngữ C và cũng được public bởi GPL. Nó đươc coi như là tiền thân của Rbot, RxBot, UrBot, UrXBot, JrBot

mIRC-Based Bots – GT-Bots
- GT được viết tắt từ hai từ Global Threat và tên thường được sử dụng cho tất cả các mIRC-scripted bots. Nó có khả năng sử dụng phần mềm IM là mIRC để thiết lập một số script và một số đoạn mã khác.

6. Các bước xây dựng mạng BotNet? Cách phân tích mạng Bot.

Để hiểu hơn về xây dựng hệ thống mạng BotNet chúng ta nghiên cứu từ cách lây nhiễm vào một máy tính, cách tạo ra một mạng Bot và dùng mạng Bot này tấn công vào một đích nào đó của mạng Botnet được tạo ra từ Agobot’s.

Bước 1: Cách lây nhiễm vào máy tính.
- Đầu tiên kẻ tấn công lừa cho người dùng chạy file "chess.exe", một Agobot thường copy chúng vào hệ thống và sẽ thêm các thông số trong Registry để đảm bảo sẽ chạy cùng với hệ thống khi khởi động. Trong Registry có các vị trí cho các ứng dụng chạy lúc khởi động tại.
CODE
HKLM\Software\Microsoft\Windows\CurrentVersion\Run
HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices

Bước 2: Cách lây lan và xây dựng tạo mạng BOTNET
- Sau khi trong hệ thống mạng có một máy tính bị nhiễm Agobot, nó sẽ tự động tìm kiếm các máy tính khác trong hệ thống và lây nhiễm sử dụng các lỗ hổng trong tài nguyên được chia sẻ trong hệ
thống mạng.
- Chúng thường cố gắng kết nối tới các dữ liệu share mặc định dành cho các ứng dụng quản trị (administrator or administrative) ví dụ như: C$, D$, E$ và print$ bằng cách đoán usernames và password để có thể truy cập được vào một hệ thống khác và lây nhiễm.
- Agobot có thể lây lan rất nhanh bởi chúng có khả năng tận dụng các điểm yếu trong hệ điều hành Windows, hay các ứng dụng, các dịch vụ chạy trên hệ thống.

Bước 3: Kết nối vào IRC.
- Bước tiếp theo của Agobot sẽ tạo ra một IRC-Controlled Backdoor để mở các yếu tố cần thiết, và kết nối tới mạng Botnet thông qua IRC-Controll, sau khi kết nối nó sẽ mở những dịch vụ cần thiết để khi có yêu cầu chúng sẽ được điều khiển bởi kẻ tấn công thông qua kênh giao tiếp IRC.

Bước 4: Điều khiển tấn công từ mạng BotNet.
- Kẻ tấn công điều khiển các máy trong mạng Agobot download những file .exe về chạy trên máy.
- Lấy toàn bộ thông tin liên quan và cần thiết trên hệ thống mà kẻ tấn công muốn.
- Chạy những file khác trên hệ thống đáp ứng yêu cầu của kẻ tấn công.
- Chạy những chương trình DDoS tấn công hệ thống khác.

7. Sơ đồ cách hệ thống bị lây nhiễm và sử dụng Agobot.



VII. Các tools tấn công DDoS
1. Nuclear Bot.
- Nuclear Bot là một tool cực mạnh "Multi Advanced IRC BOT" có thể sử dụng để Floods, Managing, Utilities, Spread, IRC Related, tấn công DDoS và nhiều mục đích khác.



VIII. Tấn công DDoS

Trên Internet tấn công Distributed Denial of Service là một dạng tấn công từ nhiều máy tính tới một đích, nó gây ra từ chối các yêu cầu hợp lệ của các user bình thường. Bằng cách tạo ra những gói tin cực nhiều đến một đích cụ thể, nó có thể gây tình trạng tương tự như hệ thống bị shutdown.

2. Các đặc tính của tấn công DDoS.

- Nó được tấn công từ một hệ thống các máy tính cực lớn trên Internet, và thường dựa vào các dịch vụ có sẵn trên các máy tính trong mạng botnet
- Các dịch vụ tấn công được điều khiển từ những "primary victim" trong khi các máy tính bị chiếm quyền sử dụng trong mạng Bot được sử dụng để tấn công thường được gọi là "secondary victims".
- Là dạng tấn công rất khó có thể phát hiện bởi tấn công này được sinh ra từ nhiều địa chỉ IP trên Internet.
- Nếu một địa chỉ IP tấn công một công ty, nó có thể được chặn bởi Firewall. Nếu nó từ 30.000 địa chỉ IP khác, thì điều này là vô cùng khó khăn.
- Thủ phạm có thể gây nhiều ảnh hưởng bởi tấn công từ chối dịch vụ DoS, và điều này càng nguy hiểm hơn khi chúng sử dụng một hệ thống mạng Bot trên internet thực hiện tấn công DoS và đó được gọi là tấn công DDoS.

3. Tấn công DDoS không thể ngăn chặn hoàn toàn.
- Các dạng tấn công DDoS thực hiện tìm kiếm các lỗ hổng bảo mật trên các máy tính kết nối tới Internet và khai thác các lỗ hổng bảo mật để xây dựng mạng Botnet gồm nhiều máy tính kết nối tới
Internet.
- Một tấn công DDoS được thực hiện sẽ rất khó để ngăn chặn hoàn toàn.
- Những gói tin đến Firewall có thể chặn lại, nhưng hầu hết chúng đều đến từ những địa chỉ IP chưa có trong các Access Rule của Firewall và là những gói tin hoàn toàn hợp lệ.
- Nếu địa chỉ nguồn của gói tin có thể bị giả mạo, sau khi bạn không nhận được sự phản hồi từ những địa chỉ nguồn thật thì bạn cần phải thực hiện cấm giao tiếp với địa chỉ nguồn đó.
- Tuy nhiên một mạng Botnet bao gồm từ hàng nghìn tới vài trăm nghìn địa chỉ IP trên Internet và điều đó là vô cùng khó khăn để ngăn chặn tấn công.

4. Kẻ tấn công khôn ngoan.
Giờ đây không một kẻ tấn công nào sử dụng luôn địa chỉ IP để điều khiển mạng Botnet tấn công tới đích, mà chúng thường sử dụng một đối tượng trung gian dưới đây là những mô hình tấn công DDoS

a. Agent Handler Model
Kẻ tấn công sử dụng các handler để điều khiển tấn công

b. Tấn công DDoS dựa trên nền tảng IRC
Kẻ tấn công sử dụng các mạng IRC để điều khiển, khuyếch đại và quản lý kết nối với các máy tính trong mạng Botnet.

IX. Phân loại tấn công DDoS
- Tấn công gây hết băng thông truy cập tới máy chủ.
+ Flood attack
+ UDP và ICMP Flood (flood – gây ngập lụt)
- Tấn công khuếch đại các giao tiếp
+ Smurf and Fraggle attack
Tấn công DDoS vào Yahoo.com năm 2000


Sơ đồ phân loại tấn công DDoS


Sơ đồ tấn công DDoS ở dạng Khuếch đại giao tiếp.

Như các bạn biết tấn công Smurf khi sử dụng sẽ Ping
đến địa chỉ Broadcast của một mạng nào đó mà địa chỉ nguồn chính là địa
chỉ của máy cần tấn công, khi đó toàn bộ các gói Reply sẽ được chuyển
tới địa chỉ IP của máy tính bị tấn công.

X. Tấn công Reflective DNS (reflective - phản chiếu).
a. Các vấn đề liên quan tới tấn công Reflective DNS
- Một Hacker có thể sử dụng mạng botnet để gửi rất nhiều yêu cầu tới máy chủ DNS.
- Những yêu cầu sẽ làm tràn băng thông mạng của các máy chủ DNS,
- Việc phòng chống dạng tấn công này có thể dùng Firewall ngăn cấm những giao tiếp từ các máy tính được phát hiện ra.
- Nhưng việc cấm các giao tiếp từ DNS Server sẽ có nhiều vấn đề lớn. Một DNS Server có nhiệm vụ rất quan trọng trên Internet.
- Việc cấm các giao tiếp DNS đồng nghĩa với việc cấm người dùng bình thường gửi mail và truy cập Website.
- Một yêu cầu về DNS thường chiếm bằng 1/73 thời gian của gói tin trả lời trên máy chủ. Dựa vào yếu tố này nếu dùng một Tools chuyên nghiệp để làm tăng các yêu cầu tới máy chủ DNS sẽ khiến
máy chủ DNS bị quá tải và không thể đáp ứng cho các người dùng bình thường được nữa.

b. Tool tấn công Reflective DNS – ihateperl.pl
- ihateperl.pl là chương trình rất nhỏ, rất hiệu quả, dựa trên kiểu tấn công DNS-Reflective
- Nó sử dụng một danh sách các máy chủ DNS để làm tràn hệ thống mạng với các gói yêu cầu Name Resolution.
- Bằng một ví dụ nó có thể sử dụng google.com để resole gửi tới máy chủ và có thể đổi tên domain đó thành www.vnexperts.net hay bất kỳ một trang web nào mà kẻ tấn công muốn.
- Để sử dụng công cụ này, rất đơn giản bạn tạo ra một danh sách các máy chủ DNS, chuyển cho địa chỉ IP của máy cá nhân và thiết lập số lượng các giao tiếp.

XI. Các tools sử dụng để tấn công DDoS.
Trong toàn bộ các tools tôi giới thiệu trong bài viết này hầu hết là các tools cũ và không hiệu quả, và chỉ mang tính chất sư phạm để các bạn có thể hiểu về dạng tấn công DDoS hơn mà thôi. Dưới đây là các Tools tấn công DDoS.

- Trinoo - Tribe flood Network (TFN) - TFN2K - Stacheldraht - Shaft
- Trinity - Knight - Mstream - Kaiten

Các tools này bạn hoàn toàn có thể Download miễn phí
trên Internet và lưu ý là chỉ để thử đây là các tools yếu và chỉ mang
tính Demo về tấn công DdoS mà thôi.

Theo VnExperts
Link: http://www.angiangonline.net/diendan/index.php?showtopic=183
Posted by Tôi là Benina Lúc 18:22 0 nhận xét

[Hacking] DoS và DDoS toàn tập - Phần I

DoS và DDoS là một trong những dạng tấn công nguy hiểm nhất đối với một hệ thống mạng. Bài viết này không muốn các bạn dựa vào các tools trong này để tấn công, mục đích trình bày để các bạn hiểu về kiểu tấn công này, và có những giải pháp phòng chống.

DoS và DDoS là một trong những dạng tấn công nguy hiểm nhất đối với một hệ thống mạng. Bài viết này không muốn các bạn dựa vào các tools trong này để tấn công, mục đích trình bày để các bạn hiểu về kiểu tấn công này, và có những giải pháp phòng chống.

Trong bài viết này tôi sẽ trình bày với các bạn chi tiết về định nghĩa, các dạng tấn công DoS và DDoS, cùng hàng loạt các kiến thức liên quan được tổng hợp. DoS và DDoS là một trong những dạng tấn công nguy hiểm nhất đối với một hệ thống mạng. Bài viết này tôi không muốn các bạn dựa vào các tools trong này để tấn công, mục đích trình bày để các bạn hiểu về kiểu tấn công này, và có những giải pháp phòng chống.

Phần I: của bài viết tập trung vào DoS[/size]

1. Lịch sử các cuộc tấn công DoS và DDoS

2. Định nghĩa về: Denial of Service Attack

3. Các dạng tấn công DoS

4. Các tool tấn công DoS

5. Mạng BOT net

6. Tấn công DDoS

7. Phân loại tấn công DDoS

8. Các tools tấn công DDoS

9. Sâu máy tính (worms) trong tấn công DDoS

I. Lịch sử của tấn công DoS
1. Mục tiêu
- Mục tiêu các cuộc tấn công thường vào các trang web lớn và các tổ chức thương mại điện tử trên Internet.

2. Các cuộc tấn công.
- Vào ngày 15 tháng 8 năm 2003, Microsoft đã chịu đợt tấn công DoS cực mạnh và làm gián đoạn websites trong vòng 2 giờ.
- Vào lúc 15:09 giờ GMT ngày 27 tháng 3 năm 2003: toàn bộ phiên bản tiếng anh của website Al-Jazeera bị tấn công làm gián đoạn trong nhiều giờ

II. Định nghĩa về tấn công DoS
Tấn công DoS là kiểu tấn công vô cùng nguy hiểm, để hiểu được nó ta cần phải lắm rõ định nghĩa của tấn công DoS và các dạng tấn công DoS.

- Tấn công DoS là một kiểu tấn công mà một người làm cho một hệ thống không thể sử dụng, hoặc làm cho hệ thống đó chậm đi một cách đáng kể với người dùng bình thường, bằng cách làm quá tải tài nguyên của hệ thống.

- Nếu kẻ tấn công không có khả năng thâm nhập được vào hệ thống, thì chúng cố gắng tìm cách làm cho hệ thống đó sụp đổ và không có khả năng phục vụ người dùng bình thường đó là tấn công Denial of Service (DoS).

Mặc dù tấn công DoS không có khả năng truy cập vào dữ liệu thực của hệ thống nhưng nó có thể làm gián đoạn các dịch vụ mà hệ thống đó cung cấp. Như định nghĩa trên DoS khi tấn công vào một hệ thống sẽ khai thác những cái yếu nhất của hệ thống để tấn công, những mục đích của tấn công DoS:

1. Các mục đích của tấn công DoS
- Cố gắng chiếm băng thông mạng và làm hệ thống mạng bị ngập (flood), khi đó hệ thống mạng sẽ không có khả năng đáp ứng những dịch vụ khác cho người dùng bình thường.

- Cố gắng làm ngắt kết nối giữa hai máy, và ngăn chặn quá trình truy cập vào dịch vụ. 

- Cố gắng ngăn chặn những người dùng cụ thể vào một dịch vụ nào đó

- Cố gắng ngăn chặn các dịch vụ không cho người khác có khả năng truy cập vào.

- Khi tấn công DoS xảy ra người dùng có cảm giác khi truy cập vào dịch vụ đó như bị:
+ Disable Network - Tắt mạng
+ Disable Organization - Tổ chức không hoạt động

+ Financial Loss – Tài chính bị mất
2. Mục tiêu mà kẻ tấn công thường sử dụng tấn công DoS

Như chúng ta biết ở bên trên tấn công DoS xảy ra khi kẻ tấn công sử dụng hết tài nguyên của hệ thống và hệ thống không thể đáp ứng cho người dùng bình thường được vậy các tài nguyên chúng thường sử dụng để tấn công là gì:

- Tạo ra sự khan hiếm, những giới hạn và không đổi mới tài nguyên

- Băng thông của hệ thống mạng (Network Bandwidth), bộ nhớ, ổ đĩa, và CPU Time hay cấu trúc dữ liệu đều là mục tiêu của tấn công DoS.

- Tấn công vào hệ thống khác phục vụ cho mạng máy tính như: hệ thống điều hoà, hệ thống điện, hệt hống làm mát và nhiều tài nguyên khác của doanh nghiệp. Bạn thử tưởng tượng khi nguồn điện vào máy chủ web bị ngắt thì người dùng có thể truy cập vào máy chủ đó không.

- Phá hoại hoặc thay đổi các thông tin cấu hình.

- Phá hoại tầng vật lý hoặc các thiết bị mạng như nguồn điện, điều hoà…
III. Các dạng tấn công
Tấn công Denial of Service chia ra làm hai loại tấn công
- Tấn công DoS: Tấn công từ một cá thể, hay tập hợp các cá thể.
- Tấn công DDoS: Đây là sự tấn công từ một mạng máy tính được thiết kế để tấn công tới một đích cụ thể nào đó.

1. Các dạng tấn công DoS
- Smurf
- Buffer Overflow Attack
- Ping of Death
- Teardrop
- SYN Attack
a. Tấn công Smurf
- Là thủ phạm sinh ra cực nhiều giao tiếp ICMP (ping) tới địa chỉ Broadcast của nhiều mạng với địa chỉ nguồn là mục tiêu cần tấn công.

* Chúng ta cần lưu ý là: Khi ping tới một địa chỉ là quá trình hai chiều – Khi máy A ping tới máy B máy B reply lại hoàn tất quá trình. Khi tôi ping tới địa chỉ Broadcast của mạng nào đó thì toàn bộ các máy tính trong mạng đó sẽ Reply lại tôi. Nhưng giờ tôi thay đổi địa chỉ nguồn, thay địa chỉ nguồn là máy C và tôi ping tới địa chỉ Broadcast của một mạng nào đó, thì toàn bộ các máy tính trong mạng đó sẽ reply lại vào máy C chứ không phải tôi và đó là tấn công Smurf.


- Kết quả đích tấn công sẽ phải chịu nhận một đợt Reply gói ICMP cực lớn và làm cho mạng bị dớt hoặc bị chậm lại không có khả năng đáp ứng các dịch vụ khác.
- Quá trình này được khuyếch đại khi có luồng ping reply từ một mạng được kết nối với nhau (mạng BOT).
- tấn công Fraggle, chúng sử dụng UDP echo và tương tự như tấn công Smurf.

- Kẻ tấn công gửi những gói tin IP lớn hơn số lương bytes cho phép của tin IP là 65.536 bytes.
- Quá trình chia nhỏ gói tin IP thành những phần nhỏ được thực hiện ở layer II.
- Quá trình chia nhỏ có thể thực hiện với gói IP lớn hơn 65.536 bytes. Nhưng hệ điều hành không thể nhận biết được độ lớn của gói tin này và sẽ bị khởi động lại, hay đơn giản là sẽ bị gián đoạn
giao tiếp.
- Để nhận biết kẻ tấn công gửi gói tin lớn hơn gói tin cho phép thì tương đối dễ dàng.

d. Tấn công Teardrop
- Gói tin IP rất lớn khi đến Router sẽ bị chia nhỏ làm nhiều phần nhỏ.


- Kẻ tấn công sử dụng sử dụng gói IP với các thông số rất khó hiểu để chia ra các phần nhỏ (fragment).


- Nếu hệ điều hành nhận được các gói tin đã được
chia nhỏ và không hiểu được, hệ thống cố gắng build lại gói tin và điều
đó chiếm một phần tài nguyên hệ thống, nếu quá trình đó liên tục xảy ra
hệ thống không còn tài nguyên cho các ứng dụng khác, phục vụ các user
khác.

e. Tấn công SYN

- Kẻ tấn công gửi các yêu cầu (request ảo) TCP SYN tới máy chủ bị tấn công. Để xử lý lượng gói tin SYN này hệ thống cầntốn một lượng bộ nhớ cho kết nối.
- Khi có rất nhiều gói SYN ảo tới máy chủ và chiếm hết các yêu cầu xử lý của máy chủ. Một người dùng bình thường kết nối tới máy chủ ban đầu thực hiện Request TCP SYN và lúc này máy chủ không còn khả năng đáp lại - kết nối không được thực hiện.
- Đây là kiểu tấn công mà kẻ tấn công lợi dụng quá trình giao tiếp của TCP theo – Three-way.
- Các đoạn mã nguy hiểm có khả năng sinh ra một số lượng cực lớn các gói TCP SYN tới máy chủ bị tấn công, địa chỉ IP nguồn của gói tin đã bị thay đổi và đó chính là tấn công DoS.
- Hình bên trên thể hiện các giao tiếp bình thường với máy chủ và bên dưới thế hiện khi máy chủ bị tấn công gói SYN đến sẽ rất nhiều trong khi đó khả năng trả lời của máy chủ lại có hạn và khi đó máy chủ sẽ từ chối các truy cập hợp pháp.
- Quá trình TCP Three-way handshake được thực hiện:
Khi máy A muốn giao tiếp với máy B. (1) máy A bắn ra một gói TCP SYN tới máy B – (2) máy B khi nhận được gói SYN từ A sẽ gửi lại máy A gói ACK đồng ý kết nối – (3) máy A gửi lại máy B gói ACK và bắt đầu các giao tiếp dữ liệu.
- Máy A và máy B sẽ dữ kết nối ít nhất là 75 giây, sau đó lại thực hiện một quá trình TCP Three-way handshake lần nữa để thực hiện phiên kết nối tiếp theo để trao đổi dữ liệu.
- Thật không may kẻ tấn công đã lợi dụng kẽ hở này để thực hiện hành vi tấn công nhằm sử dụng hết tài nguyên của hệ thống bằng cách giảm thời gian yêu cầu Three-way handshake xuống rất nhỏ và không gửi lại gói ACK, cứ bắn gói SYN ra liên tục trong một thời gian nhất định và không bao giờ trả lời lại gói SYN&ACK từ máy bị tấn công.
- Với nguyên tắc chỉ chấp nhận gói SYN từ một máy tới hệ thống sau mỗi 75 giây nếu địa chỉ IP nào vi phạm sẽ chuyển vào Rule deny access sẽ ngăn cản tấn công này.
IV. Các công cụ tấn công DoS
QUOTE
- Jolt2
- Bubonic.c
- Land and LaTierra
- Targa
- Blast20
- Nemesy
- Panther2
- Crazy Pinger
- Some Trouble
- UDP Flood
- FSMax

1. Tools DoS – Jolt2

- Cho phép kẻ tấn từ chối dịch vụ (DoS) lên các hệ thống trên nền tảng Windows
- Nó là nguyên nhân khiên máy chủ bị tấn công có CPU luôn hoạt động ở mức độ 100%, CPU không thể xử lý các dịch vụ khác.
- Không phải trên nền tảng Windows như Cisco Router và một số loại Router khác cũng có thể bị lỗ hổng bảo mật này và bị tools này tấn công.
2. Tools DoS: Bubonic.c
- Bubonic.c là một tools DoS dựa vào các lỗ hổng bảo mật trên Windows 2000
- Nó hoạt động bằng cách ngẫu nhiên gửi các gói tin TCP với các thiết lập ngẫu nhiên làm cho máy chủ tốn rất nhiều tài nguyên để xử lý vấn đề này, và từ đó sẽ xuất hiện những lỗ hổng bảo mật.
- Sử dụng bubonic.c bằng cách gõ câu lệnh: bubonic 12.23.23.2 10.0.0.1 100


3. Tools DoS: Land and LaTierra

- Giả mạo địa chỉ IP được kết hợp với quá trình mở các kết nối giữa hai máy tính.
- Cả hai địa chỉ IP, địa chỉ nguồn (source) và địa chỉ IP đích, được chỉnh sửa thành một địa chỉ của IP đích khi đó kết nối giữa máy A và máy B đang được thực hiện nếu có tấn công này xảy ra thì kết nối giữa hai máy A và B sẽ bị ngắt kết nối.
- Kết quả này do địa chỉ IP nguồn và địa chỉ IP đích của gói tin giống nhau và gói tin không thể đi đến đích cần đến.

4. Tools DoS: Targa

- Targa là một chương chình có thể sử dụng 8 dạng tấn công DoS khác nhau.
- Nó được coi như một bộ hướng dẫn tích hợp toàn bộ các ảnh hưởng của DoS và thường là các phiên bản của Rootkit.
- Kẻ tấn công sử dụng một trong các phương thức tấn công cụ thể tới một hệ thống bao giờ đạt được mục đích thì thôi.
- Targa là một chương trình đầy sức mạnh và nó có khả năng tạo ra một sự nguy hiểm rất lớn cho hệ thống mạng của một công ty.

5. Tools DoS Blast 2.0
- Blast rất nhỏ, là một công cụ dùng để kiểm tra khả năng của dịch vụ TCP nó có khả năng tạo ra một lưu lượng rất lớn gói TCP và có thể sẽ gay nguy hiểm cho một hệ thống mạng với các server yếu.
- Dưới đây là cách sử dụng để tấn công HTTP Server sử dụng Blast2.0
QUOTE
+ Blast 192.168.1.219 80 40 50 /b "GET /some" /e "url/ HTTP/1.0" /nr /dr /v

- Tấn công máy chủ POP
QUOTE
+ Blast 192.168.1.219 110 15 20 /b "user te" /e "d" /v

6. Tools DoS – Nemesys

- Đây là một chương trình sinh ra những gói tin ngẫu nhiên như (protocol, port, etc. size, …)
- Dựa vào chương trình này kẻ tấn công có thể chạy các đoạn mã nguy hiểm vào máy tính không được bảo mật.

7. Tool DoS – Panther2.

- Tấn công từ chối dịch vụ dựa trên nền tảng UDP Attack được thiết kế dành riêng cho kết nối 28.8 – 56 Kbps.
- Nó có khả năng chiếm toàn bộ băng thông của kết nối này.
- Nó có khả năng chiếm băng thông mạng bằng nhiều phương pháp ví như thực hiện quá trình Ping cực nhanh và có thể gây ra tấn công DoS

8. Tool DoS – Crazy Pinger
- Công cụ này có khả năng gửi những gói ICPM lớn tới một hệ thống mạng từ xa.

9. Tool DoS – Some Trouble

- SomeTrouble 1.0 là một chương trình gây nghẽn hệ thống mạng
- SomeTrouble là một chương trình rất đơn giản với ba thành phần
+ Mail Bomb (tự có khả năng Resole Name với địa chỉ mail có)
+ ICQ Bomb
+ Net Send Flood

10. DoS Tools – UDP Flood
- UDPFlood là một chương trình gửi các gói tin UDP
- Nó gửi ra ngoài những gói tin UDP tới một địac hỉ IP và port không cố định
- Gói tin có khả năng là một đoạn mã văn bản hay một số lượng dữ liệu được sinh ngẫu nhiên hay từ một file.
- Được sử dụng để kiểm tra khả năng đáp ững của Server

11. Tools DoS – FSMAX

- Kiểm tra hiệu năng đáp ứng của máy chủ.
- Nó tạo ra một file sau đó chạy trên Server nhiều lần lặp đi lặp lại một lúc.
- Tác dụng của tools này là tìm cách tấn công làm chàn bộ nhớ đệm và tấn công DoS tới máy chủ.

V. Kết luận phần I.
- Khi sử dụng một Tool tấn công DoS tới một máy chủ đôi khi không gây ảnh hưởng gì cho máy chủ - Giả sử bạn sử dụng tool Ping of Death tới một máy chủ, trong đó máy chủ kết nối với mạng tốc độ 100Mbps bạn kết nối tới máy chủ tốc độ 3Mbps - Vậy tấn công của bạn không có ý nghĩa gì.
- Nhưng bạn hãy tưởng tượng có 1000 người như bạn cùng một lúc tấn công vào máy chủ kia khi đó toàn bộ băng thông của 1000 người cộng lại tối đa đạt 3Gbps và tốc độ kết nối của máy chủ là
100 Mbps vậy kết quả sẽ ra sao các bạn có khả năng tưởng tượng.
- Trong phần II của loạt bài viết tôi sẽ trình bày với các bạn những nội dung về định nghĩa BOT, BOTNET, cách xây dựng, cách sử dụng các BOTNET từ đó chúng ta hiểu cách hoạt động và tìm ra
những giải pháp để chống tấn công DDoS một cách hiệu quả nhất.
  • Thư mục: Tin học |
    Đăng ngày: 14:03 29-10-2009
    Trước giờ toàn chơi nông trại vui vẻ, mấy hôm nay lượn qua bên nhà hàng chơi thử xem sao ... mấy ngày rồi mà mãi chỉ có cấp 9 tiền thì lại éo có xu nào. Trong khi đó giá của các...
    Lời bình (1) | Trích dẫn (0)
  • Thư mục: Tổng hợp |
    Đăng ngày: 17:56 22-10-2009
     Victim tiếp theo là diendanmaychu.com. Hi đây là trang của bộ phận kĩ thuật PA hosting ;)). Chỉ check ko phá
    Lời bình (2) | Trích dẫn (0)
  • Thư mục: Tổng hợp |
    Đăng ngày: 22:43 14-10-2009
    Topic show hàng mở đầu là ku FPT :D
    Lời bình (4) | Trích dẫn (0)
  • Thư mục: Tin học |
    Đăng ngày: 07:44 02-10-2009
    Nhận biết các loại mã hóa, encrypt1.MySQL có 2 loại 60671c896665c3fa MySQL loại 16 kí tự 667f407de7c6ad07358fa38daed7828a72014b4e MySQL5 loại 40 kí tự 2.MD4 có 3 loại: bd...
    Lời bình (1) | Trích dẫn (0)

Hình ảnh trong blog

Sửa Đóng

Tâm trạng

Đóng

Tâm trạng

Từ 02-02-2009 đến 02-11-2009

Mô-đun 10

Sửa Đóng

MAP

Mô-đun 8

Sửa Đóng

Tiêu đề

Bài mới nhất

Sửa Đóng

Bình luận nhanh

Đóng

Bình luận nhanh

  1. www.nhincuoi.com

    www.nhincuoi.com

    - 18:13 28-11-2009
  2. nguyenha

    nguyenha

    Chào! letrungdung_tnn, Thùng rác mà không cần dùng tay hoặc chân... - 00:50 27-11-2009
  3. TỶ PHÚ ĐÔ LA

    TỶ PHÚ ĐÔ LA

    Kiếm tiền từ máy tính của bạn. Bạn muốn kiến tiền... - 14:53 25-11-2009
  4. VCOIN VTC

    VCOIN VTC

    Chào mừng letrungdung_tnn đến với blog của VCOIN VTC. Web hack... - 17:57 24-11-2009
  5. Thuy

    Thuy

    ... - 11:31 24-11-2009

Thống kê

Sửa Đóng

Thống kê

  • Khách hôm qua: 9
  • Tổng số khách: 172
  • lượt xem hôm nay: 2
  • Tổng lượt xem: 1427
  • Bài viết: 30
  • Hình ảnh: 3
  • Lời bình : 96

Mô-đun 9

Sửa Đóng

Tiêu đề

Hồ sơ blog

Đóng

Hồ sơ blog

Tên:
Lê Trung DŨng
Mô tả blog:
Best wish for U
Sở thích:
Máy tính & Internet, Game, Truyện tranh & Hoạt họa , Thể thao, Âm nhạc, Thiết kế & Mỹ thuật

Blog tôi thích

Sửa Đóng

Blog tôi thích

Mô-đun 1

Sửa Đóng

music

Thư mục riêng

Sửa Đóng

Thư mục riêng

Lịch

Sửa Đóng
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30  

Tìm

Sửa Đóng

Tìm


Mô-đun 3

Sửa Đóng

Tiêu đề

Mô-đun 4

Sửa Đóng

Tiêu đề

Mô-đun 5

Sửa Đóng

Tiêu đề

Mô-đun 7

Sửa Đóng

Tiêu đề

Mô-đun 6

Sửa Đóng

Buồn

 

R H
G S
B V

#