Tải bản đầy đủ (.docx) (36 trang)

Tìm hiểu giải pháp phát hiện tấn công từ chối dịch vụ sử dụng phương pháp phân tích thống kê

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 (805.34 KB, 36 trang )

LỜI CẢM ƠN

Với lòng kính trọng và biết ơn sâu sắc, em xin chân thành cảm ơn các thầy cô giáo
tại trường

về sự dạy bảo của thầy cô trong quá trình em học tại trường.

Em xin đặc biệt cảm ơn Giảng viên

, người đã hướng dẫn trực tiếp, chỉ bảo

tận tình cho em. Đồ án này sẽ khó có thể hoàn thành nếu thiếu sự giúp đỡ, khuyến
khích và những ý kiến đóng góp quý báu của cô.
Cảm ơn bố mẹ, em gái, bạn bè và các bạn trong lớp

đã luôn bên cạnh cổ vũ,

động viên tinh thần để em có thể vượt qua mọi khó khăn.
Đồ án được thực hiện trong thời gian ngắn, mặc dù cố gắng tìm hiểu nhưng do
kiến thức có hạn nên chắc chắn vẫn còn nhiều thiếu sót. Rất mong thầy cô góp ý để đồ án
được hoàn hiện hơn.
Cuối cùng, em xin kính chúc các thầy, cô và gia đình luôn luôn mạnh khỏe và
thành công hơn nữa trong sự nghiệp cao quý.

, ngày tháng năm
Sinh viên


LỜI MỞ ĐẦU

Trong những thập kỷ gần đây, thế giới và Việt Nam đã và đang chứng kiến sự phát


triển bùng nổ của công nghệ thông tin, truyền thông. Đặc biệt sự phát triển của các trang
mạng (websites) và các ứng dụng trên các trang mạng đã cung cấp nhiều tiện ích cho
người sử dụng từ tìm kiếm, tra cứu thông tin đến thực hiện các giao dịch cá nhân, trao đổi
kinh doanh, mua bán, thanh toán hàng hoá, dịch vụ, thực hiện các dịch vụ công... Tuy
nhiên, trong sự phát triển mạnh mẽ của các trang mạng nói riêng và công nghệ thông tin
nói chung, vấn đề đảm bảo an toàn, an ninh thông tin cũng trở thành một trong những
thách thức lớn. Một trong những nguy cơ tác động đến việc đảm bảo an toàn thông tin
trong nhiều năm qua chưa được giải quyết đó chính là các hoạt động tấn công từ chối
dịch vụ, một thủ đoạn phổ biến của tội phạm nhằm cản trở hoặc gây rối loạn hoạt động
của mạng máy tính, mạng viễn thông, mạng Internet, thiết bị số.
Tấn công từ chối dịch vụ (Dos, Denial of Services) đã ngày càng trở thành một
mối đe dọa lớn đối với sự tin cậy của mạng Internet. Là các cuộc tấn công sử dụng nhiều
cách thức tổ chức và thực hiện khác nhau, từ việc dùng chỉ một máy tới việc thu thập các
máy agent dưới quyền với số lượng lên đến hàng chục ngàn máy phục vụ tấn công, mục
đích của các cuộc tấn công là làm tê liệt các ứng dụng, máy chủ, toàn bộ mạng lưới, hoặc
làm gián đoạn kết nối của người dùng hợp pháp tới Website đích. Trong quá khứ đã từng
xảy ra các vụ tấn công DoS đặc biệt nghiêm trọng với các website thương mại hàng đầu
thế giới, có tính bảo mật rất cao như Amazon, Yahoo, eBay, Microsoft… gây thiệt hại
hàng triệu USD.
Tuy nhiên, việc phòng ngừa, ngăn chặn cũng như tiến hành điều tra, xử lý các đối
tượng này lại chưa được thực sự quan tâm đúng mức. Do vậy, trong nhiều trường hợp,
chúng ta bị đặt vào trạng thái bị động, không phản ứng kịp trước các cuộc tấn công. Vì


vậy em chọn đề tài “ Tìm hiểu giải pháp phát hiện tấn công từ chối dịch vụ sử dụng
phương pháp phân tích thống kê”.
Nội dung đồ án được tổ chức như sau:
Chương 1: Tổng quan về tấn công từ chối dịch vụ DoS/DDoS. Nêu khái niệm, mục
đích, mục tiêu của tấn công từ chối dịch vụ. Các cách thức một kẻ tấn công phải thực
hiện nhằm tạo ra một cuộc tấn công từ chối dịch vụ.

Chương 2: Tìm hiểu giải pháp phát hiện tấn công dịch vụ bằng phương pháp phân
tích thông kê.
Chương 3: Thực nghiệm kết quả


1

1

TỔNG QUAN VỀ TẤN CÔNG TỪ CHỐI DỊCH VỤ DOS/DDOS

Khái niệm
Tấn công bằng từ chối dịch vụ DoS (Denial of Service) có thể mô tả như hành

