Cơ chế đăng nhập một lần đảm bảo cho người dùng hợp pháp có thể truy nhập vào rất nhiều những dịch vụ khác nhau trên hệ thống mạng phân tán nhưng chỉ phải sử dụng một khóa duy nhất.. Để
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT
NGƯỜI HƯỚNG DẪN KHOA HỌC
TS HOÀNG XUÂN DẬU
HÀ NỘI - 2011
Trang 2MỞ ĐẦU
Ngày nay cùng với sự phát triển mạnh mẽ của các hệ thống phân tán, người dùng có thể dễ dàng chia sẻ thông tin cũng như sử dụng nguồn tài nguyên vô cùng to lớn của hệ thống mạng Những nhà cung cấp dịch vụ đã dựa trên nền mạng phân tán để phân chia hệ thống máy chủ của mình phục vụ cho các nhóm người dùng theo những vùng khác nhau về vị trí địa lý, nhưng cho phép người dùng truy cập các nhóm nội dung tương tự nhau, nhờ vậy giảm bớt thời gian và chi phí cho việc truy cập Thông thường giải pháp được sử dụng trong trường hợp có nhiều nhà cung cấp dịch vụ khác nhau là người sử dụng phải đăng ký tên người dùng và mật khẩu riêng với từng nhà cung cấp Tuy nhiên khi người sử dụng phải lưu trữ quá nhiều các thông tin bí mật như trên sẽ dẫn đến những vấn đề như không đảm bảo tính an ninh, an toàn và tăng thêm những chi phí khác Cơ chế đăng nhập một lần đảm bảo cho người dùng hợp pháp
có thể truy nhập vào rất nhiều những dịch vụ khác nhau trên hệ thống mạng phân tán nhưng chỉ phải sử dụng một khóa duy nhất Hiện nay
có nhiều phương pháp khác nhau được đưa ra nhằm mục đích ứng dụng cơ chế này, nhưng trên các thử nghiệm thực tế hầu hết các phương pháp đó đều không ngăn chặn được các tấn công một cách
có chủ ý từ bên ngoài Một số phương pháp có kèm theo cơ chế đồng
bộ thời gian để loại bỏ các truy nhập trái phép, nhưng điều đó dẫn đến việc tăng chi phí tính toán
Trang 3Luận văn này tập trung nghiên cứu phương pháp tăng cường bảo mật và hiệu quả cho cơ chế đăng nhập một lần ứng dụng cho các thiết bị di động trong hệ thống phân tán
Nội dung của luận văn bao gồm ba chương chính như sau:
- Chương 1: Giới thiệu tổng quan về cơ chế đăng nhập, các kỹ thuật xác thực sử dụng trong đăng nhập và giới thiệu khái quát về cơ chế đăng nhập một lần Đồng thời, chương cũng cung cấp phần đánh giá các ưu, nhược điểm của cơ chế đăng nhập một lần
- Chương 2: Phân loại các giải pháp đăng nhập một lần, các hình thức tấn công vào cơ chế đăng nhập một lần Chương cũng giới thiệu các thuật toán mã hóa sử dụng trong xác thực người dùng trong đăng nhập như: thuật toán mã hóa khóa công khai, hàm băm một chiều
- Chương 3: Đề xuất giải pháp nâng cao tính bảo mật cho
cơ chế đăng nhập một lần, đánh giá độ an toàn cũng như chi phí tính toán của giải pháp; cài đặt thử nghiệm hệ thống đăng nhập một lần
Trang 4CHƯƠNG 1 - TỔNG QUAN VỀ ĐĂNG NHẬP MỘT LẦN
1.1 Khái quát về đăng nhập và các kỹ thuật xác thực sử dụng trong đăng nhập
1.1.1 Giới thiệu cơ chế đăng nhập
Cùng với sự phát triển mạnh mẽ của hệ thống mạng máy tính, người sử dụng và quản trị hệ thống phải đối mặt với những thách thức trong việc đảm bảo hệ thống vận hành an toàn và hiệu quả Để đảm bảo tính bảo mật cho các thông tin được lưu trữ trên các máy chủ dịch vụ, đòi hỏi người sử dụng phải đăng nhập vào các hệ thống sau đó họ sẽ được cấp quyền để truy nhập vào các thông tin
đó
Đăng nhập là quá trình người dùng sử dụng định danh và các thông tin bí mật khác thiết lập một kết nối bảo mật với hệ thống, định danh và các thông tin bí mật của người dùng đã được người dùng đăng ký từ trước với hệ thống Quá trình người dùng đăng nhập bao gồm hai bước xác thực và ủy quyền, trong đó :
+ Xác thực (Authentication) : Kiểm tra một người dùng có hợp lệ hay không thông qua các phương thức xác thực của hệ thống Xác thực được coi là cốt lõi của quá trình đăng nhập trong một hệ thống thông tin
+ Ủy quyền (Authorization) : Là quá trình kiểm chứng một người dùng đã được xác thực có đủ quyền truy cập vào tài nguyên
Trang 5mà người dùng yêu cầu hay không Sự phân cấp truy cập tài nguyên phụ thuộc vào các chính sách của hệ thống
1.1.2 Xác thực
1.1.2.1 Khái quát về xác thực
Xác thực 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 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 để minh chứng cụ thể
Xác thực có vai trò đặc biệt quan trọng giúp cho hoạt động của hệ thống được an toàn Hệ thống sẽ xác thực một thực thể khi thực thể đó có yêu cầu thiết lập liên lạc Khi đó thông tin nhận dạng của thực thể được dùng để xác định quyền truy nhập của chính nó Trong cả quá trình thực hiện giao thức xác thực, hai bên trao đổi những thông tin bí mật, và đó là cơ sở đảm bảo tính bảo mật và toàn vẹn cho toàn bộ hệ thống
Trang 6thực thực thể có khả năng công nhận hoặc bác bỏ thông tin nhận dạng của người truy nhập Xác thực thực thể có thể được thực hiện từ một phía hoặc nhiều phía:
Trong xác thực một phía, chỉ một phía thực hiện xác thực bản thân mình với hệ thống khi yêu cầu liên lạc
Trong xác thực thực thể nhiều phía, thông thường cả hai bên phải xác thực lẫn nhau
1.1.2.3 Các giao thức xác thực
Sức mạnh của một hệ xác thực phụ thuộc khả năng của cơ sở
hạ tầng hỗ trợ lưu giữ các khóa mật mã dài và thực hiện các giải thuật mật mã Các giao thức xác thực sử dụng các giải thuật mật mã tổng hợp và dùng khóa mật mã dài để chống lại các dạng tấn công thông tin Các giao thức xác thực thông dụng bao gồm: giao thức thử thách và trả lời, giao thức mật khẩu được chuyển đổi, giao thức mật khẩu sử dụng một lần, giao thức chứng chỉ số và giao thức nhận dạng sinh trắc học
1.1.2.4 Các kỹ thuật xác thực
a Xác thực bằng thẻ
b Xác thực dựa theo tri thức
c Xác thực dựa theo nhân trắc quan
d Xác thực sử dụng thẻ nhớ USB
e Xác thực bằng mật khẩu sử dụng một lần (OTP:one-time password)
f Xác thực sử dụng thiết bị phát sóng radio (RFID - Radio frequency identification card)
Trang 7- Trên thực tế, đôi khi phải kết hợp nhiều nhân tố xác thực để đảm bảo tính an toàn đến một mức độ nào đó mà chúng ta hướng tới, bởi mỗi phương thức xác thực đều có những nhược điểm riêng xét cụ thể như sau:
Xác thực bằng mật khẩu có nhược điểm lớn nhất là người dùng thường chọn mật khẩu dễ nhớ, do vậy dễ đoán, nên dễ bị tấn công
Phương pháp nhận dạng sinh học thì đòi hỏi phải dựa trên hạ tầng thông tin tốt
RFID chỉ sử dụng được trong phạm vi gần đầu đọc chuyên dụng
Sử dụng OTP đòi hỏi cơ sở hạ tầng thông tin phải kết nối tốt và liên tục, bởi mỗi OTP chỉ tồn tại trong một thời gian nhất định
1.2 Cơ chế đăng nhập một lần
1.2.1 Giới thiệu cơ chế đăng nhập một lần
Trong quá trình phát triển của các hệ thống phân tán, chúng
ta có thể nhận thấy ban đầu chúng chỉ là những thành phần hoạt động như những hệ thống độc lập và đòi hỏi những chế độ bảo mật độc lập tương đương Những thành phần này bao gồm những nền tảng riêng
rẽ liên kết với từng ứng dụng và hệ điều hành khác nhau Điều này dẫn tới việc những người dùng cuối phải đăng ký và xác thực một cách độc lập với từng dịch vụ nếu họ muốn truy nhập đến các dữ liệu được bảo mật
Trang 8Tuy nhiên trên thực tế người dùng phải đăng nhập vào rất nhiều các máy chủ dịch vụ khác nhau, từ đó dẫn đến mỗi người phải đăng ký và ghi nhớ rất nhiều các thông tin định danh người dùng Những người quản trị hệ thống cũng phải đối mặt với việc quản lý những người dùng trong các hệ thống liên kết muốn truy nhập đến các tài nguyên trong hệ thống của mình mà không xảy ra xung đột cũng như đảm bảo được các quy tắc bảo mật
Cơ chế đăng nhập một lần là cơ chế giúp cho người dùng hợp pháp có thể truy nhập vào rất nhiều những dịch vụ khác nhau trên hệ thống mạng phân tán nhưng chỉ phải sử dụng một định danh duy nhất Người sử dụng chỉ cần đăng ký và đăng nhập duy nhất một lần vào hệ thống, khi đó trong phiên làm việc của mình họ có thể truy cập ngay lập tức vào các dịch vụ liên kết của hệ thống phân tán
mà không phải đăng ký thêm định danh và thông qua quá trình đăng nhập lần nữa
1.2.2 Ưu khuyết điểm của cơ chế đăng nhập một lần
1.2.2.1 Ưu điểm
Tiết kiệm thời gian cho người sử dụng trong việc đăng nhập vào nhiều dịch vụ được cung cấp trên các nền tảng khác nhau của hệ thống phân tán
Tăng cường khả năng bảo mật thông qua việc giúp người sử dụng không cần nhớ nhiều thông tin đăng nhập (định danh và mật khẩu)
Trang 9 Giúp cho người quản trị hệ thống tiết kiệm thời gian trong việc tạo lập hay loại bỏ người dùng trên hệ thống, cũng như thay đổi quyền của một hay một nhóm người dùng nào đó
Tiết kiệm thời gian khi tái lập lại mật khẩu cho người dùng
Bảo mật các cấp độ của việc thoát hay truy xuất hệ thống
Người phát triển ứng dụng không cần thiết phải hiểu và thực hiện nhận dạng bảo mật trong ứng dụng của họ, điều họ cần làm là liên kết đến một máy chủ định danh đã được bảo đảm, việc này giúp những người dùng của họ có thể truy cập vào các dịch vụ khác cũng liên kết đến máy chủ đó như họ
1.2.2.2 Khuyết điểm
Đòi hỏi cơ sở hạ tầng của toàn bộ hệ thống phải bảo đảm
Do nhiều domain cùng sử dụng chung cơ sở dữ liệu người dùng nên việc xác thực khi người dùng đăng ký với hệ thống phải chặt chẽ, nếu không sẽ rất dễ vi phạm việc đảm bảo an ninh cho hệ thống
Cần có cơ chế xác thực đảm bảo khi truyền các thông tin định danh người dùng giữa người sử dụng với các máy chủ dịch vụ khác nhau
1.3 Nội dung và đóng góp của luận văn
Năm 2000, giao thức trao đổi định danh người dùng đã được giới thiệu lần đầu tiên bởi hai nhà khoa học Lee và Chang, giao thức này cung cấp phương pháp thiết lập khóa cho phiên làm việc cũng như giấu tên người dùng trong hệ thống phân tán Tuy nhiên sau đó phương thức này đã được chứng minh là dễ bị tổn thương bởi các tấn
Trang 10công có chủ ý từ bên ngoài Năm 2004, Hsu và Wu chỉ ra rằng giao thức trên có thể bị đánh lừa bởi các cuộc tấn công giả mạo người dùng và họ cũng cung cấp giải pháp để sửa lỗi này Một thời gian sau, Yang và cộng sự của ông chứng tỏ rằng giải pháp của Hsu và
Wu cũng không thể bảo vệ khóa bí mật của người dùng khỏi những nhà cung cấp dịch vụ giả mạo, và họ cũng đã đưa ra giải pháp nâng cấp để ngăn ngừa các cuộc tấn công dạng này Năm 2005, Lee đã thử nghiệm hai khả năng tấn công vào giải pháp của Hsu và Wu, theo đó,
kẻ tấn công giả mạo các khóa hợp pháp để đánh lừa những nhà cung cấp dịch vụ Năm 2006 Mangipudi và Katti giới thiệu phương pháp tấn công từ chối dịch vụ DoS nhằm vào giải pháp của Yang, cùng với đó họ cũng đưa ra cách thức để chống lại DoS Mới đây, Hsu và Chuang chứng tỏ rằng các giải pháp của Yang cũng như của Mangipudi và Katti đều dễ bị tổn thương bởi cách tấn công làm lộ thông tin định danh
Mặc dù giải pháp của Hsu và Chuang có nhiều tính năng nâng cao, tuy nhiên trên thực tế, nó không cung cấp tất cả các tính năng bảo mật như những gì đã được đề cập đến trong giải pháp Nó
có thể bị tấn công bằng cách sử dụng thuật toán RSA tương tự để tạo các khóa bí mật từ đó giả mạo người dùng hợp pháp đánh lừa hệ thống Thêm vào đó giải pháp của Hsu và Chuang sử dụng nhãn thời gian để chống các cuộc tấn công lặp lại, tuy nhiên rất khó để xác nhận các nhãn thời gian này khi các phần của hệ thống phân tán trải rộng trên các vùng địa lý khác nhau, trên các múi giờ khác nhau,
Trang 11trong khi hệ thống mạng chưa thể đáp ứng được cơ chế đồng bộ thời gian trên toàn hệ thống
Luận văn này tập trung nghiên cứu phương pháp bảo mật cho cơ chế đăng nhập một lần cho phép người dùng di động có thể sử dụng một định danh duy nhất để đăng nhập vào các dịch vụ khác nhau trên hệ thống phân tán Phương pháp này dựa trên hàm băm một chiều và các biến ngẫu nhiên để giải quyết các vấn đề về bảo mật mà các giải pháp nêu trên gặp phải nhằm nâng cao độ an toàn của hệ thống Nội dung của luận văn tập trung làm rõ các điểm yếu của các giải pháp đăng nhập một lần đã được biết đến và các phương pháp tấn công lợi dụng các điểm yếu đó để phá hoại hệ thống, từ đó đưa ra giải pháp khắc phục và nâng cao độ an toàn cho hệ thống
1.4 Kết chương
Thông qua nội dung chương 1, luận văn đề cập đến những kiến thức cơ bản về cơ chế đăng nhập và các kỹ thuật xác thực sử dụng trong đăng nhập; giới thiệu khái quát về cơ chế đăng nhập một lần, những ưu khuyết điểm của cơ chế này và những ứng dụng thực
tế của nó trong hệ thống phân tán
Chương cũng nêu nội dung vấn đề được giải quyết trong luận văn và các đóng góp của luận văn trong việc nghiên cứu nâng cao tính bảo mật của cơ chế đăng nhập một lần ứng dụng trong hệ
phân tán Đây là cơ sở để xây dựng những ứng dụng thực tế dựa trên
giải pháp đăng nhập một lần được giới thiệu trong luận văn này
Trang 12CHƯƠNG 2 - CƠ SỞ LÝ THUYẾT VÀ ỨNG DỤNG THỰC TẾ CỦA CƠ CHẾ ĐĂNG NHẬP MỘT LẦN
2.1 Phân loại và ứng dụng của cơ chế đăng nhập một lần
2.1.1 Phân loại các phương pháp đăng nhập một lần
Việc phân loại các phương pháp đăng nhập một lần giúp chúng ta nhận biết được sự khác nhau của các thuộc tính an toàn của từng phương pháp, từ đó có cơ sở để lựa chọn được phương pháp phù hợp cho từng hệ thống cụ thể Luận văn này trình bày hai cách thức phân loại đang được sử dụng hiện nay đó là cách phân loại của
De Clercq và cách phân loại của Pashalidis-Mitchell
2.1.2 Các giải pháp đăng nhập một lần
Hiện nay có khá nhiều giải pháp đăng nhập một lần được giới thiệu và đưa vào kiểm chứng trên thực tế như:
Open Single Sign-On (OpenSSO) hoạt động dựa trên Token
Central Authentication Service (CAS)
Tivoli Access Manager for Enterprise Single Sign-On
2.2 Các vấn đề an toàn trong cơ chế đăng nhập một lần
Trang 13cuộc tấn công có chủ đích Các cuộc tấn công có tính chất khác nhau tùy thuộc vào loại và mức độ nghiêm trọng của các lỗ hổng bị khai thác
Hệ thống đăng nhập một lần thường gặp các vấn đề về bảo mật như sau:
- Vấn đề mật khẩu yếu: Sử dụng mật khẩu là phương pháp xác thực được dùng phổ biến nhất hiện nay Mật khẩu có thể được sử dụng nhiều lần và không được thay đổi trong thời gian dài để truy cập vào các ứng dụng là vấn đề thường gặp Một phương pháp thông thường dùng để tấn công các mật khẩu yếu là đoán mật khẩu bằng cách sử dụng phương pháp tấn công từ điển Chúng ta có thể khắc phục vấn đề này bằng cách thiết lập các chính sách mật khẩu mạnh
- Vấn đề về hình thức đăng nhập: Nhà cung cấp dịch cụ tích hợp mẫu đăng nhập dành cho người dùng vào trong một trang nội dung của mình, và trong quá trình đăng nhập thông tin của người dùng sẽ được gửi trở lại cho nhà cung cấp dịch vụ để xác thực, nếu các thông tin này không được mã hóa sẽ dẫn đến vấn đề lộ định danh người dùng Bên cạnh đó nếu các hệ mã hóa được sử dụng không đảm bảo an toàn thì cũng có thể dẫn đến các nguy cơ lộ thông tin về người dùng
2.3 Cơ sở lý thuyết mã hoá cho đăng nhập một lần
2.3.1 Các phương pháp mã hóa sử dụng khóa công khai
2.3.1.1 Giới thiệu mật mã sử dụng khóa công khai
Mật mã khóa công khai là một dạng mã hóa cho phép người
sử dụng trao đổi các thông tin mật mà không cần phải trao đổi các