Tải bản đầy đủ (.pdf) (66 trang)

Phân tích và đánh giá hệ thống phát hiện xâm nhập ids

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.78 MB, 66 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-------------------------------

TRIỆU XUÂN NGHIÊM

PHÂN TÍCH VÀ ĐÁNH GIÁ HỆ THỐNG PHÁT HIỆN
XÂM NHẬP IDS

LUẬN VĂN THẠC SỸ KỸ THUẬT
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN

Hà Nội – 2018


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-------------------------------

TRIỆU XUÂN NGHIÊM

PHÂN TÍCH VÀ ĐÁNH GIÁ HỆ THỐNG PHÁT HIỆN
XÂM NHẬP IDS

LUẬN VĂN THẠC SỸ KỸ THUẬT
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. TRẦN QUANG ĐỨC

Hà Nội – 2018



MỤC LỤC
Trang
MỞ ĐẦU .....................................................................................................................8
1. Lý do chọn đề tài .................................................................................................8
2. Mục đích, phương pháp, đối tượng, dự kiến kết quả nghiên cứu luận văn. ........9
Chương 1. TỔNG QUAN VỀ TẤN CÔNG VÀ MỘT SỐ KỸ THUẬT TẤN CÔNG
MẠNG .......................................................................................................................11
1.1. Tổng quan về tấn công mạng ..........................................................................11
1.2. Một số kỹ thuật tấn cơng hệ thống mạng máy tính ........................................11
1.2.1. Tấn cơng bị động (Passive attack)............................................................11
1.2.2. Tấn công rải rác (Distributed attack)........................................................12
1.2.3. Tấn công nội bộ (Insider attack) ..............................................................12
1.2.4. Tấn công Phising ......................................................................................12
1.2.5. Tấn công mật khẩu (Password attack)......................................................12
1.2.6. Khai thác lỗ hổng tấn công (Exploit attack) .............................................13
1.2.7. Buffer overflow (lỗi tràn bộ đệm) ............................................................13
1.2.8. Tấn công bằng phần mềm độc hại ............................................................13
1.3. Tấn công từ chối dịch vụ (Denial of service attack) .......................................13
1.3.1. Phân loại các dạng tấn công DoS/DDoS ..................................................14
1.3.2. Một số kiểu tấn công và các công cụ tấn cơng DoS/DDoS .....................24
Chương 2. GIẢI PHÁP PHÁT HIỆN VÀ PHỊNG CHỐNG TẤN CƠNG
DOS/DDOS ...............................................................................................................30
2.1. Mơ hình phát hiện tấn cơng DoS/DDoS .........................................................30
2.1.1. Mơ hình đặt gần nạn nhân ........................................................................30
2.1.2. Mơ hình đặt gần đích tấn cơng .................................................................31
2.1.3. Mơ hình đặt tại phần lõi của Internet .......................................................31
2.2. Một số hướng tiếp cận trong phát hiện và phòng chống DoS/DDoS .............31
2.2.1. Giải pháp dành cho doanh nghiệp cung cấp Hosting ...............................31
2.2.2. Giải pháp sử dụng IPS để lọc gói tin ........................................................32

2.2.3. Giải pháp sử dụng GeoIP DNS ................................................................32
2.2.4. Giải pháp sử dụng HAProxy ....................................................................33
2.2.5. Giải pháp sử dụng hệ thống phát hiện xâm nhập mạng (IDS) .................33
2.3. Phần mềm phát hiện và ngăn chặn xâm nhập Snort-Inline ............................37

1


2.3.1. Các cơ chế hoạt động của Snort -Inline ..................................................38
2.3.2. Kiến trúc của Snort ...................................................................................39
2.3.3. Cấu trúc luật (Rule) của Snort ..................................................................40
Chương 3. TRIỂN KHAI THỬ NGHIỆM HỆ THỐNG PHÁT HIỆN XÂM NHẬP
DỰA TRÊN SNORT ................................................................................................46
3.1. Mô phỏng, thử nghiệm hệ thống phát hiện xâm nhập dựa trên Snort. ...........46
3.1.1. Kịch bản và sơ đồ mô phỏng thử nghiệm ................................................46
3.1.2. Thử nghiệm hệ thống phát hiện xâm nhập ...............................................47
3.2. Nhận xét, đánh giá về hệ thống phát hiện xâm nhập, sử dụng Snort IDS ......60
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ................................................................62
TÀI LIỆU THAM KHẢO .........................................................................................64

2


LỜI CAM ĐOAN
Tôi xin cam đoan: Luận văn thạc sĩ Cơng nghệ thơng tin với đề tài “Phân tích
và đánh giá hệ thống phát hiện xâm nhập IDS” là công trình nghiên cứu thật sự
của cá nhân tơi dưới sự hướng dẫn của TS.Trần Quang Đức. Các kết quả nêu trong
luận văn là trung thực và chưa từng được công bố trong bất kỳ cơng trình nào khác.
Tơi xin chịu trách nhiệm về lời cam đoan này./.
Hà Nội, ngày


tháng

năm 2018

Tác giả

Triệu Xuân Nghiêm

3