động ngăn cản những người dùng hợp pháp khả năng truy cập và sử dụng vào một dịch
vụ nào đó. DoS đánh vào bản chất tự nhiên của một quá trình truyền thông của client và
server, nếu có quá nhiều clicent truy cập thì server sẽ bị quá tải, buộc lòng phải từ chối
các yêu cầu truy cập khác. Tấn công từ chối dịch vụ là một trong những thủ đoạn nhằm
ngăn cản những người dùng hợp pháp khả năng truy cập và sử dụng vào một dịch vụ nào
đó. DoS có thể làm ngưng hoạt động của một máy tính, một mạng nội bộ thậm chí cả một
hệ thống mạng rất lớn. Về bản chất thực sự của DoS, kẻ tấn công sẽ chiếm dụng một
lượng lớn tài nguyên mạng như băng thông, bộ nhớ... và làm mất khả năng xử lý các yêu
cầu dịch vụ từ các khách hàng khác. Tấn công DoS nói chung không nguy hiểm như các
kiểu tấn công khác, vì kẻ tấn công ít có khả năng thâm nhập hay chiếm được thông tin dữ
liệu của hệ thống. Tuy nhiên, nếu máy chủ tồn tại mà không thể cung cấp thông tin, dịch
vụ cho người sử dụng thì sự tồn tại này là không có ý nghĩa, đặc biệt là các hệ thống phục
vụ các giao dịch điện tử thì thiệt hại là vô cùng lớn. Đối với hệ thống máy chủ được bảo
mật tốt, khó thâm nhập, việc tấn công từ chối dịch vụ DoS được các hacker sử dụng như
là “cú chót” để triệt hạ hệ thống đó.
Nó bao gồm: làm tràn ngập mạng, mất kết nối với dịch vụ… mà mục đích cuối

cùng là máy chủ (Server) không thể đáp ứng được các yêu cầu sử dụng dịch vụ từ các
máy trạm (Client).
Tấn công từ chối dịch vụ phân tán (DDoS - Distributed Denial Of Service) là kiểu
tấn công làm cho hệ thống máy tính hay hệ thống mạng quá tải, không thể cung cấp dịch
vụ hoặc phải dừng hoạt động, song từ nhiều nguồn tấn công khác nhau, phân tán trên
mạng. Sự khác biệt cơ bản giữa tấn công DoS và DDoS là DDoS sử dụng một mạng lưới


tấn công rộng khắp, gồm nhiều máy tấn công nằm rải rác trên mạng (còn gọi là các máy
tính ma - Zoombi, hay mạng Botnet).
Có nhiều loại công cụ tấn công DoS khác nhau và mỗi loại sử dụng những cơ chế
riêng để làm tràn ngập hệ thống nhưng kết quả cuối cùng vẫn là như nhau – làm cho hệ
thống mục tiêu trở nên quá bận rộn hay bị quá tải mà không thể đáp ứng được các yêu
cầu của người dùng, và một khi không thể đáp ứng được những yêu cầu này sẽ làm thiệt
hại về mặt kinh tế, uy tín cho đơn vị chủ quản của trang web bị tấn công (thường thì DoS
hay nhắm vào các trang web có chức năng kinh doanh trực tuyến, ứng dụng thương mại
điện tử). Ví dụ như vào các kì đại hội thể thao diễn ra như Euro, WorldCup thì các nhà cái
như Bet365.Com, SportingBet … có rất nhiều khách hàng đăng kí tham gia dự đoán kết
quả của những trận cầu nóng bỏng đen đến các nguồn lợi khổng lồ. Và các hacker biết rất
rõ những điều này, chính vì vậy họ thường hăm dọa những nhà cái trên sẽ tấn công DoS /
DDoS làm tê liệt trang web ngăn không cho khách hàng truy cập, còn nếu không muốn bị
tấn công thì phải đồng ý trả cho các hacker một khoản tiền lớn. Hình thức tống tiền này
được các băng nhóm tội phạm mạng ưa chuộng vì đem đến hiệu quả cao.
-

Dấu hiệu khi bị tấn công DoS
 Thông thường thì hiệu suất mạng sẽ rất chậm.
 Không thể sử dụng website.
 Không truy cập được bất kỳ website nào.
 Tăng lượng thư rác nhanh chóng.

 Tấn công từ chối dịch cũng có thể dẫn tới vấn đề về nhánh mạng của máy
đang bị tấn công. Ví dụ băng thông của router giữa Internet và Lan có thể bị
tiêu thụ bởi tấn công, làm tổn hại không chỉ máy tính ý định tấn công mà còn
là toàn thể mạng.

2

Lịch sử các cuộc tấn công và phát triển của DoS
-

Các tấn công DoS bắt đầu vào khoảng đầu những năm 90. Đầu tiên, chúng hoàn

toàn “nguyên thủy”, bao gồm chỉ một kẻ tấn công khai thác băng thông tối đa từ nạn
nhân, ngăn những người khác được phục vụ. Điều này được thực hiện chủ yếu bằng


cách dùng các phương pháp đơn giản như ping floods, SYN floods và UDP floods. Sau
đó, các cuộc tấn công trở nên phức tạp hơn, bằng cách giả làm nạn nhân, gửi vài thông
điệp và để các máy khác làm ngập máy nạn nhân với các thông điệp trả lời. (Smurf
attack, IP spoofing…).
-

Các tấn công này phải được đồng bộ hoá một cách thủ công bởi nhiều kẻ tấn công

