Giáo trình Mạng máy tính - Chương 6: Bảo mật mạng
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 6: 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:
- giao_trinh_mang_may_tinh_chuong_6_bao_mat_mang.pdf
Nội dung text: Giáo trình Mạng máy tính - Chương 6: Bảo mật mạng
- CHƯƠNG 6: BẢO MẬT MẠNG • Các nguyên lý của bảo mật mạng • Bảo mật trong thực tế 1
- 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) 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 2
- Các đối tượng cần bảo mật • 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. 3
- Kẻ xấu có thể làm những việc gì? – 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. 4
- Các nguyên lý 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ã Hacker 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) 5
- 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: nko. s gktc wky. mgsbc • 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? 6
- 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ã 7
- Mã hóa khóa đối xứng: DES DES hoạt động • hoánhoán vịvị đầuđầu tiêntiên • 1616 vòngvòng giốnggiống nhau,nhau, mỗimỗi vòngvòng dùngdùng khóakhóa 4848 bitbit kháckhác nhaunhau • hoánhoán vịvị cuốicuối cùngcùng 8
- 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 9
- 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 tiếp cận khác hoàn gửi, người nhận toàn phải biết khóa người gửi, người nhận công cộng không chia sẻ khóa • Làm sao biết khóa công cộng công cộng đó khóa công cộng cho trong lần đầu tiên mọi người đều biết (đặc biệt với những người khóa giải mã riêng chỉ chưa bao giờ gặp có người nhận biết trước)? 10
- 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 B (KB (m)) = m + 2 cho khóa công cộng KB , 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 11
- 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 Mô tả cách thức hiện thực: Alice nói “Tôi là Alice” “Tôi là Alice” Thất bại sẽ xảy ra?? 12
- Sự toàn vẹn • 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 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 đó. 13
- 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 (m) B Bob K B Dear Alice thông điệp của Oh, how I have missed giải thuật mã Bob là m, đã ký you. I think of you all the hóa khóa (mã hóa) với khóa time! (blah blah blah) công cộng riêng của anh ấy Bob 14
- 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 là 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: Bob đã ký m. Không có ai khác đã ký m. Bob đã ký m và không ký m’. Không thể phủ nhận: - Alice có thể giữ m và chữ ký KB(m) để chứng thực rằng Bob đã ký m. 15
- Phân loại thông điệp thông điệp H: hàm lớn m băm Tính toán các thông điệp dài có chi phí đắt Mục tiêu: “dấu tay” số hóa H(m) 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) 16
- Khóa phân bố và chứng chỉ 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 trên mạng? công cộng của Bob (từ web site, email, đĩa) Giải pháp: làm sao biết khóa công • Trung tâm phân bố khóa cộng của Bob chứ (key distribution center- KDC) được tin cậy – hoạt không phải của động trung gian giữa các Hacker? thực thể Giải pháp: • nơi cấp chứng chỉ (certification authority- CA) được tin cậy 17
- 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 riêng - thông tin để K ộ ủ nhận dạng Bob CA CA công c ng c a Bob, ký bởi CA 18
- Mô tả chứng chỉ • 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ỉ 19
- Sử dụng chứng chỉ Giải mã & Chứng nhận hợp lệ XácTài nhận liệu chữ Thông tin & còn giáPublic trị ký key Ok! Tin tưởng & Tổ chức chứng nhận (CA) Đáng tin cậy ? chấp nhận đề nghị. Tạo chứng nhận Xác thực chứng nhận ChứngYêu cầunhận cấp Ký chứngX.509 nhận theo & Chuẩn X.509 MãPrivate hóa TàiPublic liệuThông tin key key 20
- Sử dụng chứng chỉ Chứng nhậnHủy đã bị HỦY Khóa bí mật bị vào 25/3/2009 3:10:22 BẺ ! CA Cần chứng thực giao dịch ? Xác thực giấy chứng nhận Hủy chứngchứng nhận nhận Private key 21
- 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 đã Internet được quản trị công cộng firewall 22
- 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ộ. Ví dụ: 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 23
- Các gói đến sẽ được Lọc góiphép vào?tin 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 24
- 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. 25
- 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 ứng dụng cũng như các application router và lọ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. 26
- Các hạn chế của các firewall và gateway • giả mạo IP: router không • các lọc thường dùng tất thể biết dữ liệu có thực cả hoặc không có chính sự đến từ nguồn tin cậy sách nào dành cho hay không UDP • nếu nhiều ứng dụng cần • sự cân bằng: mức độ đối xử đặc biệt, mỗi cái truyền thông với bên sở hữu gateway riêng ngoài và sự an toàn • phần mềm client phải • nhiều site bảo vệ mức biết cách tiếp xúc với cao vẫn phải chịu đựng gateway. sự tấn công – ví dụ: phải thiết lập địa chỉ IP của proxy trong trình duyệt Web 27
- Các loại tấn công và cách phòng chống Phương thức: – Trước khi tấn công: hacker 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ó? – Ghi nhận lưu thông vào mạng – Quan tâm các hành vi nghi ngờ (các địa chỉ IP, port bị quét liên tục) 28
- Các mối đe dọa bảo mật Internet Packet sniffing: Nghe ngóng gói – 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 29
- 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ỳ xem 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 30
- 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 31
- 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 32
- 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 SYN 33
- 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 34
- 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 ) - K+B KB Alice: Bob: sinh ra khóa riêng đối xứng dùng khóa riêng của anh ấy để ngẫu nhiên, KS. giải mã và phục hồi KS mã hóa thông điệp với KS dùng KS để giải mã KS(m) và phục cũng mã hóa KS với khóa công hồi m cộng của Bob. gửi cả KS(m) và KB(KS) cho Bob. 35
- 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 - - K (H(m)) - KA(H(m)) A + . 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ố. 36
- 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- - K (H(m)) - . A K m H(. ) KA( ) S + KS( .) m + Internet + . KS KB( ) + KB(KS ) K+B 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 37
- Pretty good privacy (PGP) • Chuẩn trên thực tế để mã Một thông điệp đã được ký bằng PGP hóa email Internet. • Dùng mã hóa khóa đối BEGIN PGP SIGNED MESSAGE xứng, khóa công cộng, Hash: SHA1 hàm băm và chữ ký số như Bob:My husband is out of town đã trình bày ở trước. tonight.Passionately yours, A • Hỗ trợ đồng nhất, chứng BEGIN PGP SIGNATURE thực người gửi, bí mật Version: PGP 5.0 • Người phát minh: Phil Charset: noconv Zimmerman. yhHJRHhGJGhgg/12EpJ+lo8gE4vB3mqJ hFEvZP9t6n7G6m5Gw2 END PGP SIGNATURE 38
- Secure sockets layer (SSL) • Bảo mật lớp transport • Chứng thực server: với bất kỳ ứng dụng – Trình duyệt cho phép SSL chứa các khóa nào dựa trên TCP dùng công cộng cho các CA các dịch vụ SSL được 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ác dịch vụ bảo mật: công cộng của CA để 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 39
- 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. 40
- 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 (AH) – địa chỉ IP nguồn – encapsulation security – ID của kết nối 32-bit payload (ESP) 41
- 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 IP trường dữ liệu. datagram gốc • Trường giao thức: 51 • Trường header kế tiếp: xác • Trung gian xử lý các định kiểu của dữ liệu (vd: datagram như bình TCP, UDP, ICMP) thường IP header AH header dữ liệu (vd: TCP, UDP, ICMP) 42
- Giao thức ESP • Hỗ trợ toàn vẹn dữ liệu, • Trường chứng thực chứng thực host, tính bí ESP tương tự như của mật AH • Mã hóa dữ liệu, ESP • Protocol = 50. 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. 43
- 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 là Wired Equivalent Privacy (WEP): có thiếu sót – Thử nghiệm hiện tại: 802.11i 44
- 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ẻ 45
- Wi-Fi Protected Access (WPA) • Hai sự cải tiến chính so với WEP: – Mã hóa dữ liệu cải tiến thông qua giao thức Temporal Key Integrity Protocol (TKIP). TKIP scrambles key sử dụng thuật toán hashing và bằng đặc tính kiểm tra số nguyên, đảm bảo rằng Key sẽ không bị giả mạo. – Chứng thực người dùng, thông qua EAP. • WPA là tiêu chuẩn tạm thời mà sẽ được thay thế với chuẩn IEEE 802.11i 46
- 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 47
- 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 48
- TÀI LIỆU THAM KHẢO, ĐỊA CHỈ LIÊN LẠC • Giáo trình Mạng máy tính, KS. Nguyễn Bình Dương, TS. Đàm Quang Hồng Hải • Giáo trình hệ thống Mạng máy tính CCNA, Nguyễn Hồng Sơn • CCNA: Cisco Certified Network Associate – Study Guide, Todde Lammle - 2007 • Computer Networking: A Top Down Approach Featuring the Internet, 3rd edition. Jim Kurose, Keith Ross. 2004. • Computer Networks, 4th edition. Andrew S. Tanenbaum. 2003 • Địa chỉ liên lạc: Trần Bá Nhiệm – Khoa Mạng máy tính & Truyền thông – ĐH CNTT – 34 Trương Định, Q3, Tp.HCM. Email: tranbanhiem@yahoo.com • Website: 49