LỜI CẢM ƠN
Sau nhiều tháng tìm hiểu, nghiên cứu, với sự chỉ dạy nhiệt tình của thầy giáo
hướng dẫn tơi đã hoàn thành luận văn tốt nghiệp.
Trước hết em xin chân thành cảm ơn thầy giáo TS. Trần Quang Đức - Viện
Công nghệ thông tin và Truyền thông – Đại học Bách khoa Hà Nội, người đã trực
tiếp hướng dẫn, nhận xét, nhắc nhở, giúp đỡ em trong suốt quá trình thực hiện luận
văn. Em xin chân thành cảm ơn các thầy, cô trong Viện Công nghệ thông tin và
Truyền thông, Viện đào tạo sau đại học và các thầy cô trong trường Đại học Bách
khoa Hà Nội, những người dạy dỗ, chỉ bảo em trong những năm học tập và nghiên
cứu tại trường.
Cuối cùng tơi xin bày tỏ lịng biết ơn đến gia đình và những người bạn thân,
đồng nghiệp đã giúp đỡ, động viên tôi rất nhiều trong quá trình học tập và làm luận
văn.
Do năng lực kiến thức chun mơn cịn có phần hạn chế nên luận văn em thực
hiện chắc chắn không tránh khỏi những thiếu sót nhất định, rất mong nhận được sự
thơng cảm và ý kiến đóng góp của thầy, cơ giáo.
Em xin chân thành cảm ơn!


4


DANH MỤC CÁC CHỮ VIẾT TẮT VÀ KÝ HIỆU

Chữ viết tắt

Giải thích

TCP

Transfer Control Protocol

UDP

User Datagram Protocol

IP

Internet Protocol

DDoS

Distributed Denial Of Service

DoS

Denial Of Service

IDS


Intrusion Detection System

IPS

Intrusion Prevention Systems

ICMP

Internet Control Message Protocol

CNTT

Công nghệ thông tin

5


DANH MỤC CÁC HÌNH
Hình 1: Phân loại các kiểu tấn cơng DoS/DDoS

15

Hình 2: Mơ hình mạng Botnet

20

Hình 3: Mơ hình mạng tấn cơng thơng qua Data Center

20


Hình 4: Mơ hình tấn cơng khuếch đại

21

Hình 5: Q trình bắt tay ba bước

23

Hình 6: Mơ hình tấn cơng X-Flash

29

Hình 7: Mơ hình sử dụng IPS để lọc gói tin

32

Hình 8: Mơ hình sử dụng GeoIP DNS

32

Hình 9: Minh họa hệ thống phát hiện và ngăn chặn xâm nhập

38

sử dụng Snort-Inline (Snort IPS/IDS)
Hình 10: Sơ đồ luồng dữ liệu đi qua Snort

39


Hình 11: Mơ phỏng hệ thống thử nghiệm

46

Hình 12: Kết quả ping trên máy Attacker

47

Hình 13: Cảnh báo phát hiện Ping hoặc Scan Port từ Snort IDS

47

Hình 14: Quét cổng FIN Scan

48

Hình 15: Wireshark bắt gói tin FIN Scan

49

Hình 16: Snort phát hiện quét cổng FIN Scan

49

Hình 17: Quét cổng NULL Scan

50

Hình 18: Wireshark bắt gói tin NULL Scan


50

Hình 19: Snort IDS phát hiện quét cổng NULL Scan

51

Hình 20: Quét cổng XMAS Scan

51

Hình 21: Wireshark bắt gói tin XMAS Scan

51

Hình 22: Snort IDS phát hiện qt cổng XMAS Scan

52

Hình 23: Mơ hình bắt tay ba bước

53

Hình 24: Tấn cơng DoS TCP SYN Flood

54

Hình 25: Wireshark bắt gói tin tấn cơng DoS TCP SYN Flood

54


6


Hình 26: Snort phát hiện tấn cơng TCP SYN Flood

56

Hình 27: Tấn cơng DoS UDP Flood

57

Hình 28: Wireshark bắt gói tin tấn cơng DoS UDP Flood

57

Hình 29: Snort phát hiện tấn cơng DoS UDP Flood

58

Hình 30: Tấn cơng DoS ICMP Flood

58

Hình 31: Wireshark bắt gói tin tấn cơng DoS ICMP Flood

59

Hình 32: Snort phát hiện tấn cơng DoS ICMP Flood

59


DANH MỤC CÁC BẢNG
Bảng 1
Bảng 2

Cấu trúc Rule của Snort
Cấu trúc Rule Header

40
40

7


MỞ ĐẦU
1. Lý do chọn đề tài
Ngày nay, với sự phát triển của khoa học kỹ thuật nói chung và tốc độ phát
triển nhanh của CNTT, Internet trở thành hệ thống không gian mạng xã hội mới, nơi
mà tất cả mọi người có thể thực hiện các hoạt động ý thức xã hội của mình như:
giao tiếp, lao động, sáng tạo, học tập, sản xuất, kinh doanh, vui chơi giải trí,… được
xây dựng thơng qua các hệ thống máy tính, hệ thống thông tin đã trở nên rất phổ
biến trong hầu hết các hoạt động kinh tế - xã hội. Cùng với sự phát triển đó, ngày
càng xuất hiện nhiều hơn những cá nhân, nhóm hoặc thậm chí là cả những tổ chức
hoạt động với mục đích xấu nhằm phá hoại các hệ thống mạng máy tính cũng như
hệ thống thông tin, gây tác hại vô cùng to lớn đến tính an tồn và bảo mật thơng tin
trên các hệ thống này.
An tồn và bảo mật thơng tin là một trong những vấn đề quan trọng hàng đầu
khi thực hiện kết nối Internet. Tuy nhiên, vẫn thường xuy n có các mạng bị tấn
công, một số tổ chức bị đánh cắp thông tin, gián đoạn hoạt động của tổ chức, doanh
nghiệp ngày càng tăng. Đặc biệt trong những năm gần đây có rất nhiều vụ tấn cơng