để tạo ra một sự phá huỷ có hiệu quả. Sự dịch chuyển đến việc tự động hoá sự đồng bộ,
kết hợp này và tạo ra một tấn công song song lớn trở nên phổ biến từ 1997, với sự ra
đời của công cụ tấn công Dos đầu tiên được công bố rộng rãi, Trinoo. Nó dựa trên tấn
công UDP flood và các giao tiếp master-slave (khiến các máy trung gian tham gia vào
trong cuộc tấn công bằng cách đặt lên chúng các chương trình được điều khiển từ xa).
Trong những năm tiếp theo, vài công cụ nữa được phổ biến – TFN (tribe flood

network), TFN2K, vaf Stacheldraht.
-

Tuy nhiên, chỉ từ cuối năm 1999 mới có những báo cáo về những tấn công như

vậy, và đề tài này được công chúng biết đến chỉ sau khi một cuộc tấn công lớn vào các
site công cộng tháng 2/2000. Trong thời gian 3 ngày, các site Yahoo.com,
amazon.com, buy.com, cnn.com và eBay.com đã đặt dưới sự tấn công (ví dụ như
Yahoo bị ping với tốc độ 1 GB/s). Từ đó các cuộc tấn công Dos thường xuyên xảy ra ví
dụ : Vào ngày 15 tháng 8 năm 2003, Microsoft đã chịu đợt tấn công DoS cực mạnh và
làm gián đoạn websites trong vòng 2 giờ; Vào lúc 15:09 giờ GMT ngày 27 tháng 3
năm 2003: toàn bộ phiên bản tiếng anh của website Al-Jazeera bị tấn công làm gián


đoạn trong nhiều giờ.
- Tháng 2/2007, hơn 10.000 máy chủ của game trực tuyến như Return to Castle
Wolfenstein, Halo, Counter-Strike …bị nhóm RUS tấn công với hệ thống điều khiển chủ
yếu đặt tại Nga, Uzbekistan và Belarus.
- Trong suốt các tuần đầu của cuộc chiến Nam Ossetia 2008, các trang web của chính phủ
Georgia luôn trong tình trạng quá tải, gồm các trang web ngân hàng quốc gia và của tổng
thống Georgia Mikhail Saakashvili. Chính phủ Nga phủ nhận mọi sự cáo buộc cho rằng
họ đứng đằng sau vụ tấn công.
- Tháng 8/2009, các vụ DDoS nhắm tới một loạt trang mạng xã hội đình đám như
Facebook, Twitter, LiveJournal và một số website của Google được thực hiện chỉ để
-

"khóa miệng" một blogger có tên Cyxymu ở Georgia
Ngày 28/11/2010, WikiLeaks bị tê liệt vì DDoS ngay khi họ chuẩn bị tung ra những tài
liệu mật của chính phủ Mỹ.
- Ngày 7/12/2010, nhóm hacker có tên Anonymous đánh sập website Visa.com sau khi tổ

chức những cuộc tấn công tương tự vào Mastercard và PayPal để trả đũa cho việc chủ

WikiLeaks bị tạm giam ở Anh.
- Ngày 3/3/2011, dịch vụ blog nổi tiếng thế giới WordPress bị tấn công.
- Ngày 4/3/2011, 40 trang web của các cơ quan chính phủ Hàn Quốc bị tê liệt vì DDoS.
3
1

Mục đích, mục tiêu của tấn công DoS
Mục đích

- Cố gắng chiếm băng thông mạng và làm hệ thống mạng bị ngập(flood), khi đó hệ thống
sẽ không có khả năng đáp ứng những dịch vụ khác cho người dùng bình thường.
- Cố gắng làm ngắt kết nối giữa 2 máy, và ngăn chặn quá trình truy nhập vào dịch vụ
- Cố gắng ngăn chặn những người dùng cụ thể vào một dịch vụ nào đó
-Cố gắng ngăn chặn các dịch vụ không cho người khác có khả năng truy cập vào các dịch
vụ như bị:
+ Tắt mạng


+ Tổ chức không hoạt động
+ Tài chính bị mất
2

Mục tiêu
Như chúng ta biết ở trên tấn công DoS xảy ra khi kẻ tấn công sử dụng hết tài

nguyên của hệ thống không thể đáp ứng cho người dùng bình thường được vậy các tài
nguyên chúng thường sử dụng để tấn công là :
- Tạo ra sự khan hiếm, những giới hạn và không đổi mới tài nguyên

- Băng thông của hệ thống mạng (Network Bandwidth), bộ nhớ, ổ đĩa, và CPU Time hay
cấu trúc dữ liệu đều là mục tiêu của tấn công DoS
- Tấn công vào hệ thống khác phục vụ cho mạng máy tính như: hệ thống điều hòa, hệ
thống điện, hệ thống làm mát và nhiều tài nguyên khác của doanh nghiệp.
- Phá hoại hoặc thay đổi các thông tin cấu hình
- Phá hoại tầng vật lý hoặc các thiết bị mạng như nguồn điện, điều hòa…
4

Phân loại
Có nhiều loại công cụ tấn công DoS khác nhau và mỗi loại sử dụng những cơ chế

