Nếu bộ định tuyến BGP được đặt dưới sự tấn công của SYN Flooding, nó không thể thiết lập kết nối TCP với các thiết bị cùng cấp hợp lệ và do đó sẽ không thiết lập mối quan hệ cùng cấp dẫn
Trang 1MỤC LỤC
LỜI CAM ĐOAN 1
LỜI NÓI ĐẦU 2
PHẦN MỞ ĐẦU 4
Chương I: BẢO MẬT TRÊN GIAO THỨC ĐỊNH TUYẾN BGP 6
1.1 Bảo mật của giao thức định tuyến 6
1.2 Bảo mật giao thức BGP 6
1.2.1 Sự cố tắc nghẽn Internet từ AS7007 7
1.2.2 Sự cố YouTube bị tắc nghẽn bởi PTA 8
1.3 Tấn công vào TCP 8
1.3.1 SYN Flooding 9
1.3.2 TCP RST 10
1.4 Các tấn công nhằm vào giao thức BGP 10
1.5 Vấn đề bảo mật trong BGP 11
1.5.1 Cập nhật định tuyến không chính xác 11
1.5.2 Khử tập kết 12
1.5.3 Thao tác các thuộc tính đường dẫn 13
1.5.4 Hố đen 13
1.5.5 Nghe trộm 14
1.5.6 Tắc nghẽn, chậm trễ và vòng lặp 14
Chương II: PHƯƠNG PHÁP BẢO MẬT TRÊN BGP 15
2.1 Xác minh của thiết bị đồng cấp 15
2.2 Bảo mật BGP (S-BGP) 15
2.3 Bảo mật BGP gốc (SoBGP) 18
2.4Các giải pháp thực tế khả thi 19
2.4.1 Gia cố bộ định tuyến 19
2.4.2 Cơ chế bảo mật TTL tổng quát 20
2.4.3 Chống chập bất ổn cho định tuyến 22
Trang 22.4.5 Hạn chế chiều dài AS_Path 25
2.4.6 Lọc địa chỉ mạng 26
2.4.7 Lọc Bogons 27
2.4.8 Tái đảm bảo lọc các thiết bị cùng cấp 29
Chương III: DEMO BÀI TOÁN BẢO MẬT TRÊN BGP 30
Bài toán 1 30
3.1 Các thuộc tính đường dẫn BGP và Chính sách định tuyến 30
3.2 Chính sách định tuyến sử dụng các thuộc tính BGP 31
3.2.1 Chính sách định tuyến cho lưu lượng đi 31
3.2.2 Chính sách định tuyến cho lưu lượng đến 33
3.2.3 Kết luận và kết quả 33
Bài toán 2 34
3.3 iBGP - Định tuyến lỗ đen Black Hole và quy tắc đồng bộ hóa 34
3.3.1 Phân chia ngang iBGP 37
3.3.2 Bộ phản xạ tuyến 42
Bài toán 3 43
3.4 Tấn công BGP và cấu hình sai trên một mạng mẫu 43
3.6 Các vấn đề có thể xảy ra 49
3.6.1 Khởi phát thông tin sai lệch 50
3.6.2 Khử tập kết 53
Bài toán 4 56
3.7 Thực hiện các giải pháp bảo mật thiết thực cho mạng BGP 56
KẾT LUẬN 66
TÀI LIỆU THAM KHẢO 70
PHỤ LỤC 71
Trang 3DANH MỤC CÁC HÌNH VẼ
Hình 1 Bắt tay TCP 9
Hình 2 Ví dụ khử tập kết 12
Hình 3 Độ lớn của bảng định tuyến trong các bộ định tuyến lõi 17
Hình 4 BGP TTL hack 21
Hình 5 Định tuyến không ổn định 22
Hình 6 Độ dài AS_Path 25
Hình 7 Danh sách Bogon của các địa chỉ IP 28
Hình 8 Tái đảm bảo quá trình lọc 29
Hình 9 Sơ đồ cấu trúc liên kết của bài toán 1 30
Hình 10 ISP chuyển tiếp yêu cầu iBGP 34
Hình 11 Sơ đồ cấu trúc liên kết bài toán 2 35
Hình 12 Bảng định tuyến của bộ định tuyến A 36
Hình 13 Bảng định tuyến của bộ định tuyến A 37
Hình 14 Bảng định tuyến của bộ định tuyến B (có tất cả các tuyến) 38
Hình 15 Bảng định tuyến của C (có các tuyến đã được hiểu) 39
Hình 16 Bảng định tuyến của A (không có iBGP) 40
Hình 17 Thử nghiệm kết nối (ping và trace route) từ bộ định tuyến C 41
Hình 18 BGP được cấu hình mắt lưới 42
Hình 19 Bộ phản xạ tuyến BGP 43
Hình 20 Sơ đồ cấu trúc liên kết bài toán 3 44
Hình 21 Tên bộ định tuyến và bảng số AS tương ứng 45
Hình 22 Bảng định tuyến hoàn thiện ban đầu của bộ định tuyến A (ASN số 1) 46
Hình 23 Kiểm tra ping thành công từ A 47
Hình 24 Bảng định tuyến hoàn thiện ban đầu của B 48
Hình 25 Kiểm tra kết nối thành công từ B 49
Hình 26 Bộ định tuyến F khởi phát thông tin sai lệch 50
Hình 27 Thông tin sai lệch từ F được nhận tại C 51
Hình 28 Kiểm tra ping bị lỗi từ bộ định tuyến C 52
Trang 4Hình 30 Bộ định tuyến với thông tin sai lệch đƣợc khử tập kết 54
Hình 31 Bảng định tuyến và kết quả ping từ bộ định tuyến C 55
Hình 32 Sơ đồ cấu trúc liên kết bài toán 4 56
Hình 33 Bộ định tuyến F tạo ra thông tin sai lệch 58
Hình 34 Bộ định tuyến G quảng cáo tuyến không thể tiếp cận đƣợc 59
Hình 35 Bộ định tuyến H quảng cáo tuyến không thể tiếp cận đƣợc 60
Hình 36 Bộ định tuyến I tránh các tuyến bị sai 61
Hình 37 Bảng đinh tuyến của bộ định tuyến C và kiểm tra kết nối thành công 62 Hình 38 Bộ định tuyến E vẫn có kết nối 63
Hình 39 Bảng định tuyến của bộ định tuyến A hợp lệ 64
Hình 40 Kết quả ping thành công bảng định tuyến của B 65
Trang 5DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT
BGP Border Gateway Protocol Giao thức (định tuyến) cổng biên ISP Internet Service Provider Nhà cung cấp dịch vụ mạng
Đề nghị duyệt thảo và bình luận (tập hợp những nghiên cứu mới)
Hệ thống tự trị (tập hợp các thiết
bị chung chính sách quản lý) TCP Transmission Control Protocol Giao thức điều khiển truyền vận
Trang 6CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập-Tự do-Hạnh phúc
LỜI CAM ĐOAN
Họ và tên học viên: Dương Ngọc Sơn SHHV: CB130046
Lớp: 13BMTTT Khóa : 2013B
Cơ quan công tác: Cục Kỹ thuật nghiệp vụ I – Tổng cục An ninh I – Bộ Công an Chuyên ngành: Công nghệ thông tin Hệ thạc sĩ: Kỹ thuật
Đề tài: Nghiên cứu các vấn đề bảo mật trên giao thức BGP
Người hướng dẫn: TS Trần Hoàng Hải
Theo Quyết định giao đề tài số 2212 /QĐ-ĐHBK-SĐH do Hiệu trưởng trường Đại học Bách khoa Hà Nội ngày 29 tháng 4 năm 2014
Tôi xin cam đoan mọi nội dung trong Luận văn đều do tôi viết, những tài liệu tham khảo đều được ghi rõ trong mục Tài liệu tham khảo Ngoài ra, tôi không thuê người viết cũng như không sao chép từ bất kỳ nguồn nào Nếu sai, tôi xin chịu trách nhiệm trước hội đồng và nhà trường
Trân trọng cảm ơn!
Học viên
Dương Ngọc Sơn
Trang 7LỜI NÓI ĐẦU
Trong thời đại công nghệ thông tin đang phát triển bùng nổ hiện nay, Internet
đã là một phần quan trọng không thể thiếu của không chỉ những người làm kỹ thuật
mà của cả tất cả mọi người Từ những những công việc hàng ngày như việc tìm tài liệu, giải trí, nghe nhạc xem phim hay text chat trước đây, giờ đã được nâng lên thành những kho lưu trữ, giải trí không giới hạn, đàm thoại hoặc hội nghị truyền hình, và còn hơn thế nữa, Internet có thế đáp ứng hầu hết nhu cầu của người sử dụng Mọi người giờ đây có thể giải trí hoặc làm việc cùng nhau ở bất kỳ nơi đâu
Đó là về phía người sử dụng, còn về phía nhà cung cấp dịch vụ (ISP), khi mà công nghệ ngày càng phát triển thì dịch vụ cũng phải phát triển không ngừng Từ trước đây là dial-up, rồi ADSL, VDSL, tới nay là công nghệ FTTH, thì theo đó các nhà cung cấp dịch vụ cũng phải tự phát triển mình để đáp ứng, không chỉ là về đường truyền, tốc độ, mà về cả công nghệ, giao thức, cũng như cách thức quản lý, bảo mật 1 cách tối ưu nhất, hạn chế các tình huống sai sót hoặc bị tấn công dẫn đến hậu quả gián đoạn đường truyền, ảnh hưởng đến người sử dụng
BGP (Border Gateway Protocol) là giao thức định tuyến nòng cốt trên Internet, ra đời từ năm 1994, nó được sử dụng trong hầu hết các hệ thống mạng của ISP Từ năm 2006, BGP phiên bản 4 mới được hệ thống hóa (RFC4271), cho đến nay đã có nhiều đề tài nghiên cứu về BGP tuy nhiên bảo mật trên giao thức BGP lại
là vấn đề khá mới mẻ Nhiều trường hợp do bảo mật không tốt trên BGP đã dẫn đến tắc nghẽn mạng của một lượng lớn người sử dụng, việc khắc phục là không khó nhưng mất nhiều thời gian, chưa tính đến trường hợp bị tấn công, khai thác vào lỗ hổng bảo mật trên BGP Vậy nên, nếu không được nghiên cứu, đưa ra các biện pháp ngăn ngừa thì những tình huống đó hoàn toàn có thể lặp lại
Nhận thấy yếu tố quan trọng và mới mẻ của đề tài nên tôi quyết định nghiên
cứu và thực hiện trong luận văn này là: “Nghiên cứu các vấn đề bảo mật trên giao thức BGP” Trong luận văn này ngoài việc trình bày những tìm hiểu của mình về
các cách thức bảo mật trên BGP, tôi cũng xây dựng mô phỏng 1 mô hình hệ thống
Trang 8luận văn này, tôi xin gửi lời cảm ơn sâu sắc nhất đến thầy giáo hướng dẫn, Tiến sỹ Trần Hoàng Hải, người đã trực tiếp hướng dẫn tôi, định hướng cho tôi để thực hiện luận văn hoàn thiện nhất
Học viên
Dương Ngọc Sơn
Trang 9PHẦN MỞ ĐẦU
Lý do chọn đề tài
BGP là một giao thức được sử dụng rộng rãi và đã được nghiên cứu từ lâu, tuy nhiên vấn đề bảo mật trên giao thức BGP lại là vấn đề khá mới mẻ mà qua thời gian ngày càng xuất hiện những lỗ hổng dẫn đến việc bị tấn công hoặc đôi khi là những cách cấu hình sai cũng dẫn đến sự cố Hiện nay bảo mật trên BGP mới được
đề cập đến trên một số bài báo và đề tài nghiên cứu nước ngoài, còn ở Việt Nam vấn đề này ít được quan tâm, kể cả trong khóa học về BGP, phần bảo mật về BGP cũng chỉ là phần nhỏ, không được nhắc đến nhiều
Với nội dung nghiên cứu, thử nghiệm các bài toán về bảo mật trên giao thức BGP, trong luận văn này tôi sẽ trình bày những tìm hiểu của mình về các nguy cơ mất an toàn, cũng như các phương pháp, phân tích các phương pháp bảo mật trên giao thức BGP Tiếp theo, tôi sẽ xây dựng mô hình 1 hệ thống mạng bằng phần mềm giả lập, sau đó đưa ra các bài toán về bảo mật trên giao thức BGP và xử lý các bài toán đó Mục đích của luận văn là trình bày được các khải niệm cũng như phân tích được các cách thức bảo mật trên giao thức BGP ứng dụng cho các ISP hiện nay Tạo được một mô hình hệ thống mạng mô phỏng hệ thống mạng thực tế, xây dựng
và xử lý các bải toán trên mô hình đó, đáp ứng được các yêu cầu đặt ra… Ngoài ra cũng phải phân tích được các ưu nhược điểm của các phương pháp để đưa ra những cách thức tối ưu nhất
Phạm vi nghiên cứu
Trong phạm vi luận văn này, tôi xin phép được nghiên cứu các vấn đề sau:
- Vấn đề bảo mật trên giao thức BGP
- Các phương pháp bảo mật trên giao thức BGP
- Xây dựng mô phỏng hệ thống mạng và thực hiện các bài toán bảo mật BGP trên mô hình
- Kết quả, đánh giá và hướng phát triển
Trang 10Bố cục luận văn
Bố cục luận văn bao gồm các phần sau đây:
Chương I: Bảo mật trên giao thức định tuyến BGP
- Vấn đề bảo mật trên giao thức BGP
- Các nguy cơ đe dọa đến bảo mật trên giao thức BGP
- Một số trường hợp cụ thể
Chương II: Phương pháp bảo mật trên BGP
- Các phương pháp tăng tính bảo mật trên BGP
- Giải pháp bảo mật với tính khả thi cao
Chương III: Demo bài toán bảo mật trên BGP
- Thực hiện mô phỏng bài toán giả lập BGP trên phần mềm giả lập GNS3
- Kiểm tra kết quả
Sau đây, tôi xin trình bày luận văn của mình với nội dung: “Nghiên cứu các vấn đề bảo mật trên giao thức BGP”
Trang 11Chương I BẢO MẬT TRÊN GIAO THỨC ĐỊNH TUYẾN BGP
1.1 Bảo mật của giao thức định tuyến
Giao thức định tuyến được dùng để truyền dẫn thông tin giữa các bộ định tuyến tham gia, bất kỳ lỗi hay tấn công nào vào giao thức định tuyến sẽ dẫn đến việc mất hoặc lỗi thông tin định tuyến, điều này sẽ gây ảnh hưởng nghiêm trọng tới truyền tải trong mạng Việc nghiên cứu chính xác và kịp thời về vấn đề này là rất cần thiết để mạng được vận hành trôi chảy
Có rất nhiều điểm yếu và có thể bị đe dọa liên quan tới các giao thức định tuyến Các điểm yếu của giao thức định tuyến có thể đến từ 3 khía cạnh: thứ nhất, điểm yếu nằm ở các giao thức nền tảng đang sử dụng, thứ hai từ việc sai cấu hình và lỗi do con người, và cuối cùng là từ bộ định tuyến tin cậy Ví dụ khi một kẻ tấn công và kiểm soát một số bộ định tuyến sau đó sử dụng mối quan hệ tin tưởng lẫn nhau giữa các bộ định tuyến đã thỏa thuận và các thiết bị cùng cấp để phát tán thông tin sai lệch Vì vậy có thể nói giao thức định tuyến là thực thể có độ bảo mật yếu nhất trong miền định tuyến
1.2 Bảo mật giao thức BGP
BGP kế thừa những vấn đề chung về bảo mật của giao thức định tuyến nhưng những vấn đề như vậy trong BGP có ảnh hưởng lớn do có cơ sở cài đặt và miền sử dụng lớn BGP là giao thức định tuyến ngoại biên trong Internet có liên quan tới hàng nghìn định tuyến tham gia, với các dữ liệu của thiết bị cùng cấp luôn luôn đến và đi, dẫn tới sự thay đổi thường xuyên của mô hình BGP tin cậy BGP V4
đã được thiết kế để cung cấp giao thức định tuyến có thể cân bằng và kiểm soát được các vấn đề về bảo mật nhưng bản thân BGP không cung cấp chức năng bảo mật nào
Tuy nhiên cũng có thể tìm ra bộ định tuyến yếu trong miền BGP và sử dụng
nó để tung ra cuộc tấn công vào định tuyến trong Internet Thêm vào đó, BGP là
Trang 12trong cấu hình của nó cũng có thể gây rắc rối Đặc biệt là các vấn đề bảo mật của BGP trở nên nghiêm trọng hơn do khả năng nhân rộng lỗi trên phạm vi rất lớn, do
đó có thể gây ra lỗi cực kỳ nghiêm trọng làm cho những dịch vụ bị gián đoạn
Giao thức định tuyến BGP thiếu rất nhiều bước kiểm tra an toàn để cung cấp những cam kết bảo mật, một số bước kiểm tra bị thiếu được liệt kê dưới đây:
Theo mặc định của BGP, không có xác nhận của thiết bị cùng cấp
BGP không có các công cụ để đảm bảo rằng các cập nhật định tuyến nhận được trong bản tin cập nhật là không bị chỉnh sửa
Không có cơ chế để kiểm tra xem các địa chỉ mạng được quảng cáo trong bản tin cập nhật là thuộc sở hữu của người quảng cáo hay được chủ sở hữu cho phép quảng cáo các địa chỉ mạng đó
Không có cơ chế để kiểm tra tính chính xác của các thành phần đường dẫn liên kết với các cập nhật
Trong trường hợp các tuyến bị thu hồi, phải đảm bảo các thiết bị đồng cấp đã quảng cáo những tuyến này từ trước đó
BGP không thực hiện các công việc kiểm tra này và do đó dễ bị tổn hại do những quảng cáo sai cố tình và vô tình Có rất nhiều cuộc tấn công và cấu hình sai trong BGP dẫn đến các vụ mất mạng Internet lớn trong lịch sử
1.2.1 Sự cố tắc nghẽn Internet từ AS7007
Vào ngày 25 tháng 4 năm 1997, "Con-Ed Steals the Net" là một sự cố mà thông tin sai lệch đã được các bộ định tuyến tin tưởng và tiếp tục quảng cáo dẫn đến làm sai các bảng định tuyến và sai quyết định định tuyến trong mạng Internet trên toàn cầu
AS7007 nhận được bản cập nhật định tuyến từ luồng dữ liệu xuống của nhà cung cấp dịch vụ internet (ISP) và quảng cáo chúng tới các thiết bị cùng cấp bằng luồng dữ liệu lên, các thiết bị cùng cấp tin những cập nhật này là chính xác Nhưng luồng dữ liệu từ ISP xuống bắt đầu chuyển tiếp các địa chỉ mạng với chiều dài và các thuộc tính áp dụng gần như toàn bộ cho mạng internet AS7007 không thực thi
Trang 13bất cứ cơ chế bảo mật nào như lọc tuyến để xác định và ngăn chặn các lỗi hoặc các cuộc tấn công như trên, kết quả là chuyển tiếp thông tin độc hại vào luồng thông tin lên của các ISP Các bộ định tuyến nhận được thông tin độc hại này, bắt đầu chuyển tiếp các gói dữ liệu tới AS7007, nơi trở thành một hố đen của các luồng thông tin
1.2.2 Sự cố YouTube bị tắc nghẽn bởi PTA
Tương tự như vậy, vào ngày 24 tháng 2 năm 2008, Pakistan Telecom Authority (PTA) đã quảng cáo địa chỉ mạng cụ thể của YouTube PTA định ngăn việc truy cập vào YouTube ở Pakistan và quảng cáo địa chỉ cụ thể 208.65.153.0/24 đến giao diện Null0 (một loại bit bucket – dịch vụ quản lý phần mềm trực tuyến), địa chỉ này là một phần của địa chỉ được YouTube sử dụng, tức là 208.65.153.0/22
Ý định của PTA là luồng dữ liệu tới YouTube sẽ được chuyển tiếp tới giao diện Null0 và do đó YouTube sẽ bị chặn ở Pakistan Tuy nhiên, do một số sai lầm, PTA
đã quảng cáo tuyến giống hệt lên nguồn thông tin IPS (PCCW AS số 3491) PCCW tin rằng thông tin này là chính xác và quảng cáo thông tin này tới các thiết bị đồng cấp khác, chỉ vì không có hệ thống xác thực trong BGP Tất cả các bộ định tuyến trên mạng Internet tiếp nhận thông tin này ưu tiên tuyến cụ thể hơn cho lưu lượng truy cập YouTube và bắt đầu chuyển tiếp các gói tin có ý định tới YouTube làm cho tuyến thông tin cụ thể hơn Bằng cách này PTA vứt những gói tin này vào thùng rác bằng cách chuyển tiếp các gói tin tới giao diện trống và do đó mạng Internet bị chặn trong gần hai giờ
1.3 Tấn công vào TCP
BGP dựa trên TCP, cũng kế thừa những điểm yếu về an ninh của TCP, các vấn đề TCP có thể được khai thác làm gián đoạn giao thức định tuyến BGP Có rất nhiều vấn đề được biết đến trong TCP, chẳng hạn như:
- SYN Flooding (tấn công từ chối dịch vụ)
- RST TCP
Trang 141.3.1 SYN Flooding
SYN Flooding là một dạng tấn công từ chối dịch vụ nhằm vào giao thức TCP Trong TCP, 3 bước bắt tay được thực hiện trước khi thiết lập kết nối như trong hình 1
Hình 1 Bắt tay TCP
Thiết bị gửi tiến hành gửi gói tin SYN để thiết lập kết nối TCP, thiết bị nhận sau khi nhận SYN, gửi SYN + ACK và phân bổ cấu trúc dữ liệu Transmission Control Block (TCB) trong bộ nhớ hạt nhân để giữ thông tin về kết nối chưa hoàn thành này cho đến khi thiết bị nhận nhận được ACK tương ứng Kẻ tấn công gửi nhiều gói SYN từ địa chỉ giả mạo của máy chủ đã chết, máy chủ này không thể gửi ACK tương ứng và hoàn thành hoặc phá hủy kết nối này Cuối cùng bộ nhớ hạt nhân đầy và thiết bị nhận không thể thiết lập kết nối TCP với các thiết bị cùng cấp được cho phép điều này sẽ gây ra từ chối dịch vụ
Nếu bộ định tuyến BGP được đặt dưới sự tấn công của SYN Flooding, nó không thể thiết lập kết nối TCP với các thiết bị cùng cấp hợp lệ và do đó sẽ không thiết lập mối quan hệ cùng cấp dẫn đến thiếu thông tin hoặc từ chối dịch vụ
Các giải pháp
Giao thức TCP được triển khai hiện nay cung cấp cho một số biện pháp bảo
vệ chống lại cuộc tấn công Syn flooding Giao thức lớp vận chuyển mới hơn được
đề xuất đã giải quyết vấn đề này bằng cách thay thế bắt tay 3 bước bằng bắt tay 4
Trang 15bước Không phân bổ cấu trúc dữ liệu cho đến khi người khởi tạo chứng minh được lợi ích của việc phân bổ đó trong việc thiết lập kết nối bằng cách trả lời thông qua ACK
Ngoài ra để ngăn chặn cho tấn công TCP SYN không xảy ra, có một biện pháp nữa đó là việc gia cố thiết bị bị tấn công Trong đó lọc địa chỉ giả mạo bằng các ISP có hiệu quả nhiều hơn cả Nếu ISP lọc các gói tin đầu ra giả mạo, sẽ cản trở
kẻ tấn công gửi số lượng lớn các gói SYN đi
1.3.2 TCP RST
Kết nối TCP được thiết lập và tất cả các cuộc đàm phán của các thiết bị cùng cấp BGP cũng như cập nhật tuyến sẽ thông qua kết nối TCP này Do đó, nếu thiết bị cùng cấp hoặc một số kẻ tấn công âm mưu phá vỡ điều này, kết nối TCP và phiên BGP sẽ được dỡ bỏ Khi bộ định tuyến nhận được gói tin TCP RST, kết nối TCP tương ứng được đóng lại Điều này xảy ra do một số người dùng độc hại truy cập vào thiết bị cùng cấp hoặc có thể đoán số thứ tự trong các gói tin nhận được để gửi gói tin TCP với RST bit set và từ đó có thể làm mất kết nối TCP
Khi kết nối TCP bị lỗi, bộ định tuyến BGP xóa các mối quan hệ của các thiết
bị cùng cấp tương ứng và tất cả các định tuyến đi qua thiết bị ngang hàng này đều bị loại bỏ ra khỏi cơ sở dữ liệu định tuyến
Bộ định tuyến cũng rút các định tuyến liên quan mà nó đã quảng cáo với các thiết bị cùng cấp khác và gây ra hiệu ứng lan truyền Kết nối TCP có thể quay lại một lần nữa và mối quan hệ thiết bị cùng cấp BGP được thiết lập, lúc này các định tuyến được quảng cáo một lần nữa, điều này có thể dẫn đến định tuyến chập chờn; các liên kết giao tiếp và bộ phận xử lý bộ định tuyến sẽ chịu nhiều tải hơn
1.4 Các tấn công nhằm vào giao thức BGP
Có rất nhiều cuộc tấn công và các vấn đề có thể xảy ra do lỗ hổng và thiếu kiểm tra an ninh trong chính giao thức BGP Những vấn đề này chủ yếu là do thiếu
Trang 16trong cách thức hoạt động của các giao thức; ví dụ như việc bất kỳ thiết bị cùng cấp BGP nào có thiết lập các kết nối BGP thì cũng có thể gửi bản tin thông báo được nhận, điều này dẫn tới quá trình xử lý trên bộ định tuyến và hoạt động của tuyến bị chập chờn
Nguồn tấn công trong BGP
Trước hết chúng ta cần phải xác định nguồn gốc của các cuộc tấn công và các vấn đề an ninh BGP; chúng được phân loại trong danh sách sau đây:
Đưa thông tin sai lệch từ kẻ tấn công
Sai thông tin từ đối tác tin cậy
- Đối tác là hi-jacked (kẻ tấn công)
- Nguồn thông tin sai lệch do một số lỗi cấu hình
- Đưa thông tin có nguồn gốc sai lệch một cách cố ý để thực hiện một
đó, kẻ tấn công cũng có thể tận dụng các thuộc tính này để làm ảnh hưởng đến việc lựa chọn đường dẫn
Trang 17Bộ định tuyến nhận không có cơ chế để xác nhận và làm sạch các bản cập nhật nhận được Do đó thiết bị nào nhận tin vào thông tin này và làm chúng lây lan thêm, hậu quả là bảng định tuyến bị sai Việc chấp nhận thông tin sai lệch này phụ thuộc vào nguồn gốc của nó; sai thông tin bắt nguồn từ ISP cấp 1 được chấp nhận bởi nhiều bộ định tuyến và có ảnh hưởng nghiêm trọng, trong khi thông tin sai lệch được thu nhận tại bộ định tuyến cấp 3 có ảnh hưởng hạn chế hơn
1.5.2 Khử tập kết
Khử tập kết là quá trình quảng cáo địa chỉ mạng cụ thể hơn thay vì tóm tắt các tuyến Một bộ định tuyến nhận được địa chỉ mạng cụ thể hơn này sẽ ưu tiên quảng cáo định tuyến này trên bất kỳ cách lựa chọn đường dẫn nào khác vì địa chỉ mạng cụ thể hơn luôn được ưu tiên khi ra quyết định tuyến lựa chọn đường dẫn Như được thể hiện trong hình 2, một bộ định tuyến C hợp lệ đang chuyển tiếp thông tin có thể tiếp cận được về địa chỉ mạng 192.168.0.0/16 và bộ định tuyến tấn công attack router đang chuyển tiếp thông tin có thể tiếp cận được của 192.168.1.0/24 tới bộ định tuyến A Bộ định tuyến A sẽ cài đặt cả hai quảng cáo này trong bảng định tuyến của nó và luôn luôn ưu tiên đường dẫn tới bộ định tuyến tấn công attacking router để luồng thông tin tới 192.168.1.0 do là địa chỉ mạng dài nhất thỏa mãn quy tắc
Hình 2 Ví dụ khử tập kết
Đối với quảng cáo của các địa chỉ mạng cụ thể hơn, cấu hình là nguyên nhân chính của hầu hết các gián đoạn đã xảy ra trong lịch sử BGP
Trang 181.5.3 Thao tác các thuộc tính đường dẫn
Giao thức định tuyến BGP đưa ra quyết định định tuyến dựa trên cơ sở các thuộc tính đường dẫn liên quan với các định tuyến Các thiết bị đồng cấp có thể tận dụng các thuộc tính đường dẫn để thu hút các thiết bị đồng cấp sử dụng đường dẫn hướng tới mình hoặc để tạo ra một số tác động đến các quyết định định tuyến
Bộ định tuyến nhận có thể thiết lập lại hầu hết các thuộc tính đường dẫn khi nhận được cập nhật định tuyến Tuy nhiên, một số thuộc tính như AS_Path không thể thao tác được Bộ định tuyến gửi có thể gắn số AS của riêng mình vào thuộc tính AS_Path để gây ảnh hưởng đến các quyết định định tuyến
Một thuộc tính khác Multi_Exit_Disc (MED) cũng có thể được thao tác như vậy để các giá trị được thay đổi, để tư vấn cho Ass khác về đường dẫn đang đến để đạt được tổ chức riêng Định tuyến có giá trị MED thấp nhất được ưu tiên
Mỗi định tuyến có thuộc tính đường dẫn NEXT_HOP, bao gồm các giá trị địa chỉ IP next-hop Một thiết bị cùng cấp quảng cáo có thể thay đổi thuộc tính đường dẫn next-hop điều hướng luồng dữ liệu tới các điểm mong muốn
Người sử dụng độc hại hoặc kẻ tấn công có thể khai thác những phương pháp thao tác đường dẫn để đạt được lợi ích cho tổ chức của mình Điều này có thể tạo ra các vấn đề cho các tổ chức cạnh tranh khác nhau
Trang 191.5.5 Nghe trộm
Một bộ định tuyến có thể nghe trộm luồng thông tin được bảo vệ bằng cách truyền bá thông tin định tuyến giả và thu hút luông thông tin vào một số bộ định tuyến chưa được bảo vệ hoặc bị tổn hại Trong Internet có rất nhiều con đường có thể dẫn tới khả năng này giữa các cặp định tuyến nhận và gửi Một bộ định tuyến có thể là nơi xuất phát hoặc chặn một số quảng cáo định tuyến để buộc các bộ định tuyến khác sử dụng một số đường dẫn không an toàn Kẻ tấn công cũng có thể thu hút luồng thông tin vào hắn bằng cách khởi tạo thông tin giả và sau đó chuyển tiếp
nó đến đích dự định tức là làm người trung gian nghe trộm
1.5.6 Tắc nghẽn, chậm trễ và vòng lặp
Bộ định tuyến có thể quảng bá thông tin định tuyến để cung cấp số lượng lớn luông thông tin thông qua một đường dẫn hoặc một số đường dẫn ít tối ưu hơn, những đường dẫn này có thể dẫn đến luồng thông tin bị tắc nghẽn và chậm trễ Thao tác trên đường dẫn này gây ra vấn đề từ chối dịch vụ
Thông tin định tuyến không chính xác và không đầy đủ trong bảng định tuyến của miền hoàn toàn có thể dẫn đến những quyết định không chính xác, điều này cũng có thể gây ra vòng lặp định tuyến
Trang 20Chương II PHƯƠNG PHÁP BẢO MẬT TRÊN BGP 2.1 Xác minh của thiết bị đồng cấp
Xác minh TCP MD5-based được hỗ trợ trong BGP, nơi mà việc chia sẻ giữa các bộ định tuyến tham gia chính là chìa khóa Bộ định tuyến gửi tất cả các bản tin được mã hóa đầu vào cùng với khóa bí mật và gửi chúng ghép với các bản tin Bộ định tuyến nhận cũng tính toán mã hóa trong tin nhắn cộng với khóa bí mật và ghép chúng với giá trị mã hóa nhận được, nếu các giá trị phù hợp thì bản tin được chấp nhận, nếu không bản tin bị loại bỏ
Bằng cách này, xác minh TCP MD5 có thể được sử dụng để xác thực thiết bị đồng cấp, tức là xác minh rằng thiết bị đồng cấp đang quảng cáo thông tin là thiết bị hợp lệ TCP MD5 vẫn còn một số điểm yếu, do đó giao thức mới TCP-AO đang được đề xuất trong các tài liệu nhưng vẫn chưa được tích hợp trong tiêu chuẩn BGP
Xác minh của thiết bị đồng cấp có thể bảo vệ chống lại các cuộc tấn công từ bên ngoài, nhưng các bộ định tuyến bị sai cấu hình và bị tổn hại vẫn có thể bị những
kẻ tấn công sử dụng để quảng bá thông tin sai lệch từ các thiết bị đồng cấp hợp pháp mặc dù những thiết bị đồng cấp này đã qua kiểm tra xác thực MD5
Thông tin sai lệch do sai cấu hình hoặc bộ định tuyến bị nhiễm độc vẫn có thể xảy ra và không có kiểm tra trong BGP, do đó nhiều cải tiến bảo mật cho BGP
đã được đề xuất Có hai đề xuất cải tiến hoàn toàn BGP có thể tạo ra trao đổi thông tin định tuyến an toàn
2.2 Bảo mật BGP (S-BGP)
S-BGP là hình thức an toàn mới của BGP, trong đó xác nhận rằng:
- Bản tin cập nhật nhận được từ thiết bị cùng cấp hợp lệ và chưa bị chỉnh sửa
- Người quảng cáo sở hữu hoặc được ủy quyền để quảng cáo các địa chỉ mạng
có thông tin được chứa trong bản cập nhật
Trang 21- Nếu việc loại bỏ tuyến được yêu cầu trong bản tin cập nhật, thì bộ định tuyến phải gửi quảng cáo tuyến này trước đó
Cấu trúc S-BGP có bốn yếu tố chính được sử dụng để cung cấp độ tin cậy như sau:
- Một cấu trúc khóa công khai (PKI) để đại diện cho địa chỉ mạng và số sở hữu AS
- Xác nhận địa chỉ được cấp cho AS của chủ sở hữu địa chỉ mạng; cho phép
AS cụ thể
- Mỗi bộ định tuyến theo AS_Path xác nhận định tuyến để ghép cặp với các zđường dẫn trước đó
- IPSec được sử dụng trong S-BGP để tăng cường an ninh của phiên kết nối
Hạ tầng khóa công khai S-BGP
S-BGP yêu cầu PKI trong việc cho phép các địa chỉ mạng và phân bổ số lượng AS cho các tổ chức khác nhau Chứng nhận kỹ thuật số X.509(V3) song song với việc phân bổ IP và AS hiện có là cần thiết Trong cấu trúc này, mỗi AS được gán một địa chỉ mạng công cộng và số AS cũng sẽ được gán một chứng nhận công khai để liên kết số AS và khóa công khai của tổ chức
Có hai chứng thực, chứng thực tuyến và chứng thực địa chỉ gắn với tất cả các bản cập nhật quảng cáo Chứng thực địa chỉ là do chủ sở hữu địa chỉ mạng IP cấp cho AS, AS sẽ được cho phép quảng cáo địa chỉ mạng này Về chứng thực tuyến, tất cả các bộ định tuyến trước khi quảng cáo các cập nhật tới các thiết bị đồng cấp của mình đều phải thông qua chứng thực tuyến Chứng thực này xác nhận rằng AS cuối cùng trong AS_Path (AS gửi ) được ủy quyền của AS trước
để quảng cáo những địa chỉ mạng này Thuộc tính đường dẫn mới có thể lựa chọn được quy định trong S-BGP để truyền đạt thông tin chứng thực này giữa các thiết bị đồng cấp BGP
Các bộ định tuyến nhận sử dụng các chứng thực và chứng nhận kỹ thuật số
để đảm bảo độ tin cậy của các bản cập nhật nhận được S-BGP đảm bảo rằng chủ sở
Trang 22cáo các địa chỉ mạng sử dụng chứng thực địa chỉ kèm theo cập nhật và khóa công khai của chủ sở hữu Tương tự như vậy, nó cũng được xác minh rằng tất cả các ASs trên đường dẫn cũng được phép quảng cáo các địa chỉ mạng này tới các thiết bị đồng cấp của mình bằng cách sử dụng chứng thực tuyến
Tuy nhiên, kiểm tra tất cả các chứng thực đòi hỏi khả năng xử lý cao và yêu cầu lưu trữ các chứng chỉ cần thiết tốn nhiều tài nguyên bộ nhớ
Trong khi kích thước của bảng định tuyến tại bộ định tuyến lõi trên mạng Internet đang tăng lên như trong Hình 3 dưới đây; bộ định tuyến lõi khó có thể quản
lý các chức năng hiện tại của nó với số lượng các định tuyến nhiều như vậy đang truy nhập vào bảng định tuyến của nó và nó không thể chịu đựng thêm tải của chứng thực tuyến và chứng thực địa chỉ do S-BGP áp đặt
Hình 3 Độ lớn của bảng định tuyến trong các bộ định tuyến lõi
S-BGP có thể giải quyết nhiều vấn đề an ninh BGP nhưng nó không được triển khai do ba nguyên nhân chính:
- Cần cấu hình cao trong bộ xử lý của bộ định tuyến
- Thiết lập cơ sở hạ tầng PKI là điều kiện tiên quyết cho S-BGP
Trang 23- Không được thực hiện bởi các nhà cung cấp chính và các ISP Mọi người đều chờ đợi người khác đi bước đầu tiên
- Xác minh rằng thuộc tính AS_Path là hợp lệ và được chấp nhận
SoBGP xác định và sử dụng ba chứng nhận để đạt được cam kết bảo mật như
ký sử dụng khóa AS bảo mật và EntityCert (chứng nhận thực thể) được sử dụng để phân phối khóa công khai tương ứng với khóa bảo mật này EntityCert được ký bởi một số nhà xác minh nổi tiếng như Verisign và khóa của chúng có thể được sử dụng
để xác thực EntityCert
AuthCert (chứng nhận ủy quyền) được sử dụng để chứng minh quyền sở hữu
và quyền sử dụng các địa chỉ mạng nhất định AS sẽ tạo ra AuthCert và ký bằng cách sử dụng khóa bảo mật (tương ứng với khóa công khai trong EntityCert) AS nhận sẽ xác minh rằng quảng cáo các địa chỉ mạng được ủy quyền bằng cách sử dụng AuthCert này
PolicyCert (chứng nhận chính sách) được sử dụng để phân phối thông tin cấu
Trang 24mình bằng cách sử dụng PolicyCert nhận được và kiểm tra các bản cập nhật theo cấu trúc liên kết này
Bản tin BGP mới với 'bản tin bảo mật’ được xác định là để thực hiện các chứng chỉ trên giữa các hệ thống tự trị Khi SoBGP được triển khai, nó sẽ có thể giải quyết nhiều vấn đề bảo mật, nhưng trong thực tế nó không đáp ứng được những cam kết bảo mật và cũng giống như S-BGP cũng rất nặng đối với bộ định tuyến lõi Internet vốn đã chịu nhiều gánh nặng
2.4 Các giải pháp thực tế khả thi
Có rất nhiều giải pháp được đề xuất để bảo đảm BGP như S-BGP, SoBGP, pretty secure BGP (psBGP), nhưng chúng không giải quyết được tất cả các vấn đề tồn tại liên quan tới BGP hoặc chúng không được thực hiện do vấn đề chi phí Tuy nhiên, các nhà cung cấp bộ định tuyến và các ISP lớn đã phát triển một số phương pháp thực tiễn để cung cấp bảo mật trong BGP Những phương pháp thực tế tốt rất
có thể tăng tính bảo mật của BGP và tránh được nhiều vấn đề liên quan đến BGP
mà không khiến các bộ định tuyến BGP phải chịu tải quá lớn Những biện pháp này bao gồm:
- Gia cố bộ định tuyến
- Cơ chế bảo mật TTL tổng quát
- Chống bất ổn cho định tuyến
- Hạn chế tối đa địa chỉ mạng
- Hạn chế chiều dài AS_Path
- Lọc địa chỉ mạng
2.4.1 Gia cố bộ định tuyến
Router là thiết bị chính tạo ra và quảng cáo các bản tin quảng cáo BGP với các thiết bị cùng cấp Nếu kẻ tấn công có thể bằng cách nào đó có được quyền truy cập tới bộ định tuyến BGP tin cậy, bộ định tuyến bị tổn thương này có thể được sử dụng
để phân phối thông tin độc hại đến các thiết bị cùng cấp Vì vậy để đạt được bảo
Trang 25mật BGP bước đầu tiên là nên gia cố bộ định tuyến tham gia, do đó, không có người
sử dụng độc hại nào có thể được tiếp cận với chúng Cách gia cố bao gồm:
- Bảo mật vật lý
- Hạn chế truy cập đến bộ định tuyến
- Từ chối các gói tin giả mạo
- Sử dụng mật khẩu an toàn và mã hóa để bảo vệ truy cập
- Vô hiệu hóa tất cả các dịch vụ không sử dụng
Kiểm soát truy cập vật lý tới bộ định tuyến bằng cách chỉ cho những người có thẩm quyền mới được truy cập và hạn chế truy cập từ xa có thể đạt được bằng cách cấu hình danh sách truy cập để cho phép một số địa chỉ IP truy cập và ngăn chặn (từ chối) tất cả các địa chỉ không rõ ràng
Cisco đã giới thiệu tính năng mới "Tự động bảo mật" có thể được sử dụng để cải thiện bảo mật bộ định tuyến của Cisco Công cụ này có thể được sử dụng để tạo
ra các kịch bản cấu hình nhằm vô hiệu hóa các dịch vụ không sử dụng và tạo ra, áp dụng các mật khẩu mạnh trong kết nối tới bộ định tuyến
2.4.2 Cơ chế bảo mật TTL tổng quát
Xác thực của các thiết bị cùng cấp có thể bảo vệ một bộ định tuyến khỏi ghép cặp với bộ định tuyến BGP không được cho phép Nhưng nếu nhiều bộ định tuyến đang gửi yêu cầu đến cổng TCP 179 để trở thành thiết bị cùng cấp BGP mặc dù chúng không biết mật khẩu, điều này có thể gây ra từ chối dịch vụ Chúng gửi quá nhiều yêu cầu giả mạo làm cho bộ định tuyến bận đánh giá những yêu cầu và nói xin lỗi với chúng
BGP TTL hack protection (BGP TTL chống hack) sử dụng cơ chế bảo mật TTL tổng quát để ngăn chặn âm mưu hoặc các cuộc tấn công Theo mặc định các thiết bị cùng cấp eBGP chủ yếu kết nối trực tiếp với nhau và BGP TTL hack protection khai thác thực tế này để ngăn chặn tấn công từ chối dịch vụ từ các bộ
Trang 26định tuyến mà có hơn 1 bước tuyền từ bộ định tuyến eBGP Phương pháp này là bộ định tuyến eBGP tạo ra các bản tin BGP với giá trị TTL bằng 1
Bộ định tuyến eBGP chấp nhận bất kỳ bản tin BGP nào có giá trị lớn hơn TTL bằng 0, do đó, các bộ định tuyến có nhiều bước truyền có thể gửi bản tin BGP bằng cách thiết lập giá trị TTL để giá trị cao hơn sao cho khi bản tin BGP đến phía người nhận, giá trị TTL lớn hơn hoặc bằng 0 Để ngăn chặn cuộc tấn công này, chúng ta có thể cấu hình bộ định tuyến BGP chấp nhận các gói dữ liệu có giá trị TTL lớn hơn hoặc bằng 254 Giá trị TTL tối đa cho phép là 255 Do đó bộ định tuyến lân cận được kết nối trực tiếp sẽ tạo ra bản tin BGP với giá trị TTL được thiết lập tới 255 và những bản tin này đến phía người nhận với giá trị TTL là 254 và do
đó nó được chấp nhận Hãy nhớ rằng giá trị TTL này được kiểm tra sau khi giảm giá trị Bất kỳ bản tin nào từ bộ định tuyến không được kết nối trực tiếp đến bộ định tuyến BGP sẽ có TTL dưới 254 và do đó bản tin bị từ chối Ví dụ trong hình 4 bản tin được bộ định tuyến B gửi đến A sẽ được chấp nhận nhưng bản tin gửi từ C đến
A sẽ bị loại bỏ do giá trị TTL, vì bộ định tuyến A đã được cấu hình để chỉ nhận bản tin BGP chỉ có giá trị TTL lớn hơn hoặc bằng 254
Hình 4 BGP TTL hack
Trang 272.4.3 Chống chập bất ổn cho định tuyến
Định tuyến không ổn định, thay đổi liên tục theo chu kỳ là một chuỗi các quảng cáo, thu hồi và tái quảng cáo bất kỳ tuyến nào Định tuyến không ổn định có thể xảy ra do lỗi cấu hình, lỗi hệ điều hành, tấn công hay cố ý chập chờn để khởi động một cuộc tấn công chống lại các giao thức định tuyến BGP Định tuyến không
ổn định được thể hiện trong hình 5 dưới đây, bộ định tuyến A rút tuyến đã được quảng cáo trước đó 100.10.0.0/16 cho B B phải đánh giá lại bảng định tuyến và chuyển tiếp các quảng cáo mới vào luồng thông tin lên cho bộ định tuyến C, D và E, các định tuyến C, D, E có thể có thêm các kết nối vào luồng thông tin lên
Đánh giá lại bảng định tuyến BGP là nhiệm vụ xử lý rất chuyên sâu và có thể dẫn đến việc sử dụng CPU rất cao hoặc từ chối dịch vụ, bởi vì các bộ định tuyến BGP chịu tải nặng với hơn 3 trăm ngàn mục trong bảng định tuyến Nhiều tuyến không ổn định có thể làm cho các bộ định tuyến quá bận để thực hiện chức năng định tuyến bình thường của mình
Hình 5 Định tuyến không ổn định
Chống bất ổn cho định tuyến là một tính năng được Cisco hỗ trợ để kiểm soát
Trang 28quảng cáo lại, thì tuyến đó đƣợc gọi là không ổn định Tính năng chống bất ổn định tuyến làm giảm tăng số lần phạt với tuyến mỗi lần nó không ổn định và bắt đầu ngăn chặn tuyến đó khi số lần phạt đạt đến ngƣỡng nhất định Ở giai đoạn này tuyến này không đƣợc quảng cáo mà cũng không đƣợc các thiết bị cùng cấp chấp nhận Năm biến đƣợc sử dụng để kiểm soát quảng cáo của tuyến và giá trị mặc định của chúng:
ổn trong 15 phút thì, giá trị phạt của nó sẽ đƣợc giảm xuống còn một nửa và sau mỗi 5 giây liên tục giảm đi một nửa
Tuyến sẽ đƣợc hoạt động trở lại và đƣợc quảng cáo với các thiết bị cùng cấp khi giá trị phạt liên quan đến tuyến này nhỏ hơn hoặc bằng giới hạn tái sử dụng tức
là 750 theo mặc định Bằng cách này chúng ta có thể chặn quảng cáo của các tuyến bất ổn và tránh tải nặng do phải đánh giá đi đánh giá lại bảng định tuyến do các tuyến không ổn định
2.4.4 Hạn chế tối đa địa chỉ mạng
Bộ định tuyến lõi BGP có thể có nhiều hơn 350.000 mục trong bảng định tuyến của nó và chúng chia sẻ thông tin này với nhau để cung cấp kết nối Internet đầu cuối Định tuyến có số lƣợng lớn các mục định tuyến có khả năng làm tràn bộ nhớ
Trang 29của thiết bị định tuyến cùng cấp đặc biệt là trong trường hợp lỗi cấu hình, hack hoặc khai thác lỗ hổng phần mềm của hệ điều hành
BGP cho phép thiết lập các giới hạn về số lượng địa chỉ mạng có thể nhận được
từ bất kỳ thiết bị cùng cấp nào Lệnh tối đa địa chỉ mạng cho phép cấu hình giới hạn
và hành động được thực hiện khi đạt tới giới hạn này
Khi cấu hình giới hạn tối đa địa chỉ mạng trên thiết bị đồng cấp, chúng ta cần phải tính toán:
- Số lượng các địa chỉ có khả năng sẽ nhận được trong những hoàn cảnh bình thường
- Giới hạn cần được cấu hình nhiều hơn số lượng được tính trong bước đầu tiên
- Giới hạn mức (khi bắt đầu tạo ra bản tin cảnh báo)
Cú pháp lệnh: neighbour neighbour-id maximum-prefix threshold
Chỉ cảnh báo là tham số tùy chọn, và nếu có thì các bản tin cảnh báo chỉ được tạo ra khi đạt tới các giới hạn tối đa Hành vi mặc định để bắt đầu tạo ra bản tin cảnh báo khi đạt tới tỷ lệ phần trăm (ngưỡng) và ngắt kết nối giữa các thiết bị cùng cấp khi đạt giới hạn địa chỉ mạng tối đa
Lệnh ví dụ: neighbour 1.1.1.1 100 80
Nếu lệnh trên được cấu hình trên bộ đinh tuyến A Bộ đinh tuyến A sẽ bắt đầu tạo ra bản tin cảnh báo khi số lượng địa chỉ mạng nhận được từ bộ định tuyến lân cận B đạt 80 và kết nối với các thiết bị cùng cấp được dỡ bỏ khi số lượng đạt 100
Tuy nhiên, số lượng dự kiến của các địa chỉ mạng có thể bị thay đổi với mối quan hệ cùng cấp biến động và những thay đổi này cần phải được cập nhật, chuyển tải và cấu hình kịp thời, nếu không sẽ nảy sinh vấn đề
Trang 302.4.5 Hạn chế chiều dài AS_Path
AS_Path là thuộc tính gắn liền với quảng cáo tuyến chứa danh sách các hệ thống tự trị mà cần phải đi qua để đạt NLRI (thông tin đến lớp mạng) được quảng cáo trong bản tin cập nhật Thuật toán tuyến BGP là nhìn vào chiều dài AS_Path và tuyến có chiều dài AS_Path ngắn hơn thì được ưu tiên hơn BGP cho phép làm AS_Path dài hơn bằng cách lặp đi lặp lại cùng một số AS nhiều lần trong thuộc tính AS_Path Kỹ thuật này được sử dụng bởi một số ISP để làm cho một số tuyến được
ưu tiên hơn những tuyến khác, tức là đạt được mục tiêu kỹ thuật về luồng thông tin Một tổ chức có thể lặp lại số AS của mình trong thuộc tính AS_Path để làm cho nó dài hơn, theo cách này mục tiêu kỹ thuật luồng thông tin có thể đạt được mà không ảnh hưởng đến chức năng chống vòng lặp của thuộc tính AS_Path
Hình 6 Độ dài AS_Path
Ví dụ như trong hình 6 ở trên, bộ định tuyến A trong AS 10 gửi quảng cáo đến
B và C về địa chỉ mạng 20.20.20.20/16 Tuy nhiên, quảng cáo gửi đến B có số AS
10 được liệt kê trong thuộc tính AS_Path, trong khi quảng cáo gửi đến C có số AS
10 được liệt kê bốn lần trong thuộc tính AS_Path Bây giờ phần còn lại của tuyến tiếp nhận internet tới địa chỉ 20.20.20.20/16 từ cả B và C sẽ luôn luôn ưu tiên các tuyến đường đi qua B do chiều dài AS_Path của nó ngắn hơn
Trang 31Nhưng phải cẩn thận trong khi gắn AS_Path vì trong lịch sử đã có một số vấn đề nảy sinh từ hậu quả thao tác thuộc tính này Các nhà cung cấp bộ định tuyến khác nhau có cách cấu hình khác nhau và dung sai khác nhau trong giới hạn tối đa AS-Limit Ví dụ trong một cuộc tấn công, một nhà cung cấp có cách cấu hình dễ bị tổn thương, lặp lại trong thuộc tính AS_Path dẫn đến hậu quả trong chính AS_Path đó: thuộc tính rất dài này, khi quảng cáo cho các nhà cung cấp khác, sẽ khai thác nhiều lỗ hổng trong các nhà cung cấp IOS khác vì hệ điều hành của họ đã không được xử lý AS_Path như vậy
Vì vậy cần phải cẩn thận khi cấu hình các AS_Path và giới hạn nên được áp đặt để AS_Path dài hơn sẽ bị từ chối theo mặc định
Lọc địa chỉ mạng là phương pháp được sử dụng rộng rãi bởi các ISP để ngăn chặn các cuộc tấn công trên BGP và nó đã tỏ ra rất hiệu quả Nhà quản trị có thể quyết định địa chỉ mạng nào nên được quảng cáo và nhận được từ thiết bị cùng cấp
và sau đó bộ lọc được cấu hình tương ứng để lần lượt ngăn chặn quảng cáo và việc nhận các địa chỉ mạng không mong muốn từ bất kỳ thiết bị đồng cấp nào
Nhà quản trị cần phải chuẩn bị trước khi thực hiện lọc địa chỉ mạng, phải quyết định rõ ràng địa chỉ mạng nào cần được quảng cáo và những địa chỉ mạng nào
dự kiến sẽ được chấp nhận
Trang 32Quyết định lọc các gói dữ liệu đến và đi phần lớn phụ thuộc vào loại quan hệ kết nối từng cặp (peer) Có thể có ba loại mối quan hệ kết nối từng cặp
Peer luồng thông tin xuống khách hàng
IPS phân bổ các địa chỉ mạng vào luồng thông tin xuống khách hàng và chỉ chấp nhận các địa chỉ mạng này trong bản tin quảng cáo từ khách hàng
Peer với một ISP khác
Các tuyến với các thiết bị cùng cấp phụ thuộc vào thỏa thuận đã được đàm phán Mỗi thiết bị cùng cấp thông báo với các thiết bị cùng cấp khác về các địa chỉ mạng cần được quảng cáo và cần được nhận và các bộ lọc địa chỉ mạng theo thỏa thuận này phải được thực hiện ở cả hai đầu
Peer với luồng thông tin lên ISP
Luồng thông tin lên hoặc nhà cung cấp chuyển tiếp cung cấp kết nối với phần còn lại của Internet; các quảng cáo định tuyến nhận được từ luồng thông tin lên các nhà cung cấp thay đổi theo tình hình
- Trong trường hợp nhà cung cấp đơn lẻ, chỉ có tuyến mặc định được nhận
- Trong trường hợp multi-homing (kết nối dự phòng), mặc định cộng với luồng thông tin lên khách hàng được quảng cáo
- Toàn bộ bảng định tuyến được nhận từ luồng thông tin lên bộ định tuyến trong trường hợp có nhiều điểm thoát và các bộ định tuyến được dùng để đưa ra quyết định tối ưu cho luồng thông tin ra
Tuy nhiên, một bộ lọc phải được cấu hình để không chấp nhận tuyến của chính mình từ thông tin lên các nhà cung cấp
2.4.7 Lọc Bogons
Ngoài các bộ lọc phụ thuộc vào mối quan hệ các thiết bị cùng cấp, phải có một số chương trình lọc chung được thực hiện trên tất cả các bộ định tuyến BGP để
Trang 33ngăn chặn các bất thường Có một số địa chỉ IP không thể được sử dụng như các địa chỉ IP unicast hợp lệ trên mạng Internet và do đó quảng cáo định tuyến có nguồn gốc từ các địa chỉ này phải được lọc ở tất cả các bộ định tuyến Các bộ lọc phải thực hiện trên tất cả các bộ định tuyến tham gia vào giao thức định tuyến BGP để lọc các tuyến trong những địa chỉ được gọi là Địa Chỉ Bogon
Việc lọc các địa chỉ bogon giúp ngăn ngừa mạng khỏi trở thành nguyên nhân của các cuộc tấn công từ chối dịch vụ, bởi vì hầu hết thời gian của một địa chỉ giả mạo từ danh sách địa chỉ bogon được sử dụng như địa chỉ IP nguồn trong các gói tin là nhằm khởi động các cuộc tấn công như vậy
Địa chỉ bogon bao gồm các địa chỉ IP riêng được định nghĩa trong RFC
1918, dải địa chỉ tự động cấu hình và các địa chỉ không được IANA bổ nhiệm Danh sách Bogon tự động thay đổi và nhà quản trị cần cập nhật kịp thời các bộ lọc Danh sách Bogon được thể hiện trong hình 7 dưới đây
Trang 342.4.8 Tái đảm bảo lọc các thiết bị cùng cấp
Các bộ lọc thiết bị cùng cấp được tiến hành theo cách củng cố lẫn nhau, do đó, nếu có 1 thiết bị mắc lỗi ở một đầu nó sẽ được thiết bị cùng cấp khác xử lý ở đầu còn lại
Hình 8 Tái đảm bảo quá trình lọc
Ví dụ trong hình 8, bộ định tuyến A cần phải lọc 100.100.100.0/24 tuyến từ quảng cáo được gửi đến bộ định tuyến B Bộ lọc đầu ra được cấu hình tại Serial 0/0 trên bộ định tuyến A để ngăn chặn quảng cáo đầu ra và tương tự tại Serial 0/0 giao diện của bộ định tuyến B, bộ lọc được cấu hình để từ chối quảng cáo đến bao gồm 100.100.100.0/24 tuyến
Bằng cách này, nếu do một số lỗi, cấu hình sai hoặc các cuộc tấn công, bộ định tuyến A có thể quảng cáo thông tin giả mạo nhưng nó sẽ không được các thiết
bị cùng cấp chấp nhận tức là các bộ lọc củng cố lẫn nhau
Trang 35Chương III DEMO BÀI TOÁN BẢO MẬT TRÊN BGP
Trong luận văn này, tôi đã thiết kế và tiến hành một số bài toàn giả lập các tình huống bảo mật trên BGP sử dụng phần mềm giả lập GNS3 (mô phỏng Cisco IOS) minh họa các cuộc tấn công, các biện pháp bảo vệ tốt và hiệu quả
Bài toán 1
3.1 Các thuộc tính đường dẫn BGP và Chính sách định tuyến
Trong nghiên cứu trường hợp đầu tiên này, tôi sẽ chỉ ra cách giao thức định tuyến BGP được sử dụng như thế nào để đạt được định tuyến dựa trên chính sách bằng cách vận dụng các thuộc tính đường dẫn BGP Các bài toán sau sẽ tiếp tục giới thiệu các vấn đề an ninh có thể phá vỡ hoạt động định tuyến dựa trên chính sách của giao thức định tuyến BGP Hình 9 dưới đây cho thấy sơ đồ cấu trúc liên kết của bài toán này
Hình 9 Sơ đồ cấu trúc liên kết của bài toán 1
Trang 36Trong bài toán đầu tiên này, một tổ chức ABC có ba cơ sở khác nhau trong
hệ thống tự trị AS số 100 HQ (trụ sở chính) được kết nối với cả hai chi nhánh BR1
và BR2 Vì vậy, HQ có quan hệ BGP nội bộ (iBGP) với cả hai chi nhánh BR1 và BR2 Chi nhánh BR1 có quan hệ BGP bên ngoài (eBGP) với ISP-1 và chi nhánh BR2 có mối quan hệ eBGP với ISP-2 Các ISP trong cùng một hệ thống tự trị AS số
200 và giữa chúng có quan hệ iBGP
ISP-2 có một kết nối đến ISP-3 (mô phỏng Internet) và bộ định tuyến ISP-2
có một tuyến tĩnh đến ISP-3 Bộ định tuyến HQ (Trụ sở chính) nhận được nhiều đường dẫn tới các đích đến khác nhau từ ISP-1 và ISP-2 thông qua các cập nhật BGP Sẽ tốt hơn nếu các tuyến đi qua ISP-1 và ngược lại đối với một số tuyến khác Thêm vào đó, một quản trị viên tại HQ có thể muốn thực hiện một số chính sách về việc sử dụng các đường dẫn đi qua các ISP khác nhau Tôi đã thực hiện chính sách định tuyến này sử dụng thuộc tính Local Preference của các tuyến BGP
Nhiều mạng đang chạy ở HQ và các máy chủ khác nhau được đặt tại cả mạng và HQ Những máy chủ này có thể được tiếp cận bởi người dùng kết nối với Internet Internet có hai đường dẫn đến mạng này; một là thông qua ISP-1 và một là thông qua ISP-2, vì vậy chúng thực hiện cân bằng tải ở đây sử dụng thuộc tính MED của BGP Các máy chủ trong mạng 172.10.1.0 được tiếp cận thông qua ISP-1
và máy chủ trong mạng 2 được tiếp cận thông qua ISP-2 ISP-2 có kết nối đến ISP-3
và có tuyến tĩnh với nó ISP-2 đã phân phối lại tuyến tĩnh này trong cập nhật định tuyến BGP và tuyến này sẽ được quảng cáo cho các thiết bị cùng cấp eBGP tại BR1
và BR2 và tới lượt chúng quảng cáo tuyến đó tới HQ Vì vậy, HQ có thể kết nối đến mạng ISP-3 trong bảng định tuyến của nó và đưa ra quyết định định tuyến theo chính sách
3.2 Chính sách định tuyến sử dụng các thuộc tính BGP
3.2.1 Chính sách định tuyến cho lưu lượng đi
Bộ định tuyến BR1 đang nhận được các thông tin từ ISP-1 về 172.10.8.0 - 172.10.15.0/21 Bản đồ tuyến được cấu hình trên bộ định tuyến này để thay đổi thuộc tính local preference các các tuyến được nhận trên bộ định tuyến này
Trang 37Danh sách Truy cập Access list 1 được cấu hình để xác định các mạng gần thông qua BR1, nghĩa là các tuyến 172.10.8.0 đến 172.10.11.0/22
access-list 1 permit 172.10.8.0 0.0.3.255
Danh sách Truy cập Access list 2 được cấu hình để xác định các mạng không tiếp cận được tốt thông qua bộ định tuyến BR1, tức là 172.10.12.0 đến 172.10.15.0/22
access-list 2 permit 172.10.12.0 0.0.3.255
Nhóm mạng thứ nhất được gán với 200 ưu tiên (local reference) sử dụng bản
đồ tuyến Nhóm mạng thứ 2 được gán với 50 ưu tiên tại bộ định tuyến biên, tức là BR1 Bản đồ tuyến này được áp dụng cho tất cả các tuyến đến từ những hàng xóm ISP-1 Bây giờ bộ định tuyến BR1 sẽ quảng bá các tuyến này bằng giá trị đã bị thay đổi của thuộc tính ưu tiên tới HQ
Tương tự như vậy bộ định tuyến BR2 cũng được nhận thông tin từ ISP-2 về 172.10.8.0 đến 172.10.15.0/21 Danh sách truy cập được cấu hình trên bộ định tuyến BR2 giống như bộ định tuyến BR1 và nhóm 1 được gán với 50 ưu tiên 50 và nhóm thứ hai được gán với 200 ưu tiên Vì bộ định tuyến BR2 có đường dẫn tốt hơn cho nhóm mạng thứ 2 của mạng tức là 172.10.12.0 đến 172.10.15.0/22 Bộ định tuyến BR2 cũng có tuyến tĩnh tới định tuyến Internet tức là ISP-3 và tuyến tĩnh này được phân phối lại vào các cập nhật định tuyến BGP Bây giờ bộ định tuyến BR2 sẽ quảng cáo tuyến được phân phối lại này cũng như các tuyến khác với thông tin các thuộc tính bị thay đổi tới bộ định tuyến HQ Bây giờ bộ định tuyến HQ có hai đường dẫn tới cả hai nhóm mạng, nhưng con đường tới nhóm 1 là đường đến với ưu tiên cao hơn từ bộ định tuyến BR1 trong khi tuyến tới nhóm 2 là tuyến đến với ưu tiên cao hơn từ bộ định tuyến BR2 Vì vậy, bộ định tuyến HQ sẽ định tuyến lưu lượng tới nhóm 1 thông qua bộ định tuyến BR1 và định tuyến lưu lượng tới nhóm 2 qua bộ định tuyến BR2
Trang 383.2.2 Chính sách định tuyến cho lưu lượng đến
Chúng ta có hai mạng tại trụ sở chính (HQ) và các mạng này được quảng cáo tới các thiết bị đồng cấp Bộ định tuyến BR1 router đang nhận hai tuyến mạng từ bộ định tuyến HQ tức là 172.10.1.0/24 và 172.10.2.0/24 Bộ định tuyến BR1 đang quảng cáo các mạng này tới ISP-1 Chính sách của chúng ra lệnh rằng lưu lượng truy cập đến từ Internet vào mạng nội bộ 172.10.1.0 nên đi qua bộ định tuyến BR1
Vì vậy, chúng ta cấu hình bộ định tuyến BR1 để quảng cáo tuyến 172.10.1.0 với MED cao hơn và tuyến 172.10.2.0 với MED thấp hơn Tương tự, bộ định tuyến BR2 cũng đang nhận thông tin về hai mạng này từ HQ và quảng cáo thông tin này tới ISP-2 Nhưng chính sách của chúng ra lệnh rằng lưu lượng truy cập đến từ Internet vào mạng 172.10.2.0 phải đi qua BR2 Vì vậy, bộ định tuyến BR2 sẽ quảng cáo mạng này tới ISP-2 có MED cao hơn và quảng cáo các mạng khác với thấp hơn giá trị MED được gán ISP-1 và ISP-2 sẽ trao đổi thông tin định tuyến này với nhau nhưng cả hai bộ định tuyến đã cập nhật giá trị MED Vì vậy, ISP-1 và ISP-2 sẽ định tuyến lưu lượng đến mạng 172.10.1.0 thông qua bộ định tuyến BR1 và lưu lượng đến mạng 172.10.2.0 thông qua bộ định tuyến BR2
3.2.3 Kết luận và kết quả
Bây giờ bộ định tuyến HQ có tuyến đến tất cả các mạng nhưng nó sẽ sử dụng đường dẫn thông qua bộ định tuyến BR1 cho các đích đến 172.10.8.0 tới 172.10.11.0/21 Bộ định tuyến HQ sẽ chuyển tiếp lưu lượng thông qua bộ định tuyến BR2 cho các đích đến 172.10.12.0 tới 172.10.15.0/21 và 172.10.100.100/32
Bây giờ con đường ngắn nhất được chọn và cả hai liên kết đều được sử dụng
để không lãng phí băng thông liên kết nào và thực hiện cân bằng tải Khả năng bị lỗi cũng có khi một đường dẫn bị lỗi, tuy nhiên lưu lượng sẽ được định tuyến qua đường khác Đây là tính năng chính của giao thức định tuyến BGP; để hỗ trợ chính sách dựa trên định tuyến Tương tự như vậy các ISP có tuyến tới cả hai mạng nội bộ 172.10.1.0 và 172.10.2.0, và các ISP sẽ định tuyến lưu lượng tới các mạng nội bộ này theo chính sách của chúng ta và làm cân bằng giữa hai đường dẫn có sẵn Lưu
Trang 39lượng tới mạng 172.10.1.0 đến thông qua bộ định tuyến BR1 và lưu lượng tới mạng 172.10.2.0 đến thông qua bộ định tuyến BR2
Bài toán 2
3.3 iBGP - Định tuyến lỗ đen Black Hole và quy tắc đồng bộ hóa
iBGP cũng cần thiết trong trường hợp của các ISP chuyển tiếp như trong hình 10 dưới đây tức là khi ISP đang tìm hiểu một số tuyến BGP ở một đầu và chuyển chúng tới ISP khác ở đầu bên kia Trong trường hợp này các tuyến BGP cùng với các thuộc tính đường dẫn của chúng phải được chuyển tải đến đầu kia của
AS và iBGP được sử dụng bên trong AS cho mục đích này Nếu các tuyến BGP được phân phối lại trong IGP tuyên truyền hướng về đầu bên kia thì chúng sẽ mất các thuộc tính đường dẫn của mình và ISP khác ở đầu nhận không thể thực hiện chính sách kiểm soát
Hình 10 ISP chuyển tiếp yêu cầu iBGP
Giao thức cổng biên nội bộ Internal Border Gateway Protocol (iBGP) cần có
để truyền tải thông tin định tuyến bên trong tổ chức khi có nhiều điểm xuất tới Internet; và các thiết bị định tuyến trong tổ chức ưu tiên một điểm xuất cho các tuyến nhất định và ngược lại Nhưng iBGP dễ bị tổn thương do vấn đề lỗ đen và định tuyến vòng lặp do một số quy định iBGP cụ thể Ví dụ, bộ định tuyến biên
Trang 40các tuyến BGP với các thiết bị ngang hàng này Có liên kết kết nối đƣợc chia sẻ giữa bộ định tuyến biên và các thiết bị cùng cấp bên ngoài, vì vậy, bộ định tuyến biên có tuyến đã đƣợc hiểu để tiếp cận thiết bị cùng cấp bên ngoài
Hình 11 Sơ đồ cấu trúc liên kết bài toán 2
Khi định tuyến biên này chuyển tiếp các tuyến BGP tới các thiết bị cùng cấp nội bộ, nó không thay đổi tiếp next-hop mặc định và nếu các bộ định tuyến nội bộ không có thông tin có thể tiếp cận đƣợc về địa chỉ next-hop, thì nó không thể sử dụng thông tin định tuyến này
Ví dụ trong bài toán này, AS 300 đang tìm hiểu một số tuyến từ ISP-1 và ISP-2 Các bộ định tuyến nội bộ trong tổ chức này phải đƣợc cung cấp thông tin này
để lựa chọn điểm xuất ngắn nhất nghĩa là bộ định tuyến A phải chuyển tiếp các gói tin đến 170.1.2.0 tới ISP-1 và các gói tin đến mạng 180.1.1.0 tới ISP-2 Trong bài toán này, chúng ta sẽ nghiên cứu các vấn đề về cấu hình có thể xảy ra với iBGP Trong hình 11 là sơ đồ cấu trúc liên kết để bài toán này