DoS/DDoS lớn, nhằm vào các hệ thống tổ chức chính phủ, sân bay, các tịa soạn
báo online, qn đội, các cơng ty thương mại điện tử trên toàn thế giới,… gây n n
những hậu quả vô cùng nghiêm trọng. Những vụ tấn công này nhằm vào tất cả các
máy tính có mặt trên mạng Internet, đa phần vì mục đích xấu và các cuộc tấn công
không được báo trước, số lượng các vụ tấn cơng tăng l n nhanh chóng và các
phương pháp tấn cơng cũng li n tục được hồn thiện.
Từ những vấn đề n u tr n, với mong muốn tìm hiểu, phân tích, nghi n cứu,
thử nghiệm, so sánh về các cuộc tấn công, xâm nhập mạng cũng như đưa ra phương
án phòng chống phát hiện xâm nhập nhằm giảm tác hại gây ra đối với các hệ thống
mạng là hoàn tồn cấp thiết vì vậy tơi chọn đề tài luận văn “Phân tích và đánh giá
hệ thống phát hiện xâm nhập IDS”.

8


2. Mục đích, phƣơng pháp, đối tƣợng, dự kiến kết quả nghiên cứu luận văn.
Mục đích nghiên cứu
- Tìm hiểu khái quát về hệ thống phát hiện và phòng chống xâm nhập IDS,
khái niệm, kiến trúc, cơ chế và nguy n lý hoạt động.
- Tìm hiểu về các dạng tấn công DoS/DDoS và một số công cụ dùng để tấn
công DoS điển hình mà các hacker thường sử dụng để tấn công hệ thống mạng.
- Xây dựng hệ thống IDS, sử dụng mã nguồn mở Snort để phát hiện và ngăn
chặn xâm nhập trái phép trong hệ thống mạng.
- Xây dựng một số tập luật cơ bản cho hệ thống Snort, nhằm phát hiện các
kiểu tấn công xâm nhập hệ thống mạng.
- Đưa ra các đánh giá, so sánh các dạng tấn cơng và hệ thống phát hiện phịng
chống xâm nhập IDS với mục đích tìm ra những ưu điểm, khuyết điểm nhằm nâng
cao hệ thống một cách hoàn thiện hơn, tối ưu hơn.
Phƣơng pháp nghiên cứu
- Sử dụng hệ điều hành mã nguồn mở Kali-linux xây dựng kịch bản tấn công,

xâm nhập hệ thống mạng.
- Sử dụng hệ điều hành Centos 6.5 và dựa tr n đó xây dựng hệ thống phát hiện
và phòng chống xâm nhập bằng phần mềm mã nguồn mở Snort.
- Nghi n cứu cấu trúc tập lệnh Rules của Snort, từ đó xây dựng những tập lệnh
theo nhu cầu thực tế với mục đích đảm bảo cho hệ thống có thể phát hiện những
cuộc tấn cơng hệ thống mạng.
- Mơ phỏng các hình thức qt cổng dựa tr n công cụ Nmap của máy chủ
Kali-linux như: Ping, FIN Scan, Null Scan, XMAS Scan.
- Mô phỏng các hình thức tấn cơng DoS/DDoS như: DoS SYN Flood, DoS
UDP Flood, DoS ICMP Flood dựa tr n công cụ Hping3 của máy chủ Kali-linux.
Đối tƣợng nghiên cứu
- Các hình thức tấn công phổ biến của Attacker vào hệ thống mạng.
- Phần mềm mã nguồn mở Snort
- Cấu trúc của tập lệnh Rules.

9


Dự kiến kết quả nghiên cứu
- Hồn thiện việc tìm hiểu các kỹ thuật xâm nhập bất hợp pháp vào hệ thống
mạng.
- Xây dựng thành công hệ thống phát hiện xâm nhập IDS.
- Xây dựng một số tập lệnh Rules có khả năng phát hiện các kiểu tấn cơng phổ
biến như Scan hệ thống, tấn công từ chối dịch vụ (DoS/DDoS).
3. Tóm tắt nội dung chính
Luận văn gồm phần mở đầu, 3 chương chính và cuối cùng là phần kết luận và
hướng phát triển, cụ thể:
Phần mở đầu
Chƣơng 1: Tổng quan về tấn công và một số kỹ thuật tấn công mạng
Nội dung chương này gồm: Tổng quan về tấn cơng mạng; Một số kỹ thuật tấn

