HỌC VIỆN KỸ THUẬT MẬT MÃ
KHOA CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI FIREWALL
Tìm hiểu tấn công từ chối dịch vụ(DOS và DDOS)
và các chính sách an ninh FW chống tấn công này
MỤC LỤC
1
ĐỀ TÀI FIREWALL 1
CHƯƠNG 1: TỔNG QUAN VỀ TỪ CHỐI DỊCH VỤ VÀ CÁCH PHÒNG
CHỐNG 3
1. Tổng quan về tấn công từ chối dịch vụ: 3
KẾT QUẢ THU ĐƯỢC VÀ PHƯƠNG HƯỚNG PHÁT TRIỂN 27
TÀI LIỆU THAM KHẢO 28
DANH MỤC HÌNH ẢNH
Hình 1: Một mô hình Dos cơ bản
Hình2: 1 mô hình DDOS
Hình 3: SYN attack
Hình 4: Mô hình tấn công khuếch đại
Hình 5: Mô hình tấn công DdoS
Hình 7: Mô hình agent handler
Hình 6: Sơ đồ mạng tấn công DDOS
Hình 8: Mô hình tấn công dạng IRC-Based
2
Hình 9: Smurf Attack (DRDoS)
CHƯƠNG 1: TỔNG QUAN VỀ TỪ CHỐI DỊCH VỤ
VÀ CÁCH PHÒNG CHỐNG
1. Tổng quan về tấn công từ chối dịch vụ:
1.1 Khái Niệm về tấn công từ chối dịch vụ:
1.1.1 Giới thiệu về DoS
- Tấn công DoS là một kiểu tấn công mà một người làm cho một hệ
thống không thể sử dụng, hoặc làm cho hệ thống đó chậm đi một cách
đáng kể với người dùng bình thường, bằng cách làm quá tải tài nguyên
của hệ thống .
- Nếu kẻ tấn công không có khả năng thâm nhập được vào hệ thống, thì
chúng cố gắng tìm cách làm cho hệ thống đó sụp đổ và không có khả
năng phục vụ người dùng bình thường đó là tấn công Denial of Service
(DoS).
Mặc dù tấn công DoS không có khả năng truy cập vào dữ liệu thực của
hệ thống nhưng nó có thể làm gián đoạn các dịch vụ mà hệ thống đó cung
cấp. Như định nghĩa trên DoS khi tấn công vào một hệ thống sẽ khai thác
những cái yếu nhất của hệ thống để tấn công, những mục đích của tấn
công DoS
1.1.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ụ.
3
Đ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
DDoS đầ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 sả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ờ
1.1.3 Mục đích của tấn công DoS và hiểm họa
• Mục đích của tấn công DoS
4
- 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 mạ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 hai máy, và ngăn chặn quá trình truy cậ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.
- Khi tấn công DoS xảy ra người dùng có cảm giác khi truy cập vào dịch
vụ đó như bị:
+ Disable Network - Tắt mạng
+ Disable Organization - Tổ chức không hoạt động
+ Financial Loss – Tài chính bị mất
Như chúng ta biết ở bên 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 và 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à gì:
- 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 hoà, hệ thống điện, hệt hống làm mát và nhiều tài nguyên khác của
doanh nghiệp. Bạn thử tưởng tượng khi nguồn điện vào máy chủ web bị
ngắt thì người dùng có thể truy cập vào máy chủ đó không.
- 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 hoà…
1.2 Phân loại:
1.2.1 Trường hợp đơn giản 1-1 (DoS: tấn công từ chối dịch vụ):
5
DoS (Denial of Service) là hình thức tấn công từ chối dịch vụ, có nhiều
cách để thực hiện tấn công kiểu này (VD : SYN Flooding, ), thực chất là
Hacker tận dụng lỗ hổng bảo mật nào đó để yêu cầu Server làm việc
"giời ơi" nào đó, mục đính là không để Server có khả năng đáp ứng yêu
cầu dịch vụ của các Client khác, như vậy gọi là "từ chối dịch vụ" của các
Client khác. Thường thì kẻ tấn công là từ một máy.
Hình 1: Một mô hình Dos
1.2.2 Qua các máy trung gian (DDOS: tấn công từ chối dịch vụ phân
tán):
6
DDoS (Distributed Denial of Service) là một dạng DoS nhưng kẻ tấ công
sử dụng nhiều máy để thực hiện.
Hình2: 1 mô hình DDOS
7
Sự khác nhau là : DoS là tấn công từ một nguồn còn DDoS là từ nhiều
nguồn khác nhau nên phương pháp chống lại cũng khác đôi chút.
VD : nếu phát hiện dấu hiệu của DoS thì chỉ cần tìm và ngắt các hoạt
động hoặc kết nối liên quan đến nguồn phát (chỉ 1), còn DDoS thì rất
nhiều nguồn tấn công nên không làm như vậy được. Một điểm quan
trọng là nếu bị tấn công DDoS thì không thể chống đỡ.
2 Các cơ chế tấn công từ chối dịch vụ:
2.1 Tấn công từ chối dịch vụ (DoS):
Là phương thức xuất hiện đầu tiên, giản đơn nhất trong kiểu tấn công từ
chối dịch vụ.Các kiểu tấn công thuộc phương thức này rất đa dạng:
2.1.1 Tấn công chiếm dụng tài nguyên (Resource Depletion):
Bằng cách lạm dụng quá trình giao tiếp của giao thức mạng hoặc
những gói tin dị thường, attacker sẽ chiếm dụng nguồn tài nguyên hệ
thống như CPU, RAM,… khiến cho người dùng chia sẽ không truy xuất
được hệ thống do hệ thống không đủ khả năng xử lý
2.1.1.a SYN 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 – wayshandshake) 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,
8
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.
Hình 3: SYN attack
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
2.1.1.b Flood Attack
Một kiểu tấn công DoS nữa cũng rất hay được dùng vì tính đơn giản của
nó và vì có rất nhiều công cụ sẵn có hỗ trợ đắc lực cho kẻ tấn công là
Flood Attack, chủ yếu thông qua các website.
9
Về nguyên tắc, các website đặt trên máy chủ khi chạy sẽ tiêu lượng tài
nguyên máy chủ nhất định, nhất là lượng bộ nhớ (RAM) và bộ vi xử lý
(CPU). Dựa vào việc tiêu hao đó, những kẻ tấn công đơn giản là dùng
các phần mềm như smurf chẳng hạn để liên tục yêu cầu máy chủ phục vụ
trang web đó để chiếm dụng tài nguyên. Cách tấn công này tuy không
làm máy chủ ngừng cung cấp dịch vụ hoàn toàn nhưng sẽ làm cho tốc độ
phục vụ của toàn bộ hệ thống giảm mạnh, người dùng sẽ cảm nhận rõ
ràng việc phải chờ lâu hơn để trang web hiện ra trên màn hình. Nếu thực
hiện tấn công ồ ạt và có sự phối hợp nhịp nhàng, phương thức tấn công
này hoàn toàn có thể làm tê liệt máy chủ trong một thời gian dài.
2.1.1.c Tấn công bằng gói dị hình:
Tấn công dạng này attacker sẽ yêu cầu zombie gửi những gói IP có
hình thức không đúng đến máy victim. Có 2 loại tấn công theo phương
pháp này. Thứ nhất, những gói này có địa chỉ nguồn và địa chỉ đích
giống nhau. Nó làm cho hệ điều hành bị đảo lộn và sụp đổ (Land
Attack). Thứ 2 là thiết lập tất cả các trường chất lượng dịch vụ trong
gói IP bằng 1 để hệ thống nạn nhân phải tốn nhiều thời gian để phân
tích gói (Teardrop Attack). Nếu như agent gửi nhiều gói IP theo
phương pháp tấn công này, hệ thống victim phải xử lý nhiều, kết quả
là nó shut down
2.1.2 Tấn công chiếm dụng băng thông (Bandwidth Depletion):
Có 2 loại tấn công chính:
- Thứ nhất là làm ngập bằng cách gửi liên tục các gói tin có kích thước
lớn đến hệ thống nạn nhân, làm nghẽn băng thông nạn nhân
- Thứ hai là sử dụng mạng khuếch đại, attacker hay zombie gửi thông
10
tin đến một địa chỉ broadcast (phát quảng bá), tất cả hệ thống trong
mạng con victim trong phạm vi bởi địa chỉ broadcast sẽ gửi lại hệ thống
nạn nhân một thông điệp phản hồi cho máy victim chấp nhận trao đổi
dữ liệu. Phương pháp này khuếch đại dòng lưu lượng làm cho hệ thống
nạn nhân giảm băng thông đáng kể.
2.1.2.a Tấn công ngập lụt (Flood attack):
Trong một cuộc tấn công làm lụt DDoS, các zombie sẽ gửi một số
lượng lớn các gói tin đến máy victim làm khả năng thực thi, chậm máy
hay tràn ngập băng thông mạng. Điều này khiến cho người dùng hệ
thống hợp pháp bị cản trở truy cập vào hệ thống victim.
Tấ n c ôn g n g ậ p lụt b ằ ng UD P:
-UDP (User Datagram Protocol – giao thức dữ liệu người dùng) là
một giao thức hướng không kết nối. Có nghĩa là khi những gói tin
truyền bằng giao thức này, không có một cơ chế bắt tay nào giữa bên
gửi và bên nhận, và hệ thống bên nhận khi nhận được gói tin sẽ phải
xử lý nó. Khi gửi một số lượng lớn các gói tin UDP đến hệ thống nạn
nhân có thể gây ra tràn ngập mạng, làm suy yếu mạng.
-Khi tấn công DDoS dạng UDP, những gói tin UDP được gửi qua
những port ngẫu nhiên hoặc được chỉ định một port nào đó. Thường
thì công việc thực hiện là những port ngẫu nhiên để nó bao quát toàn
diện hơn. Kết quả là victim sẽ phải xử lý những gói đi vào nó để cố
gắng xác định xem có ứng dụng nào yêu cầu không. Nếu hệ thống
victim không có ứng dụng nào nằm trên port đích, hệ thống victim sẽ
11
gửi gửi một gói ICMP đến nơi gửi với thông điệp là “destination port
unreachable”.
-Thông thường, công cụ tấn công DDoS sẽ giả địa chỉ IP nguồn của
gói dữ liệu. Vì thế nó làm ẩn danh hệ thống máy nạn nhân phụ, do đó
các gói trả về từ máy victim sẽ không đến được zombie, mà nó đến một
máy tính khác nào đó.
Đôi khi tấn công ngập lụt UDP cũng có thể làm đầy băng thông của
những kết nối xung quanh hệ thống victim (phụ thuộc vào kiến trúc
mạng và tốc độ đường truyền). Vì thế có thể những hệ thống kết nối gần
hệ thống victim gặp vấn đề trong kết nối của họ.
Tấ n c ôn g n g ậ p lụt b ằ ng
I CMP:
-Những gói tin ICMP (Internet Control Message Protocol – giao thức
thông điệp vận chuyển Internet) được thiết kế cho tính năng quản lý
chẳng hạn như xác định thiết bị mạng và xác định số hop (hop là
thuật ngữ nói lên gói tin sẽ đi qua một thiết bị định tuyến chẳng hạn
như qua một router thì router gọi là hop) hay thời gian di chuyển từ
nguồn đến đích. Ví dụ, gói tin ICMP_ECHO_REPLY (ping) cho phép
người dùng gởi yêu cầu đến hệ thống đích và nhận đáp ứng với thời
gian đã đi đến đích
-Tấn công DDoS làm ngập ICMP xuất hiện khi zombie gởi số lượng
lớn các gói tin ICMP_ECHO_REPLY đến hệ thống nạn nhân. Dấu hiệu
của những gói tin này là phản hồi (reply). Cũng giống như tấn công làm
ngập UDP, địa chỉ IP nguồn bị giả mạo.
12
2.1.2.b Tấn công khuếch đại (Amplifier attack):
-Một cuộc tấn công khuếch đại DDoS nhắm vào việc sử dụng tính
chất của địa chỉ IP broadcast được tìm thấy trong hầu hết các router
để khuếch đại và phản xạ sự tấn công (xem hình 1.10). Tính năng này
cho phép một hệ thống bên gửi phát một địa chỉ IP broadcast đến nơi
nhận. Bộ định tuyến nơi nhận sẽ chuyển các gói tin đến tất cả địa chỉ
IP nằm trong dãy địa chỉ broadcast.
-Đối với loại tấn công DDoS này, attacker có thể gởi trực tiếp thông
điệp broadcast, hoặc attacker sử dụng những agent để gởi thông điệp
broadcast nhằm tăng thêm dòng lưu lượng. Nếu attacker gửi một
cách trực tiếp, loại tấn công này sẽ dùng những hệ thống nằm trong
dãy địa chỉ broadcast làm zombie mà không cần phải thâm nhập chúng
hay cài đặt phần mềm zombie. Có 2 loại tấn công được biết đến
đó là : Smurf và Fraggle.
13
Hình 4: Mô hình tấn công khuếch đại
• Tấn công Smurf:
Attacker gửi những gói tin đến mạng khuếch đại (hệ thống hỗ trợ
định vị broadcast) với địa chỉ IP giả mạo là địa chỉ của máy victim.
Những gói tin tấn công có dạng ICMP ECHO REQUEST, Những gói
tin này (dạng “ping”) yêu cầu bên nhận phản hồi lại với gói tin
ICMP ECHO REPLY. Bộ khuếch đại gửi những gói ICMP ECHO
REQUEST đến tất cả hệ thống nằm trong dãy địa chỉ broadcast, mỗi
một hệ thống trên sẽ đáp ứng ICMP ECHO REPLY đến địa chỉ máy
victim.
14
• Tấn công Fraggle
Fraggle tấn công tương tự như Smurf , nó cũng gửi các gói tin đến
mạng khuếch đại. Nhưng khác nhau ở chỗ, Fraggle sử dụng gói UDP
ECHO thay vì ICMP ECHO như Smurf. Có một sự biến đổi trong tấn
công Fraggle đó là những gói UDP ECHO được gửi đến cổng có hỗ
trợ dạng “tự động sinh ra ký tự” (character generator) tại những máy
nằm trong dãy địa chỉ broadcast (thường là cổng 19 trong những
hệ thống Unix), cùng lúc đó địa chỉ đã bị giả mạo là dịch vụ hồi đáp
(echo service, port 7 trên Unix) của máy victim để nó tạo ra một
vòng lặp vô hạn. Mỗi một hệ thống trên sẽ sinh ra một ký tự gửi đến
dịch vụ hồi đáp trong máy victim, victim sẽ trả về một gói hồi đáp đến
character generator, và cứ tiếp tục lặp lại như vậy. Loại tấn công này
thậm chí cón nguy hiểm hơn Smurf.
2.2 Tấn công từ chối dịch vụ phân tán (DDoS):
Tấn công DDoS là một biến thể của DoS, với sự tham gia của nhiều
máy tính, hàng trăm thậm chí hàng ngàn, các máy tính này chịu sự
giám sát của attacker. Nói về kỹ thuật tấn công thì nó giống hoàn toàn
DoS, nhưng một điểm khác biệt đó là quy mô tổ chức rất lớn, có sự
phân tần (classes) rõ ràng. Và đồng loạt tấn công khi nhận được lệnh
cũng như kết thúc.
Có thể tóm gọn mô hình tấn công như sau :
15
H ình 5: Mô hình t ấ n c ôn g Dd oS
Có hai kiểu chính của mạng DDoS, đó là mô hình Agent – Handler và
mô hình Internet Relay Chat (IRC-Based).
Hình 6: Sơ đồ mạng tấn công DDOS
16
2.2.1 Các giai đoạn của một cuộc tấn công kiểu DDoS
Bao gồm 3 giai đoạn:
2.2.1.a Giai đoạn chuẩn bị:
- Chuẩn bị công cụ quan trọng của cuộc tấn công, công cụ này thông
thường hoạt động theo mô hình client-server. Hacker có thể viết phần
mềm này hay down load một cách dễ dàng, theo thống kê tạm thời có
khoảng hơn 10 công cụ DDoS được cung cấp miễn phí trên mạng (các
công cụ này sẽ phân tích chi tiết vào phần sau)
- Kế tiếp, dùng các kỹ thuật hack khác để nắm trọn quyền một số host
trên mạng. tiến hành cài đặt các software cần thiết trên các host này, việc
cấu hình và thử nghiệm toàn bộ attack-netword (bao gồm mạng lưới các
máy đã bị lợi dụng cùng với các software đã được thiết lập trên đó, máy
của hacker hoặc một số máy khác đã được thiết lập như điểm phát động
tấn công) cũng sẽ được thực hiện trong giai đoạn này.
2.2.1.b Giai đoạn xác định mục tiêu và thời điểm:
- Sau khi xác định mục tiêu lấn cuối, hacker sẽ có hoạt động điều chỉnh
attack-netword chuyển hướng tấn công về phía mục tiêu.
- Yếu tố thời điểm sẽ quyết định mức độ thiệt hại và tốc độ đáp ứng của
mục tiêu đối với cuộc tấn công.
2.2.1.c Phát động tấn công và xóa dấu vết:
Đúng thời điểm đã định, hacker phát động tấn công từ máy của mình,
lệnh tấn công này có thể đi qua nhiều cấp mới đến host thực sự tấn công.
Toàn bộ attack-network (có thể lên đến hàng ngàn máy), sẽ vắt cạn năng
17
lực của server mục tiêu liên tục, ngăn chặn không cho nó hoạt động như
thiết kế.
- Sau một khoảng thời gian tấn công thích hợp, hacker tiến hành xóa mọi
dấu vết có thể truy ngược đến mình, việc này đòi hỏi trình độ khác cao và
không tuyệt đối cần thiết.
2.2.2 Kiến trúc tổng quan của DDoS attack-network
2.2.1.a Mô hình Agent – Handler:
Theo mô hình này, attack-network gồm 3 thành phần: Agent, Client và
Handler
Client : là software cơ sở để hacker điều khiển mọi hoạt động của
attack-network
Handler : là một thành phần software trung gian giữa Agent và Client
Agent : là thành phần software thực hiện sự tấn công mục tiêu, nhận
điều khiển từ Client thông qua các Handler
Hình 7: Mô hình agent handler
18
Attacker Attacker
Handler Handler Handler Handler
Agent Agent Agent Agent Agent
Victim
Kiến trúc attack-network kiểu Agent – Handler
-Attacker giao tiếp với nhiều handler để xác định những agent nào
đang chạy, khi đó lập lịch tấn công hay khi cập nhật những
agent. Phụ thuộc vào attacker cấu hình mạng DDoS như thế nào, các
agent có thể được cung cấp để giao tiếp với một handler đơn lẻ hay
nhiều handler. Thường thì, attacker sẽ cố gắng và đặt phần mềm
handler tại một router (bộ định tuyến) hay một máy chủ mạng để kiểm
soát khối lượng lớn dòng lưu lượng. Giao tiếp giữa attacker và handler,
giữa handler và agent có thể thông qua những giao thức như TCP,
UDP hay ICMP. Người dùng hệ thống agent không biết được rằng
hệ thống của họ đã được liên kết và là một “thành viên” trong một cuộc
tấn công DDoS. Khi tham gia tấn công, mỗi chương trình agent chỉ sử
dụng một khối lượng tài nguyên nhỏ (một ít bộ nhớ và băng thông),
mà không ảnh hưởng đáng kể cho lắm về độ thực thi (performance)
máy tính.
-Người ta cũng thường gọi handler là master, agent là daemon. Những
hệ thống bị cài phần mềm agent còn gọi là nạn nhân phụ, mục tiêu của
tấn công DDoS (victim) gọi là nạn nhân chính
2.2.2.b Mô hình IRC-Based:
-IRC là tên viết tắt của Internet Relay Chat. Đó là một giao thức được
thiết kế cho hoạt động liên lạc theo kiểu hình thức tán gẫu thời gian
thực (ví dụ RFC 1459, các bản update RFC 2810, 2811, 2812, 2813)
dựa trên kiến trúc client-server. Hầu hết mọi máy chủ IRC đều cho
19
phép truy cập miễn phí, không kể đối tượng sử dụng. Người dùng có
thể tạo kênh riêng , kênh chung liên lạc trên Internet. IRC là một giao
thức mạng mở dựa trên nền tảng TCP (Transmission Control Protocol -
Giao thức điều khiển truyền vận), đôi khi được nâng cao với SSL
(Secure Sockets Layer - Tầng socket bảo mật). Một mạng tấn công
DDoS dựa trên IRC tương tự như trên mô hình Agent-handler
-Thay vì sử dụng chương trình handler cài đặt trên máy chủ mạng,
một kênh giao tiếp IRC được sử dụng để kết nối client đến agent. Bằng
cách tạo ra một kênh IRC, attacker có thể sử dụng những port (cổng)
IRC “hợp pháp” để gởi dòng lệnh đến agent. Phương pháp này rất khó
phát hiện những gói tin chứa mã lệnh DDoS. Attacker không cần phải
giám sát danh sách những agent, phần mềm agent được cài đặt trên
mạng IRC thường xuyên giao tiếp qua kênh IRC và thông báo về cho
attacker khi agent hiện diện và đang chạy. Một cải tiến khác đó là mạng
IRC cung cấp dễ dàng các tập tin chia sẽ. File (tập tin) chia sẽ là một
trong những phương thức truyền đoạn mã phân tán agent.
Trong kiến trúc tấn công DDoS dựa trên IRC, những agent còn được
gọi là “Zombie
Bots”. Có thể gọi chung là zombie cho cả 2 loại mô hình trên.
20
Hình 8: Mô hình tấn công dạng IRC-Based
2.3 Tấn công từ chối dịch vụ phản xạ phân tán (DRDoS):
2.3.1 Mô hình DRDoS
- 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.
21
- 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.
Hình 9: Smurf Attack (DRDoS)
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ỉ
22
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.
CHƯƠNG 2: CHÍNH SÁCH AN NINH
FIREWALL CHỐNG LẠI TẤN CÔNG TỪ
CHỐI DỊCH VỤ
Trước khi thiết lập chính sách cho tường lửa, chúng ta cần lập tài liệu đánh giá
phân tích rủi ro có thể sảy ra đối với các ứng dụng của tổ chức khi bị tấn công từ
chối dịch vụ. Kết quả của sự phân tích này sẽ bao gồm một ản danh sách các ứng
dụng, và phương pháp bảo vệ các ứng dụng này như thế nào. Rủi ro là mặt đối lập
của bảo mật nên chúng ta thường cố gắng loại trừ nó. Tuy nhiên, thực tế cho thấy
các rủi ro không bao giờ loại trừ hết được.
Các chính sách chống lại tấn công từ chối dịch vụ:
23
- Đặc quyền tối thiểu: đây là nguyên tắc an ninh căn bản nhất. Mọi đối tượng
tượng (người dùng, người quản trị, chương trình, hệ thống ) chỉ nên có đủ
đặc quyền để đối tượng thực hiện nhiệm vụ của chúng. Ví dụ trong firewall
ta nên thiết lập rule mặc định là chặn tất cả các gói tin đi từ mạng bên trong
ra bên ngoài và ngược lại, sau đó thiết lập dịch vụ nào được chạy, những
user nào có quyền được làm gì… Để hạn chế sự mở rộng của tấn công và tác
hại của chúng.
- Kiểm soát dịch vụ: Xác định kiểu dịch vụ nào có thể được truy nhập
(vào/ra) Ví dụ: Dịch vụ web, mail, FTP, telnet, shh …
- Kiểm soát hướng: khi mở 1 dịch vụ sẽ cho request từ mạng nào vào(tin cậy
hoặc không tin cây)
Ví dụ: Một mạng định nghĩa có 3 miền: interner, externer, DMZ. Trong
miền DMZ cấu hình dịch vụ chia sẻ file FTP, chỉ cho phép những request từ
miền interner và drop những request từ miền khác. Firewall kiểm soát hướng
vào ra của gói tin.
- Kiểm soát số lượng connections trên 1 IP trong 1 đơn vị thời gian hay nói
các khác là giới hạn các gói SYN. Ví dụ chỉ cho phép 5 gói SYN tới server
trong 3 giây nhiều hơn firewall sẽ chặn để giảm tải cho server không phải xử
lí nhiều. Cách này là phương pháp tốt nhất để ngăn chặn SYN attack.
- Chỉnh các thông số TIME_WAIT , CLOSE_WAIT để tối ưu hệ thống , lọc
bỏ các cú truy cập không mong muốn. Server đi vào tình trạng
"TIME_WAIT" để bảo đảm cả hai đầu truy cập (cả client lẫn server) không
còn gởi nhận gì thêm trước khi socket hoàn toàn triệt tiêu. Đối với tình trạng
máy chủ bị DDoS, hạ thời gian TIME_WAIT xuống có tác dụng phụ trợ
server lấy lại memory để tiếp tục cung cấp. Các socket ở tình trạng
TIME_WAIT vẫn chiếm giữ một khối lượng memory (real memory) đáng
kể. Nếu máy chủ bị tấn công dồn dập và TIME_WAIT trở nên quá nhiều thì
máy chủ có thể bị hết tài nguyên (out of memory) mà gục ngã.
24
- Stop Virus, Trojan
Một công cụ mà bất cứ ai sử dụng ISA Server đều phải sử dụng nó, tìm trên
net phần mềm mang tên là GFI’s DownloadSecurity
Đặc điểm chính của công cụ này, nó được tích hợp vào ISA Firewall và nó
ngăn chặn các tập tin tự chạy .exe, kiểm soát các tập tin được download từ
Internet dzìa, kiểm tra ActiveX trong trình duyệt và đưa ra cảnh báo cho các
user ( ). Hoặc sử
dụng công cụ từ các hảng bảo mật như BitDefender for ISA, Symantec
AntiVirus for ISA Server, Những kẻ tấn công có thể lợi dụng virus hay
trojan này để điều khiển các máy trong mạng làm zombie để thực hiện tấn
công DDOS. Khi tấn công sảy ra có thể làm nghẽn băng thông của mạng của
tổ chức.
- Ngăn chặn các Web xxx và có nguy cơ chứa nhiều mã độc.
Đối với các ứng dụng sử dụng hệ điều hành Windows Server nên download
công cụ UrlScan, nó tạo ra một bộ lọc tên là ISAPI trên hệ thống và nó
phân tích các gói tin đến ISA và nếu OK thì nó accept và not Ok thì drop.
- Khi bị tấn công thì có thể chặn IP đó không cho giao tiếp với server đó nữa.
25