Nguyễn Thế Hùng



tải về 1.28 Mb.
trang11/11
Chuyển đổi dữ liệu25.03.2018
Kích1.28 Mb.
#36565
1   2   3   4   5   6   7   8   9   10   11

3.2.6. Bước 6: Lan tỏa ngược


V
29
ictim_GW tiến hành “lan tỏa ngược”. Victim_GW đặt bộ lọc với thời gian tstart, sau đó gửi yêu cầu thiết lập bộ lọc qua các router liền kề với interface mà nó nhận được gói tin DDoS. Router hàng xóm nhận được yêu cầu lập filter tương tự, rồi lại gửi yêu cầu qua các interface có luồng tấn công. Trên mỗi Router lan tỏa đặt Filter có thời gian là ttmp. Một router nếu đã đặt Filter rồi, mà lại nhận được yêu cầu đặt 1 Filter giống y như vậy nữa thì sẽ reset lại thời gian của Filter đó.

+ Trong thời gian ttmp này, router sau khi đã gửi yêu cầu lập Filter tới các router tương ứng với từng interface, mà vẫn thấy còn lưu lượng DDoS từ phía các router này, thì gửi lại yêu cầu lập Filter cho router hàng xóm kết nối với interface đó. Sau 3 lần gửi mà lưu lượng DDoS vẫn không giảm thì có nghĩa là router hàng xóm không hoàn thành được nhiệm vụ, và chính router sẽ tự động lập Filter với thời gian tlong. Kết thúc giải thuật.

+ Các router khác đợi hết thời gian thì dừng bộ lọc, và tạo file shadow tương ứng để giám sát router kề sau nó trong thời gian tsupervise. Trong khoảng thời gian này mà vẫn nhận thấy có lưu lượng DDoS thì sẽ bật lại Filter nhưng với thời gian tlong. Giải thuật kết thúc.

+ Khi đến router gần Agent nhất (A_GW), xảy ra khi router nhận thấy IP của router hàng xóm trùng với IP Agent, thì router lập Filter có thời gian tlong >> ttmp. Giải thuật kết thúc.


3.3. Chống lừa dối

3.3.1. Nguy cơ


Attacker có thể chiếm quyền 1 router trên đường đi, không đặt Filter như yêu cầu của router hàng xóm khi lan tỏa ngược.

Attacker có thể điều khiển A_GW, khi hàng xóm yêu cầu thì giả vờ đã đặt Filter tlong, nhưng chỉ đặt thời gian ttmp < tcheat << tlong hoặc tạm ngưng tấn công, sau khi hàng xóm hủy Filter thì lại tấn công tiếp.

Khi Victim_GW bắt tay với A_GW, A_GW giả vờ đã lập Filter, đợi khi Victim_GW ngắt kết nối (hoặc đợi hết tstart) thì lại tấn công tiếp.

3.3.2. Giải pháp


D
30
ùng shadow router để giám sát và cách thức gửi yêu cầu sau 3 lần sẽ chống được 1 router lõi và A_GW lừa dối không lập Filter, hoặc lập Filter trong thời gian ngắn.

Khi Victim_GW bắt tay với A_GW, Victim_GW còn bắt tay với router kề trước A_GW nữa (RouterX), router đó sẽ có nhiệm vụ giám sát xem A_GW có tạo Filter đúng theo yêu cầu hay không.


3.4. Chống lợi dụng giao thức

3.4.1. Nguy cơ


Một router G nào đó giả vờ là người bị DDoS, để ngăn cho mạng của nạn nhân H không thể truy xuất đến 1 mạng K được. Router G sẽ giả vờ H chính là kẻ tấn công mạng K, yêu cầu chạy giao thức lan tỏa ngược để các router khác chặn không cho H liên lạc được với K. Có 2 cách để G làm được điều này:

+ G giả vờ mình là gateway của K, đang bị mạng H tấn công (G đóng giả Victim_GW), G kết nối đến gateway của mạng H, yêu cầu lập bộ lọc ngăn chặn H truy cập đến K.

+ G đóng vai trò là router trên đường đi, chạy giao thức lan tỏa ngược, yêu cầu hàng xóm lập filter ngăn truy xuất từ H đến K.

3.4.2. Giải pháp


Trong trường hợp 1, khi G kết nối đến gateway của mạng H thì theo giao thức đây phải là 1 kết nối tin cậy => G không thể fake ip được. Sau đó gateway của H còn kiểm tra xem G có đứng kề trước K hay không bằng cách thực hiện 2 lần ping như ở trên đã nói. Nếu xác nhận đúng thì gateway của H mới lập Filter

T
31


rường hợp G đóng vai trò là router trên đường đi, yêu cầu hàng xóm lập filter để ngăn chặn truy xuất từ H đến K là rất khó xảy ra. Thứ nhất là router trong phần lõi của Internet được các ISP quản lý rất kĩ, gần như không thể xâm nhập được. Thứ hai là router trong phần lõi là các thiết bị đơn giản hơn máy tính rất nhiều, rất ít ứng dụng và lỗ hổng để hacker có thể khai thác. Thứ ba là kiến trúc của mạng Internet là packet switching, do đó con đường đi từ mạng H đến mạng K không cố định, có thể thay đổi động theo thời gian. Việc nắm bắt được đường đi này để tấn công vào đúng router ở giữa để lừa đảo cũng là 1 khó khăn không nhỏ. Tổng kết lại, chi phí để thực hiện phương pháp lợi dụng giao thức này lớn hơn rất nhiều lần so với mục đích cuối cùng là ngăn chặn H truy xuất tới K.

3.5. Nhận xét

3.5.1. Ưu điểm


– Thuật toán giúp giao thông trên Internet nhẹ hơn nhiều so với AITF, “Lan tỏa ngược” chỉ được kích hoạt khi Victim bị tấn công. Còn 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ống được Fake IP, lừa dối và lợi dụng giao thức.

– 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.

– Xây dựng trên tầng network, kể cả 1 router trên mạng không cài đặt giải thuật này thì mạng vẫn có thể hoạt động bình thường.

– “Lan tỏa ngược” hoạt động tốt ngay cả khi DDoS được thiết kế có độ phân tán cao.


3.5.2. Nhược điểm


– Do phải huy động router ở lõi lập Filter phần lõi của Internet phải chịu thêm tải. Trong trường hợp 1 router ở lõi không được cài thuật toán, hoặc bị Attacker chiếm quyền điều khiển thì khi có DDoS đi qua, router lõi liền kề nó sẽ phải lập Filter với thời gian tlong.

N
32


ếu attacker có cơ chế fake nhiều IP luân phiên, thì ứng với mỗi 1 IP, A_GW sẽ phải tạo 1 bộ lọc khác nhau.

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

4.1. Rút gọn

4.1.1. Ý tưởng


Khi Victim chạy giao thức lan tỏa ngược, các thông số cần thiết được truyền lần lượt:

VVgwGW1 GW1 GW1………GWnAgwA



Nếu có rất nhiều router giữa Vgw và Agw, quá trình thực thi giao thức để đặt bộ lọc sẽ mất nhiều thời gian. Trong trường hợp lý tưởng, nếu V xác định được địa chỉ chính xác của Agw, lan truyền bộ lọc trực tiếp đến Agw để chặn kẻ tấn công A, giao thức sẽ được tối ưu. Nguyên lý của quá trình rút gọn dựa vào ý tưởng trên.
4.1.2. Cách thức xác định địa chỉ IP của Agw
Có nhiều cách để xác định địa chỉ IP của router Agw kề sát kẻ tấn công A, cách đơn giản nhất là dùng lệnh traceroute để xác định tuyến đường đi từ V tới A
Giả sử có sơ đồ sau, với các địa chỉ IP tương ứng