cơng mạng máy tính, Giới thiệu và phân loại các dạng tấn công DoS/DDoS; Một số
kiểu tấn công và các công cụ tấn công DoS/DDoS.
Chƣơng 2: Giải pháp phát hiện và phòng chống tấn cơng DoS/DDoS
Nội dung chương này gồm: Giới thiệu mơ hình phát hiện DoS/DDoS; Một số
hướng tiếp cận trong phát hiện và phịng chống DoS/DDoS trong đó đi sâu vào giải
pháp xây dựng hệ thống phát hiện xâm nhập mạng (IDS); Giới thiệu phần mềm phát
hiện và ngăn chặn xâm nhập Snort-Inline.
Chƣơng 3: Triển khai thử nghiệm hệ thống phát hiện xâm nhập dựa trên
Snort
Nội dung chương này gồm: Mô phỏng, thử nghiệm hệ thống phát hiện và ngăn
chặn xâm nhập dựa trên Snort; Nhận xét, đánh giá về hệ thống phát hiện xâm nhập,
sử dụng Snort.
Kết luận và hƣớng phát triển
Tài liệu tham khảo

10


Chƣơng 1. TỔNG QUAN VỀ TẤN CÔNG VÀ MỘT SỐ KỸ THUẬT
TẤN CƠNG MẠNG
1.1. Tổng quan về tấn cơng mạng
Tấn cơng mạng là sự phá hủy chính sách an tồn thông tin, hoặc là tác động
bất kỳ dẫn đến việc phá hủy tính tồn vẹn, tính bí mật, tính sẵn sàng và thông tin xử
lý trong hệ thống.
Tùy theo quy mô của các hệ thống mạng, các dạng tấn công mạng có thể biến
thể theo các kiểu khác nhau. Nếu khơng có sự bảo vệ đúng đắn, bất kỳ nơi nào trong
hệ thống mạng cũng có thể bị tấn cơng hoặc bị xâm nhập trái phép. Router, Switch
hoặc các thiết bị máy tính đầu cuối đều có thể bị xâm phạm bởi những hacker
chuyên nghiệp, các công ty đối thủ hoặc ngay cả các nhân viên bên trong tổ chức
của mình. Thực chất là các thống kê cho thấy rằng phần lớn các cuộc tấn công đều

xuất phát từ bên trong mạng nội bộ của công ty. Các tác nhân có khả năng đe dọa
đến bảo mật mạng được chia làm 4 loại:
* Các tác nhân khơng có cấu trúc (unstructured Attacks): Các tác nhân này gây
ra bởi những hacker sử dụng những cơng cụ như password cracker, các chương
trình sinh số credit card tự động,…
* Các tác nhân có cấu trúc (structured Attacks): Các tác nhân này gây ra bởi
những hacker có trình độ cao.
* Các tác nhân xuất phát từ bên ngoài: Những tác nhân này (bao gồm có cấu
trúc hoặc khơng có cấu trúc) có nguồn gốc xuất phát từ bên ngồi.
* Các tác nhân có nguồn gốc từ bên trong: Những tác nhân này gây ra phần
lớn từ các nhân viên trong tổ chức, và gây ra nhiều điều đáng ngại hơn so với các
tác nhân từ bên ngồi.
1.2. Một số kỹ thuật tấn cơng hệ thống mạng máy tính
1.2.1. Tấn cơng bị động (Passive attack)
Trong một cuộc tấn công bị động, các hacker sẽ kiểm sốt luồng dữ liệu khơng
bị mã hóa và tìm kiếm mật khẩu khơng được mã hóa đó (Clear text password), các
thơng tin nhạy cảm có thể được sử dụng trong các kiểu tấn công khác. Các cuộc tấn

11


cơng bị động bao gồm phân tích traffic, giám sát các cuộc giao tiếp không được bảo
vệ, giải mã các traffic mã hóa yếu, và thu thập các thơng tin xác thực như mật khẩu.
Các cuộc tấn công chặn bắt thông tin hệ thống mạng cho phép kẻ tấn công có
thể xem xét các hành động tiếp theo. Kết quả của các cuộc tấn công bị động là các
thông tin hoặc file dữ liệu sẽ bị rơi vào tay kẻ tấn công mà người dùng không hề
hay biết.
1.2.2. Tấn công rải rác (Distributed attack)
Đối với các cuộc tấn công rải rác yêu cầu kẻ tấn công phải giới thiệu mã,
chẳng hạn như một chương trình Trojan horse hoặc một chương trình back-door,

với một thành phần “tin cậy” hoặc một phần mềm được phân phối cho nhiều công
ty khác và tấn công user bằng cách tập trung vào việc sửa đổi các phần mềm độc hại
của phần cứng hoặc phần mềm trong q trình phân phối,…
1.2.3. Tấn cơng nội bộ (Insider attack)
Các cuộc tấn công nội bộ (Insider attack) li n quan đến người ở trong cuộc,
chẳng hạn như một nhân vi n nào đó “bất mãn” với cơng ty của mình,... Các cuộc
tấn cơng nội bộ có thể gây hại hoặc vô hại.
1.2.4. Tấn công Phising
Trong các cuộc tấn công Phising, các hacker sẽ tạo ra một trang web giả trông
“giống hệt” như các website phổ biến. Trong các phần tấn công Phising, các hacker
sẽ gửi một email để người dùng click vào đó và điều hướng đến trang web giả mạo.
Khi người dùng đăng nhập thông tin tài khoản của họ, các hacker sẽ lưu lại tên
người dùng và mật khẩu đó lại.
1.2.5. Tấn cơng mật khẩu (Password attack)
Đối với các cuộc tấn công mật khẩu, các hacker sẽ cố gắng “phá” mật khẩu
được lưu trữ tr n cơ sở dữ liệu tài khoản hệ thống mạng hoặc mật khẩu bảo vệ các
tập tin. Các cuộc tấn công mật khẩu bao gồm 3 loại chính: Các cuộc tấn cơng dạng
từ điển (dictionary attack), bru-force attack và Hybrid attack. Cuộc tấn công dạng từ
điển sử dụng danh sách các tập tin chứa các mật khẩu tiềm năng.

