BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ QUỐC PHÒNG
HỌC VIỆN KỸ THUẬT QUÂN SỰ
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG CHỐNG TẤN CÔNG TỪ
CHỐI DỊCH VỤ PHÂN TÁN KIỂU GIẢ MẠO ĐỊA CHỈ IP NGUỒN
TẤN CÔNG CHO HỆ THỐNG MÁY CHỦ DỊCH VỤ
Chuyên ngành: Khoa học máy tính
LUẬN VĂN THẠC SĨ KỸ THUẬT
Hà Nội – Năm 2014
BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ QUỐC PHÒNG
HỌC VIỆN KỸ THUẬT QUÂN SỰ
MỤC LỤC
Trang
Trang bìa chính
Bản cam đoan
Mục lục
Tóm tắt luận văn
Danh mục các ký hiệu
Danh mục các bảng
Danh mục các hình vẽ
MỞ ĐẦU 1
TỔNG QUAN VỀ TẤN CÔNG TỪ CHỐI DỊCH VỤ PHÂN TÁN 2
1.1. Nghiên cứu tổng quan về tấn công từ chối dịch vụ phân tán 2
1.1.1. Giới thiệu về DDoS 2
1.1.2. Các giai đoạn của một cuộc tấn công DDOS 3
1.1.3. Kiến trúc tổng quan của DDoS attack-Network 4
1.1.4. Phân loại tấn công DDoS 8
1.1.5. Một số đặc tính của công cụ DDOS Attack 15
1.1.6. Công cụ DDoS dạng Agent-Handler 19
1.1.7. Công cụ DDOS dạng IRC-Based 20
1.2. Tìm hiểu ảnh hưởng và mức độ nghiêm trọng của các cuộc tấn công từ
chối dịch vụ phân tán kiểu giả mạo địa chỉ IP nguồn tấn công trong nước và
trên thế giới 21
1.2.1. Những cuộc tấn công DDoS trong nước 21
1.2.2. Những cuộc tấn công DDoS trên thế giới 23
2.1. Nghiên cứu những sản phẩm chống tấn công từ chối dịch vụ phân tán
kiểu giả mạo địa chỉ IP nguồn tấn công và đánh giá các giải pháp, công nghệ
đã sử dụng 27
2.1.1. Giải pháp chống DDoS của Cisco 27
2.1.2. Giải pháp chống DDoS của Abor 32
2.1.3. Giải pháp DDoS của Huawei 35
2.1.4. Đánh giá các giải pháp công nghệ 40
2.2. Nghiên cứu giải pháp chống tấn công từ chối dịch vụ phân tán kiểu giả
mạo địa chỉ IP nguồn tấn công sử dụng giải pháp một hệ thống độc lập 40
2.2.1. Mô hình tổng thể hệ thống 41
2.2.2. Nguyên lý hoạt động của hệ thống 41
2.2.3. Nghiên cứu giải pháp sử dụng Transparent Firewall để chặn IP nguồn
giả mạo kết nối tới máy chủ 44
2.2.4. Nghiên cứu giải pháp phát hiện tấn công từ chối dịch vụ phân tán sử
dụng nguồn mở (Snort) 46
2.2.5. Nghiên cứu giải pháp xác thực địa chỉ IP nguồn khi hệ thống đang bị
tấn công 48
2.3. Nghiên cứu và xây dựng giải pháp chống tấn công từ chối dịch vụ phân
tán kiểu giả mạo địa chỉ IP nguồn tấn công sử dụng giải pháp kết hợp giữa hệ
thống chống tấn công từ chối dịch vụ phân tán và thiết bị mạng 50
2.3.1. Mô hình tổng thể của hệ thống 50
2.3.2. Nghiên cứu sử dụng Cisco Access Control List 52
2.3.3. Nghiên cứu phương pháp với thiết bị định tuyến Cisco sử dụng Telnet,
SSH 56
3.1. Thiết kế kiến trúc hệ thống 65
3.2. Thiết kế giao diện quản trị hệ thống 66
3.2.1. Yêu cầu về thiết kế phần mềm và giao diện quản trị hệ thống 66
3.2.2. Thiết kết giao diện quản trị hệ thống 67
3.3. Xây dựng môđun phát hiện tấn công từ chối dịch vụ phân tán giả mạo
địa chỉ IP nguồn tấn sử dụng nguồn mở 68
3.4. Xây dựng môđun tự động thu thập địa chỉ IP sạch phục vụ cho giai đoạn
chống tấn công 71
3.4.1. Sơ đồ thuật toán tự động thu thập địa chỉ IP sạch 71
3.4.2. Xây dựng môđun xử lý địa chỉ nguồn khi hệ thống phát hiện một kết
nối mạng thành công 72
3.5. Xây dựng môđun xác thực địa chỉ nguồn kết nối cho phép các kết nối
bình thường vẫn có thể truy cập khi tấn công xảy ra 73
3.5.1. Sơ đồ thuật toán xác thực địa chỉ nguồn kết nối 74
3.5.2. Xây dựng môđun xác thực địa chỉ nguồn kết nối 75
3.6. Xây dựng môđun tương tác giữa môđun chống tấn công và thiết bị định
tuyến Router Cisco 75
3.6.1. Sơ đồ thuật toán tương tác giữa hệ thống và thiết bị định tuyến Cisco.76
3.6.2. Xây dựng môđun tương tác 76
4.1. Máy chủ 78
4.2. Chuẩn bị nguồn tấn công từ chối dịch vụ phân tán kiểu giả mạo địa chỉ
IP nguồn tấn công phục vụ thử nghiệm hệ thống 79
4.3. Xây dựng hệ thống mạng thử nghiệm bao gồm máy chủ dịch vụ thử
nghiệm và hệ thống chống tấn công từ chối dịch vụ phân tán kiểu giả mạo địa
chỉ IP nguồn tấn công 79
4.4. Kịch bản thử nghiệm khả năng chống tấn công DDOS kiểu giả mạo địa
chỉ IP nguồn tấn công của hệ thống 80
1. Kết luận 90
2. Kiến nghị 91
_Toc319450845TÀI LIỆU THAM KHẢO 93
TÓM TẮT LUẬN VĂN THẠC SĨ
Họ và tên học viên:
Chuyên ngành: Khoa học máy tính Khoá: 24
Cán bộ hướng dẫn: PGS.TS. Nguyễn Hiếu Minh
Tên luận văn: Nghiên cứu xây dựng hệ thống chống tấn công từ chối
dịch vụ phân tán kiểu giả mạo địa chỉ IP nguồn tấn công cho hệ thống máy
chủ dịch vụ.
Tóm tắt: Các cuộc tấn công DDOS gây ra nhiều hậu quả nghiêm trọng.
Hiện nay chưa có giải pháp nào có thể ngăn chặn triệt để các kiểu tấn công này.
Đề tài tập trung và nghiên cứu các nội dung: Nghiên cứu về tấn công từ chối
dịch vụ; Tìm hiểu ảnh hưởng và mức độ nghiêm trọng của các cuộc tấn công
DDOS; Nghiên cứu những sản phẩm, giải pháp thương mại chống DDOS ; Xây
dựng hệ thống chống tấn công DDOS. Trong khi chưa có giải pháp nào có thể
triển khai rộng rãi cho các cơ quan, tổ chức với kinh phí thấp thì sản phẩm
của đề tài mang tính thực tiễn cũng như khả năng áp dụng cao trong thực tế
hiện nay.
DANH MỤC CÁC KÝ HIỆU
TT Ký hiệu Giải thích
1 DDoS Tấn công từ chối dịch vụ
2 Hacker Kẻ tấn công
3 Server Máy chủ
4 Host Máy trạm
5 User Người dùng
6 Internet Tập hợp các mạng liên kết với nhau
7 Router Bộ/thiết bị định tuyến
8 Switch Bộ/thiết bị chuyển mạch
9 Traffic Lưu lượng mạng
10 Buffer Bộ nhớ đệm
11 Website Trang web
DANH MỤC CÁC BẢNG
Bảng 1.1. Tập lệnh của Handler 18
Bảng 1.2. Tập lệnh của Agent 19
Bảng 2.1. Mô tả các tham số của Threshold 47
Bảng 3.1. Yêu cầu về thiết kế phần mềm và giao diện quản trị 66
DANH MỤC CÁC HÌNH VẼ
Hình 1.1. Mô hình Agent – Handler 4
Hình 1.2. Kiến trúc attack-network kiểu Agent – Handler 5
Hình 1.3. Kiến trúc attack-network của kiểu IRC-Base 7
Hình 1.4. Phân loại tấn công kiểu DDoS 8
Hình 1.5. Amplification Attack 11
Hình 1.6. TCP 3 way handshake 13
Hình 1.7. TCP SYN Attack 13
Hình 1.8. Công cụ DDoS attack 15
Hình 2.1. Kiến trúc hệ thống Cisco MVP 29
Hình 2.2. Cisco phát triển phòng vệ 31
Hình 2.3. Cisco Guard XT được triển khai tại các lớp phân phối 32
Hình 2.4. Peakflow SP TMS chỉ cần kiểm tra lưu lượng được chuyển
hướng 33
Hình 2.5. Giải pháp chống DDoS của Huawei 35
Hình 2.6. Industry's Easiest OAM 38
Hình 2.7. Quản lý và báo cáo dịch vụ 39
Hình 2.8. IDC Security Defense 39
Hình 2.9. Mô hình tổng thể hệ thống 41
Hình 2.11. Sơ đồ và nguyên lý của hệ thống khi phòng chống tấn công. .43
Hình 2.12. Sơ đồ và nguyên lý của hệ thống khi xác thực địa chỉ nguồn. 44
Hình 2.13 Transparent Firewall 45
Hình 2.14. Nguyên lý khởi tạo kết nối, bắt tay 3 bước của giao thức TCP
48
Hình 2.15. Nguyên lý xác thực địa chỉ nguồn của hệ thống 49
Hình 2.16. Mô hình tổng thể hệ thống 51
Hình 2.9 Mô hình mạng cấu hình Standard ACLs 54
Hình 2.17. Kiến trúc chung của giao thức SSH 59
Hình 3.1. Mô hình tổng thể hệ thống 65
Hình 3.2. Giao diện cấu hình Blocking Device 67
Hình 3.3. Giao diện cấu hình thông số phát hiện tấn công DDoS 68
Hình 3.4. Giao diện cấu hình thông số xác thực địa chỉ nguồn 68
Hình 3.5. Sơ đồ thuật toán tự động thu thập địa chỉ IP sạch 72
Hình 3.6. Sơ đồ thuật toán xác thực địa chỉ nguồn kết nối 74
Hình 4.1. Hệ thống mạng thử nghiệm 79
Hình 4.2. Tắt hệ thống phòng thủ 80
Hình 4.3. Giả lập tấn công hệ thống 81
Hình 4.4. Kiểm tra các kết nối đến máy chủ 82
Hình 4.5. Bật hệ thống phòng thủ tấn công 82
Hình 4.6. Kiểm tra trạng thái trên hệ thống phòng thủ 83
Hình 4.7. Kiểm tra trạng thái trên thiết bị định tuyến 84
Hình 4.8. Truy cập dịch vụ trên máy chủ và kiểm tra kết quả 84
Hình 4.9. Kiểm tra địa chỉ mạng của máy kết nối tới hệ thống 85
Hình 4.10. Xoá mạng của máy kết nối nếu có trong WhiteList 85
Hình 4.11. Kết nối hệ thống 86
Hình 4.12. Kiểm tra mạng của máy kết nối trong hệ thống 86
Hình 4.13. Kiểm tra địa chỉ mạng của máy kết nối tới hệ thống 87
Hình 4.14. Xoá mạng của máy kết nối nếu có trong WhiteList 87
Hình 4.16. Thử kết nối vào hệ thống 88
Hình 4.17. Kiểm tra trạng thái xác thực 88
Hình 4.19. Kiểm tra mạng của IP nguồn 89
Hình 4.20. Kiểm tra kết quả kết nối thành công của IP nguồn 90
1
MỞ ĐẦU
Các cuộc tấn công từ chối dịch vụ phân tán kiểu giả mạo địa chỉ IP nguồn
tấn công gây ra nhiều hậu quả nghiêm trọng trên thế giới cũng như tại Việt Nam.
Hiện nay chưa có giải pháp nào có thể ngăn chặn triệt để các kiểu tấn công này,
khi có cuộc tấn công xảy ra thì các đơn vị thường chọn giải pháp là đi thuê các
thiết bị thương mại đắt tiền để khắc phục cuộc tấn công trước mắt mà chưa có
giải pháp lâu dài. Đề tài tập trung và nghiên cứu các nội dung sau: Nghiên cứu
về tấn công từ chối dịch vụ; Tìm hiểu ảnh hưởng và mức độ nghiêm trọng của
các cuộc tấn công DDoS; Nghiên cứu những sản phẩm, giải pháp thương mại
chống DDoS ; Xây dựng hệ thống chống tấn công DDoS. Với mức độ nghiêm
trọng cũng như tần suất các cuộc tấn công từ chối dịch vụ phân tán giả mạo IP
nguồn tấn công trong khi chưa có giải pháp nào có thể triển khai rộng rãi cho
các cơ quan, tổ chức với kinh phí thấp thì sản phẩm của đề tài mang tính thực
tiễn cũng như khả năng áp dụng cao trong thực tế hiện nay.
Toàn bộ nội dung của luận văn được tổ chức theo bố cục như sau:
Chương 1: Tổng quan về tấn công từ chối dịch vụ phân tán
Chương 2: Nghiên cứu và xây dựng giải pháp chống tấn công từ chối
dịch vụ phân tán kiểu giả mạo địa chỉ IP nguồn tấn công.
Chương 3: Xây dựng hệ thống chống tấn công từ chối dịch vụ phân tán
kiểu giả mạo địa chỉ IP nguồn tấn công sử dụng kết hợp giữa hệ thống chống
tấn công từ chối dịch vụ phân tán và thiết bị định tuyến của Router Cisco.
Để hoàn thành được luận văn, tác giả xin chân thành cảm ơn đến các
thầy cô trong khoa Công nghệ thông tin - Học viện Kỹ thuật Quân sự đã giúp
đỡ và tạo điều kiện trong quá trình thực hiện luận văn. Đặc biệt tác giả luận văn
xin gửi lời cảm ơn sâu sắc đến thầy giáo hướng dẫn PGS.TS. Nguyễn Hiếu
2
Minh, đã tận tình hướng dẫn và giúp đỡ để tác giả hoàn thành luận văn này.
Chương 1
TỔNG QUAN VỀ TẤN CÔNG TỪ CHỐI DỊCH VỤ PHÂN TÁN
Trong chương này, tác giả sẽ trình bày tổng quan về tấn công từ chối
dịch vụ (DDoS) gồm: Các kiểu tấn công, các giai đoạn của một cuộc tấn công
DDOS, phân loại kiểu tấn công DDoS, một số đặc tính của công cụ DDoS
attack.
1.1. Nghiên cứu tổng quan về tấn công từ chối dịch vụ phân tán
1.1.1. Giới thiệu về DDoS
Ngày 7/3/2000, yahoo.com đã phải ngưng phục vụ hàng trăm triệu user
trên toàn thế giới nhiều giờ liền. Vài giờ sau, Yahoo đã tìm ra nguyên nhân
gây nên tình trạng này là do họ phải gánh chịu một đợt tấn công DDoS với
quy mô vài nghìn máy tính liên tục gửi hàng triệu request đến các server dịch
vụ làm các server này không thể phục vụ các user thông thường khác.
Vài ngày sau, một sự kiện tương tự diễn ra nhưng có phần “ồn ào” hơn
do một trong các nạn nhân mới là hãng tin CNN, amazon.com, buy.com,
Zdnet.com, E-trade.com, Ebay.com. Đây là những công ty lớn thuộc nhiều
lĩnh vực khác nhau. Theo Yankke Group, tổng thiệt hại do cuộc tấn công lên
đến 1.2 triệu USD, nhưng không đáng kể bằng sự mất mát về lòng tin của
khách hàng, uy tín của các công ty là không thể tính được. Theo kết quả điều
tra đã được công bố thì cậu bé 15 tuổi người Canada, với nickname
“mafiaboy” đã tìm tòi và tải về một số chương trình và công cụ của các
hacker. Cậu đã dùng một công cụ DDoS có tên là TrinOO để gây nên các
cuộc tấn công kiểu DDoS khủng khiếp trên. Một điểm đáng lưu ý khác là
Mafiaboy bị bắt do tự khoe khoang trên các chatroom công cộng, không ai tự
3
truy tìm được dấu vết của cậu bé này.
Còn rất nhiều công ty khổng lồ khác đã gục ngã dưới các cuộc tấn công
kiểu DDoS, trong đó có cả Microsoft. Tuy nhiên cuộc tấn công trên là điển
hình nhất về DDoS, nó nói lên một đặc điểm của DDoS: “Rất dễ thực hiện,
hầu như không thể tránh, hậu quả rất nặng nề”.
1.1.2. Các giai đoạn của một cuộc tấn công DDOS
Thông thường một cuộc tấn công DDoS bao gồm 03 giai đoạn
Giai đoạn 1: Giai đoạn chuẩn bị.
- Chuẩn bị công cụ là giai đoạn 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 tải từ Internet một cách dễ dàng, có rất nhiều công cụ
DDoS được cung cấp miễn phí trên mạng.
- Kế tiếp, dùng các kỹ thuật tấn công 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 phần mềm 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-network (bao gồm mạng lưới các
máy đã bị lợi dụng cùng với các phần mềm đã đượ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 2: 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-network 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.
Giai đoạn 3: Phát động tấn công và xóa dấu vết.
4
Đú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 nghìn máy), sẽ vắt cạn năng lực
của máy chủ 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.
1.1.3. 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
Dưới đây là sơ đồ chính phân loại các kiểu tấn công DDoS
Mô hình Agent - Handler
Hình 1.1. Mô hình Agent – Handler
Secret/private
channel
Public channel
Agent -Handler
IRC - Based
Client – Handler
Communication
TCP UDP ICMP
TCP
UDP
ICMP
Client – Handler
Communication
DDoS attack-network
5
Theo mô hình này, attack-network gồm 3 thành phần: Agent, Client và
Handler:
Client: là phần mềm cơ sở để hacker điều khiển mọi hoạt động của
attack-network
Handler: là một thành phần phần mềm trung gian giữa Agent và Client
Agent: là thành phần phần mềm 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
Kiến trúc attack-network kiểu Agent – Handler
Hình 1.2. Kiến trúc attack-network kiểu Agent – Handler
Attacker sẽ từ Client giao tiếp với 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.
Attacker Attacker
Handler Handler Handler Handler
Agent Agent Agent Agent Agent
Victim
6
Thông thường Attacker sẽ đặt phần mềm Handler trên một bộ định tuyến
hay một máy chủ 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 giao tiếp này
thông thường xảy ra trên các giao thức 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 liên lạc cấp tốc qua mạng
Internet, IRC cho phép người dùng tạo một kết nối đến đa điểm đến nhiều
người dùng khác và chat thời gian thực. Kiến trúc của IRC network bao gồm
nhiều máy chủ IRC trên khắp mạng giao tiếp với nhau qua nhiều kênh
(channel). IRC network cho phép người dùng tạo ba loại kênh: public, private
và serect.
- Public channel: Cho phép người dùng của kênh đó thấy IRC name và
nhận được thông điệp của mọi người dùng khác trên cùng kênh.
- 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 người dùng không cùng kênh thấy IRC name và
thông điệp trên kênh. Tuy nhiên, nếu người dùng ngoài kênh 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.
Kiến trúc attack-network của kiểu IRC-Base
7
Hình 1.3. Kiến trúc attack-network của kiểu IRC-Base
IRC – Based network 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 báo cáo về trạng thái các Agent do các
channel gửi về.
Agent
Attacker Attacker
Agent Agent Agent Agent
Victim
IRC
NETWORK
8
+ Sau cùng: IRC cũng là một môi trường chia sẻ tệp tin tạo điều kiện
phát tán các Agent code lên nhiều máy khác.
1.1.4. Phân loại tấn công DDoS
Nhìn chung, có 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ục đí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.
Hình 1.4. Phân loại tấn công kiểu DDoS
Amplification Attack
DDoS attack
Bandwith Deleption Resource Deleption
Flood Attack
UDP
Random
Port
Attack
Smuft Attack
Protocol Exploit Attack
Malformed Paclket Attack
Static
Port
Attack
ICMP
Spoof
Source
Attack
Flaggle
Direct Loop
TCP SYS
Spoof
Source
Attack
PUSH
+ACK
SYN
Attack
IP @
Attack
IP Packet Options
Attack
Spoof
Source
Attack
Spoof
Source
Attack
Spoof
Source
Attack
9
Những kiểu tấn công làm cạn kiệt băng thông của mạng (BandWith
Depletion Attack)
BandWith Depletion Attack được thiết kế nhằm làm tràn ngập mạng
mục tiêu với những traffic không cần thiết, với mục đích làm giảm tối thiểu
khả năng của các traffic hợp lệ đến được hệ thống cung cấp dịch vụ của mục
tiêu.
Có hai loại BandWith Depletion Attack:
+ Flood attack: Đ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: Đ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.
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 cho các User thực sự của hệ thống không sử
dụng được dịch vụ.
Ta có thể chia Flood Attack thành hai loại:
+ UDP Flood Attack: do tính chất connectionless của UDP, hệ thống
nhận UDP message chỉ đơn giản nhận vào tất cả các gói tin mình cần phải xử
lý. Một lượng lớn các gói tin UDP đượ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.
+ Các gói tin UDP này có thể được gửi đến các cổng tùy ý hay chỉ duy
nhất một cổng. Thông thường là sẽ gửi đến nhiều cổng làm cho hệ thống mục
10
tiêu phải căng ra để xử lý phân hướng cho các gói tin này. Nếu cổng bị tấn
công không sẵn sàng thì hệ thống mục tiêu sẽ gửi ra một gói tin ICMP loại
“destination port unreachable”. Thông thường các phần mềm Agent sẽ dùng
địa chỉ IP giả để che giấu hành tung, cho nên các message trả về do không có
cổng xử lý sẽ dẫn đến một địa chỉ IP khác. UDP Flood attack cũng có thể làm
ảnh hưởng đến các kết nối xung quanh mục tiêu do sự hội tụ của các gói tin
diễn ra rất mạnh.
+ 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êu thì hệ thống này phải reply một
lượng tương ứng gói tin để 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ác Agent có thể bị giả mạo.
Amplification Attack:
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. Môđun 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 đó gói tin 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.
11
Hình 1.5. Amplification Attack
Có thể chia amplification attack thành hai loại, Smuft và Fraggle attack:
+ Smuft attack: Trong kiểu tấn công này attacker gửi các gói tin đế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 gói tin được dùng là ICMP ECHO
REQUEST, các gói tin này yêu cầu bên nhận phải trả lời bằng một gói tin
ICMP ECHO REPLY. Network amplifier sẽ gửi đến gói tin ICMP ECHO
REQUEST đế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ẽ gửi gói tin REPLY 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 gói tin
ICMP ECHO REQUEST thì sẽ dùng gói tin UDP ECHO gửi đếm mục tiêu.
Attacker/Agent
VICTIM
Amplifier
Amplifier Network System
12
Thật ra còn một biến thể khác của Fraggle attack sẽ gửi gói tin UDP ECHO
đến cổng charge (port 19/UNIX) của mục tiêu, với địa chỉ bên gửi là cổng
echo (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
cổng 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.
Những kiểu tấn công làm cạn kiệt tài nguyên: (Resource Deleption
Attack)
Theo định nghĩa: Resource Deleption Attack là kiểu tấn công trong đó
Attacker gửi những gói tin dùng các giao thức sai chức năng thiết kế, hay gửi
những gói tin 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.
Protocol Exploit Attack:
+ TCP SYN Attack: Transfer Control Protocol hỗ trợ truyền nhận với độ
tin cậy cao nên sử dụng phương thức bắt tay giữa bên gửi và bên nhận trước
khi truyền dữ liệu. Bước đầu tiên, bên gửi gửi một gói tin SYN REQUEST
(Synchronize). Bên nhận nếu nhận được SYN REQUEST sẽ trả lời bằng gói
tin SYN/ACK REPLY. Bước cuối cùng, bên gửi sẽ truyền gói tin cuối cùng
ACK và bắt đầu truyền dữ liệu.
13
Hình 1.6. TCP 3 way handshake
Nếu bên server đã trả lời một yêu cầu SYN bằng một SYN/ACK REPLY
nhưng không nhận được gói tin ACK cuối cùng sau một khoảng thời gian quy
định thì nó sẽ gửi trả lại SYN/ACK REPLY cho đến hết thời gian timeout.
Toàn bộ tài nguyên hệ thống “dự trữ” để xử lý phiên giao tiếp nếu nhận được
gói tin ACK cuối cùng sẽ bị “phong tỏa” cho đến hết thời gian timeout.
Hình 1.7. TCP SYN Attack
Nắm được điểm yếu này, attacker gửi một gói tin SYN đến nạn nhân với
địa chỉ bên gửi là giả mạo, kết quả là nạn nhân gửi SYN/ACK REPLY đến
một địa chỉ khác và sẽ không bao giờ nhận được gói tin ACK cuối cùng, cho
đến hết thời gian timeout nạn nhân mới nhận ra được điều này và giải phóng
các tài nguyên hệ thống. Tuy nhiên, nếu lượng gói tin SYN giả mạo đến với
số lượng nhiều và dồn dập, hệ thống của nạn nhân có thể bị hết tài nguyên.
SYN
TCP
Client
Client
Port
1024-
65535
TCP
Server
Service Port
1-1023
ACK
SYN/ACK
80
Malicious
TCP
Client
Victim
TCP
Server
SYS packet with a deliberately fraudulent
(spoofed) source IP return address
SYN/ACK
SYN
8
0
?
14
+ PUSH = ACK Attack: Trong giao thức TCP, các gói tin được chứa
trong bộ nhớ đệm (buffer), khi buffer đầy thì các gói tin này sẽ được chuyển
đến nơi cần thiết. Tuy nhiên, bên gửi có thể yêu cầu hệ thống unload buffer
trước khi buffer đầy bằng cách gửi một gói tin với PUSH và ACK mang giá
trị là 1. Những gói tin này làm cho hệ thống của nạn nhân unload tất cả dữ
liệu trong TCP buffer ngay lập tức và gửi một gói tin ACK trở về khi thực
hiện xong điều này, nếu quá trình được diễn ra liên tục với nhiều Agent, hệ
thống sẽ không thể xử lý được lượng lớn gói tin gửi đến và sẽ bị treo.
Malformed Packet Attack
Malformed Packet Attack là cách tấn công dùng các Agent để gửi các
gói tin 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.
Có hai loại Malformed Packet Attack:
+ IP address attack: dùng gói tin có địa chỉ gửi và nhận giống nhau làm
cho hệ điều hành của nạn nhân không xử lý nổi và bị treo.
+ IP packet options attack ngẫu nhiên hóa vùng OPTION trong IP packet
và thiết lập tất cả các bit QoS lên 1, điều này làm cho hệ thống của nạn nhân
phải tốn thời gian phân tích, nếu sử dụng số lượng lớn Agent có thể làm hệ
thống nạn nhân hết khả năng xử lý.
SYN
ACK
SYN/ACK
Client Server
SYN
SYN/ACK
SYN/ACK
Server
Attacker/Agent
15
1.1.5. Một số đặc tính của công cụ DDOS Attack
Hình 1.8. Công cụ DDoS attack
Các công cụ DDoS Attack có rất nhiều điểm chung như: cách cài phần
mềm Agent, phương pháp giao tiếp giữa các attacker, handler và Agent, điểm
chung về loại hệ điều hành hỗ trợ các công cụ này. Sơ đồ trên mô tả sự so
sánh tương quan giữa các công cụ tấn công DDoS này.
Cách thức cài đặt DDoS Agent:
Attacker có thể dùng phương pháp active và passive để cài đặt phần
mềm agent lên các máy khác nhằm thiết lập attack-network kiểu Agent-
Handler hay IRC-based.
- Cách cài đặt Active:
16
+ Scaning: dùng các công cụ như Nmap, Nessus để tìm những sơ hở trên
các hệ thống đang online nhằm cài đặt phần mềm Agent. Chú ý, Nmap sẽ trả
về những thông tin về một hệ thống đã được chỉ định bằng địa chỉ IP, Nessus
tìm kiếm từ những địa chỉ IP bất kỳ về một điểm yếu biết trước nào đó.
+ Backdoor: Sau khi tìm thấy được danh sách các hệ thống có thể lợi
dụng, attacker sẽ tiến hành xâm nhập và cài Agentsoftware lên các hệ thống
này. Có rất nhiều thông tin sẵn có về cách thức xâm nhập trên mạng, như site
của tổ chức Common Vulnerabilities and Exposures (CVE), ở đây liệt kê và
phân loại trên 4.000 loại lỗi của tất cả các hệ thống hiện có. Thông tin này
luôn sẵn sàng cho cả giới quản trị mạng lẫn hacker.
+ Trojan: là một chương trình thực hiện một chức năng thông thường
nào đó, nhưng lại có một số chức năng tiềm ẩn phục vụ cho mục đích riêng
của người viết mà người dùng không thể biết được. Có thể dùng trojan như
một phần mềm Agent.
+ Buffer Overflow: Tận dụng lỗi buffer overflow, attacker có thể làm
cho chu trình thực thi chương trình thông thường bị chuyển sang chu trình
thực thi chương trình của hacker (nằm trong vùng dữ liệu ghi đè). Có thể
dùng cách này để tấn công vào một chương trình có điểm yếu buffer overflow
để chạy chương trình phần mềm Agent.
- Cách cài đặt passive:
+ Bug Website: attacker có thể lợi dụng một số lỗi của trình duyệt web
để cài phần mềm Agent vào máy của user truy cập. Attacker sẽ tạo một
website mang nội dung tiềm ẩn những code và lệnh để đặt bẫy user. Khi user
truy cập nội dung của website, thì website tải và cài đặt phần mềm Agent một
cách bí mật. Trình duyệt web IE thường là mục tiêu của cách cài đặt này, với