Điển hình là cộng đồng hacker kinh điển tốn không ít giấy mực của báo chí là Anonymous Nhóm hacker được biết đến nhiều nhưng thông tin định danh cũng như hành tung của cộng đồng này ít
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC KINH TẾ - LUẬT
Trang 2Thành phố Hồ Chí Minh, tháng 11/2012
Mục Lục
Chương 1 : CƠ SỞ LÝ THUYẾT VÀ TỔNG QUAN VỀ DDOS 3
1.1 Nguồn gốc 3
1.2 Lịch sử của tấn công DDoS 4
1.3 Định nghĩa khái quát về tấn công DdoS 6
1.4 Những khả năng bị tấn công bằng DDoS 7
Chương 2: ĐẶC TÍNH CỦA CÔNG CỤ TẤN CÔNG VÀ MỘT SỐ CÔNG CỤ TẤN CÔNG DDOS .15
A Đặc tính của công cụ tấn công DDoS 15
2.1 Cách thức cài đặt DDoS Agent 15
2.2 Giao tiếp trên Attack-Network 16
2.3 Các nền tảng hỗ trợ Agent 17
2.4 Các chức năng của công cụ DDoS 17
2.5 Tấn công DDoS không thể ngăn chặn hoàn toàn 18
B Một số công cụ tấn công DDoS 18
2.6 Công cụ DDoS dạng Agent – Handler 18
2.7 Công cụ DDoS dạng IRC – Based 19
Trang 34.3 Thực Tế 25 Tài liệu tham khảo 26
Trang 4Chương 1 : CƠ SỞ LÝ THUYẾT VÀ TỔNG QUAN VỀ DDOS
1.1 Nguồn gốc
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
a 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 theoyê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 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
Trang 5nà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 quytrì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ườngdự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á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ềnADSL đề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
c Ứng dụng của Bot
- Tấn công từ chối dịch vụ phân tán (DDoS)
- Spamming (phát tán thư rác)
Trang 6 Điển hình là cộng đồng hacker kinh điển tốn không ít giấy mực của báo chí là
Anonymous (Nhóm hacker được biết đến nhiều nhưng thông tin định danh cũng như hành tung của cộng đồng này ít được biết đến) Nhóm hacker thực hiện hàng loạt vụ tấn công DDoS, nhằm vào nhiều website chính phủ, đánh cắp thông tin cá nhân… chiến tíchcủa Anonymous tham khảo trực tiếp tại đây http://www.baomoi.com/Nhom-hacker-
Anonymous-Tu-vo-danh-den-noi-danh/76/6527224.epi
Ngoài ra còn có những cá nhân khác, hoạt động không có tổ chức chỉ nhằm mục đích kiếm tiền hoặc ăn cắp thông tin cá nhân để thực hiện gian lận Không đâu xa có thể tìm thấy tin rao vặt ở nhiều nơi điển hình như:
Ví dụ:
“Tình hình là kinh tế việt nam khá khăn nên mình đánh liều đi DDoS Vào thẳng vấn đề
luôn.DDoS site giá tối thiểu 250k/h (tức là site đó die 1 tiếng) Cho test ddos thử trước.Bạn nào có nhu cầu liên hệ: maifamily.maianhkhoa
p/s: Kèm bán luôn tool ddos: 150m”
- 1998 Chương trình Trinoo Distributed Denial of Service (DDoS) được viết bởi Phifli
- Tháng 5 – 1999 Trang chủ của FBI đã ngừng họat động vì cuộc tấn công bằng (DDOS)
Trang 7- 7/2/2000 Yahoo! đã bị tấn công từ chối dịch vụ và ngưng trệ hoạt động trong vòng 3 giờ đồng hồ
- Gần đây nhất là vụ tấn công của website Bkav Cụ thể là Chỉ 2 ngày sau khi bị tấn công vào
Website nhánh webscan.bkav.com.vn , từ tối ngày 4/2/2012, trang chủ của Bkav tại địa
chỉ www.bkav.com.vn đã không thể truy cập.
Các khách hàng sử dụng phần mềm diệt virus Bkav bản mất phí Bkav Pro cũng không thể kết nối tới máy chủ để cập nhật các virus mới
Đến rạng sáng nay (5/2), trang chủ Bkav tiếp tục chuyển hướng tới trang “/trang-chu3″, kết nối rất ít khi thành công Khi truy cập được, trang chủ Bkav không có dấu hiệu bị sửa đổi bởi hacker
và cũng không có bất cứ thông báo nào liên quan tới sự cố
Trước đó, vào tháng 10/2008, Website của Bkav cũng từng bị tấn công DDoS bởi một mạng botnet có quy mô lớn nhất Việt Nam tại thời điểm đó với khoảng 1.000 máy tính, khiến hệ thống không thể hoạt động Đối tượng gây ra vụ tấn công này đã bị bắt sau đó không lâu
Và 15 vụ tấn công DDoS nổi tiếng nhất lịch sử, xem thêm tại
http://www.baomoi.com/15-vu-tan-cong-DDoS-noi-tieng-nhat-lich-su/76/6001710.epi
Trang 8Tấn công từ chối dịch vụ DDoS (Distributed Denial of Service) là hình thức gây “ngập lụt” hệ thống hoặc băng thông của nạn nhân bằng một khối lượng lớn các truy cập đồng thời từ một
hệ thống mạng máy tính gồm nhiều máy bị chiếm quyền điều khiển Đây thường được coi là hành động tấn công thuộc loại “bẩn thỉu” nhất và rất khó chống đỡ.
1.3 Định nghĩa khái quát về tấn công DdoS
a Khái niệm
Tấn công từ chối dịch vụ phân tán (DDoS – Distributed Denial of Service) là hoạt động làm chấm dứt hoặc gián đoạn các dịch vụ tại máy nạn nhân Tấn công Ddos huy động số lượng lớn các máy bị lợi dụng để tấn công nạn nhân vào một cùng thời điểm Do DDoS có tính chất phân tán nên việc ngăn chặn là rất khó khăn Việc ngăn chặn DDoS không thể từ một máy tính bị tấn công mà phải kết hợp giữa các router để tiến hành phân tích và chặn Do có số lượng Agent lớn
và bao phủ trên diện rộng nên việc phát hiện được các gói tin tấn công nhưng khó có khả năng giải quyết triệt để được DDoS Ở đây Agent là những máy trực tiếp gửi thông điệp tấn công.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
Trang 9Kết luận
- Qua đó ta có thể thấy rõ những vụ tấn công từ chối dịch vụ (Denial Of Services Attack ) và những cuộc tấn công về việc gửi nhửng gói dữ liệu tới máy chủ (Flood Data Of Services Attack) tới tấp là những mối lo sợ cho nhiều mạng máy tính lớn và nhỏ hiện nay,
- Khi một mạng máy tính bị Hacker tấn công nó sẽ chiếm một lượng lớn tài nguyên trên servernhư dung lượng ổ cứng, bộ nhớ, CPU, băng thông … Lượng tài nguyên này tùy thuộc vào khả năng huy động tấn công của mỗi Hacker Khi đó Server sẽ không thể đáp ứng hết những yêu cầu từ những client của những người sử dụng và từ đó server có thể sẽ nhanh chóng bị ngừng hoạt động, crash hoặc reboot
Nguyên tắc hoạt động
Cùng 1 lúc server hoặc 1 địa chỉ IP bị hàng chục ngàn máy khác tấn công vào ,điều này khiến chomáy bị tràn bộ nhớ ==> làm serve bị treo hoặc reset lại ,rất nguy hiểm có thể xóa sạch Database của web đó
- 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ụ DdoS
1.4 Những khả năng bị tấn công bằng DDoS
a Các giai đoạn tấn công bằng DDoS
Bao gồm 3 giai đoạn :
Giai đoạn chuẩn bị
Trang 10- Chuẩn bị công cụ quan trọng của cuộc tấn công, công cụ này thông thường hoạt động theo
mô hình client-server Hacker có thể viết phần mềm này hay down load một cách dễ dàng, theo thống kê tạm thời có khoảng hơn 10 công cụ DDoS được cung cấp miễn phí trên mạng (các công cụ này sẽ phân tích chi tiết vào phần sau)
- Kế tiếp, dùng các kỹ thuật hack khác để nắm trọn quyền một số host trên mạng tiến hành cài đặt các software cần thiết trên các host này, việc cấu hình và thử nghiệm toàn bộ attack-netword (bao gồm mạng lưới các máy đã bị lợi dụng cùng với các software đã được thiết lập trên đó, máy của hacker hoặc một số máy khác đã được thiết lập như điểm phát động tấn công) cũng sẽ được thực hiện trong giai đoạn này
Giai đoạn xác định mục tiêu và thời điểm
- Sau khi xác định mục tiêu lấn cuối, hacker sẽ có hoạt động điều chỉnh attack-netword chuyển hướng tấn công về phía mục tiêu
- Yếu tố thời điểm sẽ quyết định mức độ thiệt hại và tốc độ đáp ứng của mục tiêu đối với cuộc tấn công
Phát động tấn công và xóa dấu vết
- Đúng thời điểm đã định, hacker phát động tấn công từ máy của mình, lệnh tấn công này có thể đi qua nhiều cấp mói đến host thực sự tấn công Toàn bộ attack-network (có thể lên đến hàng ngàn máy), sẽ vắt cạn năng lực của server mục tiêu liên tục, ngăn chặn không cho nó hoạt động như thiết kế
- Sau một khoảng thời gian tấn công thích hợp, hacker tiến hành xóa mọi dấu vết có thể truy ngược đến mình, việc này đòi hỏi trình độ khác cao và không tuyệt đối cần thiết
b Kiến trúc tổng quan của DDoS attack-network
Nhìn chung DDoS attack-network có hai mô hình chính
Mô hình Agent – Handler
Mô hình IRC – Based
Trang 11DDoS attack-network
Agent -Handler IRC - Based
Client – Handler
Communication Secret/private channel Public channel
TCP UDP ICMP TCP UDP ICMP
Client – Handler Communication
4.b Sơ đồ chính phân loại các kiểu tấn công DDoS Chi tiết từng mô hình
Mô hình Agent – Handler
Theo mô hình này, attack-network gồm 3 thành phần: Agent, Client và Handler
+ Client: là software cơ sở để hacker điều khiển mọi hoạt động của attack-network
+ Handler: là một thành phần software trung gian giữa Agent và Client
+ Agent: là thành phần software thực hiện sự tấn công mục tiêu, nhận điều khiển từ Client thông qua các Handler
Trang 12Kiến trúc attack-network kiểu Agent – Handler
Attacker sẽ từ Client giao tiếp với cc1 Handler để xác định số lượng Agent đang online, điều chỉnh thời điểm tấn công và cập nhật các Agent Tùy theo cách attacker cấu hình attack-network, các Agent sẽ chịu sự quản lý của một hay nhiều Handler
Thông thường Attacker sẽ đặt Handler software trên một Router hay một server có lượng traffic lưu thông nhiều Việc này nhằm làm cho các giao tiếp giữa Client, handler và Agent khó bịphát hiện Các gia tiếp này thông thường xảy ra trên các protocol TCP, UDP hay ICMP Chủ nhân thực sự của các Agent thông thường không hề hay biết họ bị lợi dụng vào cuộc tấn công kiểu DDoS, do họ không đủ kiến thức hoặc các chương trình Backdoor Agent chỉ sử dụng rất ít tài nguyên hệ thống làm cho hầu như không thể thấy ảnh hưởng gì đến hiệu năng của hệ thống
Mô hình IRC – Based
Internet Relay Chat (IRC) là một hệ thống online chat multiuser, IRC cho phép User tạo một kết nối đến multipoint đến nhiều user khác và chat thời gian thực Kiến trúc củ IRC network bao gồm nhiều IRC server trên khắp internet, giao tiếp với nhau trên nhiều kênh (channel) IRC network cho phép user tạo ba loại channel: public, private và serect
Public channel: Cho phép user của channel đó thấy IRC name và nhận được message của mọi user khác trên cùng channel
Private channel: được thiết kế để giao tiếp với các đối tượng cho phép Không cho phép các user không cùng channel thấy IRC name và message trên channel Tuy nhiên, nếu user ngoài channel dùng một số lệnh channel locator thì có thể biết được sự tồn tại của private channel đó
Secrect channel : tương tự private channel nhưng không thể xác định bằng channel locator
Trang 13Chú giải: + IRC: Internet Relay Chat
+ A: Agent
Kiến trúc attack-network của kiểu IRC-Base
IRC – Based net work cũng tương tự như Agent – Handler network nhưng mô hình này sử dụng các kênh giao tiếp IRC làm phương tiện giao tiếp giữa Client và Agent (không sử dụng Handler) Sử dụng mô hình này, attacker còn có thêm một số lợi thế khác như:
+ Các giao tiếp dưới dạng chat message làm cho việc phát hiện chúng là vô cùng khó khăn+ IRC traffic có thể di chuyển trên mạng với số lượng lớn mà không bị nghi ngờ
+ Không cần phải duy trì danh sách các Agent, hacker chỉ cần logon vào IRC server là đã có thể nhận được report về trạng thái các Agent do các channel gửi về
+ Sau cùng: IRC cũng là một môi trường file sharing tạo điều kiện phát tán các Agent code lên nhiều máy khác
c Phân loại tấn công.
Trang 14Có rất nhiều biến thể của kỹ thuật tấn công DDoS nhưng nếu nhìn dưới góc độ chuyên môn thì có thể chia các biến thề này thành hai loại dựa trên mụch đích tấn công: Làm cạn kiệt băng thông và làm cạn kiệt tài nguyên hệ thống Dưới đây là sơ đồ mô tả sự phân loại các kiểu tấn công DdoS.
Kiểu tấn công làm cạn kiệt băng thông của mạng (BandWith Depletion Attack)
Gồm có 2 loại BandWith Depletion Attack
Flood attack (tràn băng thông): điều khiển các Agent gởi một lượng lớn traffic đến hệ
thống dịch vụ của mục tiêu, làm dịch vụ này bị hết khả năng về băng thông
Amplification attack (khuyếch đại giao tiếp) : Điều khiển các agent hay Client tự gửi
message đến một địa chỉ IP broadcast, làm cho tất cả các máy trong subnet này gửi message đến hệ thống dịch vụ của mục tiêu Phương pháp này làm gia tăng traffic không cần thiết, làm suy giảm băng thông của mục tiêu
Phân tích chi tiết
Flood attack
Trong phương pháp này, các Agent sẽ gửi một lượng lớn IP traffic làm hệ thống dịch vụ của mục tiêu bị chậm lại, hệ thống bị treo hay đạt đến trạng thái hoạt động bão hòa Làm
Trang 15packet được gởi đến hệ thống dịch vụ của mục tiêu sẽ đẩy toàn bộ hệ thống đến ngưỡng tới hạn.
+ ICMP Flood Attack: được thiết kế nhằm mục đích quản lý mạng cũng như định vị thiết
bị mạng Khi các Agent gởi một lượng lớn ICMP_ECHO_REPLY đến hệ thống mục tiêuthì hệ thống này phải reply một lượng tương ứng Packet để trả lời, sẽ dẫn đến nghẽn đường truyền Tương tự trường hợp trên, địa chỉ IP của cá Agent có thể bị giả mạo
Amplification attack (tấn công khuyếch đại)
Amplification Attack nhắm đến việc sử dụng các chức năng hỗ trợ địa chỉ IP broadcast của các router nhằm khuyếch đại và hồi chuyển cuộc tấn công Chức năng này cho phép bên gửi chỉ định một địa chỉ IP broadcast cho toàn subnet bên nhận thay vì nhiều địa chỉ Router sẽ có nhiệm vụ gửi đến tất cả địa chỉ IP trong subnet đó packet broadcast mà nó nhận được
Attacker có thể gửi broadcast message trực tiếp hay thông qua một số Agent nhằm làm gia tăng cường độ của cuộc tấn công Nếu attacker trực tiếp gửi message, thì có thể lợi dụng các hệ thống bên trong broadcast network như một Agent
Trang 16+ Smuft attack: trong kiểu tấn công này attacker gởi packet đến network amplifier
(router hay thiết bị mạng khác hỗ trợ broadcast), với địa chỉ của nạn nhân Thông thường những packet được dùng là ICMP ECHO REQUEST, các packet này yêu cầu bên nhận phải trả lời bằng một ICMP ECHO REPLY packet Network amplifier sẽ gửi đến ICMP ECHO REQUEST packet đến tất cả các hệ thống thuộc địa chỉ broadcast và tất cả các hệ thống này sẽ REPLY packet về địa chỉ IP của mục tiêu tấn công Smuft Attack
+ Fraggle Attack: tương tự như Smuft attack nhưng thay vì dùng ICMP ECHO
REQUEST packet thì sẽ dùng UDP ECHO packet gởi đếm mục tiêu Thật ra còn một biến thể khác của Fraggle attack sẽ gửi đến UDP ECHO packet đến chargen port (port 19/UNIX) của mục tiêu, với địa chỉ bên gửi là echo port (port 7/UNIX) của mục tiêu, tạo nên một vòng lặp vô hạn Attacker phát động cuộc tấn công bằng một ECHO REQUEST với địa chỉ bên nhận là một địa chỉ broadcast, toàn bộ hệ thống thuộc địa chỉ này lập tức gửi REPLY đến port echo của nạn nhân, sau đó từ nạn nhân một ECHO REPLY lại gửi trở về địa chỉ broadcast, quá trình cứ thế tiếp diễn Đây chính là nguyên nhân Flaggle Attack nguy hiểm hơn Smuft Attack rất nhiều
Kiểu tấn công làm cạn kiệt tài nguyên (Resource Deleption Attack)
Là kiểu tấn công trong đó Attacker gởi những packet dùng các protocol sai chức năng thiết kế, hay gửi những packet với dụng ý làm tắt nghẽn tài nguyên mạng làm cho các tài nguyên này không phục vụ user thông thường khác được
Gồm có 2 loại:
Protocol Exploit Attack (Khai thác lỗ hỗng trên các giao thức)
Malformed Packet Attack là cách tấn công dùng các Agent để gởi các packet có cấu
trúc không đúng chuẩn nhằm làm cho hệ thống của nạn nhân bị treo
Phân tích chi tiết
Protocol Exploit Attack (khai thác lỗ hổng trên giao thức)
Có 2 loại:
+ TCP SYS Attack: Transfer Control Protocol hỗ trợ truyền nhận với độ tin cậy cao nên