Giáo trình Mạng máy tính - Chương 7: Bảo mật mạng

pdf 86 trang huongle 3380
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Mạng máy tính - Chương 7: Bảo mật mạng", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfgiao_trinh_mang_may_tinh_chuong_7_bao_mat_mang.pdf

Nội dung text: Giáo trình Mạng máy tính - Chương 7: Bảo mật mạng

  1. Chương 7 Bảo mật mạng Computer Networking: A Top Down Approach Featuring the Internet, 3rd edition. Jim Kurose, Keith Ross Addison-Wesley, July 2004. Slide này được biên dịch sang tiếng Việt theo sự cho phép của các tác giả All material copyright 1996-2006 J.F Kurose and K.W. Ross, All Rights Reserved Bảo mật mạng 1
  2. Chương 7: Bảo mật mạng Mục tiêu: ˆ hiểu các nguyên lý của bảo mật mạng:  mật m㠁 chứng thực  tính toàn vẹn  khóa phân bố ˆ bảo mật trong thực tế:  các firewall  bảo mật trong các lớp application, transport, network, link Bảo mật mạng 2
  3. 7.1 Bảo mật mạng là gì? Bảo mật mạng 3
  4. Bảo mật mạng là gì? Sự bảo mật: chỉ có người gửi, người nhận mới “hiểu” được nội dung thông điệp  người gửi mã hóa thông điệp  người nhận giải mã thông điệp Chứng thực: người gửi, người nhận xác định là nhận ra nhau Sự toàn vẹn thông điệp: người gửi, người nhận muốn bảo đảm thông điệp không bị thay đổi (trên đường truyền hoặc sau khi nhận) mà không bị phát hiện Truy cập & tính sẵn sàng: các dịch vụ phải có khả năng truy cập và sẵn sàng đối với các user Bảo mật mạng 4
  5. Bạn và kẻ thù: Alice, Bob, Trudy ˆ Bob, Alice (bạn bè) muốn truyền thông “an toàn” ˆ Trudy (kẻ xâm nhập) có thể ngăn chặn, xóa, thêm các thông điệp Alice Bob kênh dữ liệu, các thông điệp điều khiển ề dữ liệu truy n nhận dữ liệu an toàn an toàn Trudy Bảo mật mạng 5
  6. Bob, Alice có thể là những ai? ˆ trình duyệt Web/server cho các giao dịch điện tử ˆ client/server ngân hàng trực tuyến ˆ DNS servers ˆ các router trao đổi thông tin cập nhật bảng routing ˆ .v.v. Bảo mật mạng 6
  7. Bạn và kẻ thù Hỏi: Kẻ xấu có thể làm những việc gì? Đáp: rất nhiều!  nghe lén: ngăn chặn các thông điệp  kích hoạt chèn các thông điệp vào trong kết nối  giả danh: có thể giả mạo địa chỉ nguồn trong gói (hoặc bất kỳ trường nào trong đó)  cướp: “tiếp tục” kết nối hiện hành nhưng thay người gửi hoặc người nhận bằng chính họ  từ chối dịch vụ: dịch vụ hiện tại bị người khác dùng (đồng nghĩa quá tải)  .v.v. Bảo mật mạng 7
  8. 7.2 Các nguyên lý mã hóa Bảo mật mạng 8
  9. Ngôn ngữ mã hóa khóa mã khóa mã K của Alice A K của Bob B văn bản gốc giải thuật văn bản đã mã hóa giải thuật văn bản gốc mã hóa giải mã khóa đối xứng: khóa bên gửi và bên nhận giống nhau khóa công cộng: khóa mã chung, khóa giải mã bí mật (riêng) Bảo mật mạng 9
  10. Mã hóa khóa đối xứng mật mã thay thế: thay thứ này thành thứ khác  mã hóa ký tự đơn: thay thế từng ký tự một văn bản gốc: abcdefghijklmnopqrstuvwxyz văn bản đã mã hóa: mnbvcxzasdfghjklpoiuytrewq ví dụ: văn bản gốc: bob. i love you. alice mã hóa thành: nkn. s gktc wky. mgsbc Hỏi: Bẻ khóa kiểu mã hóa đơn giản này dễ không? ‰ brute force (khó như thế nào?) ‰ khác? Bảo mật mạng 10
  11. Mã hóa khóa đối xứng K KA-B A-B văn bản gốc, m giải thuật văn bản đã mã giải thuật văn bản gốc mã hóa giải mã K (m) m = K ()K (m) A-B A-B A-B khóa đối xứng: Bob và Alice cùng biết (đối xứng) khóa: K A-B ˆ vd: khóa được biết trong mẫu mã hóa ký tự đơn ˆ Hỏi: Làm thế nào Bob và Alice thỏa thuận giá trị khóa? Bảo mật mạng 11
  12. Mã hóa khóa đối xứng: DES DES: Data Encryption Standard ˆ chuẩn mã hóa của Hoa Kỳ [NIST 1993] ˆ khóa đối xứng 56-bit, văn bản gốc vào 64-bit ˆ Bảo mật trong DES như thế nào?  chưa có cách tiếp cận “backdoor-cửa sau” để giải m㠈 làm cho DES bảo mật hơn:  dùng 3 khóa tuần tự (3-DES) trong mỗi datum  dùng cơ chế liên kết khối mã Bảo mật mạng 12
  13. Mã hóa khóa đối xứng: DES DES hoạt động hoán vị đầu tiên 16 vòng giống nhau, mỗi vòng dùng khóa 48 bit khác nhau hoán vị cuối cùng Bảo mật mạng 13
  14. AES: Advanced Encryption Standard ˆ chuẩn NIST khóa đối xứng mới (tháng 11- 2001) thay thế cho DES ˆ dữ liệu xử lý từng khối 128 bit ˆ các khóa 128, 192, hoặc 256 bit ˆ giải mã brute force (thử sai) tốn 1s với DES, tốn 149 tỷ tỷ năm với AES Bảo mật mạng 14
  15. Mã hóa khóa công cộng khóa đối xứng Mã hóa khóa công cộng ˆ yêu cầu người gửi, người ˆ tiếp cận khác hoàn nhận phải biết khóa toàn công cộng ˆ người gửi, người nhận ˆ Hỏi: làm sao biết khóa không chia sẻ khóa công cộng đótrong lần công cộng đầu tiên (đặc biệt với ˆ khóa công cộng cho những người chưa bao mọi người đều biết giờ gặp trước)? ˆ khóa giải mã riêng chỉ có người nhận biết Bảo mật mạng 15
  16. Mã hóa khóa công cộng + K khóa công B cộng của Bob K - khóa riêng của B Bob văn bản gốc encryption văn bản đã mã decryption văn bản gốc m algorithm + algorithm K (m) - + B m = K (K (m)) B B Bảo mật mạng 16
  17. Giải thuật mã hóa khóa công cộng Yêu cầu: + 1 cần K (. ) và K- (. ) như sau: B B - + K (K (m)) = m B B 2 ộ + ả cho khóa công c ng K B , nó ph i không thể tính toán ra được - khóa riêng K B giải thuật RSA: Rivest, Shamir, Adelson Bảo mật mạng 17
  18. RSA: chọn các khóa 1. Chọn 2 số nguyên tố lớn p, q (mỗi số có thể đến 1024 bit) 2. Tính n = pq, z = (p-1)(q-1) 3. Chọn e (với e<n) sao cho không có thừa số chung với z. (e, z là nguyên tố cùng nhau). 4. Chọn d sao cho ed-1 chia hết cho z. (nói cách khác: ed mod z = 1 ). 5. khóa công cộng là (n,e). khóa riêng là (n,d). - K+ K B B Bảo mật mạng 18
  19. RSA: mã hóa, giải mã 0. Cho (n,e) và (n,d) theo tính toán ở trên 1. Để mã hóa mẫu bit, m, tính: c = m e mod n 2. Để giải mã mẫu bit, c, tính: m = c d mod n d m = (m e mod n) mod n c Bảo mật mạng 19
  20. RSA ví dụ: Bob chọn p=5, q=7. Thì n=35, z=24. e=5 (vì e, z nguyên tố cùng nhau). d=29 (vì ed-1 chia hết cho z) e ký tự m m c = me mod n mã hóa: l 12 1524832 17 d c c d giải mã: m = c mod n ký tự 17 481968572106750915091411825223071697 12 l Bảo mật mạng 20
  21. d RSA: Tại sao là m = (m e mod n) mod n Kết quả của lý thuyết “số hữu ích”: Nếu p,q nguyên tố và n = pq, thì: yymod (p-1)(q-1) x mod n = x mod n e d (m mod n) mod n = m ed mod n ed mod (p-1)(q-1) = m mod n (dùng lý thuyết sốởtrên) 1 = m mod n (chọn ed sao cho chúng chia cho (p-1)(q-1) dư 1 ) = m Bảo mật mạng 21
  22. RSA: đặc tính quan trọng khác Đặc tính sau đây sẽ rất hữu ích: - + + - K (K (m)) = m = K (K (m)) B B B B đầu tiên dùng đầu tiên dùng khóa công cộng, khóa riêng, sau sau đódùng đódùng khóa khóa riêng công cộng Kết quả giống nhau Bảo mật mạng 22
  23. 7.3 Sự chứng thực Bảo mật mạng 23
  24. Sự chứng thực Mục tiêu: Bob muốn Alice “chứng thực” nhân dạng của cô đối với anh ta Giao thức ap1.0: Alice nói “Tôi là Alice” “Tôi là Alice” Thất bại sẽ xảy ra?? Bảo mật mạng 24
  25. Sự chứng thực Mục tiêu: Bob muốn Alice “chứng thực” nhân dạng của cô đối với anh ta Giao thức ap1.0: Alice nói “Tôi là Alice” Trong mạng, Bob không “nhìn thấy” Alice, vì thế đơn giản Trudy “Tôi là Alice” tuyên bố cô ta là Alice Bảo mật mạng 25
  26. Sự chứng thực: thử lại Giao thức ap2.0: Alice nói “Tôi là Alice” trong 1 gói IP chứa địa chỉ IP nguồn của cô ấy địa chỉ IP của Alice “Tôi là Alice” Thất bại sẽ xảy ra?? Bảo mật mạng 26
  27. Sự chứng thực: thử lại Giao thức ap2.0: Alice nói “Tôi là Alice” trong 1 gói IP chứa địa chỉ IP nguồn của cô ấy Trudy sẽ tạo 1 gói giả mạo địa chỉ IP của Alice địa chỉ IP của Alice “Tôi là Alice” Bảo mật mạng 27
  28. Sự chứng thực: thử lại Giao thức ap3.0: Alice nói “Tôi là Alice” và gửi mật khẩu của cô ấy để “chứng thực” nó. ủ mật khẩu IP c a “Tôi là Alice” Alice của Alice ủ Thất bại sẽ xảy ra?? IP c a OK Alice Bảo mật mạng 28
  29. Sự chứng thực: thử lại Giao thức ap3.0: Alice nói “Tôi là Alice” và gửi mật khẩu của cô ấy để “chứng thực” nó. ủ mật khẩu IP c a “Tôi là Alice” Alice của Alice tấn công ngược lại: ủ Trudy ghi nhớ gói của IP c a OK Alice Alice và sau đógửi ngược lại cho Bob ủ mật khẩu IP c a “Tôi là Alice” Alice của Alice Bảo mật mạng 29
  30. Sự chứng thực: thử lại Giao thức ap3.1: Alice nói “Tôi là Alice” và gửi mật khẩu bí mậtđã được mã hóa để “chứng thực” nó. ủ mật khẩu IP c a “Tôi là Alice” Alice đã mã hóa ủ Thất bại sẽ xảy ra?? IP c a OK Alice Bảo mật mạng 30
  31. Sự chứng thực: thử lại Giao thức ap3.1: Alice nói “Tôi là Alice” và gửi mật khẩu bí mậtđã được mã hóa để “chứng thực” nó. ủ mật khẩu IP c a “Tôi là Alice” Alice đã mã hóa cơ chế ghi nhớ và phát ủ IP c a OK lại vẫn có thể Alice hoạt động! ủ mật khẩu IP c a “Tôi là Alice” Alice đã mã hóa Bảo mật mạng 31
  32. Sự chứng thực: thử lại Mục tiêu: tránh cơ chế tấn công kiểu phát lại Phương pháp: số (R) chỉ dùng 1 lần trong thời gian hoạt động ap4.0: để chứng thực Alice “sống”, Bob gửi Alice số R. Alice phải trả về R đã được mã hóa với khóa bí mật đã chia sẻ “Tôi là Alice” R K (R) Alice “sống”, và A-B chỉ có Alice mới biết khóa để mã hóa, “chứng thực” Thất bại, không thuận lợi? Alice! Bảo mật mạng 32
  33. Sự chứng thực: ap5.0 ap4.0 yêu cầu chia sẻ khóa đối xứng ˆ chúng ta có thể chứng thực dùng các kỹ thuật khóa công cộng? ap5.0: dùng 1 lần, mã hóa khóa công cộng “Tôi là Alice” Bob tính toán + - R K - A(K A (R)) = R K A (R) và biết chỉ có Alice mới có thể có khóa riêng, vì “gửi cho tôi khóa công cộng của bạn” + thế R đã mã hóa phải là K A + - K (K (R)) = R A A Bảo mật mạng 33
  34. ap5.0: lỗ hổng bảo mật Kẻ tấn công ẩn: Trudy giả làm Alice (đối với Bob) và như Bob (đối với Alice) Tôi là Alice Tôi là Alice R - K (R) T “gửi cho tôi khóa R - K (R) công cộng của bạn”+ A K “gửi cho tôi khóa T ộ ủ ạ + công c ng c a bKn” A + K (m) Trudy lấy được T - + + m = K (K (m)) K (m) T T A gửi m cho Alice - + m = K (K (m)) đã được mã hóa A A với khóa công cộng của Alice Bảo mật mạng 34
  35. ap5.0: lỗ hổng bảo mật Kẻ tấn công ẩn: Trudy giả làm Alice (đối với Bob) và như Bob (đối với Alice) Khó khăn để phát hiện: ‰ Bob nhận mọi thứ mà Alice gửi và ngược lại ‰ vấn đề là Trudy cũng nhận tất cả các thông điệp như thế! Bảo mật mạng 35
  36. 7.4 Sự toàn vẹn Bảo mật mạng 36
  37. Chữ ký số Kỹ thuật mã hóa tương tự như các chữ ký bằng tay. ˆ người gửi (Bob) đánh dấu (số hóa) tài liệu, thiết lập thuộc tính anh ấy là người sở hữu/tạo lập tài liệu. ˆ có thể kiểm tra, không thể làm giả: người nhận (Alice) có thể chứng thực với người khác là chỉ có Bob chứ ngoài ra không có ai (kể cả Alice) đã ký trên tài liệu đó. Bảo mật mạng 37
  38. Chữ ký số Chữ ký số đơn giản cho thông điệp m: ˆ Bob ký m bằng cách mã hóa với khóa riêng của - - anh ấy KB, tạo thông điệp “đã được ký”, KB(m) - khóa riêng của - thông điệp của Bob, m K K (m) B Bob B Dear Alice thông điệp của Oh, how I have missed giải thuật mã Bob, m, đã ký (mã you. I think of you all the hóa khóa hóa) với khóa time! (blah blah blah) công cộng riêng của anh ấy Bob Bảo mật mạng 38
  39. Chữ ký số (tt) - ˆ Giả sử Alice nhận được m, với chữ ký số hóa là KB(m) ˆ Alice kiểm tra m đã được ký bởi Bob bằng cách áp + - dụng khóa công cộng của Bob KB cho KB(m) sau đókiểm + - tra KB(KB(m) ) = m. + - ˆ Nếu KB(KB(m) ) = m, bất cứ ai đã ký m phải dùng khóa riêng của Bob Alice kiểm tra: 9 Bob đã ký m. 9 Không có ai khác đã ký m. 9 Bob đã ký m và không ký m’. Không thể bác bỏ: - 9 Alice có thể giữ m, và chữ ký KB(m) để chứng thực rằng Bob đã ký m. Bảo mật mạng 39
  40. ạ ệ Phân lo i thông đi p thông H: hàm điệp lớn băm m Tính toán các thông điệp dài có chi phí đắt H(m) Mục tiêu: “dấu tay” số hóa có kích thước cố định, Các đặc tính hàm băm: ễ ượ d tính toán đ c ˆ nhiều-một ˆ ụ áp d ng hàm băm H vào ˆ sinh ra phân loại thông m, tính được phân loại điệp kích thước cố định ệ ướ thông đi p kích th c (“dấu tay”) cố định, H(m). ˆ cho phân loại thông điệp x, không thể tính toán để tìm m dùng x = H(m) Bảo mật mạng 40
  41. Internet checksum: hàm băm Internet checksum có một số đặc tính của hàm băm: 9 sinh ra các phân loại độ dài cố định (tổng 16 bit) của thông điệp 9 là nhiều-một nhưng với thông điệp và giá trị băm cho trước, dễ dàng tìm được thông điệp khác có cùng giá trị băm: thông điệp ASCII format thông điệp ASCII format I O U 1 49 4F 55 31 I O U 9 49 4F 55 39 0 0 . 9 30 30 2E 39 0 0 . 1 30 30 2E 31 9 B O B 39 42 4F 42 9 B O B 39 42 4F 42 B2 C1 D2 AC các thông điệp khác B2 C1 D2 AC nhưng checksum giống nhau! Bảo mật mạng 41
  42. chữ ký số = phân loại thông điệp đã ký Alice kiểm tra chữ ký và sự toàn Bob gửi thông điệp đã ký số vẹn của thông điệp đã ký bằng hóa: số hóa: thông ạ ệ ớ H: hàm phân lo i đi p l n ệ m băm H(m) thông đi p đã mã hóa - KB(H(m)) khóa chữ ký số thông riêng (đã mã hóa) điệp lớn của Bob - m khóa chữ ký số K B công + (đã giải cộng K phân loại H: hàm của Bob B mã) thông điệp đã băm mã hóa + - KB(H(m)) H(m) H(m) bằng nhau? Bảo mật mạng 42
  43. Các giải thuật hàm băm ˆ hàm băm MD5 sử dụng rất phổ biến (RFC 1321)  tính phân loại thông điệp 128 bit trong tiến trình 4 bước  với chuỗi x có 128 bit bất kỳ, khó khăn để xây dựng thông điệp m sao cho băm MD5 của nó bằng với x ˆ SHA-1 cũng được dùng.  chuẩn của Mỹ [NIST, FIPS PUB 180-1]  phân loại thông điệp 160-bit Bảo mật mạng 43
  44. 7.5 Khóa phân bố và chứng chỉ Bảo mật mạng 44
  45. Các trung gian được tin cậy Vấn đề khóa đối xứng: Vấn đề khóa công cộng: ˆ Làm thế nào 2 thực thể ˆ Khi Alice lấy được khóa cùng thiết lập khóa bí mật công cộng của Bob (từ trên mạng? web site, email, đĩa), Giải pháp: làm sao biết khóa công cộng của Bob chứ không ˆ ố Trung tâm phân b khóa phải của Trudy? (key distribution center- KDC) được tin cậy – hoạt Giải pháp: động trung gian giữa các ˆ nơi cấp chứng chỉ thực thể (certification authority-CA) được tin cậy Bảo mật mạng 45
  46. Key Distribution Center (KDC) ˆ Alice, Bob cần khóa đối xứng được chia sẻ. ˆ KDC: chia sẻ khóa bí mật khác nhau với mỗi người dùng đã đăng ký ˆ Alice, Bob biết các khóa đối xứng của họ, KA-KDC KB-KDC , để truyền thông với KDC. KDC KP-KDC KA-KDC K K X-KDC KP-KDC B-KDC KY-KDC KZ-KDC KB-KDC KA-KDC Bảo mật mạng 46
  47. Key Distribution Center (KDC) Hỏi: Làm sao KDC cho phép Bob, Alice xác định khóa bí mật đối xứng để truyền thông với nhau? KDC sinh ra R1 KA-KDC(A,B) K (R1, K (A,R1) ) Alice A-KDC B-KDC Bob hiểu và biết R1 dùng R1 để KB-KDC(A,R1) truyền thông với Alice Alice và Bob truyền thông: dùng R1 như khóa phiên làm việc để chia sẻ mã hóa đối xứng Bảo mật mạng 47
  48. Cấp chứng chỉ ˆ Certification authority (CA): gắn kết khóa công cộng với thực thể E nào đó. ˆ E (người, router) đăng ký khóa công cộng của họ với CA.  E cung cấp “bằng chứng để nhận dạng” cho CA.  CA tạo ra chứng chỉ ràng buộc E với khóa công cộng của nó.  chứng chỉ chứa khóa công cộng của E được ký số bởi CA – CA nói “đây là khóa công cộng của E” chữ ký số ộ + khóa công c ng (đã mã K của Bob + B K B hóa) khóa chứng chỉ cho khóa thông tin để riêng - K ộ ủ nhận dạng Bob CA CA công c ng c a Bob, ký bởi CA Bảo mật mạng 48
  49. Cấp chứng chỉ ˆ Khi Alice muốn lấy được khóa công cộng của Bob:  lấy chứng chỉ của Bob (ở Bob hoặc nơi nào đó)  áp dụng khóa công cộng của CA cho chứng chỉ của Bob, lấy được khóa công cộng của Bob + chữ ký số khóa công K cộng của Bob B (đã + ả gi i mã) K B khóa công cộng của CA + K CA Bảo mật mạng 49
  50. Mỗi chứng chỉ chứa: ˆ Số thứ tự (duy nhất) ˆ thông tin về người sở hữu chứng chỉ, bao gồm giải thuật và chính giá trị khóa (không hiển thị ra) ˆ thông tin về người phát hành chứng chỉ ˆ ngày kiểm tra tính hợp lệ ˆ chữ ký số bởi người phát hành chứng chỉ Bảo mật mạng 50
  51. 7.6 Điều khiển truy cập: các firewall Bảo mật mạng 51
  52. Các Firewall-Tường lửa firewall cô lập mạng nội bộ của tổ chức với Internet, cho phép một số gói được truyền qua, ngăn chặn các gói khác mạng đã được Internet quản trị công cộng firewall Bảo mật mạng 52
  53. Firewall: Tại sao phải dùng? ngăn chặn các cuộc tấn công từ chối dịch vụ denial of service (DoS):  SYN flooding: kẻ tấn công thiết lập nhiều kết nối TCP “ảo”, không còn tài nguyên cho các kết nối “thật” ngăn chặn việc sửa đổi/truy cập bất hợp pháp các dữ liệu nội bộ.  vd: kẻ tấn công thay thế trang chủ của CIA bằng trang nào đó chỉ cho phép các truy cập hợp pháp vào bên trong mạng (tập hợp các host/user được chứng thực) 2 kiểu firewall:  mức ứng dụng  lọc gói tin Bảo mật mạng 53
  54. Các gói đến sẽ được Lọc gói tin phép vào? Các gói chuẩn bị ra có được phép không? ˆ mạng nội bộ kết nối với Internet thông qua router firewall ˆ router lọc từng gói một, xác định chuyển tiếp hoặc bỏ các gói dựa trên:  địa chỉ IP nguồn, địa chỉ IP đích  các số hiệu port TCP/UDP nguồn và đích  kiểu thông điệp ICMP  các bit TCP SYN và ACK Bảo mật mạng 54
  55. Lọc gói tin ˆ Ví dụ 1: chặn các datagram đến và đi với trường giao thức IP = 17 và port nguồn hoặc đích = 23.  Tất cả các dòng UDP đến/đi và các kết nối telnet đều bị chặn lại. ˆ Ví dụ 2: chặn các đoạn Block TCP với ACK=0.  Ngăn chặn các client bên ngoài tạo các kết nối TCP với các client bên trong, nhưng cho phép các client bên trong kết nối ra ngoài. Bảo mật mạng 55
  56. Các ứng dụng gateway phiên telnet từ gateway đến host phiên telnet từ host đến gateway ˆ Lọc các gói trên dữ liệu ứ ụ ư application router và lọc ng d ng cũng nh các gateway trường IP/TCP/UDP. ˆ Ví dụ: cho phép chọn các user bên trong được telnet ra ngoài. 1. yêu cầu tất cả các user phải telnet thông qua gateway 2. với các user đã được cấp phép, gateway thiết lập kết nối với host đích. gateway tiếp vận dữ liệu giữa 2 kết nối. 3. Router lọc và chặn tất cả các kết nối telnet không xuất phát từ gateway. Bảo mật mạng 56
  57. Các hạn chế của các firewall và gateway ˆ giả mạo IP: router ˆ các lọc thường dùng tất không thể biết dữ liệu cả hoặc không có chính có thực sự đến từ nguồn sách nào dành cho UDP tin cậy hay không ˆ sự cân bằng: mức độ ˆ nếu nhiều ứng dụng cần truyền thông với bên đối xử đặc biệt, mỗi cái ngoài và sự an toàn sở hữu gateway riêng ˆ nhiều site bảo vệ mức ˆ phần mềm client phải cao vẫn phải chịu đựng biết cách tiếp xúc với sự tấn công gateway.  ví dụ: phải thiết lập địa chỉ IP của proxy trong trình duyệt Web Bảo mật mạng 57
  58. 7.7 Các loại tấn công và cách phòng chống Bảo mật mạng 58
  59. Các mối đe dọa bảo mật Internet Phương thức:  trước khi tấn công: tìm hiểu các dịch vụ đã hiện thực/hoạt động trên mạng  Dùng ping để xác định các host nào có địa chỉ trên mạng  Quét port: liên tục thử thiết lập các kết nối TCP với mỗi port (xem thử chuyện gì xảy ra) Biện pháp đối phó? Bảo mật mạng 59
  60. Các mối đe dọa bảo mật Internet Biện pháp đối phó  ghi nhận lưu thông vào mạng  quan tâm hành vi nghi ngờ (các địa chỉ IP, port bị quét liên tục) Bảo mật mạng 60
  61. Các mối đe dọa bảo mật Internet nghe ngóng gói:  phương tiện truyền thông phổ biến  NIC promiscuous (hỗn tạp) đọc tất cả các gói chuyển qua nó  có thể đọc tất cả các dữ liệu được mã hóa (như mật khẩu)  ví dụ: C nghe ngóng các gói của B A C src:B dest:A payload B Biện pháp đối phó? Bảo mật mạng 61
  62. Các mối đe dọa bảo mật Internet Packet sniffing: Biện pháp đối phó  tất cả các host trong tổ chức chạy phần mềm kiểm tra định kỳ thử host có ở chế độ promiscuous  1 host mỗi đoạn của phương tiện truyền thông A C src:B dest:A payload B Bảo mật mạng 62
  63. Các mối đe dọa bảo mật Internet IP Spoofing (giả mạo IP):  có thể sinh ra các gói IP “thô” trực tiếp từứng dụng, gán giá trị bất kỳ vào trường địa chỉ IP nguồn  bên nhận không thể xác định nguồn bị giả mạo  ví dụ: C giả mạo là B A C src:B dest:A payload B Biện pháp đối phó? Bảo mật mạng 63
  64. Các mối đe dọa bảo mật Internet IP Spoofing: lọc quyền vào  router sẽ không chuyển tiếp các gói đi với trường hợp các địa chỉ nguồn không hợp lệ  tuyệt vời, nhưng lọc như thế không thể áp dụng cho tất cả các mạng A C src:B dest:A payload B Bảo mật mạng 64
  65. Các mối đe dọa bảo mật Internet Denial of service (DOS):  gây ra “ngập lụt” bằng các gói sinh ra bởi ý đồ xấu cho bên nhận  Distributed DOS (DDOS): nhiều nguồn phối hợp làm “ngập lụt” bên nhận  ví dụ: C và các host ở xa tấn công SYN A A C SYN SYN SYN SYN SYN B SYN Biện pháp đối phó? SYN Bảo mật mạng 65
  66. Các mối đe dọa bảo mật Internet Denial of service (DOS): Biện pháp đối phó?  lọc ra trước các gói dùng làm “ngập lụt” (ví dụ: SYN)  theo dõi ngược lại nguồn gây ra “ngập lụt” (cơ chế giống máy phát hiện nói dối của Mỹ) A C SYN SYN SYN SYN SYN B SYN SYN Bảo mật mạng 66
  67. 7.8 Bảo mật nhiều lớp 7.7.1. Bảo mật email 7.7.2. Bảo mật các socket 7.7.3. IPsec 7.7.4. Bảo mật trong 802.11 Bảo mật mạng 67
  68. Bảo mật e-mail ‰ Alice muốn gửi 1 e-mail bí mật, m, đến Bob. KS KS(m ) KS(m ) m KS(. ) KS(. ) m + Internet - KS + . - . KS KB( ) + + KB( ) KB(KS ) KB(KS ) + - KB KB Alice: ‰ sinh ra khóa riêng đối xứng ngẫu nhiên, KS. ‰ mã hóa thông điệp với KS ‰ cũng mã hóa KS với khóa công cộng của Bob. ‰ gửi cả KS(m) và KB(KS) cho Bob. Bảo mật mạng 68
  69. Bảo mật e-mail ‰ Alice muốn gửi 1 e-mail bí mật, m, đến Bob. KS KS(m ) KS(m ) m KS(. ) KS(. ) m + Internet - KS + . - . KS KB( ) + + KB( ) KB(KS ) KB(KS ) + - KB KB Bob: ‰ dùng khóa riêng của anh ấy để giải mã và phục hồi KS ‰ dùng KS để giải mã KS(m) và phục hồi m Bảo mật mạng 69
  70. Bảo mật e-mail •Alice muốn cung cấp sự toàn vẹn thông điệp chứng thực người gửi. - + KA KA - - - KA(H(m)) KA(H(m)) + . H(m ) m H(. ) KA(. ) KA( ) compare + Internet - m H(. ) m H(m ) • Alice ký số trên thông điệp. •gửi cả thông điệp (dạng rõ ràng) và chữ ký số. Bảo mật mạng 70
  71. Bảo mật e-mail • Alice muốn cung cấp sự toàn vẹn thông điệp chứng thực người gửi, sự bí mật - KA - - KA(H(m)) m H(. ) KA(. ) KS + KS(. ) m + Internet + . KS KB( ) + KB(KS ) + KB Alice dùng 3 khóa: khóa riêng của cô ấy, khóa công cộng của Bob, khóa đối xứng vừa mới tạo Bảo mật mạng 71
  72. Pretty good privacy (PGP) ˆ chuẩn trên thực tế, là lược A PGP signed message: đồ mã hóa email Internet. BEGIN PGP SIGNED MESSAGE ˆ dùng mã hóa khóa đối xứng, Hash: SHA1 khóa công cộng, hàm băm và chữ ký số như đã trình bày Bob:My husband is out of town ở trước. tonight.Passionately yours, Alice ˆ hỗ trợ đồng nhất, chứng thực người gửi, sự bí mật BEGIN PGP SIGNATURE Version: PGP 5.0 ˆ người phát minh: Phil Charset: noconv Zimmerman. yhHJRHhGJGhgg/12EpJ+lo8gE4vB3mqJ hFEvZP9t6n7G6m5Gw2 END PGP SIGNATURE Bảo mật mạng 72
  73. Secure sockets layer (SSL) ˆ bảo mật lớp transport ˆ chứng thực server: với bất kỳ ứng dụng nào  trình duyệt cho phép SSL chứa các khóa công dựa trên TCP dùng các cộng cho các CA được dịch vụ SSL tin cậy  ệ ầ ˆ dùng giữa trình duyệt trình duy t yêu c u chứng chỉ server, phát Web, các server trong ra bởi CA được tin cậy thương mại điện tử  trình duyệt dùng khóa ộ ủ ể ˆ ị ụ ả ậ công c ng c a CA đ các d ch v b o m t: trích ra khóa công cộng  chứng thực server của server từ chứng chỉ  mã hóa dữ liệu ˆ kiểm tra trong trình  chứng thực client (tùy duyệt của bạn để thấy chọn) các CA được tin cậy Bảo mật mạng 73
  74. SSL (tt) Mã hóa phiên làm việc SSL : ˆ SSL: cơ sở của IETF ˆ trình duyệt sinh ra khóa Transport Layer phiên đối xứng, mã hóa nó Security (TLS). với khóa công cộng của ˆ SSL có thể dùng cho server, gửi khóa (đã mã các ứng dụng không hóa) cho server. Web, như IMAP. ˆ dùng khóa riêng, server ˆ chứng thực client có giải mã khóa phiên thể hoàn thành với các ˆ trình duyệt, server biết chứng chỉ client khóa phiên  tất cả dữ liệu gửi vào trong TCP socket (do client hoặc server) được mã hóa bởi khóa phiên. Bảo mật mạng 74
  75. IPsec: bảo mật lớp Network ˆ bảo mật lớp Network: ˆ với cả AH và ESP, nguồn –  host gửi mã hóa dữ liệu đích bắt tay nhau: trong IP datagram  tạo kênh logic lớp network  các đoạn TCP & UDP; các gọi là một security thông điệp ICMP & SNMP. association (SA) ˆ chứng thực lớp Network: ˆ mỗi SA theo 1 chiều duy nhất  host đích có thể chứng ˆ duy nhất xác định bởi: thực địa chỉ IP nguồn  giao thức bảo mật (AH ˆ 2 giao thức cơ bản: hoặc ESP)  authentication header  địa chỉ IP nguồn (AH)  ID của kết nối 32-bit  encapsulation security payload (ESP) Bảo mật mạng 75
  76. Giao thức AH ˆ hỗ trợ chứng thực AH header chứa: nguồn, toàn vẹn dữ liệu, ˆ nhân dạng kết nối ậ không tin c y ˆ dữ liệu chứng thực: thông ˆ AH header được chèn điệp đã được ký từ nguồn vào giữa IP header, được tính toán dựa trên trường dữ liệu. IP datagram gốc ˆ trường giao thức: 51 ˆ trường header kế tiếp: ˆ trung gian xử lý các xác định kiểu của dữ liệu datagram như bình (vd: TCP, UDP, ICMP) thường IP header AH header dữ liệu (vd: TCP, UDP, ICMP) Bảo mật mạng 76
  77. Giao thức ESP ˆ hỗ trợ toàn vẹn dữ liệu, ˆ trường chứng thực ESP chứng thực host, tính bí tương tự như của AH ậ m t ˆ Protocol = 50. ˆ mã hóa dữ liệu, ESP trailer ˆ trường header kế tiếp nằm trong ESP trailer. đã chứng thực đã mã hóa ESP ESP ESP IP header TCP/UDP segment header trailer authent. Bảo mật mạng 77
  78. Bảo mật IEEE 802.11 ˆ Khảo sát:  85% việc sử dụng mà không có mã hóa/chứng thực  dễ dàng bị phát hiện/nghe ngóng và nhiều loại tấn công khác! ˆ Bảo mật 802.11  mã hóa, chứng thực  thử nghiệm bảo mật 802.11 đầu tiên: Wired Equivalent Privacy (WEP): có thiếu sót  thử nghiệm hiện tại: 802.11i Bảo mật mạng 78
  79. Wired Equivalent Privacy (WEP): ˆ chứng thực như trong giao thức ap4.0  host yêu cầu chứng thực từ access point  access point gửi 128 bit  host mã hóa dùng khóa đối xứng chia sẻ  access point giải mã, chứng thực host ˆ không có cơ chế phân bố khóa ˆ chứng thực: chỉ cần biết khóa chia sẻ Bảo mật mạng 79
  80. mã hóa dữ liệu WEP ˆ Host/AP chia sẻ khóa đối xứng 40 bit (bán cố định) ˆ Host gắn thêm vector 24 bit (initialization vector-IV) để hình thành khóa 64 bit IV ˆ khóa 64 bit dùng để sinh ra dòng các khóa, ki IV ˆ ki dùng để mã hóa byte thứ i, di, trong frame: IV ci = di XOR ki ˆ IV và các byte đã được mã hóa, ci gửi trong frame Bảo mật mạng 80
  81. mã hóa 802.11 WEP IV (per frame) KS: 40-bit key sequence generator secret ( for given KS, IV) symmetric IV IV IV IV IV IV k1 k2 k3 kN kN+1 kN+1 802.11 WEP-encrypted data IV plaintext header plus CRC frame data d1 d2 d3 dN CRC1 CRC4 plus CRC c1 c2 c3 cN cN+1 cN+4 Figuremã 7.8-new1: hóa WEP 802.11 phía WEP protocolgửi Bảo mật mạng 81
  82. Bẻ khóa 802.11 WEP Lỗ hổng bảo mật: ˆ 24-bit IV, một IV mỗi frame -> phải dùng lại IV ˆ IV truyền đi với dạng văn bản thô -> phát hiện được việc dùng lại IV ˆ Tấn công:  Alice mã hóa văn bản thô cho trước d1 d2 d3 d4 IV  Trudy nhìn thấy: ci = di XOR ki IV  Trudy biết ci di, vì thế có thể tính được ki IV IV IV  Trudy biết được mã hóa chuỗi khóa k1 k2 k3  lần dùng IV lại kế tiếp, Trudy có thể giải mã được! Bảo mật mạng 82
  83. 802.11i: cải tiến sự bảo mật ˆ rất nhiều (và chắc chắn hơn) dạng mã hóa có thể ˆ hỗ trợ phân bố khóa ˆ dùng chứng thực server tách riêng khỏi AP Bảo mật mạng 83
  84. 802.11i: 4 giai đoạn hoạt động STA: AP: access point AS: client station wired Authentication network server 1 Discovery of security capabilities 2 STA and AS mutually authenticate, together generate Master Key (MK). AP servers as “pass through” 3 STA derives 3 AS derives Pairwise Master same PMK, Key (PMK) sends to AP 4 STA, AP use PMK to derive Temporal Key (TK) used for message encryption, integrity Bảo mật mạng 84
  85. EAP: extensible authentication protocol ˆ EAP được gửi trên các “link” riêng biệt  mobile-đến-AP (EAP trên LAN)  AP đến server chứng thực (RADIUS trên UDP) wired network EAP TLS EAP EAP over LAN (EAPoL) RADIUS IEEE 802.11 UDP/IP Bảo mật mạng 85
  86. Tổng kết bảo mật mạng Các kỹ thuật cơ bản  mã hóa (đối xứng và công cộng)  chứng thực  toàn vẹn thông điệp  phân bố khóa . sử dụng trong nhiều bối cảnh bảo mật khác nhau  bảo mật email  bảo mật vận chuyển (SSL)  IP sec  802.11 Bảo mật mạng 86