12


1.2.6. Khai thác lỗ hổng tấn công (Exploit attack)
Đối với các cuộc tấn công bằng việc khai thác các lỗ hổng, yêu cầu các hacker
phải hiểu biết về các vấn đề bảo mật trên hệ điều hành hoặc các phần mềm và tận
dụng kiến thức này để khai thác lỗ hổng.
1.2.7. Buffer overflow (lỗi tràn bộ đệm)
Một cuộc tấn công buffer attack xảy ra khi các hacker gửi dữ liệu tới một ứng
dụng nhiều hơn so với dự kiến. Và kết quả của cuộc tấn công buffer attack là các

hacker tấn công truy cập quản trị hệ thống trên Command Prompt hoặc Shell.
1.2.8. Tấn công bằng phần mềm độc hại
Phần mềm độc hại (Malicious Software), gọi tắt là malware, có một vị trí rất
quan trọng trong thế giới cơng nghệ hiện đại. Khởi đầu sớm nhất từ việc sử dụng
các hệ thống có thể lập trình, tiếp cận để lây nhiễm chúng với các phần mềm có các
chức năng độc hại, tuy nhiên trong quá khứ, phần mềm độc hại thường chỉ có tác
động giới hạn hoặc cục bộ. Sự thành công của Internet cũng trở thành điểm khởi
đầu cho các báo cáo về sự lây nhiễm rộng rãi của malware ảnh hưởng tới vài triệu
hệ thống trên toàn cầu. Với việc Internet có thể dễ dàng truy cập bởi mọi người và
việc sử dụng các dịch vụ tài chính như mua sắm điện tử, ngân hàng điện tử phổ biến
hiện nay, những người sử dụng thông thường với kiến thức công nghệ thấp trở
thành mục tiêu hứa hẹn của tội phạm.
1.3. Tấn công từ chối dịch vụ (Denial of service attack)
Tấn công từ chối dịch vụ – tấn công DoS (Denial of Service) hay tấn công từ
chối dịch vụ phân tán – tấn công DDoS (Distributed Denial of Service) là một nỗ
lực làm cho người dùng không thể sử dụng tài nguyên của một máy tính. Mặc dù
phương tiện để tiến hành, động cơ, mục tiêu của tấn công DoS và DDoS có thể khác
nhau, nhưng nói chung nó gồm có sự phối hợp, sự cố gắng hay ác ý của một người
hay nhiều người để một website, hoặc một hệ thống mạng không thể sử dụng được,
làm gián đoạn, và 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 hệ thống.

13


Đây là một phương thức tấn công phổ biến kéo theo sự bão hòa nạn nhân với
các yêu cầu liên lạc b n ngồi, đến mức nó khơng thể đáp ứng giao thông hợp pháp,
hoặc đáp ứng quá chậm. Trong điều kiện chung, các cuộc tấn công DoS được bổ
sung bởi ép máy mục tiêu khởi động lại hoặc tiêu thụ hết tài ngun của nó đến
mức nó khơng cung cấp dịch vụ, hoặc làm tắc nghẽn liên lạc giữa người sử dụng và

nạn nhân. Trung tâm ứng cứu máy tính khẩn cấp Hoa Kỳ xác định dấu hiệu của một
vụ tấn cơng từ chối dịch vụ gồm có:
- Mạng thực thi chậm khác thường khi mở tập tin hay truy cập website;
- Không thể dùng một Website cụ thể;
- Không thể truy cập bất kỳ Website nào;
- Tăng lượng thư rác nhận được.
Không phải tất cả các dịch vụ đều ngừng chạy, thậm chí đó là kết quả của một
hoạt động nguy hại, tất yếu của cuộc tấn công DoS. Tấn cơng từ chối dịch vụ cũng
có thể dẫn tới vấn đề nhánh mạng của máy đang bị tấn cơng. Trong đó nổi bật là tấn
cơng từ chối dịch vụ phân tán DDoS.
DDoS (Distributed Denial of Service) là kiểu tấn công đưa một hệ thống
cung cấp dịch vụ đến mức hoạt động về tài nguyên, hay gây nhầm lẫn đến logic
ngừng hoạt động. Khác với DoS (Denial of Service) là chỉ cần một máy để tấn
công, DDoS sử dụng nhiều máy tính bị chiếm quyền điều khiển kết nối với nhau
(mạng Botnet) để tấn công nên sức hủy hoại rất lớn.
1.3.1. Phân loại các dạng tấn công DoS/DDoS
Các cuộc tấn công DoS/DDoS thường được tin tặc thực hiện bằng cách tấn
cơng vào hệ thống mạng và trong đó tấn công DDoS là kẻ tấn công huy động một
số lượng rất lớn các máy tính có kết nối Internet bị chiếm quyền điều khiển – tập
hợp các máy này được gọi là mạng máy tính ma hay mạng bot, hoặc botnet. Các
máy của botnet có khả năng gửi hàng ngàn yêu cầu giả mạo mỗi giây đến hệ thống
cho nạn nhân, gây ảnh hưởng nghiêm trọng đến chất lượng dịch vụ cung cấp cho
người dùng. Do các yêu cầu của tấn công DDoS được gửi rải rác từ nhiều máy ở
nhiều vị trí địa lý nên rất khó phân biệt với các yêu cầu của người dùng hợp pháp.

14


Một trong các khâu cần thiết trong việc đề ra các biện pháp phòng chống DDoS
hiệu quả là phân loại các dạng tấn cơng DDoS có thể được phân loại dựa trên 6 tiêu

chí chính:
1.3.1.1. Dựa trên phƣơng pháp tấn công
Phân loại DDoS dựa tr n phương pháp tấn công là một trong những phương
pháp phân loại cơ bản nhất. Theo tiêu chí này, DDoS có thể được chia làm 2 dạng
gồm tấn công gây ngập lụt và tấn công logic:

Hình 1: Phân loại các kiểu tấn cơng DDoS
Tấn cơng gây ngập lụt (Flooding attacks): Trong tấn công gây ngập lụt, tin
tặc tạo một lượng lớn các gói tin tấn cơng giống như các gói tin hợp lệ và gửi đến
hệ thống nạn nhân làm cho hệ thống không thể phục vụ người dùng hợp pháp. Đối
tượng của tấn công dạng này là băng thông mạng, không gian đĩa, thời gian của
CPU,…
Tấn công logic (Logical acttacks): Tấn công logic thường khai thác các tính
năng hoặc các lỗi cài đặt của giao thức hoặc dịch vụ chạy trên hệ thống nạn nhân,
nhằm làm cạn kiệt tài nguyên hệ thống.

15


1.3.1.2. Dựa trên mức độ tự động
Theo mức độ tự động, có thể chia tấn cơng DDoS thành 3 dạng.
- Tấn công thủ công: Tin tặc trực tiếp quét các hệ thống tìm lỗ hổng, đột nhập
vào hệ thống, cài đặt mã tấn cơng và ra lệnh kích hoạt tấn công. Chỉ những tấn công
DDoS trong giai đoạn đầu mới được thực hiện thủ công.
- Tấn công bán tự động: Trong dạng này, mạng lưới thực hiện tấn công DDoS
bao gồm các máy điều khiển (Master/Handler) và các máy Agent (Slave, Deamon,
Zombie, Bot). Các giai đoạn tuyển chọn máy Agent, khai thác lỗ hổng và lây nhiễm
được thực hiện tự động. Trong giai đoạn tấn công, tin tặc gửi các thông tin bao gồm
kiểu tấn công, thời điểm bắt đầu, khoảng thời gian duy trì tấn cơng và đích tấn công
đến các Agent thông qua các handler. Các Agent sẽ theo lệnh gửi các gói tin tấn

cơng đến hệ thống nạn nhân.
- Tấn công tự động: Tất cả các giai đoạn trong q trình tấn cơng DDoS, từ
tuyển chọn máy Agent, khai thác lỗ hổng, lây nhiễm đến thực hiện tấn công đều
được thực hiện tự động. Tất cả các tham số tấn cơng đều được lập trình sẵn và đưa
vào mã tấn cơng, và tin tặc chỉ cần kích hoạt giai đoạn tuyển chọn các máy Agent.
1.3.1.3. Dựa trên giao thức mạng
Dựa trên giao thức mạng, tấn công DDoS có thể chia thành 2 dạng:
- Tấn cơng vào tầng mạng hoặc giao vận: Ở dạng này, các gói tin TCP, UDP
và ICMP được sử dụng để thực hiện tấn công.
- Tấn công vào tầng ứng dụng: Ở dạng này, các tấn công thường hướng đến
dịch vụ thông dụng ứng với các giao thức tầng ứng dụng như: HTTP, DNS, và
SMTP. Tấn cơng DDoS tầng ứng dụng cũng có thể gây ngập lụt đường truyền và
tiêu hao tài nguyên máy chủ, làm ngắt quãng khả năng cung cấp dịch vụ cho người
dùng hợp pháp. Dạng tấn công này cũng rất khó phát hiện do các u cầu tấn cơng
tương tự yêu cầu người dùng hợp pháp.

16


1.3.1.4. Dựa trên phƣơng pháp giao tiếp
Thông thường, để thực hiện tấn công DDoS, tin tặc phải tuyển chọn và chiếm
quyền điều khiển một số lượng lớn các máy tính có kết nối Internet, và các máy tính
sau này khi bị cài phần mềm Agent trở thành các Bots – công cụ giúp tin tặc thực
hiện tấn công DDoS. Tin tặc thông qua các máy điều khiển (Master) giao tiếp với
các Bots để gửi thông tin và các lệnh điều khiển tấn công. Theo phương thức giao
tiếp giữa các Master và Bots, có thể chia tấn cơng DDoS thành 4 dạng:
- DDoS dựa trên Agent-Handler: Tấn công DDoS dựa trên dạng này bao gồm
các thành phần: Clients, Handles và Agents (Bots/Zombies). Tin tặc chỉ giao tiếp
trực tiếp với Clients. Clients sẽ giao tiếp với Agents thông qua Handlers. Nhận được
lệnh và các thông tin thực hiện tấn công, Agents trực tiếp thực hiện việc tấn công.

