ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
PHẠM XUÂN BÁCH
CHỐNG TẤN CÔNG TỪ CHỐI DỊCH VỤ TỐC ĐỘ
THẤP TRÊN WEB
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
HÀ NỘI - 2014
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
PHẠM XUÂN BÁCH
CHỐNG TẤN CÔNG TỪ CHỐI DỊCH VỤ TỐC ĐỘ
THẤP TRÊN WEB
Ngành: Công nghệ thông tin
Chuyên ngành: Truyền dữ liệu và mạng máy tính
Mã số:
LUẬN VĂN THẠC SĨ CƠNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: TIẾN SĨ NGUYỄN ĐẠI THỌ
HÀ NỘI - 2014
i
LỜI CAM ĐOAN
Tơi xin cam đoan đây là cơng trình nghiên cứu của bản thân.
Các số liệu, kết quả trong luận văn là do tôi thực hiện, không hề sao chép kết quả
của bất cứ ai khác.
Tác giả
Phạm Xuân Bách
ii
MỤC LỤC
TRANG PHỤ BÌA .......................................................................................................2
LỜI CAM ĐOAN .............................................................................................................i
MỤC LỤC ...................................................................................................................... ii
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT ....................................................iv
DANH MỤC CÁC BẢNG .............................................................................................vi
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ ...................................................................... vii
MỞ ĐẦU .........................................................................................................................1
CHƯƠNG 1: TẤN CÔNG TỪ CHỐI DỊCH VỤ VÀ CÁC PHƯƠNG PHÁP
PHÒNG CHỐNG ............................................................................................................3
1.1
Các phương pháp tấn cơng từ chối dịch vụ. ......................................................3
1.1.1
Tấn cơng gửi tràn gói tin UDP ....................................................................3
1.1.2
Tấn cơng gửi tràn gói tin TCP SYN............................................................3
1.1.3
Tấn công từ chối dịch vụ phản xạ nhiều vùng - DRDOS ...........................4
1.1.4
Tấn công qua mạng ngang hàng..................................................................5
1.1.5
Tấn công Slowloris .....................................................................................6
1.1.6
Tấn công suy giảm dịch vụ .........................................................................6
1.1.7
Tấn công từ chối dịch vụ phân tán không chủ ý .........................................7
1.1.8
Tấn công từ chối dịch vụ vào lớp ứng dụng ...............................................7
1.1.9
Phương pháp tấn công Multi-Vector ...........................................................8
1.1.10 Phương pháp tấn công từ chối dịch vụ tốc độ thấp - LDOS .......................8
1.2
Các phương pháp phòng chống tấn công từ chối dịch vụ. ...............................10
1.2.1
Các biện pháp phân tích và làm giảm lưu lượng tấn cơng đến router ......10
1.2.2
Các biện pháp dựa trên năng lực hệ thống ................................................11
1.2.3
Các biện pháp sử dụng câu đố - puzzle để phân biệt lưu lượng tấn công .12
1.2.4
Các biện pháp sử dụng thống kê để phân biệt lưu lượng tấn công ...........13
1.2.5
Các biện pháp phát hiện tấn công giả mạo IP ...........................................13
1.2.6
Các biện pháp sử dụng lớp mạng bao phủ bảo vệ mục tiêu đích ..............14
1.2.7
Một số biện pháp chống tấn cơng từ chối dịch vụ tốc độ thấp - LDOS....15
CHƯƠNG 2:
TRÊN WEB
2.1.
PHƯƠNG PHÁP WDA CHỐNG TẤN CƠNG TỪ CHỐI DỊCH VỤ
............................................................................................................18
Mơ hình hóa lưu lượng truy cập Web. .............................................................19
iii
2.1.1.
Mơ hình cơ bản .........................................................................................19
2.1.2.
Mơ hình định lượng ...................................................................................20
2.2.
Thiết kế của WDA ...........................................................................................22
2.2.1.
Tổng quan ..................................................................................................22
2.2.2.
Bộ lọc policer ............................................................................................23
2.3.
2.2.2.1.
Phân tích giai đoạn OFF .....................................................................23
2.2.2.2.
Phân tích giai đoạn ON ......................................................................24
2.2.2.3.
Các giới hạn băng thơng động: tính hàm hành vi BF .........................25
2.2.2.4.
nhiên
Chống lại kẻ tấn công cơ chế ON-OFF với các session bẫy ngẫu
............................................................................................................26
2.2.2.5.
Trạng thái tối thiểu .............................................................................27
2.2.2.6.
Phân biệt giai đoạn ON và OFF .........................................................28
2.2.2.7.
Chống giả mạo địa chỉ IP ...................................................................29
Các tham số sử dụng cho WDA .......................................................................30
2.3.1.
Mô phỏng với lưu lượng hợp lệ ................................................................30
2.3.2.
Định lượng các chiến lược tấn công..........................................................30
2.3.3.
Mô phỏng với lưu lượng tấn công.............................................................31
2.3.4.
Tham số policer và kết quả .......................................................................32
2.4.
Hiệu quả của WDA ..........................................................................................33
2.4.1.
Overhead bộ nhớ .......................................................................................33
2.4.2.
Overhead của CPU ....................................................................................33
CHƯƠNG 3:
ĐỀ XUẤT CẢI TIẾN.........................................................................35
3.1.
Phân tích ...........................................................................................................35
3.2.
Đề xuất phương pháp 1: WDA Advance .........................................................38
3.3.
Đề xuất phương pháp 2: RWDA......................................................................40
CHƯƠNG 4:
KẾT QUẢ MÔ PHỎNG ....................................................................43
4.1.
Kịch bản ...........................................................................................................43
4.2.
Kết quả .............................................................................................................45
4.2.1.
Phương pháp 1: WDA Advance ................................................................45
4.2.2.
Phương pháp 2: RWDA ............................................................................47
KẾT LUẬN ...................................................................................................................50
TÀI LIỆU THAM KHẢO .............................................................................................51
iv
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT
DOS: Denial-of-service, tấn công từ chối dịch vụ
DDOS: Distributed Denial-of-service, tấn công từ chối dịch vụ phân tán
LDOS: Low-rate Denial-of-service, tấn công từ chối dịch vụ tốc độ thấp
Bot-net: Mạng lưới các máy bị chiếm quyền điều khiển sử dụng làm công cụ tấn công
DDOS
Zombie: Thuật ngữ chỉ các máy bị chiếm quyền điều khiển sử dụng làm công cụ tấn
công DDOS
WDA: Web farm DDoS Attack attenuator, kiến trúc nhằm mục đích làm suy giảm lưu
lượng của các cuộc tấn công từ chối dịch vụ phân tán trên web
Web farm: Cụm các web server
Client: Máy khách của người dùng.
Server: Máy chủ phục vụ web.
ISP: Internet Service Provider , nhà cung cấp dịch vụ mạng internet
Upload: Tải lên.
RTT: Round Trip Time, là khoảng thời gian một tín hiệu hoặc một gói tin chạy từ
Source đến Destination và quay ngược lại.
RTO: Retransmission Timeout, khoảng thời gian truyền lại gói tin nếu khơng nhận
được phản hồi
TCP: Transmission Control Protocol - Giao thức điều khiển truyền tin.
UDP: User Datagram Protocol
ICMP: Internet control message protocol
TCP SYN: Gói TCP SYN (đồng bộ hóa)
ACK: Acknowledgement
TTL: Time to live
HTTP: Hypertext Transfer Protocol: giao thức truyền tải siêu văn bản
HTML: Hypertext Markup Language - Ngôn ngữ đánh dấu siêu văn bản
IP: Internet Protocol - giao thức Internet
Request: Yêu cầu.
Response: Đáp ứng.
v
AIMD: Additive-increase multiplicative- decrease: Tăng theo cấp số cộng, giảm theo
cấp số nhân, một cơ chế truyền gói tin trong điều khiển chống tắc nghẽn TCP.
Session: Phiên làm việc.
False-Positive: Trường hợp một đánh giá cho rằng kết quả là đúng, trong khi thực tế
kết quả là sai.
ASM: Anti-Spoofing Mechanism – Cơ chế chống giả mạo
Overhead: Chi phí tài nguyên phát sinh thêm
Firewall: Tường lửa
QoS: Quality of service – Chất lượng dịch vụ
AOP: Average Off Period - thời gian trung bình của giai đoạn OFF
STH: Session threshold - Ngưỡng của phiên hiện tại
CPU: Central processing unit – Bộ xử lý trung tâm
NAT: Network address translation – Kĩ thuật dịch địa chỉ IP riêng – private sang địa
chỉ IP công khai – public nhằm sử dụng chung địa chỉ IP công khai cho một mạng
riêng
vi
DANH MỤC CÁC BẢNG
Bảng 2.1 Thống kê lưu lượng truy cập web của Choi-Limb ........................................21
Bảng 2.2 Các tham số áp dụng cho WDA ....................................................................32
vii
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1 Kiến trúc RRED ............................................................................................16
Hình 2.1 Cấu trúc cơ bản của Web farm ......................................................................19
Hình 2.2 Sơ đồ khối WDAQ ........................................................................................22
Hình 3.1. Kiến trúc WDA Advance .............................................................................39
Hình 3.2 Kiến trúc RWDA ..........................................................................................41
Hình 4.1 Topo mạng và một số tham số trong mơ phỏng ............................................44
Hình 4.2 WDA Advance - Mô phỏng tấn công tốc độ thấp với chu kì tấn cơng thay đổi
.......................................................................................................................................46
Hình 4.3 WDA Advance - Mô phỏng tấn công tốc độ thấp với khoảng thời gian burst
thay đổi .........................................................................................................................46
Hình 4.4 WDA Advance - Mô phỏng tấn công tốc độ thấp với độ lớn burst thay đổi 47
Hình 4.5 RWDA - Mơ phỏng tấn cơng tốc độ thấp với chu kì tấn cơng thay đổi ........48
Hình 4.6 RWDA - Mơ phỏng tấn cơng tốc độ thấp với khoảng thời gian burst thay đổi
.......................................................................................................................................49
Hình 4.7 RWDA - Mô phỏng tấn công tốc độ thấp với độ lớn burst thay đổi .............49
1
MỞ ĐẦU
Tấn công từ chối dịch vụ phân tán (DDos, Distributed Denial of Services) từ
nhiều năm nay đã trở thành một mối nguy hại lớn đối với người dùng internet. Cách
thức tấn công thông thường là sử dụng một mạng lưới “bot-net” gồm số lượng lớn các
máy tính bị chiếm quyền điều khiển nhằm tập trung tấn công, gây tắc nghẽn băng
thông máy chủ, qua việc đồng loạt gửi yêu cầu tới server nạn nhân. Kết quả là các ứng
dụng, server bị tê liệt, suy giảm hoặc mất khả năng phục vụ người dùng hợp lệ. Theo
báo cáo của công ty mạng Arbor Networks [1], trong nửa cuối năm 2005 trung bình có
tới 1400 cuộc tấn cơng từ chối dịch vụ diễn ra mỗi ngày, tang hơn 50% so với nửa đầu
năm đó. Mức độ ảnh hưởng nghiêm trọng của các cuộc tấn công từ chối dịch vụ phân
tán tới chất lượng và độ tin cậy của mạng internet đã dẫn đến các nghiên cứu sâu rộng
nhằm hướng tới phòng chống tấn công từ chối dịch vụ phân tán trên web, giúp bảo vệ
người dùng cũng như các tổ chức, doanh nghiệp. Có nhiều phương pháp đã được đề
xuất, từ việc lọc gói tin để phân loại, giới hạn lưu lượng gửi tới, tìm cách đẩy lùi lưu
lượng tấn cơng ngược trở lại địa chỉ nguồn, tìm cách phát hiện và ngăn chặn tấn công
từ mạng nguồn, sử dụng các kiểm tra phân biệt người dùng thật và máy tấn công tự
động, nhận diện thay đổi lưu lượng mạng lúc bình thường và khi có tấn cơng từ chối
dịch vụ, lọc gói tin để chống giả mạo địa chỉ IP… Luận văn của tôi giới thiệu WDA Web farm DDoS Attack attenuator, một kiến trúc với mục đích làm suy giảm lưu
lượng của các cuộc tấn công từ chối dịch vụ phân tán trên web, đảm bảo phục vụ tốt
người dùng trong trường hợp bị tấn công. Và tôi cũng đã nghiên cứu sâu để cải tiến
WDA nhằm chống lại một phương pháp tấn công từ chối dịch vụ đặc biệt- tấn công từ
chối dịch vụ tốc độ thấp [2,3].
Phần tiếp theo của luận văn được tổ chức như sau:
Chương 1: Tấn công từ chối dịch vụ và các phương pháp phòng chống nêu lên
một cách tổng quan các cách thức tấn công từ chối dịch vụ đang được sử dụng hiện
nay, cũng như các phương pháp đã và đang được nghiên cứu nhằm giảm thiểu tác
động của các cuộc tấn công từ chối dịch vụ lên các nạn nhân. Có nhiều phương pháp
trong số này hiện vẫn đang được nghiên cứu với tiềm năng lớn khi được cải tiến phù
hợp có thể tạo ra các lớp bảo vệ vững chắc cho các server trước các cuộc tấn công
ngày càng mạnh mẽ và tinh vi từ các cá nhân cũng như tổ chức thực hiện tấn công từ
chối dịch vụ. Chương cũng giới thiệu một cách thức tấn công từ chối dịch vụ mới – tấn
công từ chối dịch vụ tốc độ thấp, cũng như một số phương pháp đã được đề xuất nhằm
chống lại kiểu tấn công này, trong đó có phương pháp RRED được đánh giá là có hiệu
quả khá cao.
2
Chương 2: Phương pháp WDA chống tấn công từ chối dịch vụ trên web giới
thiệu về kiến trúc WDA cũng như cách khái niệm, cách thức xây dựng và cơ chế bảo
vệ Web farm khỏi tấn công từ chối dịch vụ của WDA.
Chương 3: Đề xuất cải tiến. Qua việc đánh giá về các ưu điểm, nhược điểm của
WDA để đưa ra hướng nghiên cứu và phát triển có thể áp dụng nhằm cải thiện các
nhược điểm của WDA cũng như phát huy tốt hiệu quả phịng chống tấn cơng từ chối
của WDA vào các Web farm; từ đó đưa ra các phương pháp, đề xuất để nâng cấp
WDA nhằm giúp WDA chống lại một kiểu tấn công mới phức tạp và tinh vi, tấn công
từ chối dịch vụ tốc độ thấp tấn công vào Web farm trong giai đoạn ON – giai đoạn
tương tác dữ liệu giữa người dùng với Web farm.
Chương 4: Kết quả mô phỏng, nêu lên mơ hình mơ phỏng cũng như kết quả đạt
được nhằm phân tích hiệu quả của các đề xuất cải tiến lên kiến trúc WDA.
3
CHƯƠNG 1: TẤN CÔNG TỪ CHỐI DỊCH VỤ VÀ CÁC
PHƯƠNG PHÁP PHỊNG CHỐNG
1.1 Các phương pháp tấn cơng từ chối dịch vụ.
Có rất nhiều phương thức tấn cơng từ chối dịch vụ mà các kẻ tấn cơng có thể
thực hiện nhằm mục đích làm gián đoạn, hoặc khiến cho hệ thống của nạn nhân 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 ngun của
hệ thống.
1.1.1
Tấn cơng gửi tràn gói tin UDP
Một cuộc tấn cơng gửi tràn gói UDP là một tấn cơng từ chối dịch vụ (DoS) tấn
công bằng cách sử dụng User Datagram Protocol (UDP), một giao thức mạng máy tính
khơng trạng thái, không hướng nối.
Sử dụng UDP để tấn công từ chối dịch vụ không đơn giản như tấn công qua TCP
(Transmission Control Protocol). Tuy nhiên, một cuộc tấn công gửi tràn gói UDP có
thể được bắt đầu bằng cách gửi một số lượng lớn các gói tin UDP đến cổng ngẫu nhiên
trên một server từ xa. Khi nhận được các gói tin này, các server ở xa sẽ buộc phải thực
hiện các hành vi sau:
+ Kiểm tra các ứng dụng đang nghe tại cổng mà gói UDP gửi đến.
+ Nhận thấy rằng khơng có ứng dụng nào nghe tại cổng tương ứng.
+ Trả lời lại bằng với một gói ICMP .
Vì vậy, đối với một số lượng lớn các gói tin UDP, hệ thống nạn nhân sẽ bị buộc
phải gửi nhiều gói ICMP. Điều này khiến cho tài nguyên server bị vắt kiệt do phải trả
lời các yêu cầu UDP rác, dẫn tới server không thể truy cập bởi các client hợp lệ khác.
Kẻ tấn cơng cũng có thể giả mạo địa chỉ IP của các gói tin UDP, đảm bảo rằng lượng
lớn các gói ICMP gửi trở lại không đến được các máy tấn công, cũng như ẩn danh vị
trí mạng tấn cơng. Do sự phổ biến của kiểu tấn công này trước đây, dẫn đến hiện nay
hầu hết các hệ điều hành đều tìm cách giảm thiểu tác động của cách tấn công này bằng
cách hạn chế tốc độ gói ICMP trả lời được gửi đi.
Các phần mềm có thể được sử dụng để thực hiện các cuộc tấn cơng gửi tràn UDP
có thể kể đến như “Low Orbit Ion Cannon” và “UDP Unicorn”.
1.1.2
Tấn công gửi tràn gói tin TCP SYN
Tấn cơng gửi tràn gói TCP SYN dựa trên cơ chế bắt tay ba bước của giao thức
TCP. Thông thường khi một client - client muốn bắt đầu một kết nối TCP đến một
server, client và server trao đổi một loạt các thông báo theo cơ chế bắt tay ba bước như
sau:
4
+ Client yêu cầu một kết nối bằng cách gửi một gói SYN tới server.
+ Server chấp nhận yêu cầu này bằng cách gửi một gói SYN-ACK lại cho client.
+ Client trả lời với một gói ACK, và kết nối được thiết lập.
Lợi dụng cơ chế đó, tấn cơng gửi tràn gói TCP SYN có phương thức như sau: tấn
cơng gửi tràn gói TCP SYN gửi các yêu cầu kết nối TCP nhanh hơn so với một server
có thể xử lý:
+ Kẻ tấn công tạo ra một địa chỉ IP nguồn giả mạo ngẫu nhiên cho mỗi gói tin.
+ Cờ SYN thiết lập trong mỗi gói là một yêu cầu để mở một kết nối mới với
server bị tấn công từ địa chỉ IP giả mạo.
+ Nạn nhân (server nhận các gói TCP SYN gửi tràn) trả lời lại địa chỉ IP giả mạo,
sau đó chờ đợi để nhận ra rằng gói tin trả lời khơng bao giờ đến đích (đợi khoảng
3 phút).
+ Bảng kết nối của nạn nhân đầy lên khi chờ đợi gói ACK trả lời.
+ Sau khi bảng kết nối đã đầy, tất cả các kết nối mới kể cả từ người dùng hợp lệ
sẽ bị bỏ qua dẫn tới người dùng hợp lệ bị từ chối kết nối, và không thể truy cập
server.
Tấn công TCP SYN khá nguy hiểm, tuy vậy nó thường khơng làm sập được
server bị tấn cơng, và server có thể hồi phục lại bình thường khi cuộc tấn cơng dừng
lại. Với các hệ điều hành mới quản lý tài nguyên tốt hơn, nên bảng kết nối khó bị tràn
hơn, nhưng vẫn cịn dễ bị tổn thương.
Tấn cơng TCP SYN có thể được sử dụng như một phần của các cuộc tấn công
khác, chẳng hạn như vơ hiệu hóa một phía của kết nối trong tấn công cướp session
TCP, hoặc ngăn chặn chứng thực hoặc đăng nhập giữa các server.
1.1.3
Tấn công từ chối dịch vụ phản xạ nhiều vùng - DRDOS
Tấn công từ chối dịch vụ phản xạ nhiều vùng DRDOS (Distributed Reflection
Denial of Service) là kiểu tấn công mới, cực mạnh trong các kiểu tấn công DOS.
Đầu tiên quay lại kiểu tấn cơng gửi tràn gói TCP SYN dựa trên cơ chế bắt tay ba
bước. Ở đây kẻ tấn công thực hiện giả mạo địa chỉ của server mục tiêu rồi gửi yêu cầu
SYN đến các server lớn như Yahoo, Microsoft, Google... để các server này gửi các gói
tin SYN/ACK đến server nạn nhân. Quá trình cứ lặp lại liên tục với nhiều server lớn
tham gia nên server nạn nhân nhanh chóng bị quá tải, băng thông (bandwidth) bị
chiếm dụng bởi server lớn, dẫn đến server nạn nhân không thể hoạt động bình thường.
5
Trong suốt q trình server bị tấn cơng bằng DRDOS, khơng một client nào có
thể kết nối được vào server đó. Tất cả các dịch vụ chạy trên nền TCP/IP như DNS,
HTTP, FTP, POP3... đều bị vơ hiệu hóa. Về cơ bản, DRDOS là sự phối hợp giữa hai
kiểu DOS và DDOS. Nó có kiểu tấn cơng SYN với một máy tính đơn, vừa có sự kết
hợp giữa nhiều máy tính để chiếm dụng băng thơng như kiểu DDOS.
Như vậy tấn công từ chối dịch vụ phản xạ nhiều vùng DRDOS nếu thực hiện
thành công sẽ khiến cuộc tấn công khơng cịn là cuộc đối đầu giữa mạng “bot-net” của
kẻ tấn công với hệ thống server của nạn nhân nữa, mà là cuộc đối đầu giữa nạn nhân
với các server lớn của internet. Nguồn tấn công lúc này sẽ được bắt đầu bằng những
đường chính của Internet, bao gồm Yahoo.com, Amazon.com, Google.com… Nạn
nhân có thể bị tấn cơng bởi hàng trăm server mạnh nhất của internet, dẫn tới việc
ngưng trệ tồn bộ dịch vụ một cách nhanh chóng.
1.1.4
Tấn cơng qua mạng ngang hàng
Ở phương pháp tấn công từ chối dịch vụ qua mạng ngang hàng, những kẻ tấn
cơng tìm ra cách để khai thác một số lỗi trong server chia sẻ file ngang hàng (peer-topeer) để bắt đầu cuộc tấn công DDOS.
Dạng tấn công nguy hiểm nhất của các cuộc tấn công từ chối dịch vụ qua mạng
ngang hàng khai thác lỗi của phần mềm DC++, một phần mềm chia sẻ file ngang hàng
nổi tiếng. Các cuộc tấn công từ chối dịch vụ qua mạng ngang hàng khá khác biệt so
với các cuộc tấn công dựa trên mạng “bot-net” thông thường. Với tấn công từ chối
dịch vụ qua mạng ngang hàng khơng có mạng “bot-net” và những kẻ tấn cơng khơng
cần phải giao tiếp với mạng lưới các máy tính bị điều khiển. Thay vào đó, những kẻ
tấn cơng hướng dẫn các máy client của mạng ngang hàng chia sẻ file ngắt kết nối khỏi
mạng ngang hàng đó để kết nối với trang web của nạn nhân. Kết quả là, hàng ngàn
máy tính mạnh mẽ có thể cố gắng kết nối đến một trang web nạn nhân. Trong khi một
server web điển hình có thể xử lý một vài trăm kết nối mỗi giây trước khi chất lượng
bắt đầu suy giảm, hầu hết các server web sẽ thất bại ngay lập tức trong việc trả lời năm
hoặc sáu ngàn kết nối mỗi mỗi giây. Với một cuộc tấn công qua mạng ngang hàng đủ
lớn, một trang web có thể có khả năng bị ảnh hưởng lên đến cả triệu kết nối trong thời
gian ngắn. Các server web bị tấn công sẽ không thể phục vụ được số lượng kết nối lớn
như vậy, dẫn đến kết nối chậm, thậm chí ngừng phục vụ, server treo hoặc khởi động
lại...
Trong khi các cuộc tấn công từ chối dịch vụ qua mạng ngang hàng có thể khá dễ
dàng nhận diện dựa trên chữ ký, thì số lượng lớn các địa chỉ IP cần phải bị chặn,
thường lên đến hàng trăm ngàn trong quá trình của một cuộc tấn công quy mô lớn, cho
thấy là kiểu tấn cơng này có thể áp đảo phương pháp chống lại bằng các cách giảm
thiểu tác động đơn giản.
6
1.1.5
Tấn công Slowloris
Một dạng tấn công tần suất thấp của tấn công dịch vụ chống lại các dịch vụ đặc
biệt, thay vì tấn cơng sử dụng mạng gửi tràn gói tin, là dạng tấn cơng cho phép một
máy tính duy nhất có thể làm sập một server web với băng thông lớn và gây ra tác
dụng phụ tối thiểu với các dịch vụ và cổng khác. Mục tiêu lý tưởng của tấn công từ
chối dịch vụ là khi mà tất cả các dịch vụ khác vẫn còn nguyên vẹn nhưng các server
web thì lại hồn tồn khơng thể truy nhập. Slowloris được sinh ra từ khái niệm này, do
đó có thể che giấu tương đối tốt với hầu hết các công cụ chống tấn công từ chối dịch
vụ gửi tràn gói tin.
Slowloris giữ kết nối mở bằng cách gửi một phần yêu cầu HTTP. Nó tiếp tục gửi
tiêu đề tiếp theo đều đặn để giữ cho các socket khơng đóng lại. Bằng cách này server
web sẽ phải giữ những kết nối mở quá lâu, dẫn tới quá tải các yêu cầu, làm cho các
yêu cầu mới từ người dùng hợp lệ khơng được đáp ứng nữa.
Slowloris cũng có một vài tính năng ẩn mình trước phát hiện tấn cơng. Thứ nhất,
nó có thể được thay đổi để gửi tiêu đề server khác nhau, nếu mục tiêu là một server ảo
và file log được lưu trữ riêng biệt cho mỗi server ảo. Nhưng quan trọng nhất, trong khi
các cuộc tấn công đang được tiến hành, các file log sẽ không được ghi cho đến khi u
cầu được hồn thành. Vì vậy, kẻ tấn cơng có thể làm sập một server tại một thời điểm
mà khơng có một file log nào hiển thị để cảnh báo những người quản trị mạng đang
theo dõi server đó. Cho tới khi cuộc tấn cơng dừng lại hoặc session bị đóng thì mới
xuất hiện vài trăm lỗi 400 Bad Request trong các file log của server.
1.1.6
Tấn cơng suy giảm dịch vụ
Mục đích của cuộc tấn cơng này là làm chậm thời gian đáp ứng của server. Một
cuộc tấn cơng DDoS bình thường sẽ tìm cách để đánh sập một trang web hoặc server
tức khiến trang web hoặc server đó chuyển sang trạng thái offline và khơng thể cung
cấp được dịch vụ cho người dùng bình thường. Đối với tấn công suy giảm dịch vụ,
mục tiêu lại là để làm chậm thời gian đáp ứng đến một mức độ nào đó nhằm làm cho
các trang web bị chậm lại, hoặc thậm chí khơng sử dụng được cho hầu hết người dùng
hợp lệ.
Các máy zombie được sử dụng để tấn cơng một máy tính mục tiêu sử dụng lưu
lượng truy cập độc hại nhằm gây ra các vấn đề về hiệu năng và thời gian nạp trang
web. Các cuộc tấn cơng có thể khó phát hiện vì server và trang web không bị chuyển
sang trạng thái offline, mà bị suy giảm hiệu suất, dẫn tới việc bị nhầm lẫn với việc đơn
giản là sự gia tăng lưu lượng truy cập trang web do có số lượng lớn người dùng đang
truy nhập.
Với các cuộc tấn công này, người dùng bình thường sẽ cảm thấy khó khăn trong
việc truy nhập dịch vụ web do tốc độ load trang web chậm, các giao dịch xử lý khó
7
khăn, thậm chí khơng thể thực hiện các giao dịch trên trang web nạn nhân. Điều này
chính là mục đích của tấn công suy giảm dịch vụ hướng tới.
1.1.7
Tấn công từ chối dịch vụ phân tán không chủ ý
Đây là tình huống mà một trang web bị rơi vào trạng thái từ chối dịch vụ, không
phải do một cuộc tấn cơng có chủ ý bởi một cá nhân hoặc một tổ chức, mà là do một
lưu lượng mạng hợp lệ rất lớn. Điều đặc biệt này có thể xảy ra khi một bài viết từ một
trang web rất phổ biến chia sẻ một liên kết với một trang web thứ hai, ít phổ biến và có
năng lực thấp hơn, ví dụ như việc chia sẻ liên kết của một câu chuyện tin tức đáng chú
ý. Kết quả là một tỉ lệ đáng kể bao gồm hàng ngàn đến hàng trăm ngàn người sử dụng
thường xuyên từ trang web thứ nhất nhấp vào liên kết đến trang web thứ hai trong thời
gian ngắn, tạo nên hiệu ứng có tác dụng tương tự một cuộc tấn công DDOS lên trang
web thứ hai.
Một ví dụ điển hình cho trường hợp này đó là khi Michael Jackson qua đời vào
năm 2009, các trang web như Google và Twitter bị chậm lại hoặc thậm chí đánh sập.
Server nhiều trang web đã nhận định rằng yêu cầu gửi đến là từ virus hoặc phần mềm
gián điệp đang cố gắng để tạo ra một cuộc tấn công từ chối dịch vụ, dẫn tới cảnh báo
người dùng rằng các truy vấn của họ giống như "yêu cầu tự động từ một virus máy
tính hoặc ứng dụng phần mềm gián điệp", trong khi các yêu cầu người dùng là hồn
tồn hợp lệ. Đây là điển hình cho thấy việc lưu lượng lớn truy cập vào mạng có thể
làm tê liệt hệ thống phòng thủ của các server, dẫn đến các cơ chế ứng phó sai lệch
khiến cho hệ thống không phân biệt được lưu lượng tấn công cũng như lưu lượng
người dùng hợp lệ.
1.1.8
Tấn công từ chối dịch vụ vào lớp ứng dụng
Các cuộc tấn công vào lớp ứng dụng nhắm tới mục tiêu tấn công khai thác các
khu vực có nhiều lỗ hổng bảo mật. Thay vì cố gắng để tấn cơng áp đảo tồn bộ server,
kẻ tấn công sẽ tập trung tấn công vào một, hoặc một vài ứng dụng. Các ứng dụng web
dựa trên email, WordPress, Joomla, và diễn đàn phần mềm thường là những mục tiêu
tốt để khai thác và tấn công từ chối dịch vụ.
Một cuộc tấn công từ chối dịch vụ vào lớp ứng dụng địi hỏi nguồn lực ít hơn và
thường đi kèm với các cuộc tấn công lớp mạng. Một cuộc tấn công được giả mạo và
thay đổi để trông giống như lưu lượng hợp pháp, ngoại trừ việc nó tập trung mục tiêu
vào gói ứng dụng cụ thể của hệ thống bị tấn công. Tấn công từ chối dịch vụ vào lớp
ứng dụng có thể làm gián đoạn các dịch vụ như việc thu hồi các thông tin hoặc chức
năng tìm kiếm cũng như chức năng trình duyệt web, các dịch vụ email và các ứng
dụng hình ảnh.
8
1.1.9
Phương pháp tấn công Multi-Vector
Các cuộc tấn công đa vector là những hình thức phức tạp nhất của tấn cơng từ
chối dịch vụ phân tán (DDOS).
Thay vì sử dụng một phương pháp duy nhất, một sự kết hợp của các công cụ và
chiến lược được sử dụng để áp đảo các mục tiêu và khiến mục tiêu bị chậm, khởi động
lại hoặc bị đánh sập. Thông thường, các cuộc tấn công đa vector sẽ nhắm mục tiêu ứng
dụng cụ thể trên server mục tiêu, cũng như gửi tràn mục tiêu với một khối lượng lớn
lưu lượng truy cập độc hại. Các kiểu tấn cơng DDoS dạng này là khó khăn nhất để
chống lại vì cuộc tấn cơng sử dụng các hình thức khác nhau và nhắm tới mục tiêu là
các nguồn lực khác nhau của hệ thống cùng một lúc, khiến cho hệ thống nạn nhân cần
có nhiều phương pháp phịng chống tồn diện, thay vì chỉ tập trung bảo vệ một mục
tiêu hoặc một dịch vụ đơn lẻ của hệ thống.
Trong một cuộc khảo sát 130 nhà khai thác mạng năm 2012 [33], công ty Arbor
Networks nhận thấy rằng 46 phần trăm trong số họ đã báo cáo các cuộc tấn công đa
vector sử dụng sự kết hợp của khối lượng lưu lượng mạng, tấn công cạn kiệt trạng thái
và tấn công tầng ứng dụng để đánh vào nạn nhân cùng một lúc. Những cuộc tấn công
thực sự phức tạp và tinh vi, khó khăn để chống đỡ, các cơng ty lập luận, bởi vì chúng
u cầu các giải pháp phân lớp trên trung tâm dữ liệu và điện toán đám mây để được
hạn chế lưu tác hại một cách thành công. Đây là một sự gia tăng đáng kể so với báo
cáo năm trước, khi chỉ 27 phần trăm số người được hỏi thông báo các cuộc tấn công
dạng này.
1.1.10 Phương pháp tấn công từ chối dịch vụ tốc độ thấp - LDOS
Tấn công từ chối dịch vụ tốc độ thấp là một phương thức tấn công mới được
Kuzmanovic và các cộng sự nghiên cứu và đề cập tới trong [2,3]. Trong một cuộc tấn
công từ chối dịch vụ tốc độ thấp, kẻ tấn công khai thác các cơ chế điều khiển tắc nghẽn
TCP để làm tràn hàng đợi bị tấn công.
Điều khiển tắc nghẽn TCP hoạt động trên hai khoảng thời gian. Trên khoảng thời
gian nhỏ hơn của round trip times (RTT), thông thường là vài chục đến vài trăm mili
giây, TCP thực hiện truyền gói tin tăng theo cấp số cộng, giảm theo cấp số nhân
(AIMD) với mục tiêu mỗi luồng truyền với tốc độ hợp lí trong nút cổ chai của liên kết
mạng. Vào những lúc tắc nghẽn nghiêm trọng, khi đó nhiều mất mát gói tin xảy ra,
TCP hoạt động trên khoảng thời gian lớn với RTO - Retransmission Time Out hay
ngừng một thời gian lớn để truyền lại gói tin. Trong một nỗ lực để tránh tắc nghẽn tiếp
tục xảy ra, các luồng giảm cửa sổ tắc nghẽn của họ xuống còn một gói tin và chờ đợi
một thời gian sau khoảng RTO giây để gửi lại gói tin. Nếu tiếp tục mất gói tin, RTO
tăng gấp đơi với mỗi lần chờ sau đó. Nếu một gói tin nhận được thành cơng, TCP lại
bước vào khoảng thời gian nhỏ hơn RTT, thực hiện AIMD. Lợi dụng cơ chế này, kẻ
9
tấn cơng thực hiện gửi các đợt tấn cơng có burst lớn trong một khoảng thời gian ngắn,
khiến cho người dùng hợp lệ bị rơi vào trạng thái mất mát nhiều gói tin và chuyển
sang hoạt động trên khoảng thời gian lớn với RTO. Sau đó mỗi khi một người dùng
kết thúc RTO của nó và cố gắng truyền lại, họ gặp phải đợt tấn công do kẻ tấn công
tạo ra. Kết quả là client hợp pháp lại bước vào vào truyền lại và tăng thời gian RTO
lên rất cao dẫn tới khơng thể truyền lại được gói tin.
Tấn cơng từ chối dịch vụ tốc độ thấp rất nguy hiểm, hơn nữa gần như trong suốt
với hầu hết các cơ chế phát hiện tấn cơng thơng thường vì tốc độ tấn công rất thấp
khiến cho các cơ chế phát hiện này khơng nhận thấy có việc tăng lưu lượng bất thường
từ các kẻ tấn cơng, do đó các biện pháp phịng chống thơng thường khó có thể phát
hiện và ngăn chặn được kiểu tấn công này.
10
1.2 Các phương pháp phịng chống tấn cơng từ chối dịch vụ.
Các phương pháp phịng chống tấn cơng từ chối dịch vụ cũng rất khác nhau, tùy
theo cách phân loại hoặc biện pháp sử dụng để bảo vệ hệ thống của nạn nhân.
1.2.1
Các biện pháp phân tích và làm giảm lưu lượng tấn cơng đến router
Một nghiên cứu rất tồn diện bởi R.Mahajan và các cộng sự giới thiệu các điều
khiển tắc nghẽn dựa trên tổng hợp (ACC) [4]. Trong ACC các bộ định tuyến tự động
phân loại lưu lượng truy cập đến vào một bộ tổng hợp. ACC kiểm sốt những bộ tổng
hợp đó bằng cách hạn chế số lượng truy cập mà chúng có thể gửi vào mạng.
Các bộ định tuyến cũng có thể đẩy lùi lưu lượng tấn công nhờ sử dụng một
phương pháp như Pushback [5] chẳng hạn, là phương pháp có khả năng đẩy lùi lưu
lượng tấn công trở lại các bộ định tuyến gốc của nó thơng qua địa chỉ nguồn của các
gói tin, bằng cách ra lệnh cho chúng để thực hiện các hạn chế cho các bộ tổng hợp
đáng ngờ. Vấn đề với ACC là nó khơng có khả năng để phân biệt lưu lượng truy cập
hợp lệ và lưu lượng tấn công. Giới hạn tốc độ dễ dàng gây thiệt hại tới cả lưu lượng
hợp lệ. Hơn nữa ACC yêu cầu triển khai tới tận từng router, hơn nữa yêu cầu router
duy trì trạng thái về các luồng lưu lượng truy cập, dẫn tới làm tăng gánh nặng phần
cứng cho router, khiến giá thành triển khai cơ sở hạ tầng sẽ tăng cao.
Mirkovic và các cộng sự đề xuất D-Ward [6], ý tưởng chính ở đây là xác định và
ngăn chặn các cuộc tấn cơng tại nguồn mạng, với mục đích chặn đứng cuộc tấn công
trước khi chúng rời khỏi mạng nguồn. Theo loại hình giao thơng (TCP, UDP, vv), DWard phát hiện lưu lượng bất thường, và thực hiện một giới hạn tốc độ trên chúng. DWard là một hệ thống nội tuyến, trong suốt với người sử dụng trên mạng, thông qua
việc tập hợp số liệu thống kê giao thông hai chiều từ các router biên tại các mạng
nguồn và so sánh chúng với các mơ hình giao thơng mạng xây dựng dựa trên giao thức
ứng dụng và giao vận, phản ánh sự bình thường (hợp pháp), nghi ngờ, hoặc hành vi tấn
công. Cách tiếp cận này gặp một số nhược điểm: nó dựa trên tính đối xứng của giao
thơng và hai hướng của giao thức; D-Ward có thể giải quyết hoặc giảm thiểu DDoS
chỉ khi tất cả các mạng trong Internet sẽ triển khai nó; hơn nữa, một ISP khơng có
động lực để đầu tư vào thực hiện cơ sở hạ tầng đó vì sẽ khơng được hưởng lợi gì cho
client của mình. Ngay cả khi được triển khai, một cuộc tấn công DDoS với số lượng
lớn zombie có các hành vi hợp lí, sẽ khơng bị phát hiện bởi D-Ward. Một cách tiếp cận
tương tự qua việc đo lường động tỉ lệ lưu lượng đến và đi được trình bày bởi Gil và
Poletter trong MULTOPS [7].
Wang và Shin [8] đề xuất để chống lại DDoS như một vấn đề quản lý lưu lượng
giao thông. Họ đề xuất để sử dụng hàng đợi riêng biệt cho mỗi loại lưu lượng giao
thông (TCP, UDP và ICMP) và với mỗi cấp độ dịch vụ. Bằng cách này, kẻ tấn công
gửi tràn gói tin với lưu lượng UDP, sẽ khơng gây hại cho lưu lượng TCP. Cơ chế này
11
là không hiệu quả chống lại một kẻ thù khi hắn chỉ đơn giản thay đổi đặc điểm lưu
lượng giao thơng của nó trong cuộc tấn cơng.
Thomas và các cộng sự trong NetBouncer [9] đề xuất một tập hợp các bài kiểm
tra tính hợp pháp để tiếp xúc với những kẻ tấn công. NetBouncer được đề xuất triển
khai tại điểm nút của mạng lưới, gần với hệ thống của nạn nhân. NetBouncer xác định
địa chỉ nguồn của lưu lượng truy cập trong lớp IP (nếu tìm thấy một địa chỉ nguồn tồn
tại), trong lớp giao vận (TCP) lớp (xác định địa chỉ IP nguồn không bị giả mạo) và
trong lớp dịch vụ ứng dụng (xác định một client là người hay máy zombie). Lưu lượng
truy cập đến được phục vụ theo tính hợp pháp của địa chỉ nguồn của nó.
Một khi các client đã chứng tỏ rằng nó thực sự là hợp pháp, client được thêm vào
danh sách của client hợp pháp và được ưu đãi so với client chưa được hợp pháp. Danh
sách này được quản lý bằng kỹ thuật quản lý dịch vụ chất lượng và đảm bảo chia sẻ
công bằng các tài nguyên giữa tất cả các client hợp pháp. Để ngăn chặn một cuộc tấn
công từ việc kế thừa các thông tin của một client hợp pháp, tính hợp pháp hết hạn sau
một thời gian nhất định và cần phải được đánh giá lại bằng cách sử dụng cùng một
hoặc một vài bài kiểm tra khác nhau.
Các thiếu sót chính của NetBouncer là nó cần phân tích và can thiệp vào tất cả
các giao thức và có thể một kẻ tấn cơng thơng minh có thể lập kế hoạch một cuộc tấn
công mà không thể bị phát hiện bởi các bài kiểm tra. Một cách tiếp cận tương tự đã
được giới thiệu trong [10], với một middlebox năng động mà thực hiện phân tích giao
thơng hai chiều để nhận biết và giảm thiểu các cuộc tấn công.
Trong [11], Bremler-Barr và các cộng sự đề xuất một cơ chế quản lý hàng đợi
tương tự WFQ, tự động giảm trọng số hàng đợi của kẻ tấn công. Trọng số thực tế sử
dụng cho một luồng là một biến thay đổi động phản ánh việc sử dụng băng thông của
luồng trong quá khứ. Cơ chế kiểm soát lưu lượng giao thông này cần phải đủ linh hoạt
để điều chỉnh nhu cầu thời gian khác nhau của các ứng dụng hợp pháp (như lưu lượng
truy cập WEB) trong khi xử lý các ứng dụng tấn công (DDOS).
1.2.2
Các biện pháp dựa trên năng lực hệ thống
Yang và các cộng sự. [12], Yaar cùng các cộng sự [13] đề xuất các kiến trúc
mạng mới, trong đó những điểm đến của giao thơng có khả năng chi phối các lưu
lượng truy cập mà họ nhận được.
Yaar cùng các cộng sự [13] đề xuất giảm thiểu tấn công từ chối dịch vụ phân tán
bằng cách sử dụng một cơ chế dựa trên khả năng của host cuối có thể phân chia lưu
lượng truy cập Internet thành hai lớp: đặc quyền và không đặc quyền. Host cuối có thể
trao đổi các giá trị gọi là capability sẽ được sử dụng trong giao thông đặc quyền.
Router sau đó sẽ xác minh những giá trị capability này một cách không trạng thái.
12
Những giá trị capability này được giao trong một cơ chế động, vì vậy máy tấn cơng có
thể có khả năng bị thu hồi giá trị capability. Phương pháp này khơng địi hỏi một cơ
chế che phủ, nhưng nó có yêu cầu sự sửa đổi của client và server, cũng như ở router.
Các client sẽ sử dụng một giao thức bắt tay vào khả năng trao đổi, và sau đó lưu
lượng truy cập đặc quyền sẽ được mạng ưu tiên xử lý nhanh, trái ngược với lưu lượng
giao thông không đặc quyền sẽ không nhận được ưu tiên. Một số quy định cục bộ
được xây dựng để ngăn chặn tấn công gửi tràn với lưu lượng truy cập đặc quyền của
một người trái phép, ví dụ, bởi một người cố gắng tạo ra các giá trị capability (thực
hiện bằng cách đánh dấu trong mỗi gói). Nếu một client với giá trị capability bắt đầu
bị tấn cơng gửi tràn, thì sau đó các thơng tin cho lưu lượng truy cập đặc quyền có thể
bị thu hồi với máy khách đó.
Các tác giả của cơ chế này đề xuất hai phương pháp: một là cơ chế Internet thế
hệ tiếp theo kết hợp những kỹ thuật này và một là cơ chế cho các giao thức mạng hiện
nay ở IPv4. Tuy vậy hai cơ chế vẫn chưa được xây dựng và đánh giá để xem xét tính
hiệu quả của chúng.
Tóm lại, kỹ thuật này cũng chấp nhận nhiều giả thiết, trong đó có giả định là
client và server cập nhật các phần mềm theo giao thức TCP / IP để kết hợp sửa đổi cần
thiết cho các giá trị capability mới. Ưu điểm là khơng cần thiết phải có sự hợp tác giữa
các ISP. Tuy nhiên, nó cũng giả định rằng giả mạo là hạn chế, và việc xử lý và duy trì
trạng thái được yêu cầu tại từng router. Các giao thức mạng mới yêu cầu đánh dấu
không gian trong tiêu đề gói IP, mỗi router phải đánh dấu các gói tin, và tuyến đường
giữa các máy trên mạng vẫn ổn định. Các giả định này là khá hạn chế, so với những gì
có thể xảy ra trong một mạng thực sự.
Chính vì vậy cách tiếp cận này gặp vấn đề với việc triển khai: cần phải cập nhật
tất cả các server và thiết bị định tuyến trên mạng Internet, làm cho việc khả năng triển
khai trở nên không thực tế. Hơn nữa, nó phụ thuộc vào con đường ổn định giữa nguồn
và đích, mà khơng phải ln ln được duy trì, đặc biệt trong một tấn công từ chối
dịch vụ phân tán.
1.2.3
Các biện pháp sử dụng câu đố - puzzle để phân biệt lưu lượng tấn
công
Các nguồn lưu lượng được yêu cầu bởi các điểm đến, hoặc router, để giải quyết
các câu đố trước khi họ được phép gửi lưu lượng giao thơng qua đó.
Việc tạo ra câu đố là khá đơn giản trong khi việc giải câu đố có độ phức tạp cao
hơn và tốn tài nguyên, như vậy router và các điểm đến cuối (server, nạn nhân…) sẽ
13
không tốn nhiều năng lực trong khi nguồn lưu lượng sẽ phải tốn tài nguyên để giải câu
đó. Với các nguồn lưu lượng hợp pháp – người dùng hợp lệ, việc sử dụng tài nguyên
giải câu đố không quá ảnh hưởng đến người dùng, trong khi các máy zombie tự động
của kẻ tấn công sẽ chịu tác động khá lớn, làm suy giảm năng lực tấn công của mạng
bot-net.
Trong [14], Wang Reiter giới thiệu một chương trình của việc sử dụng câu đố
bằng thiết bị định tuyến: Khi một router nhận một tắc nghẽn nó yêu cầu các máy gửi
dữ liệu liên tục giải quyết một câu đố tính tốn. Trong [15], câu đố đồ họa được sử
dụng để bảo vệ Server web với rất nhiều yêu cầu dịch vụ trông giống như là hợp pháp.
Server yêu cầu người dùng ở client giải quyết một câu đố đồ họa trước khi nó phân bổ
tài nguyên cho những người sử dụng này. Câu đố đồ họa ở đây được tạo ra với mục
đích có thể dễ dàng giải quyết bằng cách con người và khó có thể được giải quyết bằng
một máy tấn cơng tự động, ví dụ như CAPTCHA là một dạng câu đố đồ họa được sử
dụng phổ biến hiện nay.
1.2.4
Các biện pháp sử dụng thống kê để phân biệt lưu lượng tấn cơng
Ý tưởng chính ở đây là xác định những thay đổi trong đặc điểm lưu lượng giao
thơng và sử dụng chúng để phân biệt các gói tin tấn cơng với gói tin từ những người
hợp pháp. Trong [16] Kim và các cộng sự sử dụng phương pháp này để cung cấp cho
mỗi gói tin đến một điểm số là thước đo về độ tin cậy của nó. Điểm yếu của phương
pháp này là khả năng của một kẻ tấn công thông minh để vượt qua các bộ lọc được đề
xuất bằng cách thay đổi đặc tính lưu lượng giao thơng của nó theo thời gian như đề
cập tới trong [17].
LADS [18] là một hệ thống tự động phát hiện DDoS quy mô lớn để chỉ ra sự
hiện diện của bất thường của lưu lượng các luồng dữ liệu. LADS được dựa trên một
kiến trúc đa giai đoạn kích hoạt cho khả năng mở rộng phát hiện tấn công. Theo khái
niệm, các giai đoạn ban đầu bao gồm cơ chế phát hiện bất thường chi phí thấp cung
cấp thơng tin cho bộ phân tích và thu thập lưu lượng truy cập nhằm giảm khơng gian
tìm kiếm cho các phân tích lưu lượng truy cập sâu hơn. Reval [19] hỗ trợ các nhà khai
thác mạng để đánh giá tác động của các cuộc tấn công từ chối dịch vụ phân tán và xác
định chiến lược giảm thiểu tấn công một cách khả thi trong thời gian thực, bằng cách
mơ hình hóa các tài ngun hạn chế của các phần tử mạng và kết hợp thông tin định
tuyến.
1.2.5
Các biện pháp phát hiện tấn công giả mạo IP
Một số phương pháp có thể nhắc đến như [20], [21].
Pi, đề xuất của Yaar cùng các cộng sự [20], là một hệ thống bảo vệ mục tiêu nạn
nhân, xây dựng trên kỹ thuật đánh dấu gói tin, chèn vào định danh đường dẫn vào mục
14
chưa sử dụng trong phần header của gói tin IP. Ý tưởng chính là những định danh
đường dẫn hoặc dấu xác thực được chèn vào bởi các router dọc theo đường mạng. Các
mục tiêu hoặc nạn nhân sau đó sẽ từ chối các gói tin với định danh đường dẫn phù hợp
với các gói tin đã được xác định rõ ràng như một phần của cuộc tấn công.
Trong kiến trúc hệ thống đánh dấu Pi cơ bản, từng router tham gia đánh dấu bit
nhất định trong trường nhận dạng IP của gói tin IP. Các vị trí của kí hiệu trong trường
này được xác định bởi giá trị của trường TTL (time to live) của gói tin. Kí hiệu là một
phần của bảng băm của địa chỉ IP của router. Vì giá trị TTL được giảm đi tại mỗi
router, một con đường tiếp giáp của gói tin được xây dựng khi nó đến gần hơn với nạn
nhân. Người ta có thể quyết định ngừng đánh dấu trong một khoảng cách chặng nhất
định của mạng nạn nhân để tăng khả năng tới đích của gói tin trong đề án này.
Bộ lọc Pi có thể thực hiện một khi chương trình đánh dấu đã được cài đặt trong
cơ sở hạ tầng. Kiến trúc này giả định rằng nạn nhân biết làm thế nào để xác định số
lượng lớn của lưu lượng truy cập tấn cơng, ví dụ, bằng cách chọn một phần lớn của lưu
lượng truy cập đến mang nhãn tương tự. Các bộ lọc sau đó hủy bỏ tất cả lưu lượng với
nhãn nhất định. Vơ tình, một số lưu lượng truy cập hợp pháp chia sẻ cùng nhãn với các
cuộc tấn cơng (vì nó cũng chia sẻ đường dẫn đến các nạn nhân do sự dao động và tính
chất thích nghi của mạng) cũng sẽ bị hủy bỏ, hoặc mất mát.
Vấn đề lớn nhất ở đây là với sự phát triển của các công cụ cũng như khả năng
của các kẻ tấn công, hiện nay kẻ tấn công khá dễ dàng để xây dựng được một mạng
“bot-net” lớn nhằm khởi động một cuộc tấn công tàn phá với số lượng đủ lớn zombie
tràn ngập nạn nhân, mà không cần đến giả mạo IP.
1.2.6
Các biện pháp sử dụng lớp mạng bao phủ bảo vệ mục tiêu đích
Một số nghiên cứu như [22,23]. Keromytis và các cộng sự đã xây dựng nên các
kiến trúc tầng bao phủ quanh server đích, nhằm ngăn chặn kẻ tấn công khỏi việc tiếp
cận để tấn công phá hoại server và chỉ cho phép người dùng đã được xác định –
confirm user, mới có thể kết nối đến server. Các kiến trúc đó bao gồm SOS và
WebSOS, một nâng cấp với nhiều cải tiến từ SOS.
Kiến trúc SOS sử dụng một mạng bao phủ để chỉ cho các truy vấn hợp pháp đã
qua xác thực được phép đến server đích. Dựa vào việc sử dụng các node bí mật, và chỉ
có giao thơng từ các node này mới có thể đến được server đích, kiến trúc tỏ ra khá hiệu
quả trong việc bảo vệ Website. Kế thừa kiến trúc SOS, WebSOS triển khai mạng bao
phủ với một số cơ chế cải tiến như xác thực người dùng thông qua bài kiểm tra
CAPTCHA, kết nối thông qua proxylet cùng với việc xác thiết lập kết nối SSL và xác
thực X.509, nhằm tăng mức độ bảo mật hơn cho hệ thống.
15
Các biện pháp này được cho là có hiệu quả khá tốt giúp bảo vệ các server đích,
kẻ tấn cơng nếu khơng có một mạng bot-net đủ lớn và trải rộng khắp internet thì khó
lịng đánh sập tồn bộ các điểm truy cập mạng – Access Point của mạng bao phủ, dẫn
tới chỉ có một số lượng người dùng nhỏ chia sẻ cùng Access Point đó chịu ảnh hưởng
của cuộc tấn cơng, cịn những người dùng khác trên internet sử dụng Access Point
khác vẫn có thể truy nhập bình thường. Tuy vậy điểm yếu của việc sử dụng lớp mạng
bao phủ là do các yêu cầu người dùng đi vào lớp mạng bao phủ sẽ lại phải thực hiện
định tuyến một lần nữa trong lớp mạng bao phủ trước khi đến được server đích, dẫn
tới việc làm chậm kết nối, khiến người dùng phải chấp nhận một độ trễ nhất định. Hơn
nữa chỉ người dùng xác định trước và có thẩm quyền mới có thể nhập và sử dụng
mạng che phủ, do vậy các giải pháp này chỉ thích hợp trong các tình huống cụ thể mà
tất cả client và server được biết trước, một điển hình cho các Web farm.
1.2.7
Một số biện pháp chống tấn công từ chối dịch vụ tốc độ thấp - LDOS
Như đã giới thiệu ở mục 1.1.10, tấn công từ chối dịch vụ tốc độ thấp là một kiểu
tấn công mới rất tinh vi cũng như nguy hiểm. Vì vậy đã có một số nghiên cứu sâu rộng
nhằm giải quyết bài toán chống lại phương pháp tấn công này.
Ở [3], Kuzmanovic và các cộng sự đề xuất hai phương pháp chống tấn công tốc
độ thấp. Phương pháp thứ nhất đó là tăng kích cỡ ban đầu của cửa sổ Window nhằm
giúp luồng lưu lượng có thể chống lại đợt tấn công tốc độ thấp. Một phương pháp nữa
cũng được đề xuất đó là khơng tn theo thuật tốn tính tốn RTO bình thường như
theo RFC 6298 [34], mà sử dụng thuật toán riêng để đưa ra các giá trị RTO ngẫu
nhiên, giúp cho các luồng lưu lượng hợp pháp khơng bị đồng bộ hóa RTO, dẫn tới việc
tấn công không thể ảnh hưởng đến số lượng lớn các luồng lưu lượng hợp lệ, khiến
băng thông mạng bị giảm rất ít hay khơng đáng kể. Các phương pháp này gặp khó
khăn trong việc triển khai, do phải thay đổi cả giao thức, đó là việc thay đổi kích cỡ
ban đầu của cửa sổ Window, hay việc thay đổi thuật tốn tính tốn RTO cho các luồng
lưu lượng mạng.
Một phương pháp sau đó được giới thiệu bởi Zhang và các cộng sự [37] đề xuất
cho thấy hiệu quả rất cao chống lại tấn công tốc độ thấp, đó là phương pháp RRED. Ý
tưởng cơ bản của RRED là để phát hiện và lọc ra các gói tin tấn cơng trước khi một
thuật tốn RED bình thường được áp dụng cho luồng tin đến. Do đó RRED sẽ bao
gồm hai phần: Khối phát hiện và lọc; và khối RED.
Kiến trúc RRED được mơ tả như trên hình 1.1. Các gói tin đến sẽ được kiểm tra
qua một bộ lọc và phát hiện các gói tấn cơng, Nếu gói tin bị đánh giá là gói tấn cơng ở
bộ lọc này, RRED sẽ thực hiện hủy gói tin. Nếu gói tin được đánh giá là gói tin hợp lệ
bình thường, chúng sẽ được chuyển qua thuật tốn RED bình thường để đợi phục vụ.
Vì vậy điều quan trọng nhất của RRED là cách phân biệt gói tin tấn cơng so với các
gói tin hợp lệ bình thường.
16
Hình 1.1 Kiến trúc RRED
1
Tất cả các gói tin TCP đến một router thuộc về các luồng khác nhau. RRED sử
dụng chỉ số 𝑓. 𝐼 để đánh giá liệu luồng 𝑓 là luồng thuộc một cuộc tấn công LDOS hoặc
luồng TCP bình thường. Cụ thể, 𝑓. 𝐼 được tính như sau. Nếu một gói tin từ luồng 𝑓
được coi là một gói tấn cơng (mơ tả dưới đây), 𝑓 𝐼 sẽ bị giảm một đơn vị; nếu nó được
coi là một gói tin bình thường, 𝑓. 𝐼 được tăng một đơn vị. Sau đó, nếu một gói tin đến
từ một luồng với 𝑓. 𝐼 có giá trị âm sẽ bị lọc để hủy bỏ. Gói dữ liệu từ một luồng với 𝑓.𝐼
lớn hơn hoặc bằng 0 sẽ tiếp tục được chuyển đến khối RED.
Một đến gói từ luồng 𝑓 bị nghi ngờ là một gói tin tấn cơng nếu nó đến trong một
khoảng thời gian ngắn sau khi một gói tin từ 𝑓 bị hủy bỏ bởi khối phát hiện và lọc
hoặc sau khi một gói tin từ bất kì luồng nào bị hủy bỏ bởi khối RED. Các quá trình sau
đây được sử dụng để xác định khoảng thời gian ngắn này. Đối với mỗi luồng 𝑓 (hoặc
một luồng TCP bình thường hoặc một luồng LDOS), gọi 𝑓. 𝑇1 là thời gian đến của gói
tin cuối cùng từ 𝑓 bị hủy bỏ bởi khối phát hiện và lọc. Gọi 𝑇2 là thời gian đến của các
gói tin cuối cùng từ bất kỳ luồng nào bị hủy bỏ bởi khối RED. Khoảng thời gian ngắn
của RRED định nghĩa là [𝑇max, 𝑇max + 𝑇*], với 𝑇max = MAX(𝑓.𝑇1, 𝑇2). Nếu thời gian
xuất hiện của một gói tin từ một luồng 𝑓 rơi vào khoảng này, gói tin sẽ bị nghi ngờ là
một gói tin tấn cơng. Lưu ý rằng 𝑇1 gắn với từng luồng trong khi 𝑇2 là toàn cục, đại
diện cho những đặc tính cơ bản của một luồng tấn cơng LDOS và tác động tồn cục
của cuộc tấn cơng trên toàn bộ mạng, tương ứng.