(
33


hình 16:mô tả hệ thống)

Khi thực hiện lệnh traceroute từ V đến Agw:

Traceroute 10.10.4.2

Ta nhận được thông tin chứa về tuyết đường từ V đến A như sau:


Lệnh traceroute mặc định sẽ response lại tuyến đường đi từ V đến A chậm, có thể đưa thêm tham số -w time(wait) để cải thiện tốc độ của traceroute



Traceroute –w 0.1 10.10.4.2

Ta đưa thông số lấy được ở trên vào một file, dùng lệnh grept và cut sẵn có của linux có thể lấy được địa chỉ IP của Agw. Cụ thể các lệnh như sau:

traceroute -w 0.1 $2 > file.log

temp=`tail -n 2 file.log | head -n 1 | cut -f 5 --delimiter=' ' | cut -f 2 --delimiter='(' | cut -f 1 --delimiter=')'`

IP_NEXT=`echo $temp`

#cut -f 2 --delimiter='(' | cut -f 1 --delimiter=')'

Sau khi phân tích như trên sẽ có được địa chỉ IP của gateway liền sát kẻ tấn công: Agw


34



4.1.3. Thực thi quá trình rút gọn

Phần rút gọn vẫn cần phải xác định địa chỉ IP đích của máy tính kẻ tấn công, việc làm này đã được thực hiện tốt trong phần code của tác giả. Trong trường hợp tối ưu thì mới xác định được địa chỉ router kẻ tấn công, khi đó phần code rutgon sẽ được gọi, bài toán được tối ưu. Ngược lại khi không xác định được IP của router liền kề kẻ tấn công, phần shellcode gốc của tác giả sẽ được sử dụng để lan tỏa lần lượt qua các router.

Code:

if (dia chi IP cua may dich la hop le)



rutgon

else lan_toa_nguoc_binh_thuong

4.1.4. Nhận xét

Trong trường hợp lý tưởng, Victim xác định được chính xác router gần kẻ tấn công nhất và lan tỏa trực tiếp đến router đó để đặt bộ lọc thì hiệu quả của giao thức Lan_Tỏa_Ngược sẽ rất lớn. Giao thức thời gian thực thi giao thức nhanh và không tiêu tốn tài nguyên mạng, không mất thời gian để các router trung gian lan tỏa dần đến router gần kẻ tấn công nhất.
4.2: xác thực

Xem xét mô hình sau








(
35


hình 17: mô hình xác thực)

Vấn đề đặt ra là nếu có kẻ lợi dụng ATK3 ra lệnh cho GW1 đặt filter thì GW1 sẽ phản ứng lại thế nào? Có thể GW1 sẽ đặt filter trong khi GW1 không phải là router liền kề kẻ tấn công. Vì vậy cần phải có một cơ chế xác thực vấn đề truyền thông giữa các thực thể mạng.

4.2.1. Ý tưởng

Có thể tạo một cơ sở dữ liệu chứa thông tin về địa chỉ IP của những thực thể mạng có thể truyền thông cho nhau.

Ví dụ: để Vgw có thể truyền thông tin cho GW1 hay ra lệnh cho GW1 đặt bộ lọc thì trong cơ sở dữ liệu phải có chứa địa chỉ IP của GW1 và Vgw như: 10.10.2.1 10.10.2.2

Với 10.10.2.1 là IP của Vgw, 10.10.2.2 là IP của GW1

Có nhiều cách để tạo cơ sở dữ liệu như vậy, có thể dùng các hệ quản trị cơ sở dữ liệu mạnh và thông dụng hiện nay như Oracle, mySql, Sqlserver…

