Kerberos là một hệ thống bảo mật. Mục tiêu chính của Kerberos là để ngăn chặn từ mật khẩu không mã hóa được gửi qua mạng. Đề tài sau đây nhằm đi tìm hiểu về Kerberos, các giao thức, chức năng, ưu và nhược điểm.Kerberos là một hệ thống bảo mật. Mục tiêu chính của Kerberos là để ngăn chặn từ mật khẩu không mã hóa được gửi qua mạng. Đề tài sau đây nhằm đi tìm hiểu về Kerberos, các giao thức, chức năng, ưu và nhược điểm.
Đề tài: KERBEROS GV hướng dẫn: Nhóm SV thực hiện: 1. Lê Vũ Phong 2. Lê Hồ Chí Quốc Lớp: HTTT K30 MỤC LỤC I. NHỮNG KHÁI NIỆM LIÊN QUAN 1. An toàn thông tin 1.1 Khái niệm An toàn nghĩa là thông tin được bảo vệ, các hệ thống và những dịch vụ có khả năng chống lại những tai hoạ, lỗi và sự tác động không mong đợi, các thay đổi tác động đến độ an toàn của hệ thống là nhỏ nhất. Hệ thống có một trong các đặc điểm sau là không an toàn: Các thông tin dữ liệu trong hệ thống bị người không được quyền truy nhập tìm cách lấy và sử dụng (thông tin bị rò rỉ). Các thông tin trong hệ thống bị thay thế hoặc sửa đổi làm sai lệch nội dung (thông tin bị xáo trộn) Thông tin chỉ có giá trị cao khi đảm bảo tính chính xác và kịp thời, hệ thống chỉ có thể cung cấp các thông tin có giá trị thực sự khi các chức năng của hệ thống đảm bảo hoạt động đúng đắn. Mục tiêu của an toàn bảo mật trong công nghệ thông tin là đưa ra một số tiêu chuẩn an toàn. Ứng dụng các tiêu chuẩn an toàn này vào đâu để loại trừ hoặc giảm bớt các nguy hiểm. Do kỹ thuật truyền nhận và xử lý thông tin ngày càng phát triển đáp ứng cácyêu cầu ngày càng cao nên hệ thống chỉ có thể đạt tới độ an toàn nào đó. Quản lý an toàn và sự rủi ro được gắn chặt với quản lý chất lượng. Khi đánh giá độ an toàn thông tin cần phải dựa trên phân tích các rủi ro, tăng sự an toàn bằng cách giảm tối thiểu rủi ro. Các đánh giá cần hài hoà với đặc tính, cấu trúc hệ thống và quá trình kiểm tra chất lượng. Hiện nay các biện pháp tấn công càng ngày càng tinh vi, sự đe doạ tới độ an toàn thông tin có thể đến từ nhiều nơi theo nhiều cách chúng ta nên đưa ra các chính sách và phương pháp đề phòng cần thiết. 1.2 Taị sao phải quan tâm đến an toàn thông tin? Khi nhu cầu trao đổi thông tin dữ liệu ngày càng lớn và đa dạng, các tiến bộ về điện tử - viễn thông và công nghệ thông tin không ngừng được phát triển ứng dụng để nâng cao chất lượng và lưu lượng truyền tin thì các quan niệm ý tưởng và biện pháp bảo vệ thông tin dữ liệu cũng được đổi mới. Bảo vệ an toàn thông tin dữ liệu là một chủ đề rộng, có liên quan đến nhiều lĩnh vực và trong thực tế có thể có rất nhiều phương pháp được thực hiện để bảo vệ an toàn thông tin dữ liệu. Các phương pháp bảo vệ an toàn thông tin dữ liệu có thể được quy tụ vào ba nhóm sau: Bảo vệ an toàn thông tin bằng các biện pháp hành chính. Bảo vệ an toàn thông tin bằng các biện pháp kỹ thuật (phần cứng). Bảo vệ an toàn thông tin bằng các biện pháp thuật toán (phần mềm). Ba nhóm trên có thể được ứng dụng riêng rẽ hoặc phối kết hợp. Môi trường khó bảo vệ an toàn thông tin nhất và cũng là môi trường đối phương dễ xân nhập nhất đó là môi trường mạng và truyền tin. Biện pháp hiệu quả nhất và kinh tế nhất hiện nay trên mạng truyền tin và mạng máy tính là biện pháp thuật toán. An toàn thông tin bao gồm các nội dung sau: Đảm bảo tính tin cậy (Confidentiality): Thông tin không thể bị truy nhập trái phép bởi những người không có thẩm quyền. Đảm bảo tính nguyên vẹn (Integrity): Thông tin không thể bị sửa đổi, bị làm giả bởi những người không có thẩm quyền. Đảm bảo tính sẵn sàng (Availability): Thông tin luôn sẵn sàng để đáp ứng sử dụng cho người có thẩm quyền. Đảm bảo tính không thể từ chối (Non-repudiation): Thông tin được cam kết về mặt pháp luật của người cung cấp. Xác định càng chính xác các nguy cơ nói trên thì càng quyết định được tốt các giải pháp để giảm thiểu các thiệt hại. Có hai loại hành vi xâm phạm thông tin dữ liệu đó là: vi phạm chủ động và vi phạm thụ động. Vi phạm thụ động chỉ nhằm mục đích cuối cùng là nắm bắt được thông tin (đánh cắp thông tin). Việc làm đó có khi không biết được nội dung cụ thể nhưng có thể dò ra được người gửi, người nhận nhờ thông tin điều khiển giao thức chứa trong phần đầu các gói tin. Kẻ xâm nhập có thể kiểm tra được số lượng, độ dài và tần số trao đổi. Vì vậy vi pham thụ động không làm sai lệch hoặc hủy hoại nội dung thông tin dữ liệu được trao đổi. Vi phạm thụ động thường khó phát hiện nhưng có thể có những biện pháp ngăn chặn hiệu quả. Vi phạm chủ động là dạng vi phạm có thể làm thay đổi nội dung, xóa bỏ, làm trễ, xắp xếp lại thứ tự hoặc làm lặp lại gói tin tại thời điểm đó hoặc sau đó một thời gian. Vi phạm chủ động có thể thêm vào một số thông tin ngoại lai để làm sai lệch nội dung thông tin trao đổi. Vi phạm chủ động dễ phát hiện nhưng để ngăn chặn hiệu quả thì khó khăn hơn nhiều. Một thực tế là không có một biện pháp bảo vệ an toàn thông tin dữ liệu nào là an toàn tuyệt đối. Một hệ thống dù được bảo vệ chắc chắn đến đâu cũng không thể đảm bảo là an toàn tuyệt đối. 2. Giao thức xác thực 2.1 Khái niệm Xác thực-Authentication là một hành động nhằm thiết lập hoặc chứng thực một cái gì đó (hoặc một người nào đó) đáng tin cậy, có nghĩa là, những lời khai báo do người đó đưa ra hoặc về vật đó là sự thật. Xác thực một đối tượng còn có nghĩa là công nhận nguồn gốc (provenance) của đối tượng trong khi, xác thực một người thường bao gồm việc thẩm tra nhận dạng của họ. Việc xác thực thường phụ thuộc vào một hoặc nhiều nhân tố xác thực (authentication factors) để minh chứng cụ thể. Trong an ninh máy tính xác thực là một quy trình nhằm cố gắng xác minh nhận dạng số (digital identity) của phần truyền gửi thông tin (sender) trong giao thông liên lạc chẳng hạn như một yêu cầu đăng nhập. Phần gửi cần phải xác thực có thể là một người dùng sử dụng một máy tính, bản thân một máy tính hoặc một chương trình ứng dụng máy tính (computer program). Ngược lại Sự tin cậy mù quáng (blind credential) hoàn toàn không thiết lập sự đòi hỏi nhận dạng, song chỉ thiết lập quyền hoặc địa vị hẹp hòi của người dùng hoặc của chương trình ứng dụng mà thôi. Đinh nghĩa toán học Một mã xác thực là một bộ 4 (S,R,K,C) thoả mãn các điều kiện sau : − S là tập hữu hạn các trạng thái nguồn có thể − A là tập hợp các nhãn xác thực có thể − K là một tập hữu hạn các khoá có thể (không gian khoá) − Với mỗi k∈K có một quy tắc xác thực ek : S→R − Tập bản tin được xác định bằng C=S→R Chú ý một trạng thái nguồn tương đương với một bản rõ.Một bản tin gồm một bản rõ với một nhãn xác thực kèm theo,một cách chính xác hơn có thể coi đó là là một bản tin đã được xác nhận.Một quy tắc xác thực không nhất thiết phải là hàm đơn ánh. Để phát một thông báo (đã được kí).Alice và Bob phải tuân theo giao thức sau.Trước tiên họ phải chọn một khoá ngẫu nhiên K∈K.Điều này được thực hiện một cách bí mật như trong hệ mật khoá bi mật. Sau đó giả sử rằng Alice muốn gửi một trạng thái nguồn s∈S cho Bob trong một kênh không an toàn.Alice sẽ tính a=ek(s) và gửi bản tin (s, a) cho Bob.Khi nhận được (s, a) Bob tính a’=eK(s).Nếu a=a’ thì Bob chấp nhận bản tin là xác thực,ngược lại Bob sẽ loại bỏ nó. Ta sẽ nghiên cứu hai kiểu tấn công khác nhau mà Oscar có thể tiến hành.Trong cả hai loại này, Oscar sẽ là’’kẻ xâm nhập vào giưa cuộc’’.Các phép tấn công này được mô tả như sau: • Giả mạo Oscar đưa ra một bản tin (s, a) vào kênh và hi vọng nó sẽ được Bob chấp nhận. • Thay thế Oscar quan sát một bản tin trong (s, a) kênh, sau đó anh ta biến đổi nó thành (s’,a’), trong đó s’=s và hi vọng được Bob chấp nhận như một bản tin xác thực .Bởi vậy anh ta tin sẽ lái được Bob đi tới trạng thái nguồn mới này Ứng với mỗi phương pháp này là một xác xuất lừa bịp, là xác suất để Oscar thành công trong việc lừa Bob nếu anh ta (Oscar) tuân thủ một chiến lược tối ưu. Các xác suất này được kí hiệu là Pd 0 (trường hợp giảmạo) và Pd1 (trường hợp thay thế). Để tình Pd 0 và Pd 1 ta cần phải xác định các phân bố xác suất trên S vàK. Các xác suất này được kí hiệu tương ứng là P s và P k . Giả sử rằng Oscar đã biết mã xác thực và hai phân bố xác suất này. Chỉ có một thông tin mà Alice và Bob có nhưng mà Oscar không được biết là giá trị của khoá. 2.1 Các phương pháp xác thực 2.1.1 Xác thực dựa trên user name và password Sự kết hợp của một user name và password là cách xác thực cơ bản nhất. Với kiểu xác thực này, chứng từ ủy nhiệm User được đối chiếu với chứng từ được lưu trữ trên database hệ thống , nếu trùng khớp username và password, thì user được xác thực và nếu không User bị cấm truy cập. Phương thức này không bảo mật lắm vì chứng từ xác nhận User được gửi đi xác thực trong tình trạng plain text, tức không được mã hóa và có thể bị tóm trên đường truyền. 2.2.1 Challenge handshake authentication protocol (CHAP) Challenge Handshake Authentication Protocol (CHAP) cũng là mô hình xác thực dựa trên user name/password. Khi user cố gắng log on, server đảm nhiệm vai trò xác thực sẽ gửi một thông điệp thử thách (challenge message) trở lại máy tính User. Lúc này máy tính User sẽ phản hồi lại user name và password được mã hóa. Server xác thực sẽ so sánh phiên bản xác thực User được lưu giữ với phiên bản mã hóa vừa nhận , nếu trùng khớp, user sẽ được authenticated. Bản thân Password không bao giờ được gửi qua network. Phương thức CHAP thường được sử dụng khi User logon vào các remote servers của cty chẳng hạn như RAS server. Dữ liệu chứa password được mã hóa gọi là password băm (hash password). Một gói băm là một loại mã hóa không có phương cách giải mã. 2.2.3 Kerberos Kerberos authentication dùng một Server trung tâm để kiểm tra việc xác thực user và cấp phát thẻ thông hành (service tickets) để User có thể truy cập vào tài nguyên. Kerberos là một phương thức rất an toàn trong authentication bởi vì dùng cấp độ mã hóa rất mạnh. Kerberos cũng dựa trên độ chính xác của thời gian xác thực giữa Server và Client Computer, do đó cần đảm bảo có một time server hoặc authenticating servers được đồng bộ time từ các Internet time server. Kerberos là nền tảng xác thực chính của nhiều OS như Unix, Windows 2.2.4 Tokens Tokens là phương tiện vật lý như các thẻ thông minh (smart cards) hoặc thẻ đeo của nhân viên (ID badges) chứa thông tin xác thực. Tokens có thể lưu trữ số nhận dạng cá nhân-personal identification numbers (PINs), thông tin về user, hoặc passwords. Các thông tin trên token chỉ có thể được đọc và xử lý bởi các thiết bị đặc dụng, ví dụ như thẻ smart card được đọc bởi đầu đọc smart card gắn trên Computer, sau đó thông tin này được gửi đến authenticating server. Tokens chứa chuỗi text hoặc giá trị số duy nhất thông thương mỗi giá trị này chỉ sử dụng một lần. 2.2.5 Biometrics Biometrics (phương pháp nhận dạng sinh trắc học) mô hình xác thực dựa trên đặc điểm sinh học của từng cá nhân. Quét dấu vân tay (fingerprint scanner), quét võng mạc mắt (retinal scanner), nhận dạng giọng nói(voice- recognition), nhận dạng khuôn mặt(facerecognition). 2.2.6 Multi-factor authentication Multi-factor authentication, xác thực dựa trên nhiều nhân tố kết hợp, là mô hình xác thực yêu cầu kiểm ít nhất 2 nhân tố xác thực .Có thể đó là sự kết hợp của bất cứ nhân tố nào ví dụ như: bạn là ai, bạn có gì chứng minh, và bạn biết gì?. 2.2.7 Mutual authentication Mutual authentication, xác thực lẫn nhau là kỹ thuật bảo mật mà mỗi thành phần tham gia giao tiếp với nhau kiểm tra lẫn nhau. Trước hết Server chứa tài nguyên kiểm tra “giấy phép truy cập” của client và sau đó client lại kiểm tra “giấy phép cấp tài nguyên” của Server. II GIAO THỨC KERBEROS 1.Sơ lược về giao thức Tên của giao thức Kerberos được lấy từ tên của con chó ba đầu Cerberus canh gác cổng địa ngục trong thần thoại Hy Lạp. Nó được phát triển trong dự án Athena của học viện công nghệ MIT- Massachusetts Institute of Technology. Kerberos một giao thức mật mã dùng để xác thực trong các mạng máy tính theo mô hinh hình mô hình client-server hoạt động trên những đường truyền không an toàn. Giao thức Kerberos có khả năng chống lại việc nghe lén hay gửi lại các gói tin cũ và đảm bảo tính toàn vẹn của dữ liệu. Mục tiêu khi thiết kế giao thức này là nhằm vào và đảm bảo tính toàn vẹn và tính bảo mật cho thông tin truyền đi cả hai chiều. 1.1.Lịch sử phát triển Học viện công nghệ Massachusetts (MIT) phát triển Kerberos để bảo vệ các dịch vụ mạng cung cấp bởi dự án Athena. Giao thức đã được phát triển dưới nhiều phiên bản, trong đó các phiên bản từ 1 đến 3 chỉ dùng trong nội bộ MIT. Các tác giả chính của phiên bản 4, Steve Miller và Clifford Neuman, đã xuất bản giao thức ra công chúng vào cuối thập niên 1980, mặc dù mục đích chính của họ là chỉ phục vụ cho dự án Athena. Phiên bản 5, do John Kohl và Clifford Neuman thiết kế, xuất hiện trong tài liệu (RFC1510) vào năm 1993 (được thay thế bởi RFC 4120 vào năm 2005 với mục đích sửa các lỗi của phiên bản 4. MIT đã cung cấp các phiên bản thực hiện Kerberoslo miễn phí dưới giấy phép tương tự như dùng cho các sản phẩm BSD (Berkeley Software Distribution). [...]... client/server của rsh, FTP và Telnet +Hệ thống X Window +Thẻ thông minh Smark Card +Được tích hợp để xác thực trong các hệ điêu hành mạng +Xây dưng tích hợp trong các hệ thống xác thực của các ngân hàng +Tích hợp kerboros trong các hệ thống bastion host 2.Mục tiêu, yêu cầu của hệ thống Kerberos 2.1 Mục tiêu Mật khẩu của người dùng không bị thất lạc trên mạng Đảm bảo mật khẩu của khách hàng không lưu trữ... của người dùng, của nhà quản trị, nhà phát triển hệ thống Theo đó, Kerberos : Tăng sự tiện dụng cho người dùng: Người dùng không cần phải đăng nhập nhiều lần khi sử dụng hệ thống, cũng như không cần phải nhớ quá nhiều mật khẩu cho các dịch vụ trong hệ thống Tất cả chỉ là một tài khoản cho hết thảy các dịch vụ trong hệ thống Hỗ trợ các nhà phát triển hệ thống: SSO cung cấp một framework chứng thực chung... trên các hệ điều hành khác nhau 4.2Nhược điểm Tuy nhiên, bất kỳ hệ thống bảo mật nào cũng không thể chống lại tất cả các kiểu tấn công của hacker, Kerberos cũng có những nhược điểm nhất định như: Khó tích hợp với các hệ thống cũ: thường thì các hệ thống sẵn có trong mạng đã có cơ chế chứng thực riêng, cũng như cơ sở dữ liệu thông tin người dùng riêng Vì thế, việc tích hợp hệ thống cũ vào hệ SSO không... không cần phải quan tâm đến chứng thực khi xây dựng hệ thống nữa, coi như là các yêu cầu gửi đến hệ thống đã được chứng thực Điều này sẽ làm cho các nhà phát triển hoàn toàn yên tâm về an ninh của hệ thống được xây dựng, mà tránh được công việc nặng nhọc là xây dựng an toàn bảo mật cho hệ thống mới Làm đơn giản hoá công tác quản trị: Theo truyền thống, mỗi ứng dụng có cơ sở dữ liệu người dùng riêng... nên khi các hệ thống tham gia vào mạng, số lượng người dùng sẽ tăng lên rất nhanh làm quá tải công tác quản trị Với SSO, mọi hệ thống sử dụng cùng cơ sở dữ liệu người dùng tập trung vì thế công tác quản trị đã được tập trung hoá, số lượng người dùng giảm đi rất nhiều Tăng cường bảo mật: Hệ thống SSO có cơ chế chứng thực an toàn cũng như bảo mật truyền thông trên mạng Giảm thiểu số lần nhập mật khẩu cũng... triển khai một hệ thống hoạt động với dịch vụ Kerberos, yêu cầu về môi trường: − Có ít nhất 1 máy chủ cài đặt dịch vụ Kerberos (Kerberos Server) − Các Clients phải được đăng ký với máy chủ Kerberos − Một số các máy chủ ứng dụng đóng vai trò phân bổ các khóa với máy Kerberos Để có kerberos Realms hoạt động ta cần có Một vùng một quản trị (administrative domain) Nếu như có nhiều realms, Kerberos servers... sửa lại mã chương trình hệ thống cũng như di chuyển, thay đổi cơ sở dữ liệu người dùng Tấn công ở desktop Cũng do tính năng SSO, có khả năng kẻ địch giành được quyền truy nhập tới các tài nguyên khi người dùng của máy đó rời khỏi máy sau khi đăng nhập mà quên không khoá máy lại Hệ thống SSO chỉ bảo mật trên đường truyền mà không bảo mật cho dữ liệu trước khi được truyền nên mật khẩu của người dùng... 3961: Các quy định về mật mã hóa và kiểm tra tổng RFC 3962: Mã hoá AES cho Kerberos 5 RFC 4120: Phiên bản mới về tiêu chuẩn Kerberos V5: "The Kerberos Network Authentication Service (V5)" Phiên bản này thay thế RFC 1510, làm rõ các vấn đề của giao thức và cách sử dụng; RFC 4121: Phiên bản mới của tiêu chuẩn GSS-API: "Cơ cấu GSS-API của Kerberos Version 5: Version 2." 1.2 Ứng dụng của kerberos Ngày nay... Server - TGS) "Vé" trong hệ thống Kerberos chính là các chứng thực chứng minh nhân dạng của người sử dụng Đối với người sử dụng, các khóa bí mật chính là băm thông tin đầu vào khi đăng ký thường được lưu trong các trung tâm phân phối khóa trên server Kerberos Mỗi người sử dụng (cả máy chủ và máy khách) trong hệ thống chia sẻ một khóa chung với máy chủ Kerberos Việc sở hữu thông tin về khóa chính là bằng... máy chủ phải được bảo vệ tuyệt đối an toàn 4 Đánh giá ưu nhược điểm của hệ thống Kerbores 4.1Ưu điểm Mỗi khi đăng nhập vào hệ thống (login vào KDC), người dùng sẽ được cấp một vé TGT để xin các service ticket cho các lần truy nhập sau vào các máy chủ dịch vụ trong hệ thống Tức là với vé TGT, người dùng không cần phải nhập định danh, mật khẩu thêm một lần nào nữa, vì lý do này giao thức Kerberos còn gọi . khi đảm bảo tính chính xác và kịp thời, hệ thống chỉ có thể cung cấp các thông tin có giá trị thực sự khi các chức năng của hệ thống đảm bảo hoạt động đúng đắn. Mục tiêu của an toàn bảo mật trong công. dưng tích hợp trong các hệ thống xác thực của các ngân hàng. +Tích hợp kerboros trong các hệ thống bastion host. 2.Mục tiêu, yêu cầu của hệ thống Kerberos 2.1 Mục tiêu Mật khẩu của người dùng. tin được bảo vệ, các hệ thống và những dịch vụ có khả năng chống lại những tai hoạ, lỗi và sự tác động không mong đợi, các thay đổi tác động đến độ an toàn của hệ thống là nhỏ nhất. Hệ thống có