- DDoS dựa trên IRC: Internet Relay Chat (IRC) là một hệ thống truyền thông
điệp trực tuyến cho phép nhiều người dùng tạo kết nối và trao đổi các thông điệp
theo thời gian thực. Trong dạng tấn công DDoS này tin tặc sử dụng IRC làm kênh
giao tiếp với các Agents, không sử dụng Handlers.
- DDoS dựa trên Web: Trong dạng tấn công này, tin tặc sử dụng các trang
Web làm phương tiện giao tiếp qua kênh HTTP thay cho kênh IRC. Các trang Web
của tin tặc được sử dụng làm trung tâm điều khiển và lây nhiễm các phần mềm độc
hại, các công cụ khai thác các lỗ hổng an ninh, cài đặt các Agents chiếm quyền điều
khiển hệ thống máy tính và biến chúng thành các Bots. Các Bots có thể được xác
lập cấu hình hoạt động từ đầu, hoặc chúng có thể gửi các thông điệp đến trang web
điều khiển thông qua các giao thức web phổ biến như HTTP và HTTPS.
- DDoS dựa trên P2P: Ở dạng này, tin tặc sử dụng giao thức Peer to Peer –
một giao thức ở tầng ứng dụng làm kênh giao tiếp. Bản chất của các mạng P2P là
phân tán nên rất khó để phát hiện các Bots giao tiếp với nhau thông qua kênh này.
1.3.1.5. Dựa trên cƣờng độ tấn công
Dựa tr n cường độ hoặc tần suất gửi u cầu tấn cơng, có thể phân loại tấn
công DDoS thành 5 dạng:

17


- Tấn công cường độ cao: Là dạng tấn công gây ngắt quãng dịch vụ bằng cách
gửi cùng một thời điểm một lượng rất lớn các yêu cầu từ các máy Agents/Zombies
nằm phân tán trên mạng.
- Tấn công cường độ thấp: Các Agents/Zombies được phối hợp sử dụng để gửi
một lượng lớn các yêu cầu giả mạo, nhưng với tần suất thấp, làm suy giảm dần dần
hiệu năng mạng. Dạng tấn cơng này rất khó bị phát hiện do lưu lượng tấn công
tương tự như lưu lượng đến từ người dùng hợp pháp.
- Tấn công cường độ hỗn hợp: Là dạng kết hợp giữa tấn công cường độ cao và
tấn công cường độ thấp. Đây là dạng tấn công phức hợp, trong đó tin tặc thường sử