Để mô tả đơn giản hoạt động của quá trình xác thực giữa các thực thể mạng, tôi dùng cách đơn giản nhất là tạo một file IpCertificate có chứa các địa chỉ IP tương của các thực thể có quyền trao đổi thông tin với nhau. Bằng cách phân tích dữ liệu trong file IpCertificate, có thể xác thực được tiến trình trao đổi giữa các thực thể là hợp lệ hay không.

4.2.2. Thực thi quá trình xác thực.

Mô phỏng đơn giản như hình 3, có file IpCertificate chứa các địa chỉ sau

10.10.1.1

10.10.1.2

10.10.2.1

1
36


0.10.2.2

10.10.3.1

10.10.4.1

Mỗi khi máy A cần truyền thông với máy B , A sẽ tiến hành phân tích từng dòng dữ liệu trong file IpCertificate. Nếu có địa chỉ IP của máy B trong file đó, nghĩa là máy B được tin cậy, A có thể tiến hành truyền thông với B. Ngược lại, chương trình sẽ thông báo lỗi.

4.2.3. Kết luận

Việc xác thực giữa 2 thực thể mạng được tiến hành trên ý tưởng đơn giản nhưng hiệu quả. Có thể ngăn chặn được các giả mạo thông thường. Có thể nâng cao ý tưởng trên bằng cách xác thực thêm địa chỉ Mac, nhưng do thời lượng và thời hạn của luận văn nên tôi chỉ đưa ra những ý tưởng cơ bản nhất. Để đảm bảo an toàn cho cơ sở dữ liệu chứa thông tin về các thành phần hợp lệ có thể trao đổi thông tin, nên mã hóa cơ sở dữ liệu bằng các phương pháp mã hóa tiên tiến và có tính bảo mật cao như mã hóa công khai, mã hóa đối xứng…


37

Kết Luận

Thông qua việc nghiên cứu, tìm hiểu và phát triển các chức năng cho giao thức Lan Tỏa Ngược, luận văn đưa ra một cái nhìn tổng thể về DDoS. Qua bài viết có thể nắm bắt được cốt lõi của việc tấn công và phòng thủ DDoS. Đồng thời khi phát triển chức năng rút gọn và xác thực cho giao thức, tôi đã đưa giao thức Lan Tỏa Ngược về gần với ứng dụng thực tiễn hơn. Mặc dù trên thế giới hiện nay chưa có một phương pháp hoàn hảo nào có khả năng chặn hiệu quả tấn công DDoS, nhưng qua những nghiên cứu chuyên sâu và tìm cách cải tiến các phương pháp chống DDoS đã có, một ngày nào đó cộng đồng Internet có thể yên tâm về sự an ninh của mạng với một phương pháp hoàn thiện, hiệu quả.


38



TÀI LIỆU THAM KHẢO


[1] Hoang Van Quan, K49 dai hoc Cong Nghe. luan van lan toa nguoc. 2008.

[2] Jelena Mirkovic, Sven Dietrich, David Dittrich, Peter Reiher. Internet Denial of Service: Attack and Defense Mechanisms. Prentice Hall PTR. 2004.

[3] Massimiliano Romano, Simone Rosignoli, Ennio Giannini. Robot Wars – How Botnets Work. Oct 20, 2005

[4] Katerina Argyraki, David R. Cheriton. Active Internet Traffic Filtering: Real-Time Response to Denial-of-Service Attacks. Proceedings of the USENIX annual technical conference. 2005.

[5] Vicky Laurens, Abdulmotaleb El Saddik, Pulak Dhar and Vineet Srivastava. Detecting distributed denial of service attack traffic at the Agent machines. IEEE CCECE. 2006.

[5] J. Mirkovic. D-WARD: Source-End Defense Against Distributed Denial-of-Service Attacks. Ph.D. dissertation, University of California, Los Angeles. 2003.



[7] J. Postel. RFC 791 - Internet Protocol.






tải về 1.28 Mb.

Chia sẻ với bạn bè của bạn:
1   2   3   4   5   6   7   8   9   10   11




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương