MỤC LỤC
Mở đầu: Tính cấp thiết của đề tài 1
Chương 1: Tổng quan về DDoS 2
1.1. Tổng quan về tấn công DDoS 2
1.1.1. Khái niệm về DDoS 2
1.1.2. Tổ chức mạng lưới DDoS 3
1.1.2.1. Tuyển mộ mạng lưới Agent 3
1.1.2.2. Điều khiển mạng lưới Agents 5
1.1.3. Các loại tấn công DDoS .7
1.1.3.1. SYN flood attack: 8
1.1.3.2. UDP Flood attack 9
1.1.3.3. Smurf attack 9
1.1.3.4. DNS Zone Transfer based Flooding 10
1.1.3.5. Ping based attacks 11
1.1.3.6. CGI attacks(Common Gateway Interface) 11
1.2. Tổng quan về phòng thủ DDoS 12
1.2.1. Tại sao DDoS khó giải quyết 12
1.2.2. Những thách thức khi xây dựng hệ thống phòng thủ DDoS 13
1.2.2.1. Về mặt kĩ thuật 13
1.2.2.2. Về mặt xã hội 14
1.2.3. Mục tiêu khi xây dựng hệ thống phòng thủ 15
1.2.4. Các hướng phòng thủ DDoS 16
1.2.4.1. Phòng ngừa và Phản ứng lại 16
1.2.4.2. Vị trí của hệ thống phòng thủ 17
Chương 2: Các nghiên cứu về phòng chống DDoS 20
2.1. Giao thức AITF 20
2.1.1. Giới thiệu . . 20
2.1.2. Tổng quan về giao thức AITF 20
2.1.3. Cơ chế hoạt động AITF 21
2.1.4. nhận xét 22
2.2. Hệ thống D-WARD 22
2.2.1. Mục tiêu 22
2.2.2. Triển khai D-WARD 23
3.2.3. Nhận xét 24
Chương 3: GIAO THỨC LAN TỎA NGƯỢC 24
3.1. Giới thiệu về giao thức Lan tỏa ngược 24
3.1.1. Khái niệm chung 24
3.1.2. Các thuật ngữ 25
3.1.2.1. Bộ lọc (Filter) 25
3.1.2.2. Router/Gateway 25
3.1.2.3. Cơ chế “Lan tỏa ngược” 25
3.2. Cơ chế hoạt động 26
3.2.1. Bước 1: Khởi động 26
3.2.2. Bước 2: Bắt đầu 27
3.2.3. Bước 3: Kiểm tra giả mạo 27
3.2.4. Bước 4: Rút gọn 27
3.2.5. Bước 5: Ngăn chặn 28
3.2.6. Bước 6: Lan tỏa ngược 29
3.3. Chống lừa dối 30
3.3.1. Nguy cơ 30
3.3.2. Giải pháp 30
3.4. Chống lợi dụng giao thức 31
3.4.1. Nguy cơ 31
3.4.2. Giải pháp 31
3.5. Nhận xét 32
3.5.1. Ưu điểm 32
3.5.2. Nhược điểm 32
Chương 4: Phát triển chức năng rút gọn và xác thực cho giao thức lan tỏa ngược 33
4.1. Rút gọn 33
4.1.1. Ý tưởng 33
4.1.2. Cách thức xác định địa chỉ IP của Agw 33
4.1.3. Thực thi quá trình rút gọn 35
4.1.4. Nhận xét 35
4.2. xác thực.35
4.2.1. Ý tưởng 36
4.2.2. Thực thi quá trình xác thực. 36
4.2.3. Kết luận 37
Kết Luận 38
45 trang |
Chia sẻ: netpro | Lượt xem: 1700 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Khóa luận Xác thực các thành phần trong hệ thống PAC để chống lừa dối và lợi dụng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ent (bot) đều kết nối tới 1 IRC Server như là 1 IRC Client bình thường. Tới khi hầu hết các sites đều chấp nhận các kênh IRC cho người dùng, thì những giao tiếp DDoS đều chưa tạo bất cứ 1 hiện tượng bất thường nào. Vai trò của Attacker chỉ được thể hiện như là 1 kênh truyền bình thường tới IRC Server, và được bảo vệ bởi password. Có những đoạn code chuẩn định nghĩa về kênh truyền mặc định ở trong các bot, đầu tiên nó sẽ học kênh điều khiển hiện tại ở đâu, bot sẽ nhảy sang kênh đó, và có thể nhận các lệnh điều khiển từ Attacker thông qua IRC Server.
(hình 2: mô hình IRC)
Trong trường hợp này, không có Handler chắn giữa Attacker và Agents, vì thế Attacker thường sử dụng 1 máy khác, được gọi là Stepping Stone để che giấu tung tích của mình với IRC Server, và để đề phòng khi các cơ quan an ninh điều tra.
7
1.1.3. Các loại tấn công DDoS Một cuộc tấn công DDoS có thể tiêu tốn hoàn toàn băng thông mạng, bộ đệm gói tin trên router, làm tê liệt khả năng xử lý cpu, ram của nạn nhân. Tôi sẽ tập trung chủ yếu vào cách tấn công làm tràn ngập băng thông mạng và thảo luận về cách hoạt động của một packet flood (gói tin gửi bởi kẻ tấn công).1.1.3.1. SYN flood attack:
Loại tấn công này sử dụng cơ chế của giao thức TCP, là loại tấn công chủ yếu để làm tràn ngập băng thông của nạn nhân. Một kết nối TCP được hình thành sử dụng cơ chế bắt tay 3 bước. đầu tiên một gói tin SYN với địa chỉ nguồn giả yêu cầu được gửi từ host của kẻ tấn công đến nạn nhân. Nạn nhân tiếp nhận yêu cầu là một SYN-ACK, truy cập cấu trúc dữ liệu cho kết nối, và lưu trữ thông tin cần thiết cho kết nối vào hàng đợi, chờ kẻ tấn công gửi gói tin yêu cầu SYN-ACK ở trên. Khi thực hiện xong điều này, hàng đợi xóa thông tin kết nối, kết nối được thành lập. Nhưng nếu địa chỉ nguồn là địa chỉ giả mạo, bước thứ 3 của quá trình bắt tay 3 bước ở trên không bao giờ được hoàn thành. Do vậy, thông tin cần thiết cho việc kết nối được lưu trữ trong hàng đợi cho đến hết một khoảng thời gian mặc định được thiết lập rồi mới bị loại bỏ. Mỗi server chỉ có một số lượng hạn chế bộ nhớ, do vậy sẽ hạn chế số lượng các kết nối chờ cho tới khi kết nối được thiết lập , một kẻ tấn công gửi tói tin SYN-REQUEST sử dụng địa chỉ nguồn ảo với một tốc độ cao có thể khiến hàng đợi kết nối quá tải, do vậy ngăn cản những người dùng hợp lệ yêu cầu dịch vụ của server.
8
(hình 3: SYN food attack)
1.1.3.2. UDP Flood attack
Khác với giao thức hướng kết nối TCP, UDP là giao thức không hướng kết nối. yếu tố này có thể được kẻ tấn công lợi dụng để gửi một số lượng lớn luồng dữ liệu với địa chỉ giả mạo tới một cổng sever nạn nhân. Server nạn nhân xử lý các gói tin này và sớm nhận ra rằng đó không phải là yêu cầu cho một dịch vụ cụ thể. Vì vậy cpu của server nạn nhân tốn hiệu năng vô ích vào việc xử lý những yêu cầu này. Với việc gửi một số lượng lớn các luồng dữ liệu giả mạo như vậy, kẻ tấn công có thể khiến cpu của server nạn nhân quá tải , hơn nữa UDP không có cơ chế điều khiển tắc nghẽn, nó sẽ có xu hướng cắt bớt băng thông khi tốc độ gửi các gói tin tăng nhanh và có thể ép những người dùng hợp lệ sử dụng giao thức TCP(có cơ chế điều khiển tắc nghẽn) phải hạ thấp tốc độ gửi gói tin, gây ra sự mất cân bằng trong phân phối dịch vụ.1.1.3.3. Smurf attack
Kẻ tấn công gửi gói tin ping ICMP đến địa chỉ broadcast của mạng, điều này khiến tất cả những host trong mạng phải gửi gói tin ICMP đáp lại, việc này thường tạo ra một lượng lớn các luồng dữ liệu và có xu hướng tiêu tốn nhiều băng thông mạng.
.
9
(Hình 4: smurf attack)
1.1.3.4. DNS Zone Transfer based Flooding
Một Zone Transfer(vùng chuyển đổi ) yêu cầu thông tin về tên server (Name Server) của tất cả các vùng còn lại. Cách này thường được sử dụng khi một server khác tự cập nhật thông tin bằng cách gửi yêu cầu đến server chính. Khi kẻ tấn công gửi những yêu cập lập đi lặp lại đến name server có thể gây ra sự tiêu tốn băng thông mạng rất lớn vì luồng dữ liệu cho mỗi yêu cầu là khá lớn.
(hình 5: DNS zone transfer)
10
1.1.3.5. Ping based attacks
Hay còn gọi là Ping of death hay “Long ICMP” khi mà host tấn công gửi một lượng lớn các gói tin ICMP đến server nạn nhân. Những kẻ tấn công thường sử dụng các gói tin có độ dài lớn hơn 65536 bytes, độ dài lớn nhất của gói tin được quản lý bởi giao thức TCP. Cách tấn công này ảnh hưởng đến cả khả năng xử lý của cpu và băng thông mạng.
(hình 6: Ping base attack)
1.1.3.6. CGI attacks(Common Gateway Interface)
11
Cpu luôn tốn rất nhiều thời gian để xử lý các kịch bản CGI, vì vậy khi kẻ tấn công gửi một số lượng lớn các kịch bản CGI đến server nạn nhân có thể làm chậm khả năng xử lý của server. 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. Những cuộc tấn công DDoS có thể phân tán, rải rác, khiễn cho việc xác định kẻ tấn công là rất khó khăn, cần phải hiểu về hành vi, hoạt động của các luồng dữ liệu trong hệ thống mạng để từ đó phát hiện sớm và có những biện pháp hiệu quả để ngăn chặn tấn công DDoS.
1.2. Tổng quan về phòng thủ DDoS
1.2.1. Tại sao DDoS khó giải quyết
Có 2 hướng để thực hiện tấn công DDoS: đó là nhằm vào điểm yếu (vulnerability attack) và làm ngập mạng (flooding attack). Do có 1 số đặc tính về kĩ thuật như sau làm khó giải quyết được triệt để các cuộc tấn công DDoS:
- Sự đơn giản: Một người sử dụng máy tính bình thường không rành về mạng cũng có thể thực hiện 1 cuộc tấn công DDoS. Bởi vì đã có sẵn rất nhiều công cụ DDoS trên mạng và cả hướng dẫn sử dụng rất chi tiết để thực hiện.
- Sự đa dạng của các gói tin tấn công: Sự giống nhau giữa các traffic tấn công và các traffic hợp lệ làm quản trị viên khó có thể phân biệt được. Khác với các nguy cơ bảo mật như virut, worm, adware… cần phải có những gói tin mánh khóe, mẹo mực lợi dụng vào lỗ hổng, nhưng flood attack chỉ cần lưu lượng lớn traffic và header cũng như nội dung packet đều có thể tùy ý theo Attacker
- Sự giả mạo IP làm cho các luồng dữ liệu tấn công từ agents đến như là từ những người dùng hợp lệ. Vì thế quản trị viên rất khó phân biệt để có thể phát hiện các cuộc tấn công.
12
- Lượng traffic lớn, gửi với tần suất cao: Lượng traffic khổng lồ mà DDoS tạo ra không chỉ làm ngập tài nguyên của Victim, mà còn làm quản trị viên rất khó mô tả, phân tích và tách biệt được packet hợp lệ và packet tấn công chúng.
- Số lượng lớn các Agents: Một trong những điểm mạnh của tấn công DDoS là có thể huy động được 1 số lượng lớn Agent phân tán trên toàn Internet. Khi đó, luồng tấn công sẽ lan tỏa trên nhiều nhánh tới Victim, điểm tụ tấn công sẽ gần sát nạn nhân, và hệ thống phòng thủ sẽ rất khó có thể chống từ phía xa. Ngoài ra, hệ thống Agent phân tán cũng đồng nghĩa với sự phức tạp, phong phú, khác biệt về mô hình quản lý mạng giữa các ISP khác nhau, vì thế các cơ cơ chế phòng thủ yêu cầu sự phối hợp từ nhiều nơi sẽ triển khai khó khăn hơn rất nhiều.
- Những điểm yếu trên mô hình mạng Internet: Có những cơ chế, giao thức mạng mà khi thiết kế chưa lường trước được những điểm yếu có thể bị lợi dụng (ví dụ TCP SYN, ping of Death, LAND Attack…). Đôi khi là lỗi của nhà quản trị khi cấu hình các policy mạng chưa hợp lý.
1.2.2. Những thách thức khi xây dựng hệ thống phòng thủ DDoS
Do những tính chất phức tạp của DDoS như đã trình bày ở trên, nên xây dựng 1 hệ thống phòng thủ DDoS là không đơn giản. Để làm được điều đó cần xử lý được cả trên 2 lĩnh vực: kĩ thuật và xã hội.
1.2.2.1. Về mặt kĩ thuật
- Xử lý phân tán từ nhiều điểm trên Internet: Vì các luồng tấn công xảy ra từ nhiều nguồn khác nhau, đi qua toàn mạng Internet trong khi thường chỉ có một mình Victim với ít thiết bị, quyền hạn, khả năng xử lý hạn chế nên không thể đạt được hiệu quả cao. Sự tấn công phân tán thì cần sự phòng thủ phân tán thì mới giải quyết triệt để được.
13
- Thiếu thông tin chi tiết về các cuộc tấn công thực tế: Có không nhiều thông tin về tác hại của DDoS gây lên cho các doanh nghiệp, nó thường chỉ có khi tác hại của nó là rõ ràng và doanh nghiệp không thể tự xử lý được mà phải báo lên chính quyền. Vì thế lại càng ít các thông tin chi tiết, như là bản log các traffic, sơ đồ mạng chi tiết của doanh nghiệp.
- Khó thử nghiệm trên thực tế: Những hệ thống thử nghiệm DDoS ở phòng thí nghiệm không thể phản ánh đúng thực tế rộng lớn, phong phú trên mạng Internet được. Trong khi đó nếu muốn triển khai để thử nghiệm thật qua Internet thì các điều luật không cho phép, vì tấn công DDoS không chỉ ảnh hưởng đến Victim, mà còn liên quan đến rất nhiều các thành phần khác như router, switch… của ISP quản lý ở phần lõi Mạng. Còn nếu thử nghiệm luôn trên 1 hệ thống thật đang bị tấn công thì lại thiếu thông tin cần đo đạc ở Agent, Handler, Attacker…
- Chưa có chuẩn đánh giá các hệ thống phòng thủ: Có nhiều vendor đã công bố rằng giải pháp của họ có thể giải quết được DDoS. Nhưng hiện tại chưa có 1 lộ trình chuẩn nào để kiểm thử các hệ thống phòng thủ DDoS. Từ đó dẫn đến 2 vấn đề: thứ nhất là những người phát triển hệ thống phòng thủ tự test chính họ, do đó những thiết kế sẽ luôn phù hợp nhất để hệ thống đó hoạt động thuận lợi. Thứ hai là những nghiên cứu về DDoS không thể so sánh hiệu suất thực tế của các hệ thống phòng thủ khác nhau, thay vào đó, họ chỉ có thể nhận xét về từng giải pháp trên môi trường thử nghiệm mà thôi.
1.2.2.2. Về mặt xã hội
Một thử thách lớn khi muốn giải quyết triệt để vấn nạn tấn công DDoS là về yếu tố Xã hội. Có rất nhiều điều luật về an ninh, bảo mật của nhiều đất nước, nhiều ISP khác nhau mà người triển khai khó có thể thỏa mãn tất cả để thực hiện hệ thống phòng thủ của mình. Ví dụ ISP không cho bạn sơ đồ chi tiết cấu hình Mạng, không cho phép bạn tự do cài đặt chương trình trên các router của họ… Đối với các nạn nhân của DDoS, thông thường là các doanh nghiệp, thì việc đầu tiên là họ sẽ cố gắng tự mình giải quyết, nếu thành công thì sẽ giấu kín, không công bố cho bên ngoài là mình đang bị tấn công vì lo ngại ảnh hưởng đến danh tiếng của công ty. Chỉ khi nào dịch vụ của họ bị chết hẳn, không thể tự cứu thì mới liên hệ với các ISP và chính quyền.
14
Một vấn đề khác là đôi khi cần phải sửa đổi một số điểm yếu của các kiến trúc mạng để giảm tác hại của DDoS, ví dụ như giao thức TCP, IP, HTTP… Nhưng không dễ làm được điều đó, vì hiện tại đã có rất nhiều hệ thống xây dựng trên nền tảng cũ, và không thể ngày thay đổi trong ngày một ngày hai được.
Có một đặc điểm của DDoS là khi Victim bị tấn công, thì nếu muốn triệt để không còn traffic DDoS nữa, thì phải làm sao yêu hàng nghìn Agent ngừng tấn công. Chỉ có 1 cách làm được điều này là tại các Agent phải cài đặt 1 phần mềm, hay hệ thống để ngăn chặn gói tin DDoS ngay khi vừa sinh ra. Nhưng không dễ thuyết phục được các End User làm điều đó, vì nó không mang lại lợi ích trực tiếp gì cho bản thân họ, đôi khi còn làm ảnh hưởng đến hiệu năng mạng của End User.
Yếu tố cuối cùng là thiếu sự thống nhất về các điều luật, chế tài xử phạt các Attacker, Handler, Agents giữa các bộ luật về Công nghệ thông tin của các nước và giữa các quy định về bảo mật, an toàn của các Internet Service Provider.
1.2.3. Mục tiêu khi xây dựng hệ thống phòng thủ
Cho dù triển khai hệ thống phòng thủ theo cách thức nào thì cuối cùng cũng phải hướng tới 4 mục tiêu chính như sau:
- Tính hiệu quả: yêu cầu các thành phần tham gia vào hệ thống phòng thủ: victim, router… đều không phải chịu thêm tải quá nặng. Ví dụ khi bình thường CPU Usage của Server chỉ chạy 10% để phục vụ cho các Client, nhưng sau khi cài đặt hệ thống phòng thủ vào, cho dù chưa xảy ra DDoS thì CPU Usage do phải tính toán thêm nhiều nên đã lên đến 20% là không chấp nhận được.
15
- Tính trọn vẹn: Một hệ thống phòng thủ tốt cần phải bảo vệ Victim được khỏi tất cả các kiểu tấn công DDoS. Bởi vì đối với Attacker, một khi đã điều khiển được mạng botnet thì hắn hoàn toàn có thể sử dụng nhiều kịch bản tấn công khác nhau, lợi dụng nhiều điểm yếu của giao thức, của mạng hoặc thay đổi thông số bên trong packet. Vì thế nếu hệ thống chỉ có thể phòng thủ được 1 số cách tấn công nhất định, thì khi attacker thay đổi, hệ thống đó sẽ sụp đổ hoàn toàn.
- Cung cấp dịch vụ cho tất cả các traffic hợp lệ: đây là yêu cầu quan trọng nhất khi triển khai một hệ thống phòng thủ DDoS.
- Chi phí phát triển và điều hành thấp
1.2.4. Các hướng phòng thủ DDoS
Có thể phân loại các phương pháp giải quyết DDoS theo hai tiêu chí là thời gian và vị trí. Xét theo thời gian, có hai xu hướng: trước (phòng ngừa) và sau (phản ứng lại khi cuộc tấn công xảy ra). Xét theo vị trí đặt trung tâm điều khiển việc xử lý phòng chống DDoS, thì có các vị trí: gần Victim, gần Attacker, trong phần lõi của Internet hoặc kết hợp nhiều vị trí..
1.2.4.1. Phòng ngừa và Phản ứng lại
Phương pháp phòng ngừa áp dụng các chính sách để kẻ tấn công không thể hoặc khó tấn công hệ thống. Phương pháp này có thể được thực hiện bằng cách tăng cường sức mạnh của hệ thống: năng lực xử lý các yêu cầu dịch vụ, băng thông… để giảm thiểu tối đa tác hại của cuộc tấn công DDoS. Nhưng do mạng lưới tấn công có đặc điểm phân tán, là tập trung của nhiều máy tính cấu hình trung bình nên dễ tập hợp được số lượng lớn để hội tụ thành một lượng băng thông gấp nhiều lần so với hệ thống của victim. Vì vậy việc tăng cường sức mạnh không thực sự có hiệu quả.
Phương pháp phản ứng lại chấp nhận cho cuộc tấn công xảy ra, sau đó truy tìm và tiêu diệt các hướng tấn công, làm giảm thiểu rủi ro hoặc chấm dứt cuộc tấn công. Bằng cách phát hiện chính xác kẻ tấn công, nạn nhân sẽ có chính sách cấm những truy nhập, từ đó giảm thiểu được tác hại của cuộc tấn công. Phương pháp này hiện là hướng nghiên cứu chính trong việc giải quyết DDoS.
16
Nhược điểm chung của phương pháp phản ứng lại là việc giải quyết không triệt để và không chủ động. Nạn nhân bị tấn công đã phải hứng chịu các hậu quả. Biện pháp này chỉ giúp chấm dứt hậu quả sớm và giảm thiểu thiệt hại.
1.2.4.2. Vị trí của hệ thống phòng thủ
Phương pháp đặt gần victim là phương pháp đơn giản nhất do ít phụ thuộc vào các tác nhân khác, nạn nhân tự giải quyết vấn đề. Phương pháp này thường dùng để phản ứng lại sau khi nạn nhân phát hiện bị tấn công. Tuy nhiên cách tiếp cận này không thể giải quyết tận gốc, quản trị viên chỉ có thể giảm thiểu thiệt hại chứ không thể chấm dứt cuộc tấn công.
(hình 7:Mô hình đặt gần nạn nhân)
17
Phương pháp đặt gần attacker là phương pháp ngăn chặn các gói tin DDoS ngay khi vừa được sinh ra tại nguồn. Nó có ưu điểm là giảm được tối đa tác hại của gói tin DDoS, chống được giả mạo IP. Tuy nhiên lại rất khó thực hiện do phải thay đổi hệ thống mạng trên quy mô lớn. Hiện mới chỉ có khoảng ba hướng nghiên cứu theo cách tiếp cận này. Trong đó, D-WARD là có kết quả tốt nhất với khả năng hoạt động độc lập.
(hình 8: Mô hình đặt gần kẻ tấn công)
Một vị trí khác là đặt tại phần lõi của Internet. Cách tiếp cận này ít được quan tâm rộng rãi do để tiếp cận được phần lõi của Internet cần có một khoản chi phí không nhỏ, cũng như sự đảm bảo chắc chắn về tính hiệu quả đem lại khi tăng sự phức tạp của phần lõi.
18
(hình 9: mô hình đặt tại phần lõi của Internet)
Phương pháp cuối cùng và hay được nghiên cứu hiện nay là phương pháp kết hợp nhiều vị trí: nạn nhân phát hiện và bắt đầu xử lý, sau đó cố gắng đẩy vị trí phòng chống ra hệ thống mạng gần kẻ tấn công nhất có thể, từ đó giúp giảm tải cho toàn mạng Internet chứ không chỉ cho Victim nữa.
(hình 10: Kết hợp nhiều vị trí)
19
Chương 2: Các nghiên cứu về phòng chống DDoS
2.1. Giao thức AITF
2.1.1. Giới thiệu Giao thức AITF được phát triển bởi nhóm nghiên cứu hệ thống phân tán trường đại học Stanford nhằm ngăn chặn và phản ứng tức thời với những cuộc tấn công DDoS. Nhóm tác giả đã nghiên cứu và thử nghiệm giao thức AITF với kết quả khá khả quan: AITF có thể ngăn chặn tức thời hàng triệu luồng tấn công trong khi chỉ yêu cầu một sự tham gia của một lượng nhỏ các router.
2.1.2. Tổng quan về giao thức AITF
( Hình 11: mô tả AITF)
20
Vgw thiết lập một kết nối đặc biệt tới Agw kèm theo một yêu cầu: ” không gửi các gói tin mà tôi không cần nữa” . Khi kết nối đặc biệt trên hoàn thành, Vgw có thể gỡ bỏ bộ lọc tạm thời trên. Nếu Agw không hợp tác, Vgw có thể lan tỏa yêu cầu đặt bộ lọc tới router gần sát với Agw. Sự lan tỏa như trên được đệ qui theo dọc tuyết đường từ kẻ tấn công tới nạn nhân cho tới khi kết nối đặc biệt nêu trên được thiết lập. Trong trường hợp xấu nhất, khi không có router nào đáp trả yêu cầu kết nối, bộ lọc sẽ được đặt tại gateway của victim Vgw. Tuy nhiên AITF có những cơ chế đặc biệt để hỗ trợ và khuyến khích các router gần tới nguồn tấn công chặn các luồng tấn công DDoS.
2.1.3. Cơ chế hoạt động AITF
(Hình 12: hoạt động giao thức AITF)
21
Như hình 12, AITF có sự tham gia của 4 thực thể- Victim V gửi yêu cầu lọc đến Vgw, chỉ rõ luồng dữ liệu không mong muốn F- Victim gateway Vgw b1: Cài đặt bộ lọc tạm thời để chặn luồng tấn công F trong thời gian Ttmp giây b2: Khởi tạo quá trình bắt tay 3 bước với Agw b3: Gỡ bỏ bộ lọc nếu hoàn thành quá trình bắt tay 3 bước- Attack gateway Agw b1: Đáp lại quá trình bắt tay 3 bước b2: Cài đặt bộ lọc tạm thời để chặn luồng tấn công F trong thời gian Ttmp nếu quá trình kết nối bắt tay 3 bước thành công b3: Gửi yêu cầu lọc đến nguồn tấn công A, yêu cầu dừng luồng F trong khoảng thời gian Tlong>>Ttmp b4: Gỡ bỏ bộ lọc tạm thời nếu A tuân theo trong khoảng thời gian Ttmp, ngược lại ngắt kết nối tới A- Kẻ tấn công A b1: Nguồn tấn công A dừng luồng F trong khoảng thời gian Tlong nếu không thì sẽ bị ngắt kết nối tới Agw
2.1.4. nhận xét
AITF luôn luôn phải ghi thêm Route Record vào gói tin IP khiến cho tải của toàn bộ Internet tăng lên đáng kể.
Do Victim_GW đẩy nhiệm vụ lọc gói tin cho Router gần Agent. Vì vậy sẽ sớm ngăn chặn được các gói tin DDoS và đỡ tốn băng thông mạng và giảm tình trạng nút cổ chai ở gần Victim.
Chặn được DDoS ngay cả khi từ Attacker đến Victim có nhiều đường đi và có sự thay đổi động trên các router ở phần lõi Internet.
2.2. Hệ thống D-WARD
2.2.1. Mục tiêu
22
Phát hiện luồng tấn công và ngăn chặn chúng bằng cách điều khiển luồng.Cung cấp một dịch vụ tốt để hợp pháp hóa giao dịch giữa Victim và mạng khi xảy ra tấn công D-WARD có thể hoạt động như là một hệ thống cô lập hay tham gia vào một hệ thống phòng thủ phân tán. Khi xem xét D-WARD dưới khía cạnh hoạt động độc lập, D-WARD phát hiện nguồn tấn công và có cơ chế phản ứng lại mà không kết hợp với các thực thể khác. Khi hoạt động trong hệ thống kết hợp phòng thủ phân tán, D-WARD nâng cao khả năng phát hiện tấn công thông qua việc nhận các báo động tấn công từ các thực thể tham gia khác.
D-WARD chỉ kiểm soát những luồn dữ liệu đi ra từ mạng của mình, các luồng dữ liệu có nguồn gốc từ các nguồn khác không được kiểm soát.
2.2.2. Triển khai D-WARD
Hệ thống D-WARD được cài đặt ở router nguồn được hoạt động như một gateway giữa hệ thống mạng được triển khai và toàn mạng Internet
(hình 13: Hệ thống D-WARD)
23
Router nguồn được thừa nhận là điểm kết nối duy nhất giữa mạng nguồn và phần còn lại của mạng Internet. D-WARD có thể giám sát tất cả các gói tin trao đổi giữa mạng nguồn và toàn bộ Internet. Nếu có nhiều gateway trong vùng của mạng nguồn, mỗi gateway là một lối vào cho một tập các địa chỉ từ các mạng ngoài, hệ thống D-WARD có thể được cài đặt tại mỗi gateway và giám sát mọi gói tin giữa mạng nguồn và tập các địa chỉ từ mạng ngoài.
3.2.3. Nhận xét
Triển khai hệ thống xử lý phân tán D-WARD , sẽ khá phức tạp và tốn kém. Một phần vì cách định nghĩa của hệ thống: xử lý tập trung tại các máy quản lý policies, quản lý tất cả các luồng dữ liệu ra vào mạng nên sẽ khá tốn tài nguyên phần cứng và băng thông mạng. Hệ thống D-WARD kiểm soát tất cả các luồng dữ liệu, kể cả người dùng hợp lệ, và sự kiểm soát chặt chẽ như vậy đôi khi là dư thừa và không cần thiết.
Chương 3: GIAO THỨC LAN TỎA NGƯỢC
3.1. Giới thiệu về giao thức Lan tỏa ngược
3.1.1. Khái niệm chung
Đây là một phương pháp mới để phòng chống lại các cuộc tấn công DDoS theo cơ chế phản ứng lại và kết hợp nhiều vị trí. Tác giả Hoàng Văn Quân phát minh ra khi cùng nhóm nghiên cứu khoa học ở trường Công nghệ nghiên cứu về DDoS ( nhóm gồm 4 sinh viên dưới sự hướng dẫn của thày Đoàn Minh Phương) Giao thức này đã được trình bày trong một hội thảo nghiên cứu cấp quốc gia của ở Thái Nguyên về các ứng dụng của Công nghệ (tháng 12 năm 2007). Bản luận văn này đã được tác giả hoàn thiện phần lý thuyết và thêm phần cài đặt, triển khai phần lõi của giao thức
Giao thức ‘Lan tỏa ngược’ dựa trên 3 nguyên tắc để ngăn chặn các cuộc tấn công:
+ Sử dụng các bộ lọc (Filter) trên các router để chặn các gói tin DDoS.
+ Dùng cơ chế ‘lan tỏa ngược’ để đẩy nhiệm vụ lọc cho các router gần Attacker.
24
+ Sử dụng một số giải thuật để nâng cao hiệu suất và chống lừa dối, lợi dụng giao thức.
3.1.2. Các thuật ngữ
3.1.2.1. Bộ lọc (Filter)
Filter là 1 bộ các luật để xác định cách thức 1 router truyền hay ngăn chặn dữ liệu. Cụ thể trong trường hợp này thì Filter của router có chức năng chặn tất cả các gói tin DDoS có IP nguồn là IP của Agent, hoặc IP bị Agent giả mạo, và IP đích là IP của Victim.
Trong giao thức, mỗi Filter không tồn tại mãi mãi trên router, chúng đều có 1 thời gian thi hành nhất định. Riêng Filter cuối cùng gần attacker nhất thì sẽ có thời gian tồn tại lâu hơn hẳn các Filter trên các router khác.
3.1.2.2. Router/Gateway
Trong bài báo này, router ở phần lõi của Internet ngoài chức năng định tuyến còn có nhiệm vụ thực thi giao thức Lan tỏa ngược để phản ứng lại với DDoS.
Trong giao thức lan tỏa ngược, có tất cả 2 loại gateway: của victim và của agent. Vì mạng có cơ chế NAT, nên khá khó có thể liên lạc trực tiếp với chính xác máy tính tấn công. Do đó trong bài báo này, chúng tôi coi thiết bị mà có IP Internet của gói tin tấn công đó là gateway của agent. Trong trường hợp thông thường thì gateway này nối giữa mạng Local của agent và Internet, sử dụng NAT để chia sẻ cho nhiều máy. Một số trường hợp đặc biệt khác là máy tính tấn công có địa chỉ IP tĩnh hoặc sử dụng 1 Internet proxy. Khi đó thì giao thức coi chính Agent và Proxy kia là gateway. Khái niệm tương tự với gateway của Victim, chỉ khác là không có trường hợp Victim sử dụng Internet proxy.
3.1.2.3. Cơ chế “Lan tỏa ngược”
Là phương pháp cho phép xác định được chính xác nguồn tấn công từ chối dịch vụ bằng cách lan truyền bộ lọc trên các router qua cơ chế pushback.
25
Khi có 1 địa chỉ IP được xác định là nguồn tấn công. Trên gateway của Victim sẽ bật 1 bộ lọc, vừa để loại bỏ các gói tin DDoS, vừa lắng nghe xem các gói tin ấy đến từ interface nào. Sau khi xác định được thì sẽ gửi 1 yêu cầu qua interface ấy, đến router hàng xóm yêu cầu lập Filter tương tự. Router hàng xóm lập Filter, lắng nghe rồi xác định gói tin đến từ interface nào, và lại gửi yêu cầu lập Filter cho router kế tiếp. Cứ như vậy sẽ xác định được router gần nguồn tấn công nhất, cho dù là IP nguồn tấn công có bị giả mạo hay không.
(hình 14: lan truyền bộ lọc)
3.2. Cơ chế hoạt động
3.2.1. Bước 1: Khởi động
26
Victim xác nhận là có 1 địa chỉ IP a.b.c.d đang tấn công từ chối dịch vụ, gửi yêu cầu khởi động giao thức “lan tỏa ngược” tới gateway (Victim_GW) với tham số là địa chỉ IP của Agent và của chính mình. Để đảm bảo là thông tin khởi động dịch vụ này không bị giả mạo thì giữa Victim và Victim_GW có 1 cơ chế chứng thực ví dụ sử dụng cặp khóa được mã hóa bất đối xứng… Nếu Victim sử dụng IP internet tĩnh, và cài giao thức lên chính mình, thì nó sẽ kiêm luôn vai trò của Victim_GW.
3.2.2. Bước 2: Bắt đầu
Victim_GW thiết lập 1 bộ lọc ngăn chặn các gói tin từ a.b.c.d trong khoảng thời gian tstart.
3.2.3. Bước 3: Kiểm tra giả mạo
Victim_GW thử xác định xem địa chỉ ấy có thật hay là do giả mạo bằng cách ping đến a.b.c.d
+ Nếu không có phản hồi tức là Agent nhiều khả năng đã giả mạo a.b.c.d, chuyển sang thực hiện bước 6. Khoảng thời gian chờ phản hồi không thấy là tno-response.
+ Nếu có phản hồi trong khoảng thời gian là t response, a.b.c.d chính là Agent Gateway (A_GW). Tiếp theo Victim_GW sẽ cố gắng đẩy nhiệm vụ lọc ra phía A_GW. Nhưng trước hết, giao thức Lan tỏa ngược sẽ cố gắng tiến kiệm công sức bằng cách thực hiện bước 4.
3.2.4. Bước 4: Rút gọn
Ban đầu, Victim_GW sẽ xác định 2 router gần Agent nhất có thiết lập cơ chế “lan tỏa ngược” (có thể 1 trong 2 router ấy chính là A_GW, khi đó giao thức Lan tỏa ngược ở trong trường hợp tối ưu). Khoảng thời gian tìm kiếm 2 Router là tsearch.
Cách thức tìm kiếm như sau: Victim_GW thực hiện lệnh dò đường bằng gói tin ICMP tới a.b.c.d có TTL tăng dần từ 0 (cách thức thực hiện gần giống như tracert, traceroute). Các router trên đường đi tới A_GW sẽ lần lượt gửi về gói tin ICMP time exceeded. Sau khi có đầy đủ các địa chỉ IP của các router trên đường đi tới Agent, Victim_GW sẽ lần lượt kết nối tin cậy từ A_GW ngược về gần mình, rồi gửi thông điệp xác nhận xem router đó có hỗ trợ giao thức không. Hai router trả lời “có” sớm nhất sẽ lần lượt là Y và X.
27
Tiếp theo, routerX và routerY sẽ kiểm tra ngược lại Victim_GW xem có đúng là Victim_GW kết nối trực tiếp Victim hay không. Nếu Victim có địa chỉ IP Internet trùng với Vic
Các file đính kèm theo tài liệu này:
- Xác thực các thành phần trong hệ thống pac để chống lừa dối và lợi dụng.doc