riêng để làm tràn ngập hệ thống nhưng kết quả cuối cùng vẫn là như nhau – làm cho hệ
thống mục tiêu trở nên quá bận rộn hay bị quá tải mà không thể đáp ứng được các yêu
cầu của người dùng, và một khi không thể đáp ứng được những yêu cầu này sẽ làm thiệt
hại về mặt kinh tế, uy tín cho đơn vị chủ quản của trang web bị tấn công (thường thì DoS
hay nhắm vào các trang web có chức năng kinh doanh trực tuyến, ứng dụng thương mại
điện tử). Ví dụ như vào các kì đại hội thể thao diễn ra như Euro, WorldCup thì các nhà cái
như Bet365.Com, SportingBet … có rất nhiều khách hàng đăng kí tham gia dự đoán kết
quả của những trận cầu nóng bỏng đen đến các nguồn lợi khổng lồ. Và các hacker biết rất
rõ những điều này, chính vì vậy họ thường hăm dọa những nhà cái trên sẽ tấn công DoS /
DDoS làm tê liệt trang web ngăn không cho khách hàng truy cập, còn nếu không muốn bị
tấn công thì phải đồng ý trả cho các hacker một khoản tiền lớn. Hình thức tống tiền này
được các băng nhóm tội phạm mạng ưa chuộng vì đem đến hiệu quả cao.


Có 2 loại:
Loại 1: Dựa theo đặc điểm của hệ thống bị tấn công: gây quá tải khiến hệ thống mất khả
năng phục vụ
• Tin tặc gửi rất nhiều yêu cầu dịch vụ, bắt chước như người dùng thực sự yêu cầu
đối với hệ thống

• Để giải quyết yêu cầu, hệ thống phải tốn tài nguyên (CPU, bộ nhớ, đường truyền,
…). Mà tài nguyên này thì là hữu hạn. Do đó hệ thống sẽ không còn tài nguyên để
phục vụ các yêu cầu sau
• Hình thức chủ yếu của kiểu này tấn công từ chối dịch vụ phân tán
Loại 2 : Làm cho hệ thống bị treo, tê liệt do tấn công vào đặc điểm của hệ thống hoặc lỗi
về an toàn thông tin
• Tin tặc lợi dụng kẽ hở an toàn thông tin của hệ thống để gửi các yêu cầu hoặc các
gói tin không hợp lệ (không đúng theo tiêu chuẩn) một cách cố ý, khiến cho hệ
thống bị tấn công khi nhận được yêu cầu hay gói tin này, xử lý không đúng hoặc
không theo trình tự đã được thiết kế, dẫn đến sự sụp đổ của chính hệ thống đó
• Điển hình là kiểu tấn công Ping of Death hoặc SYN Flood
5

Các cách thức tấn công
Có một số phương pháp gây ra từ chối dịch vụ. Tất cả những cách tấn công trên

đều nhằm mục đích làm giảm chức năng của hệ thống mạng và có thể dẫn đến đánh sập
hệ thống, làm hệ thống không có khả năng hoạt động. Tạo ra một hiệu ứng DoS là tất cả
các cách có thể để phá hỏng hoặc làm cho hệ thống ngừng hoạt động. Có nhiều cách để
làm một hệ thống ngừng hoạt động, và thường sẽ tồn tại nhiều lỗ hổng trong hệ thống để
những kẻ tấn công sẽ cố gắng khai thác hoặc định vị để tấn công vào trong chúng cho đến
khi hắn nhận được kết quả mong muốn: mục tiêu bị phải chuyển sang trạng thái offline.


1

Tấn công thông qua kết nối (SYN Flood Attack)
Được xem là một trong những kiểu tấn công DoS kinh điển nhất. Lợi dụng sơ hở

của thủ tục TCP khi “bắt tay ba chiều”, mỗi khi client (máy khách) muốn thực hiện kết

nối (connection) với server (máy chủ) thì nó thực hiện việc bắt tay ba lần (three – ways
handshake) thông qua các gói tin (packet).
• Bước 1: Client (máy khách) sẽ gửi các gói tin (packet chứa SYN=1) đến máy chủ
để yêu cầu kết nối.
• Bước 2: Khi nhận được gói tin này, server sẽ gửi lại gói tin SYN/ACK để thông
báo cho client biết là nó đã nhận được yêu cầu kết nối và chuẩn bị tài nguyên cho
việc yêu cầu này. Server sẽ giành một phần tài nguyên hệ thống như bộ nhớ đệm
(cache) để nhận và truyền dữ liệu. Ngoài ra, các thông tin khác của client như địa
chỉ IP và cổng (port) cũng được ghi nhận.
• Bước 3: Cuối cùng, client hoàn tất việc bắt tay ba lần bằng cách hồi âm lại gói tin
chứa ACK cho server và tiến hành kết nối.


Do TCP là thủ tục tin cậy trong việc giao nhận (end-to-end) nên trong lần bắt tay
thứ hai,server gửi các gói tin SYN/ACK trả lời lại client mà không nhận lại được hồi âm
của client để thực hiện kết nối thì nó vẫn bảo lưu nguồn tài nguyên chuẩn bị kết nối đó và
lập lại việc gửi gói tin SYN/ACK cho client đến khi nào nhận được hồi đáp của máy
client.
Điểm mấu chốt là ở đây là làm cho client không hồi đáp cho Server. Và có hàng
nhiều, nhiều client như thế trong khi server vẫn “ngây thơ” lặp lại việc gửi packet đó và
giành tài nguyên để chờ “người về” trong lúc tài nguyên của hệ thống là có giới hạn! Các
hacker tấn công sẽ tìm cách để đạt đến giới hạn đó.


Nếu quá trình đó kéo dài, server sẽ nhanh chóng trở nên quá tải, dẫn đến tình trạng
crash (treo) nên các yêu cầu hợp lệ sẽ bị từ chối không thể đáp ứng được. Có thể hình
dung quá trình này cũng giống hư khi máy tính cá nhân (PC) hay bị “treo” khi mở cùng
lúc quá nhiều chương trình cùng lúc vậy .
Thông thường, để giả địa chỉ IP gói tin, các hacker có thể dùng Raw Sockets
(không phải gói tin TCP hay UDP) để làm giả mạo hay ghi đè giả lên IP gốc của gói tin.

Khi một gói tin SYN với IP giả mạo được gửi đến server, nó cũng như bao gói tin khác,
vẫn hợp lệ đối với server và server sẽ cấp vùng tài nguyên cho đường truyền này, đồng
thời ghi nhận toàn bộ thông tin và gửi gói SYN/ACK ngược lại cho Client. Vì địa chỉ IP
của client là giả mạo nên sẽ không có client nào nhận được SYN/ACK packet này để hồi
đáp cho máy chủ. Sau một thời gian không nhận được gói tin ACK từ client, server nghĩ
rằng gói tin bị thất lạc nên lại tiếp tục gửi tiếp SYN/ACK, cứ như thế, các kết nối
(connections) tiếp tục mở.


Nếu như kẻ tấn công tiếp tục gửi nhiều gói tin SYN đến server thì cuối cùng server
đã không thể tiếp nhận thêm kết nối nào nữa, dù đó là các yêu cầu kết nối hợp lệ. Việc
không thể phục nữa cũng đồng nghĩa với việc máy chủ không tồn tại. Việc này cũng đồng
nghĩa với xảy ra nhiều tổn thất do ngưng trệ hoạt động, đặc biệt là trong các giao dịch
thương mại điện tử trực tuyến.
Đây không phải là kiểu tấn công bằng đường truyền cao, bởi vì chỉ cần một máy
tính nối Internet qua ngã dial-up đơn giản cũng có thể tấn công kiểu này (tất nhiên sẽ lâu
hơn chút).


2

Lợi dụng tài nguyên của nạn nhân để tấn công
-

Tương tự như SYN flood
Nhưng hacker sử dụng chính IP của mục tiêu cần tấn công để dùng làm địa chỉ IP

-

nguồn trong gói tin

Đẩy mục tiêu vào một vòng lặp vô tận khi cố gắng thiết lập kết nối với chính nó

-

UDP flood
Hacker gửi gói tin UDP echo với địa chỉ IP nguồn là cổng loopback của chính mục

-

tiêu cần tấn công hoặc của một máy tính trong cùng mạng
Với mục tiêu sử dụng cổng UDP echo (port 7) để thiết lập việc gửi và nhận các gói
tin echo trên 2 máy tính (hoặc giữa mục tiêu với chính nó nếu mục tiêu có cấu
hình cổng loopback), khiến cho 2 máy tính này dần dần sử dụng hết băng thông


của chúng, và cản trở hoạt động chia sẻ tài nguyên mạng của các máy tính khác
trong mạng.
3

Sử dụng băng thông- DDoS (Distributed Denial of Service)
Xuất hiện vào mùa thu 1999, so với tấn công DoS cổ điển, sức mạnh của DDoS

cao hơn gấp nhiều lần. Hầu hết các cuộc tấn công DDoS nhằm vào việc chiếm dụng băng
thông (bandwidth) gây nghẽn mạch hệ thống dẫn đến hệ thống ngưng hoạt động. Đây là
phương pháp tấn công hiện đại có sự kết hợp của nhiều tầng tính toán phân tán. Khác biệt
đáng chú ý trong phương pháp tấn công này là nó bao gồm hai giai đoạn khác nhau. Giai
đoạn đầu tiên, thủ phạm bố trí các máy tính phân tán trên Internet và cài đặt các phần
mềm chuyên dụng trên các máy chủ để hỗ trợ tấn công. Giai đoạn thứ hai, máy tính bị
xâm nhập (được gọi là Zombie) sẽ cung cấp thông tin qua kẻ trung gian (được gọi là
Master) để bắt đầu cuộc tấn công. Để thực hiện thì kẻ tấn công tìm cách chiếm dụng và

điều khiển nhiều máy tính/mạng máy tính trung gian (đóng vai trò zombie) từ nhiều nơi
để đồng loạt gửi ào ạt các gói tin (packet) với số lượng rất lớn nhằm chiếm dụng tài
nguyên và làm tràn ngập đường truyền của một mục tiêu xác định nào đó. Một cuộc tấn
công DDoS cần phải được chuẩn bị kỹ lưỡng bởi kẻ tấn công. Trước tiên là bước chiếm
dụng các máy khác làm lực lượng cho bản thân. Việc này được thực hiện bằng cách tìm
máy dễ bị tổn thương, sau đó đột nhập vào chúng, và cài đặt mã tấn công. Tiếp theo đó,
kẻ tấn công thiết lập các kênh giao tiếp giữa các máy, để chúng có thể được kiểm soát và
tham gia cuộc tấn công một cách có phối hợp. Việc này được thực hiện bằng cách sử
dụng một kiến trúc handler/agent hoặc một điều khiển và kênh điều khiển thông qua
mạng IRC. Một khi các mạng DDoS được xây dựng, nó có thể được sử dụng để tấn công
nhiều lần, chống lại các mục tiêu khác nhau.


