BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
Trần Mạnh Thắng
PHÁT HIỆN VÀ PHÒNG CHỐNG MỘT SỐ DẠNG TẤN CÔNG
TỪ CHỐI DỊCH VỤ PHÂN TÁN
Ngành: Kỹ thuật phần mềm
Mã số: 9480103
LUẬN ÁN TIẾN SĨ KỸ THUẬT PHẦN MỀM
NGƯỜI HƯỚNG DẪN KHOA HỌC:
1. PGS.TS. Nguyễn Khanh Văn
2. PGS.TS. Nguyễn Linh Giang
Hà Nội - 2019
LỜI CAM ĐOAN
Tôi xin cam đoan tất cả các nội dung trong luận án “Phát hiện và phòng chống một số dạng tấn
công từ chối dịch vụ phân tán” là công trình nghiên cứu của riêng tôi dưới sự hướng dẫn của
tập thể hướng dẫn. Các số liệu, kết quả trong luận án là trung thực và chưa từng được tác giả
khác công bố trong bất kỳ công trình nào. Việc tham khảo các nguồn tài liệu đã được thực hiện
trích dẫn và ghi nguồn tài liệu tham khảo quy định.
Hà Nội, ngày 11 tháng 3 năm 2019
Tập thể hướng dẫn
PGS.TS Nguyễn Khanh Văn
MỤC LỤC .................................................................................................................................. ii
MỞ ĐẦU .................................................................................................................................... 1
1. Tính cấp thiết của đề tài ..................................................................................................... 1
2. Đối tượng nghiên cứu và phương pháp nghiên cứu........................................................... 2
3. Nội dung nghiên cứu .......................................................................................................... 3
4. Ý nghĩa khoa học và ý nghĩa thực tiễn của luận án ........................................................... 6
5. Điểm mới của luận án ........................................................................................................ 7
6. Cấu trúc của luận án ........................................................................................................... 7
CHƯƠNG 1. TỔNG QUAN VỀ TẤN CÔNG VÀ PHÒNG CHỐNG TẤN CÔNG DDOS .... 9
1.1. Tổng quan về tấn công từ chối dịch vụ phân tán DDoS ...................................................... 9
1.2. Các dạng tấn công DDoS phổ biến.................................................................................... 11
1.2.1. Tấn công DDoS ở lớp mạng ...................................................................................... 11
1.2.2. Tấn công DDoS vào lớp ứng dụng ............................................................................ 12
1.3. Các công cụ tấn công DDoS phổ biến ............................................................................... 13
1.3.1. IRC-based .................................................................................................................. 14
1.3.2. Web-based ................................................................................................................. 14
1.4. Những thách thức trong việc phát hiện và phòng chống tấn công DDoS ......................... 15
1.5. Tổng quan về các phương pháp phòng chống tấn công DDoS ......................................... 16
1.5.1. Nhóm phương pháp phòng chống tấn công lớp mạng ............................................... 18
1.5.1.1. Nhóm phương pháp áp dụng ở gần nguồn tấn công .......................................... 18
1.5.1.2. Nhóm phương pháp áp dụng ở phía đối tượng được bảo vệ .............................. 18
1.5.1.3. Nhóm phương pháp áp dụng ở hạ tầng mạng trung gian ................................... 19
1.5.1.4. Nhóm phương pháp kết hợp ............................................................................... 19
1.5.2. Nhóm phương pháp phòng chống tấn công lớp ứng dụng......................................... 19
1.5.2.1. Nhóm phương pháp áp dụng ở phía đối tượng được bảo vệ .............................. 20
1.5.2.2. Nhóm phương pháp kết hợp ............................................................................... 20
1.5.3. Nhóm các phương pháp theo giai đoạn phòng chống ................................................ 20
1.5.3.1. Giai đoạn phòng thủ ........................................................................................... 20
1.5.3.2. Giai đoạn phát hiện tấn công .............................................................................. 21
iii
2.5.4.2. Phân tích đánh giá về giải pháp PIDAD2 trên góc độ lý thuyết ........................ 55
2.5.4.3. Tăng tốc độ xử lý của giải pháp PIDAD2 với thuật toán Bloom Filter ............. 57
2.5.5. Phương pháp xác thực địa chỉ IP nguồn .................................................................... 58
2.6. Đánh giá thực nghiệm........................................................................................................ 60
iv
2.6.1. Xây dựng mô hình và dữ liệu đánh giá thực nghiệm ................................................. 60
2.6.2. Đánh giá thực nghiệm cho giải pháp PIDAD1 và PIDAD2 ...................................... 63
2.6.2.1. Giải pháp PIDAD1 ............................................................................................. 63
2.6.2.2. Giải pháp PIDAD2 ............................................................................................. 64
2.6.2.3. So sánh hiệu quả của giải pháp PIDAD1 và PIDAD2 ....................................... 64
2.6.3. So sánh hiệu quả của giải pháp PIDAD2 với các giải pháp khác .............................. 66
2.7. Kết luận chương 2 ............................................................................................................. 68
CHƯƠNG 3. PHÁT HIỆN VÀ PHÒNG CHỐNG TẤN CÔNG WEB APP-DDOS .............. 70
3.1. Giới thiệu bài toán ............................................................................................................. 70
3.2. Tổng quan về tấn công Web App-DDoS ........................................................................... 71
3.2.1. Ứng dụng Web ........................................................................................................... 71
3.2.1.1. Máy chủ Web ..................................................................................................... 71
3.2.1.2. Nguyên lý hoạt động .......................................................................................... 71
3.2.1.3. Giao thức HTTP ................................................................................................. 72
3.2.2. Đặc trưng và thách thức trong phòng chống tấn công Web App-DDoS ................... 73
3.1.2.1. Một số đặc trưng của tấn công Web App-DDoS ............................................... 73
3.2.2.2. Vấn đề khó khăn trong phòng, chống tấn công Web App-DDoS ...................... 73
3.3. Mô hình, phương pháp phòng chống tấn công Web App-DDoS ...................................... 74
3.3.1. Mô hình tổng thể và các thành phần cơ bản .............................................................. 74
3.3.2. Nguyên lý hoạt động cơ bản ...................................................................................... 75
3.4. Phát hiện tấn công Web App-DDoS .................................................................................. 77
3.4.1. Tiêu chí phát hiện tấn công dựa trên tần suất truy nhập ............................................ 78
3.4.2. Tiêu chí phát hiện tấn công dựa vào thời gian truy cập ngẫu nhiên .......................... 78
TÀI LIỆU THAM KHẢO ...................................................................................................... 106
vi
BẢN DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT
Các chữ viết tắt
STT
1
Chữ viết tắt
CSDL
Tiếng Anh
Tiếng Việt
Database
Cơ sở dữ liệu
2
AS
Autonomous System
Tập hợp các mạng có cùng chính sách
định tuyến và thường thuộc quyền quản
lý, khai thác của một chủ thể.
6
IP
Internet Protocol
Giao thức Internet
7
ISP
Internet service provider
Nhà cung cấp dịch vụ Internet
8
TCP
Transmission Control
Protocol
Giao thức điều khiển truyền vận
9
TTL
TL
Total length
Chiều dài gói tin
14
FDDA
Framework for Fast
Detecting Source Attack In
Web Application DDoS
Attack
Phương pháp phát hiện nhanh nguồn
gửi yêu cầu tấn công DDoS vào ứng
dụng Web.
15
TL
Internet Relay Chat
Giao thức gửi nhận tin nhắn
16
IoT
Hình 1.1 Thành phần cơ bản của mạng Botnet ....................................................................... 10
Hình 1.2 Phân loại phương pháp phòng chống tấn công DDoS .............................................. 17
Hình 2.1 TCP handshakes ....................................................................................................... 37
Hình 2.2 Thành phần TCP Syn Flood Defence ........................................................................ 39
Hình 2.3 Mô hình hệ thống phát hiện và xử lý tấn công DDoS Syn Flood.............................. 40
Hình 2.4 Cơ chế giả mạo IP của tin tặc .................................................................................... 42
Hình 2.5 Phương pháp xác định tần số xuất hiện gói tin TCP Reset ....................................... 42
Hình 2.6 IP Header .................................................................................................................. 44
Hình 2.7 Thuật toán DBSCAN ................................................................................................ 47
Hình 2.8 Thuật toán PIDAD1 trong Training phase ................................................................ 50
Hình 2.9 Thuật toán của prương pháp PIDAD1 ....................................................................... 51
Hình 2.10 Sơ đồ giải pháp PIDAD2 ......................................................................................... 53
Hình 2.11 Thuật toán giải pháp PIDAD2 ................................................................................. 54
Hình 2.12 Hình minh họa thuật toán Bloom filter.................................................................... 57
Hình 2.13 Mô hình xác thực địa chỉ IP nguồn.......................................................................... 59
Hình 2.14 Phương pháp xác thực địa chỉ IP nguồn sử dụng Bloom Filter ............................... 59
Hình 2.15 Mô hình hệ thống đánh giá thực nghiệm ................................................................. 61
Hình 2.16 Thành phần hệ thống thực nghiệm trên máy chủ vật lý 01 ..................................... 61
Hình 2.17 Thành phần hệ thống thực nghiệm trên máy chủ vật lý 02 ..................................... 62
Hình 2.18 Thành phần hệ thống thực nghiệm trên máy chủ vật lý 03 ..................................... 62
Hình 2.19 Tỷ lệ phát hiện đúng gói tin giả mạo của giải pháp PIDAD và PIDAD2 ............... 65
Hình 2.20 Thời gian xử lý của giải pháp PIDAD và PIDAD2 ................................................. 65
Hình 2.21 Tỷ lệ True Positive của các giải pháp PIDAD2 và C4.5 ......................................... 67
Hình 2.22 Tỷ lệ False Positive của các giải pháp PIDAD2 và C4.5 ........................................ 67
Hình 2.23 Thời gian xử lý của các giải pháp PIDAD2 và C4.5 ............................................... 68
Hình 3.1 Thành phần phòng chống tấn công Web App-DDoS ................................................ 75
Hình 3.2 Các chức năng trong thành phần Web App-DDoS Defence ..................................... 75
Hình 3.3 Mô hình phương pháp phát hiện tấn công Web App-DDoS ..................................... 77
Hình 3. 4 Ví dụ về thời điểm gửi yêu cầu tới máy chủ ............................................................ 79
Hình 3.5 Mô hình cơ bản của phương pháp FDDA ................................................................. 80
thông, đặc biệt là trong giai đoạn bùng nổ công nghệ 4.0, ngành công nghệ thông tin và
truyền thông đã mang lại nhiều lợi ích to lớn cho cơ quan, tổ chức trong các lĩnh vực chính
trị, kinh tế, xã hội. Tuy nhiên, bên cạnh những lợi ích to lớn ngành công nghệ thông tin và
truyền thông mang lại thì việc này cũng kéo theo các nguy cơ mất an toàn thông tin mà các
cơ quan, tổ chức phải đối mặt. Một trong những nguy cơ đó là các cuộc tấn công mạng, đặc
biệt là các cuộc tấn công DDoS. Ảnh hưởng của một cuộc tấn công DDoS quy mô lớn có
thể làm dừng hoạt động hạ tầng mạng của một quốc gia, gây gián đoạn công tác chỉ đạo điều
hành của Chính phủ, ngừng hoạt động của các hạ tầng trọng yếu (điện, nước, giao thông, tài
chính…) làm ảnh hưởng nghiêm trọng đến trật tự an toàn xã hội, lợi ích công cộng, quốc
phòng, an ninh.
Từ đó, chúng ta có thể thấy rằng việc đưa ra các phương pháp phòng chống tấn công DDoS
hiệu quả nhằm bảo đảm an toàn thông tin cho cơ quan, tổ chức trước các cuộc tấn công mạng
là vấn đề quan trọng và cấp bách.
Nguyên nhân dẫn tới những cuộc tấn công DDoS ngày càng trở nên nguy hiểm là việc số
lượng các thiết bị đầu cuối, IoT kết nối mạng ngày càng nhiều trong thời kỳ công nghệ 4.0.
Những điểm yếu an toàn ở các thiết bị này cho phép tin tặc có thể chiếm quyền điều khiển
và huy động nó trở thành thành viên của mạng máy tính ma (botnet). Bằng cách này, tin tặc
có thể xây dựng một mạng lưới botnet, tập hợp các máy tay sai, với kích thước lớn, từ đó
phát động tấn công DDoS hết sức nguy hiểm.
Trên thực tế đã có nhiều công trình nghiên cứu liên quan đến phát hiện và phòng chống dạng
tấn công DDoS, nhưng thực tế đều cho thấy dạng tấn công này vẫn hoạt động và gây ra hậu
quả. Do đó, việc tiếp tục nghiên cứu và đề xuất ra các phương pháp phòng chống tấn công
DDoS phù hợp và hiệu quả vẫn đang là vấn đề cần thiết và thách thức đối với các nhà nghiên
cứu hiện nay.
Trong quá trình công tác với thâm niên chuyên môn được tích lũy nhiều năm trong lĩnh vực
này, NCS đã từng phải đối mặt trực tiếp với nhiều cuộc tấn công DDoS xảy ra đối với hệ
thống thông tin của cơ quan, tổ chức. Qua quá trình thực tế đó, NCS đã thu thập được nhiều
kinh nghiệm về phân tích và xử lý các cuộc tấn công DDoS. Tuy nhiên, NCS tự nhận thấy
rằng, phương án xử lý các cuộc tấn công đã thực hiện tại thời điểm đó chỉ là giải pháp tạm
Internet của đối tượng cần bảo vệ với các ISP). Đối với dạng tấn công này, thì phương pháp
chặn lọc hiệu quả chỉ có thể thực hiện ở hệ thống của các ISP. Thêm nữa, để thực hiện hình
thức tấn công Volumetric hiệu quả, tin tặc cũng phải sử dụng nguồn tài nguyên rất lớn (cần
một mạng botnet đủ lớn) để thực hiện tấn công. Trường hợp, đối tượng bị tấn công DDoS là
máy chủ, thì tin tặc có thể sử dụng hình thức tấn công DDoS dạng làm cạn kiệt tài nguyên
trên máy chủ.
Trên thực tế, đối tượng tấn công là máy chủ xảy ra thường xuyên và phổ biến hơn, bởi vì
các máy chủ là lộ mặt trực tiếp ngoài Internet nên đối tượng tấn công dễ xác định hơn và tin
tặc cũng không cần tài nguyên quá lớn mà vẫn có thể làm đối bị tấn công rơi vào trạng thái
từ chối dịch vụ.
Khi đối tượng tấn công là máy chủ thì phương pháp phòng chống được triển khai phía gần
đích là phù hợp và hiệu quả hơn. Khi đó, nếu phương pháp chặn lọc hiệu quả, băng thông
kết nối Internet vẫn còn thì máy chủ vẫn có thể cung cấp dịch vụ mà không bị rơi vào trạng
thái từ chối dịch vụ.
2
Tin tặc thường sử dụng hai dạng tấn công TCP Syn Flood và Web App-DDoS để tấn công
các Server. Hai dạng tấn công này thường được thực hiện trên cơ sở khai thác điểm yếu của
giao thức hay nguyên lý hoạt động của giao thức mà máy chủ sử dụng.
Về phương pháp nghiên cứu, NCS kết hợp giữa lý thuyết, kinh nghiệm và những quan sát
thực tế để tìm ra các vấn đề cần phải giải quyết. Trên cơ sở đó, NCS đề xuất phương pháp
phù hợp để giải quyết các vấn đề đặt ra.
3. Nội dung nghiên cứu
NCS đã thực hiện một quá trình nghiên cứu liên quan đến phát hiện và phòng chống tấn công
DDoS kể từ trước và trong quá trình làm NCS tại trường Đại học Bách Khoa Hà Nội.
Trong quá trình công tác tại Cục An toàn thông tin - Bộ Thông tin và Truyền thông, NCS đã
trực tiếp hỗ trợ cơ quan trong tổ chức xử lý, giảm thiểu các cuộc tấn công DDoS quy mô
lớn. Trải qua nhiều kinh nghiệm thực tế, NCS thấy rằng hai dạng tấn công TCP Syn Flood
hướng đến máy chủ bị tấn công. Do đó, từ phía máy chủ bị tấn công, chúng ta chỉ thu được
các gói tin có giá trị PID tăng liên tục, ngắt quãng.
Bên cạnh đó, khi tấn công TCP Syn Flood xảy ra thì ở phía máy chủ sẽ nhận được số lượng
rất lớn các gói tin SYN. Do đó, việc xử lý các gói tin SYN này như thế nào thật nhanh, để
máy chủ giảm thiểu thời gian rơi vào trạng thái từ chối dịch vụ, cũng là một vấn đề lớn khác
đặt ra đối với các phương pháp mà chúng tôi đề xuất.
Để giải quyết hai vấn đề đặt ra đối với bài toán thứ nhất, NCS đề xuất 02 giải pháp [39, 35]
trên cơ sở giả thuyết là trường thông tin PID của các gói tin không bị giả mạo. Giải pháp thứ
nhất [39], NCS sử dụng thuật toán DBSCAN để nhóm các gói tin SYN có giá trị PID tăng
liên tiếp vào từng nhóm. Trong mỗi nhóm đó, chúng tôi xác định một giá trị PID của gói tin
giả mạo tiếp theo sẽ gửi đến hệ thống.
Điểm hạn chế của giải pháp sử dụng thuật toán DBSCAN là phải cần một khoảng thời gian
ban đầu nhất định cho việc thu thập các gói tin SYN đầu tiên, làm thông tin đầu vào cho
thuật toán DBSCAN để xác định dấu hiệu của các gói tin giả mạo tiếp theo gửi đến. Trong
thời gian này, máy chủ bị tấn công vẫn phải hứng chịu các gói tin tấn công gửi đến. Thêm
nữa, phương pháp này cũng yêu cầu phải cập nhật liên tục trạng thái các nhóm của thuật toán
DBSCAN khi có gói tin hay nhóm mới được tạo ra. Điều này làm ảnh hưởng lớn đến tốc độ
xử lý chung của cả phương pháp.
Để giải quyết các hạn chế của phương pháp thứ nhất, NCS đề xuất giải pháp thứ hai [35] cho
phép phát hiện và loại bỏ ngay các gói tin SYN tấn công đầu tiên gửi đến mà không cần
khoảng thời gian xử lý lúc đầu như phương pháp thứ nhất. Giải pháp này lưu trữ các giá trị
PID trong các bảng dữ liệu có cấu trúc kết hợp với một phương pháp tìm kiếm nhanh các
giá trị PID tăng liên tiếp thay vì sử dụng thuật toán DBSCAN.
Trong nghiên cứu [35], tuy giải pháp đề xuất cho phép phát hiện và loại bỏ nhanh các gói
tin giả mạo gửi đến nhưng việc lưu trữ và truy vấn các thông tin về địa chỉ IP và giá trị PID
mới được lưu trữ trong các bảng dữ liệu với phương pháp tìm kiếm đơn giản. Việc này dẫn
tới giảm tốc độ xử lý chung của phương pháp đề xuất khi số lượng các gói tin gửi đến hệ
thống là rất lớn. Để tiếp tục tăng tốc độ xử lý của giải pháp PIDAD2, NCS đề xuất giải pháp
lưu trữ và tìm kiếm nhanh thông tin PID, IP nguồn sử dụng thuật toán Bloom Filter [2]. Sau
khi bảo vệ cơ sở, nghiên cứu này [86] đã được chấp nhận trình bày tại Hội nghị ACDT 2018.
ra các nguồn gửi yêu cầu tấn công mà không phải trải qua quá trình máy học/huấn luyện như
các phương pháp khác.
Trong nghiên cứu [57], NCS sử dụng 02 tiêu chí (tiêu chí về tần suất truy cập và tiêu chí về
tương quan giữa các yêu cầu gửi đến máy chủ) để xác định các nguồn gửi yêu cầu tấn công.
Tuy nhiên, trong nghiên cứu này, các tiêu chí NCS đưa ra và thực hiện ở mức độ rất cơ bản
để đánh giá mô hình và phương pháp đề xuất.
Trong quá trình hoàn thiện luận án và sau khi luận án được Hội đồng đánh giá cấp cơ sở
thông qua, NCS tiếp tục đi sâu nghiên cứu, đề xuất giải pháp cụ thể hơn cho 02 tiêu chí
chúng tôi đã sử dụng trong nghiên cứu [57]. Cụ thể:
Đối với tiêu chí về tần suất truy nhập, NCS đề xuất giải pháp cho phép tìm ra tần suất truy
cập từ các IP nguồn gửi yêu cầu theo thời gian thực. Giải pháp đề xuất cần rất ít tài nguyên
để lưu trữ và xử lý. Tần suất xác định được sẽ là dữ liệu đầu vào cho thuật toán của tiêu chí
về tần suất. Bên cạnh đó, trong nghiên cứu này NCS cũng đề xuất một giải pháp mới để xác
định các nguồn gửi yêu cầu tấn công thay cho phương pháp sử dụng DBSCAN trong nghiên
cứu [57]. Kết quả nghiên cứu được đã được chấp nhận [23] trình bày tại Hội nghị IEEE
RIVF 2019.
Đối với tiêu chí về mối quan hệ tương quan giữa các yêu cầu gửi đến máy chủ từ một nguồn,
NCS đưa ra giải pháp để thiết lập tập các yêu cầu tương quan trong quá trình huấn luyện
(training). Tập các yêu cầu tương quan được thiết lập dựa trên các điều kiện để bảo đảm rằng
tập các yêu cầu này là sạch và tin tặc rất khó để có thể đưa các yêu cầu sai lệch vào tập dữ
5
liệu này trong quá trình huấn luyện. Kết quả nghiên cứu được chúng tôi gửi đăng tại Tạp chí
Khoa học và Công nghệ.
Đánh giá thực nghiệm các phương pháp đề xuất cũng là một vấn đề lớn đặt ra đối với tôi.
Qua việc nghiên cứu các công trình liên quan, NCS thấy rằng các công trình này không sử
dụng chung tập dữ liệu kiểm thử để đánh giá thực nghiệm. Phần lớn các tác giả đều tự xây
dựng mô hình và dữ liệu kiểm thử riêng để phục vụ việc đánh giá hiệu quả phương pháp họ
6
Trong quá trình thực hiện các nhiệm vụ của các đề tài nghiên cứu khoa học, chúng tôi đã
xây dựng được một hệ thống phòng chống tấn công DDoS thực sự và đang được triển khai
thử nghiệm tại trường Đại học Bách Khoa Hà Nội.
Bên cạnh đó, chúng tôi cũng đã xây dựng được một mạng botnet trên môi trưởng ảo hóa cho
phép thực hiện nhiều hình thức tấn công DDoS khác nhau để tạo ra các dữ liệu kiểm thử cho
các nghiên cứu khác nhau. Dữ liệu kiểm thử này, chúng tôi đã tải lên trang mạng trực tuyến
và địa chỉ tải dữ liệu kiểm thử trong phần phụ lục của luận án.
5. Điểm mới của luận án
Những điểm mới của luận án được thể hiện thông qua những đóng góp chính như sau:
▪
▪
▪
▪
Đề xuất phương pháp mới trong việc phát hiện và loại bỏ các gói tin giả mạo trong
tấn công TCP SYN Flood (tấn công tràn ngập gói tin TCP SYN).
Đề xuất mô hình khung phòng chống tấn công DDoS-Web, có tính mở, cho phép kết
hợp nhiều tiêu chí phát hiện để làm tăng hiệu quả, mức độ chính xác trong việc phát
hiện và phòng chống tấn công.
Xây dựng 02 tiêu chí phát hiện nhanh cho phép loại bỏ tức thời các nguồn gửi yêu
cầu khả nghi tấn công và xác minh các nguồn gửi yêu cầu bình thường trong tấn công
DDoS-Web. Các thuật toán đề xuất trên cơ sở sử dụng các tiêu chí này cho phép sử
dụng tức thời vào chống tấn công (không cần thời gian chuẩn bị, huấn luyện dữ liệu),
xử lý lọc bỏ nhanh và cần ít tài nguyên lưu trữ.
Tổng quan về dạng tấn công TCP Syn Flood và các phương pháp phòng chống;
Mô hình phương pháp phát hiện và phòng chống tấn công TCP Syn Flood;
7
▪
▪
▪
Phát hiện tấn công TCP Syn Flood;
Phòng chống tấn công TCP Syn Flood thông qua cơ chế phát hiện và loại bỏ các gói
tin giả mạo sử dụng trong tấn công DDoS TCP Syn Flood;
Đánh giá thực nghiệm.
Trong chương 3, luận án trình bày về phương pháp đề xuất để giải quyết bài toán thứ hai đặt
ra về phát hiện và phòng chống tấn công Web App-DDoS. Trong đó nội dung trình bày bao
gồm các nội dung chính như sau:
▪
▪
▪
▪
▪
Tổng quan về tấn công Web App-DDoS và phương pháp phòng chống.
Mô hình, phương pháp phòng chống tấn công Web App-DDoS.
Phát hiện tấn công Web App-DDoS.
Phòng chống tấn công Web App-DDoS sử dụng phương pháp FDDA.
Đánh giá thực nghiệm.
Nghiên cứu về tiêu chí đánh giá hiệu quả các phương pháp đề xuất;
Nghiên cứu khảo sát đánh giá thực nghiệm phương pháp phòng chống tấn công
DDoS.
1.1. Tổng quan về tấn công từ chối dịch vụ phân tán DDoS
Tấn công từ chối dịch vụ là dạng tấn công mạng với mục đích làm mất tính khả dụng của
một hệ thống thông tin. Tấn công từ chối dịch vụ khi được thực hiện từ nhiều IP nguồn khác
nhau thì được gọi là hình thức tấn công từ chối dịch vụ phân tán – DDoS. Về cơ bản, tấn
công DDoS có thể được chia ra thành hai lớp phổ biến:
Lớp thứ nhất, tin tặc thực hiện tấn công bằng cách gửi các gói tin độc hại (gói tin với các
trường thông tin không bình thường) đến đích tấn công thông qua việc khai thác các điểm
yếu an toàn thông tin [39] để làm máy chủ phát sinh các lỗi làm treo, tê liệt hoạt động và rơi
vào trạng thái từ chối dịch vụ.
Lớp thứ hai là lớp các dạng tấn công DDoS phổ biến, trong đó tin tặc làm gián đoạn các kết
nối hợp lệ tới máy chủ bằng cách (1) làm cạn kiệt hạ tầng mạng (network/transport-level
flooding attacks) như: băng thông kết nối, tài nguyên xử lý của thiết bị mạng… (2) hoặc cạn
kiệt tài nguyên xử lý của máy chủ thông qua các ứng dụng/dịch vụ mà máy chủ cung cấp
(application-level flooding attacks) như: bộ nhớ chính, khả năng xử lý của CPU, băng thông
kết nối hay các cổng vào ra…).
Thông thường, các cuộc tấn công DDoS được tin tặc thực hiện qua môi trường mạng sử
dụng các mạng máy tính ma (botnet) [35]. Thông qua mạng botnet, tin tặc gửi tràn ngập liên
tục các gói tin hoặc các yêu cầu tới đích tấn công, làm cho hệ thống đó bị lỗi hoặc cạn kiệt
tài nguyên và rơi vào trạng thái từ chối dịch vụ.
9
Mạng botnet là mạng của các máy tính bị nhiễm mã độc và được điều khiển bởi những máy
chủ điều khiển (C&C Server). Để có mạng botnet, tin tặc tạo ra các phần mềm độc hại và
phát tán chúng qua môi trường mạng bằng các hình thức khác nhau như gửi thư điện tử giả
1.2. Các dạng tấn công DDoS phổ biến
Trong phần này, luận án trình bày cụ thể hơn về các dạng tấn công DDoS liên quan trực tiếp
đến hướng nghiên cứu của luận án là lớp các dạng tấn công DDoS làm cạn kiệt tài nguyên
của hệ thống bị tấn công ở lớp mạng và lớp ứng dụng. Nội dung trình bày trong phần này,
luận án sử dụng các thuật ngữ tiếng anh, những thuật ngữ này đã được sử dụng phổ biến, sử
dụng từ ngữ ngắn gọn nhưng thể hiện được bản chất của nội dung cần mô tả.
Hai lớp của các dạng tấn công DDoS phổ biến liên quan trực tiếp đến nghiên cứu của Luận
án, bao gồm các nội dung sau:
1.2.1. Tấn công DDoS ở lớp mạng
Các dạng tấn công DDoS xảy ra ở lớp mạng thường sử dụng các gói tin của các giao thức
ICMP, TCP, UDP hoặc DNS để làm cạn kiệt tài nguyên xử lý hoặc băng thông của hạ tầng
mạng. Các dạng tấn công này được chia làm 04 loại phổ biến:
a) Flooding attacks: Dạng tấn công làm cạn kiệt băng thông của đối tượng cần bảo vệ thông
qua cơ chế gửi tràn ngập các gói tin có kích thước lớn như: UDP flood, ICMP flood, TCP
flood… [57].
b) Protocol exploitation flooding attacks: Dạng tấn công làm cạn kiệt tài nguyên xử lý của
hệ thống thông qua việc khai thác các điểm yếu an toàn thông tin của các giao thức mạng
mà hệ thống đó sử dụng như: TCP SYN flood, TCP SYN-ACK flood, ACK & PUSH ACK
flood, RST/FIN flood… [86].
c) Reflection-based flooding attacks: Dạng tấn công tin tặc thực hiện bằng cách gửi yêu cầu
giả mạo đến một hệ thống trung gian, trong khi giả mạo địa chỉ IP nguồn gửi là địa chỉ của
đích bị tấn công. Hệ thống trung gian sẽ gửi yêu cầu phản hồi về hệ thống bị tấn công, thay
vì gửi về máy tính của tin tặc. Hình thức tấn công này cũng lợi dụng điểm yếu an toàn thông
tin của các giao thức sử dụng hoặc do lỗi thiết lập cấu hình bảo mật của các hệ thống trung
gian, để từ đó cho phép tin tặc gửi một yêu cầu giả mạo có kích thước nhỏ đến hệ thống
trung gian. Sau đó, hệ thống trung gian sẽ gửi phản hồi yêu cầu có kích thước và số lượng
lớn về hệ thống bị tấn công như Smurf and Fraggle… [86].
d) Amplification-based flooding attacks: Dạng tấn công này được thực hiện tương tự các
thực hiện dạng tấn công Reflection-based. Tuy nhiên, với dạng tấn công này, tin tặc sử dụng
- Multiple HTTP GET/POST flood: Hình thức tấn công này, tin tặc gửi số lượng lớn các lệnh
thực thi (HTTP VERB) trong một yêu cầu được đóng gói trong một gói tin tới máy chủ trong
một phiên kết nối. Với hình thức này, tin tặc có thể duy trì khối lượng yêu cầu cần xử lý lớn
trên máy chủ với tốc độ gửi gói tin thấp. Do đó, hình thức tấn công này có thể vượt qua các
công nghệ phát hiện tấn công dựa vào phát hiện dị thường (Anomaly Detection) và các công
nghệ phát hiện xâm nhập dựa trên phân tích gói tin.
- Faulty Application: Hình thức tấn công này, tin tặc lợi dụng việc thiết kế hoặc thiết lập lỗi
cấu hình bảo mật giữa ứng dụng Web và cơ sở dữ liệu. Từ đó, tin tặc có thể gửi số lượng lớn
các yêu cầu như SQL-like injections để yêu cầu máy chủ liên tục thực hiện câu truy vấn dữ
liệu để tiêu tốn tài nguyên của Server.
d) Slow request/response attacks: Tương tự dạng tấn công Asymmetric attacks, tin tặc gửi
phiên kết nối trong đó có các yêu cầu làm máy chủ tiêu tốn nhiều tài nguyên để xử lý. Tuy
nhiên về hình thức thực hiện lại khác nhau và có 04 hình thức như sau:
- Slowloris attack [88]: Hình thức tấn công này, tin tặc gửi yêu cầu dạng GET nhưng không
hoàn thiện tới Server. Việc này làm máy chủ phải đợi phần còn lại của yêu cầu để xử lý mà
không thể hủy bỏ yêu cầu. Số lượng các yêu cầu không hợp lệ này liên tục gửi đến máy chủ
12
và máy chủ phải dành tài nguyên để xử lý mỗi yêu cầu không hoàn thiện dẫn tới cạn kiệt tài
nguyên.
- HTTP fragmentation attack: Tương tự hình thức tấn công Slowloris, mục đích của hình
thức tấn công này là giữ số lượng lớn các kết nối với máy chủ để làm cạn kiệt tài nguyên
Server. Nhưng hình thức thực hiện thì khác nhau. Hình thức này, một yêu cầu gửi tới máy
chủ được tin tặc phân chia ra thành các gói tin nhỏ, phân mảnh. Các gói tin phân mảnh được
gửi rất chậm tới máy chủ trong khoảng thời gian timeout cho phép của Server. Việc này dẫn
tới máy chủ phải đợi, gom đủ các gói tin phân mảnh để xử lý. Khi số lượng các yêu cầu bị
phân mảnh gửi đến máy chủ lớn, máy chủ phải dành tài nguyên cho mỗi yêu cầu dẫn đến
cạn kiệt tài nguyên.
- Slow post attack (R-U-Dead-Yet RUDY) [72]: Hình thức tấn công này tương tự hình thức
khiển. Tuy nhiên, với cách thức này thì các máy chủ C&C dễ bị phát hiện bởi các
13
▪
phần mềm diệt vi rút. Do đó, tin tặc có thể sử dụng một kênh giao tiếp khác với các
máy chủ C&C như các phần mềm ứng dụng IRC - Internet Relay Chat.
Bot là các thiết bị đầu cuối bị lây nhiễm phần mềm độc hại do tin tặc phát tán trong
quá trình xây dựng, hình thành mạng botnet. Các thiết bị này khi bị lây nhiễm phần
mềm độc hại sẽ trở thành thành viên của mạng botnet, tự động kết nối về các máy
Handlers và chịu sự điều khiển trực tiếp của những máy này khi chúng nhận được
lệnh từ máy Master.
Căn cứ vào cách thức khác nhau để các máy Master điều khiển các Bot, mạng botnet được
chia làm 03 dạng như sau [70, 85]:
1.3.1. IRC-based
IRC [9] là một giao thức cho phép người sử dụng gửi tin nhắn cho nhau qua mạng Internet.
Dịch vụ này hoạt động trên cấu trúc Client/Server có các kênh giao tiếp giữa các máy chủ
với nhau. Một mạng IRC có thể kết nối hàng triệu Client với nhau thông qua các máy chủ
sử dụng giao thức IRC. Khi đó, máy Master và Bot đóng vai trò là các Client trong mạng
IRC và máy Handlers đóng vai trò là các máy chủ trong mạng IRC. Tin tặc cũng có thể kiểm
soát được trạng thái, số lượng của các Bot trong mạng Botnet.
Thông qua mạng IRC, tin tặc có thể gửi lệnh điều khiển, các tệp tin độc hại, các mã thực thi
đến các Bot. Việc sử dụng giao thức và cấu trúc mạng IRC để giao tiếp trong mạng botnet
cho phép vượt qua sự giám sát của các thiết bị bảo mật.
Nhược điểm của việc sử dụng IRC trong tấn công DDoS là toàn bộ hoạt động của mạng tập
trung ở các máy chủ IRC. Do đó, khi các máy chủ có sự cố hay bị cô lập thì hoạt động của
mạng bonet sẽ bị gián đoạn hoặc ngừng hoạt động.