dụng các cơng cụ để sinh các gói tin tấn cơng gửi với tần suất cao và thấp.
- Tấn công cường độ liên tục: Là dạng tấn công được thực hiện liên tục với
cường độ tối đa trong suốt khoảng thời gian từ khi bắt đầu đến khi kết thúc.
- Tấn công cường độ thay đổi: Đây là dạng tấn cơng có cường độ thay đổi
động nhằm tránh bị phát hiện và đáp trả.
1.3.1.6. Dựa trên việc khai thác các lỗ hổng an ninh
Dựa trên việc khai thác các điểm yếu và lỗ hổng an ninh, tấn cơng DDoS có
thể được phân thành 3 dạng:
a) Tấn công gây cạn kiệt băng thông
Các tấn công DDoS dạng này được thiết kế để gây ngập lụt hệ thống mạng
của nạn nhân bằng các yêu cầu truy nhập giả mạo, làm người dùng hợp pháp không
thể truy nhập dịch vụ. Tấn công dạng này thường gây tắc nghẽn đường truyền bằng
lượng yêu cầu giả mạo rất lớn gửi bởi các máy tính ma (Zombies) của các Botnets.
Dạng tấn cơng này cũng cịn được gọi là tấn cơng gây ngập lụt hoặc tấn công
khuếch đại. Tấn công làm cạn kiệt băng thông hệ thống được chia làm hai loại:
- Tấn công làm tràn ngập (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 một trạng thái hoạt động bão hòa. Làm cho những
người dùng 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:

18


+ UDP Flood attack: do tính chất kết nối khơng cần bắt tay của UDP, hệ
thống nhận UDP message chỉ đơn giản nhận vào tất cả các packet mình cần phải xử
lý. Một lượng lớn các UDP packet đượ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 UDP packet này có thể được gửi đến
nhiều port tùy ý hay chỉ duy nhất một port. Thông thường là sẽ gửi đến nhiều port
làm cho hệ thống mục tiêu phải căng ra để xử lý phân hướng cho các packet này.

Nếu port 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 ICMP
packet loại “destination port unreachable”. Thông thường các Agent sẽ dùng địa chỉ
IP giả để che giấu hành tung, cho nên các packet trả về do khơng có port 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 packet 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 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ác
Agent có thể bị giả mạo.
Một Botnet là mạng của hệ thống bị xâm nhập có kết nối Internet mà có thể
được sử dụng để gửi thư rác, tham gia vào các cuộc tấn công DDoS, hoặc thực hiện
các nhiệm vụ bất hợp pháp khác. Bot là viết tắt của Robot, tức là các chương trình
tự động hóa. Các hệ thống bị xâm nhập thường được gọi là các Zombie. Các
Zombie có thể lây nhiễm cho các hệ thống khác để nó trở thành các Zombie theo
các cơ chế lây truyền mã độc ở trên. Ví dụ về một mạng Botnet điển hình được sử
dụng để tấn cơng DDoS:
Trong ví dụ này, kẻ tấn cơng kiểm sốt các Zombie để khởi động một cuộc tấn
công DDoS với cơ sở hạ tầng của nạn nhân. Những Zombie chạy một kênh bí mật
để giao tiếp với các máy chủ ra lệnh và kiểm sốt các điều khiển tấn cơng. Thơng
tin liên lạc này thường diễn ra tr n Internet Relay Chat (IRC), các k nh được mã
hóa, peer-to-peer và thậm chí là các mạng xã hội.

19


Hình 2: Mơ hình mạng Botnet
Với sự ra đời của dịch vụ điện toán đám mây và các nhà cung cấp, một xu
hướng mới đã xuất hiện. Những kẻ tấn cơng có thể th hoặc xâm nhập và điều
khiển trung tâm dữ liệu/ đám mây lớn để khởi động các cuộc tấn cơng DDoS.


Hình 3: Mơ hình tấn cơng thơng qua Data Center
Điện tốn đám mây khơng chỉ tạo cơ hội mới cho các tổ chức hợp pháp, nó
cũng cung cấp một nền tảng tuyệt vời cho tội phạm mạng bởi vì nó rẻ tiền và thuận
tiện cho phép họ sử dụng tài nguyên máy tính mạnh mẽ để làm điều xấu. Khái niệm
này được minh họa trong hình 3.

20


- Tấn công khuếch đại (Amplification attack): Điều khiển các Agent hay
Client gửi một request đến một địa chỉ IP broadcast của mạng, một máy chủ dịch vụ
với địa chỉ nguồn của gói tin là địa chỉ của nạn nhân làm cho tất cả các máy trong
mạng này hoặc các máy chủ dịch vụ đồng loạt gửi gói replies đến hệ thống dịch vụ
của nạn nhân. Phương pháp này làm gia tăng traffic vơ ích, làm cho hệ thống của
nạn nhân khơng có khả năng đáp ứng băng thơng dành cho các dịch vụ đối với
khách hàng của mình. Có thể chia tấn công khuếch đại thành hai loại là Smuft và
Fraggle attack:
+ 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 Attacker/Agent VICTIM Host Amplifier,
Amplifier Network System sẽ 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.

Hình 4: Mơ hình tấn cơng khuếch đại

21



+ 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 đến 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.
b) Tấn công gây cạn kiệt tài ngun
Trong kiểu tấn cơng này attacker có thể 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 có kích thức bất thường với mục đích
làm cho hệ thống phải sử dụng hết tài nguy n để xử lý những gói tin này và sẽ
không thể đáp ứng được yêu cầu dịch vụ của các khách hàng. Nguồn lực cần thiết
cho cuộc tấn công sẽ phụ thuộc vào bản chất của các nguồn tài nguyên bị tấn công,
lượng tài nguyên các mục tiêu có thể đáp ứng, và các tình huống giảm nhẹ khác như
khả năng của mục tiêu có thể phát hiện, chuyển hướng và ngăn chặn các cuộc tấn
công cạn kiệt tài nguyên.
c) Tấn công vào các giao thức (Protocol Exploit Attack)
- TCP SYN attack flooding: Đây là một dạng tấn công đơn giản và dễ hiểu
nhất của tấn công từ chối dịch vụ. Phương thức này dựa vào đặc điểm của giao thức
TCP là bắt tay ba bước vào sự thiếu cẩn trọng trong việc quản lý tài nguyên của hệ
điều hành để chiếm dụng tài nguyên và làm treo hệ thống.
TCP SYN Attack: Transfer Control Protocol (TCP) 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 sẽ gửi một SYN REQUEST packet
(Synchronize). Bên nhận nếu nhận được SYN REQUEST sẽ trả lời bằng SYN/ACK


22


REPLY packet. Bước cuối cùng, bên gửi sẽ truyền packet cuối cùng ACK và bắt
đầu truyền dữ liệu.

Hình 5: Quá trình bắt tay ba bƣớc
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 ACK packet cuối cùng sau một khoảng TCP Client, Client
Port 1024-65535 TCP Server Service Port 1-1023 SYS ACK SYN/ACK 80 thời
gian quy định thì nó sẽ resend 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 ACK
packet cuối cùng sẽ bị “phong tỏa” cho đến hết thời gian timeout. Nắm được điểm
yếu này, Attacker gửi một SYN packet đế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 ACK packet 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
SYN packet 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 ngun.
Đây là cách tấn cơng dựa vào đặc điểm cơ bản của mạng nên khơng có cách
để chặn đứng hồn tồn. Chúng ta có thế giới hạn nó xuống mức thiệt hại thấp nhất
như giới hạn số lượng gói SYN đến máy chủ/ giây. Hoặc có một số phương pháp
khác như: tăng backlog, kích hoạt SYN Cache, SYN cookies, đặt một firewall hoặc
poxy phía trước,...
Điểm mạnh: Dễ thực hiện, luôn nguy hiểm nếu biết cách tận dụng và cơng cụ
có sẵn rất nhiều.

23



×