Theo cách này thì dù băng thông có bao nhiêu đi chăng nữa thì cũng không thể
chịu đựng được số lượng hàng triệu các gói tin đó nên hệ thống không thể hoạt động
được nữa và như thế dẫn đến việc các yêu cầu hợp lệ khác không thể nào được đáp ứng,
server sẽ bị “đá văng” khỏi internet.
Nói nôm na là nó giống như tình trạng kẹt xe vào giờ cao điểm vậy. Ví dụ rõ nhất
là sự “cộng hưởng” trong lần truy cập điểm thi đại học vừa qua khi có quá nhiều máy tính
yêu cầu truy cập cùng lúc làm dung lượng đường truyền hiện tại của máy chủ không tài
nào đáp ứng nổi.
Ngoài ra, với kiểu tấn công như vậy sẽ giấu đi thông tin của kể tấn công thực sự:
chính là kẻ đưa ra các lệnh điều khiển cho các Zombie .Mô hình đa cấp của các cuộc tấn
công DDoS cộng với khả năng giả mạo của các gói tin và mã hóa thông tin đã gây nhiều
khó khăn cho quá trình tìm kiếm, phát hiện kẻ tấn công thực sự.
Hiện nay, đã xuất hiện dạng virus/worm có khả năng thực hiện các cuộc tấn công
DDoS.Khi bị lây nhiễm vào các máy khác, chúng sẽ tự động gửi các yêu cầu phục vụ đến


một mục tiêu xác định nào đó vào thời điểm xác định để chiếm dụng băng thông hoặc tài

nguyên hệ thống máy chủ. Trường hợp của MyDoom là ví dụ tiêu biểu cho kiểu này.
Một cuộc tấn công DDoS cần phải được chuẩn bị kỹ lưỡng bởi kẻ tấn công. Trước
tiên là bước chiếm dụng các máy khác làm lực lượng cho bản thân. Việc này được thực
hiện bằng cách tìm máy dễ bị tổn thương, sau đó đột nhập vào chúng, và cài đặt mã tấn
công. Tiếp theo đó, kẻ tấn công thiết lập các kênh giao tiếp giữa các máy, để chúng có thể
được kiểm soát và tham gia cuộc tấn công một cách có phối hợp. Việc này được thực hiện
bằng cách sử dụng một kiến trúc handler/agent hoặc một điều khiển và kênh điều khiển
thông qua mạng IRC. Một khi các mạng DDoS được xây dựng, nó có thể được sử dụng
để tấn công nhiều lần, chống lại các mục tiêu khác nhau.
4

Sử dụng nguồn tài nguyên khác


-

Kiểu tấn công này cần một hệ thống rất quan trọng là mạng khuyếch đại
Hacker dùng địa chỉ của máy tính cần tấn công để gửi gói tin ICMP echo cho toàn

bộ mạng (broadcast). Các máy tính trong mạng sẽ đồng loạt gửi gói tin ICMP reply cho
máy tính mà hacker muốn tấn công. Kết quả là máy tính này sẽ không thể xử lý kịp thời
một lượng lớn thông tin và dẫn tới bị treo máy.
- Trong mạng chuyển mạch gói, dữ liệu được chia thành nhiều gói tin nhỏ, mỗi gói tin có
một giá trị offset riêng và có thể truyền đi theo nhiều con đường khác nhau để tới đích.
Tại đích, nhờ vào giá trị offset của từng gói tin mà dữ liệu lại được kết hợp lại như ban
đầu. Lợi dụng điều này, hacker có thể tạo ra nhiều gói tin có giá trị offset trùng lặp nhau
gửi đến mục tiêu muốn tấn công. Kết quả là máy tính đích không thể sắp xếp được
những gói tin này và dẫn tới bị treo máy vì bị "vắt kiệt" khả năng xử lý
- Lợi dụng việc cấu hình thiếu an toàn như việc không xác thực thông tin trong việc
gửi/nhận bản tin cập nhật (update) của router... mà kẻ tấn công sẽ thay đổi trực tiếp hoặc

từ xa các thông tin quan trọng này khiến cho những người dùng hợp pháp không thể sử
-

dụng dịch vụ
Lợi dụng quyền hạn của chính bản thân kẻ tấn công đối với các thiết bị trong hệ thống

-

mạng để tiếp cận phá hoại các thiết bị phần cứng như router, switch…
Ngoài ra còn có kiểu tấn công từ chối dịch vụ phản xạ nhiều vùng DRDoS (Distributed
Reflection Denial of Service).
Xuất hiện vào đầu năm 2002, là kiểu tấn công mới nhất, mạnh nhất trong họ DoS.
Nếu được thực hiện bởi kẻ tấn công có tay nghề thì nó có thể hạ gục bất cứ hệ thống nào
trên thế giới trong phút chốc.
Mục tiêu chính của DRDoS là chiếm đoạt toàn bộ băng thông của máy chủ, tức là
làm tắc nghẽn hoàn toàn đường kết nối từ máy chủ vào xương sống của Internet và tiêu
hao tài nguyên máy chủ. Trong suốt quá trình máy chủ bị tấn công bằng DRDoS, không
một máy khách nào có thể kết nối được vào máy chủ đó. 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. Kẻ tấn công thực hiện bằng cách 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, Micorosoft,… chẳng hạn để
các server này gửi các gói tin SYN/ACK đến server mục tiêu. Các server lớn, đường
truyền mạnh đó đã vô tình đóng vai trò zoombies cho kẻ tấn công như trong DDoS. Quá
trình gửi cứ lặp lại liên tục với nhiều địa chỉ IP giả từ kẻ tấn công, với nhiều server lớn
tham gia nên server mục tiêu nhanh chóng bị quá tải, bandwidth bị chiếm dụng bởi server
lớn. Tính “nghệ thuật” là ở chỗ chỉ cần với một máy tính với modem 56kbps, một hacker

lành nghề có thể đánh bại bất cứ máy chủ nào trong giây lát mà không cần chiếm đoạt bất
cứ máy nào để làm phương tiện thực hiện tấn công.
6
1

Những công cụ tấn công DoS
DoSHTTP + Sprut

Giao diện tool DoSHTTP và Sprut


Đây là 2 phần mềm làm “Flood” Website ở mức độ nhẹ và nó thực hiện bằng cách gửi
các gói tin Request đến port 80 của website.
DoSHTTP là một phần mềm sử dụng dễ dàng, mạnh mẽ để tấn công tràn ngập HTTP
nhằm mục địch kiểm thử trên Windows. DoSHTTP bao gồm xác nhận URL, chuyển
hướng HTTP và giám sát hiệu suất.Công cụ DoSHTTP có thể giúp các chuyên gia CNTT
thử nghiệm hiệu năng máy chủ web và đánh giá độ bảo mật.
2

LOIC

LOIC là ứng dụng tấn công từ chối dịch vụ, được viết bằng C#. Loic thực hiện tấn công
từ chối dịch vụ tấn công (hoặc khi được sử dụng bởi nhiều cá nhân, đó sẽ là một cuộc tấn
công DDoS).
Trên một trang web mục tiêu làm ngập các máy chủ với các gói tin TCP hoặc UDP với ý
định làm gián đoạn dịch vụ của một máy chủ cụ thể. Công cụ LOIC là một botnet tình
nguyện kết nối đến một máy chủ từ xa mà chỉ đạo các cuộc tấn công. Hiện nay, có 40.000
người kết nối với botnet.



3

UDP Flood

Giao diện phần mềm UDP Flood
UDPFlood là một chương trình gửi các gói tin UDP. Nó gửi ra ngoài những gói tin UDP
tới một địa chỉ IP và port không cố định.
Gói tin có khả năng là một đoạn mã văn bản hay một số lượng dữ liệu được sinh ngẫu
nhiên hay từ một file được sử dụng để kiểm tra khả năng đáp ứng của server.


4

rDoS.

Giao diện tool rDoS
Phần mềm chạy trên nền TCP và phương pháp tấn công là làm ngập lụt SYN. Chỉ cần
nhập IP của Vitim và Port muốn tấn công thì chương trình sẽ tự động chạy.
7

Xu hướng của DoS
Có một cuộc chạy đua liên tục giữa những kẻ tấn công và người phòng thủ. Ngay

sau khi có một phương thức hiệu quả bảo vệ chống lại một loại tấn công, những kẻ tấn
công thay đổi chiến thuật, tìm kiếm một cách để vượt qua những biện pháp bảo vệ này.
An ninh mạng được nâng cao, kẻ tấn công càng cải thiện công cụ của họ, thêm các tùy
chọn chỉ định cấp giả mạo hoặc mặt nạ mạng giả mạo. Một số lượng lớn các cuộc tấn
công giả mạo ngày nay sử dụng subnet, vượt qua được hầu hết các bộ lọc giả mạo ip.
Các kỹ thuật mới trong chống phân tích khiến việc phát hiện ra nhiệm vụ của công cụ tấn
công khó khăn hơn. Việc che giấu mã thực thi bằng mã hóa thực hiện trong cả hệ điều

hành Windows và Unix. Các mã che giấu như burneye, Shiva, và burneye2 đang được
giám sát bởi các nhà phân tích an ninh để giải mã được chúng.


Xu hướng phát triển các công cụ tấn công DDoS theo các chiến lược nâng cao phản
ứng phòng thủ sẽ vẫn tiếp tục. Điều này được dự báo trong phân tích trinoo gốc, và xu
hướng sẽ tiếp tục không suy giảm. Có rất nhiều kịch bản tiềm năng của DDoS rất khó
khăn cho cơ chế bảo vệ để xử lý.
8

Kết luận chương 1.
Tấn công bằng từ chối dịch vụ DoS (Denial of Service) có thể mô tả như hành

động ngăn cản những người dùng hợp pháp khả năng truy cập và sử dụng vào một dịch
vụ nào đó. Có nhiều loại công cụ tấn công DoS khác nhau và mỗi loại sử dụng những cơ
chế riêng để làm tràn ngập hệ thống nhưng kết quả cuối cùng vẫn là như nhau – làm cho
hệ thống mục tiêu trở nên quá bận rộn hay bị quá tải mà không thể đáp ứng được các yêu
cầu của người dùng. Để có giải pháp toàn diện phòng chống tấn công DoS hiệu quả, việc
nghiên cứu về cách phát hiện các dạng tấn công DoS là khâu cần thực hiện đầu tiên.Vấn
đề này sẽ được nghiên cứu trong chương 2.


2

TÌM HIỂU GIẢI PHÁP PHÁT HIỆN TẤN CÔNG DỊCH VỤ
BẰNG PHƯƠNG PHÁP PHÂN TÍCH THỐNG KÊ

Tấn công từ chối dịch vụ (DoS) đã phát triển đáng lo ngại trong những năm gần đây
và là mối đe dọa thường trực với hệ thống mạng của các cơ quan chính phủ và các doanh
nghiệp. Tấn công DoS rất khó phòng chống hiệu quả do quy mô rất lớn và bản chất phân

tán của nó. Để có giải pháp toàn diện phòng chống tấn công DoS hiệu quả, việc nghiên
cứu về cách phát hiện các dạng tấn công DoS là khâu cần thực hiện đầu tiên. Hiện nay
các hệ thống phát hiện đang được phát triển và khá công phu. Hầu hết đã phát hiện được
các loại tấn công Dos và DDos nhưng khó có thể đạt được độ chính xác cao.
Những hệ thống phát hiện Dos này thường sử dụng rất nhiều phương thức để dò tìm
và phát hiện. Thông thường các công cụ này so sánh lưu lượng hiện tại với lưu lượng có
thể chấp nhận được. Công nghệ này vẫn còn có một vài thiếu sót. Trước tiên, ngưỡng này
thường đặt tĩnh và yêu cầu người sử dụng phải cấu hình để phù hợp với mọi môi trường,
tuy nhiên sẽ khó có thể thay đổi thích ứng với môi trường mới. Thứ hai, chỉ có một số ít
các ngưỡng được thiết lập vì sự thống kê chi tiết các giao thức không có giá trị cho người
sử dụng. Thứ 3, ngưỡng chỉ áp dụng ở mức độ tổng hợp cao. Sự thiếu sót này có thể dẫn
tới sự đánh giá sai về tính rõ ràng và tính phủ định của hệ thống phát hiện. Thậm chí một
phát hiện sự xâm hại có thể chặn nhầm một địa chỉ hợp lệ.
Do vậy, để hiệu quả một hệ thống phát hiện xâm nhập phải thêm nhiều tính năng để
phát hiện và phân biệt một sự tấn công với các hoạt động bình thường.
1

Yêu cầu đối với hệ thống phát hiện DoS
Hiện nay các hình thức tấn công Dos rất đa dạng và luôn được phát triển không

ngừng. Càng ngày càng có nhiều kiểu tấn công mới. Do vậy, một hệ thống phát hiện Dos
thật sự hiệu quả khi phát hiện được hầu hết các kiểu tấn công. Luôn đánh giá được hệ


thống mạng khi có những dấu hiệu bất thường, phải cập nhật thường xuyên những kiểu
tấn công mới để có biện pháp phát hiện nhanh nhất .
Khi một cuộc tấn công Dos xảy ra. Bước đầu tiên và cũng là quan trọng nhất là phát
hiện chính xác các gói tin tấn công. Hệ thống phòng thủ phải đáp ứng trong thời gian
thực, đặc biệt là tốc độ phản ứng phải cao. Tránh trường hợp chặn nhầm gói tin hợp lệ.
Thực tế đã chứng minh, khi các cuộc tấn công DoS/DDos xảy ra. Lập tức phân tích

sẽ thấy được lưu lượng mạng rất khác thường. Do đó hầu hết các thuật toán phân tích
phát hiện tấn công DoS/DDos hiện nay đều dựa trên tính khác thường của lưu lượng
mạng. Một số các công nghệ thống kê được áp dụng để tiến hành phân tích, thống kê
những lưu lượng tải làm việc để phát hiện. Từ những kỹ thuật phân tích này, sẽ có những
thuật toán phát hiện để đưa ra các tham số hoặc công nghệ thống kê, các mức độ nguy
hiểm của cuộc tấn công.
Kỹ thuật phát hiện dựa trên nhận biết, phân biệt nhờ tăng lên dòng dữ liệu không
hợp lệ và trường hợp flask từ lưu lượng gói tin hợp lệ. Tất cả kỹ thuật phát hiện định
nghĩa tấn công không bình thường và đáng chú ý độ lệch từ khoảng thời gian lưu lượng
mạng trạng thái thống kê bình thường.
2
1

Tổng quan về phát hiện các cuộc tấn công DDos
Phát hiện nguồn tấn công
Giả sử tổng số lưu lượng để tắt một mạng là V, và lưu lượng một cuộc tấn công

DDos là U.Chúng ta có thể dễ dàng phát hiện tấn công tại nạn nhân khi V lớn hơn đáng
kể lưu lượng bình thường. Tuy nhiên, số lượng tấn công gần nguồn sẽ không phân biệt
được từ một lưu lượng bình thường, tỷ số V/U sẽ rất nhỏ nếu U đủ lớn. Thông thường
như các phương án đã đặt ra đó là đánh dấu gói tin và truy tìm ngược lại. Các phương án
này thường không có hiệu quả cao khi mà cuộc tấn công diễn ra với quy mô rất lớn. Do
vậy việc phát hiện tấn công gần nguồn sẽ tránh được tắc nghẽn và đạt hiệu quả cao nhất.


×