Bảo mật thông tin với hệ thống AAA

Chính phủ số - Ngày đăng : 21:58, 03/11/2015

Nhiều kỹ thuật khác nhau được áp dụng để thực thi cơ chế xác thực. Cơ chế xác thực dùng tên đăng nhập và mật khẩu là cơ chế truyền thống và vẫn còn được sử dụng rộng rải hiện nay

Chiến lược bảo mật hệ thống AAA (Điều khiển truy xuất-Access control, Xác thực-Authentication, Kiểm tra-Auditing) được xem là bước tiếp cận cơ bản và là chiến lược nền tảng để thực thi các chính sách bảo mật trên một hệ thống được mô tả theo mô hình CIA (Tính bí mật-Confidentiality, Tính toàn vẹn-Intergrity, Tính khả dụng- Availability).

Cơ sở của chiến lược này như sau:

1 – Quyền truy xuất đến tất cả các tài nguyên trong hệ thống được xác định một cách tường minh và gán cho các đối tượng xác định trong hệ thống.

2 – Mỗi khi đối tượng muốn vào hệ thống để truy xuất các tài nguyên, nó phải được xác thực bởi hệ thống để chắc chắn rằng đây là một đối tượng có quyền truy xuất.

3 – Sau khi đã được xác thực, tất cả các thao tác của đối tượng đều phải được theo dõi để bảo đảm đối tượng không thực hiện quá quyền hạn của mình.

Cần phân biệt với AAA trong ngữ cảnh quản lý mạng truy nhập với ý nghĩa  Authentication, Authorization, Accounting – là dịch vụ trên các máy chủ truy nhập từ xa (remote access server-RAS) để thực hiện quản lý truy nhập mạng của người sử dụng, theo dõi lưu lượng sử dụng và tính cước truy nhập. AAA trong trường hợp này thường triển khai cùng với các dịch vụ như RADIUS, TACACS …

AAA gồm 3 lĩnh vực tách rời nhưng hoạt động song song với nhau nhằm tạo ra các cơ chế bảo vệ sự an toàn của hệ thống.

· Thiết lập các cơ chế điều khiển truy xuất cho từng đối tượng (Access control)

·  Xác thực các đối tượng trước khi cho phép thao tác trên hệ thống (Authentication)

· Theo dõi các thao tác của đối tượng trên hệ thống (Auditing)

1. Điều khiển truy xuất

Điều khiển truy xuất được định nghĩa là một quy trình được thực hiện bởi một thiết bị phần cứng hay một module phần mềm, có tác dụng chấp thuận hay từ chối một sự truy xuất cụ thể đến một tài nguyên cụ thể.

Điều khiển truy xuất được thực hiện tại nhiều vị trí khác nhau của hệ thống, chẳng hạn như tại thiết bị truy nhập mạng như RAS hoặc điểm truy nhập không dây - WAP (Wireless Access Point), tại hệ thống quản lý tập tin của một hệ điều hành ví dụ NTFS trên windows hoặc trên các hệ thống Active Directory Service trong windows 2000 server, windows 2003 server….

Trong thực tế, điều khiển truy xuất thực hiện theo ba mô hình sau đây:

-        Mô hình điều khiển truy xuất bắt buộc (Mandatory Access Control – MAC): Là mô hình điều khiển truy xuất được áp dụng bắt buộc đối với toàn hệ thống. Trong môi trường máy tính, cơ chế điều khiển truy xuất bắt buộc được tích hợp sẵn trong hệ điều hành, và có tác dụng đối với tất cả các tài nguyên và đối tượng trong hệ thống, người sử dụng không thể thay đổi được.

Ví dụ: Trong hệ thống an toàn nhiều cấp (multilevel security), mỗi đối tượng  (subject) hoặc tài nguyên (object) được gán một mức bảo mật xác định. Trong hệ thống này, các đối tượng có mức bảo mật thấp không được đọc thông tin từ các tài nguyên có mức bảo mật cao, ngược lại các đối tượng ở mức bảo mật cao thì không được ghi thông tin vào các tài nguyên có mức bảo mật thấp. Mô hình này đặc biệt hữu dụng trong các hệ thống bảo vệ bí mật quân sự (mô hình Bell-LaPadula, 1973).

Những đặc điểm phân biệt của mô hình điều khiển truy xuất bắt buộc:

·         Được thiết lập cố định ở mức hệ thống, người sử dụng (bao gồm cả người tạo ra tài nguyên) không thay đổi được.

·         Người dùng và tài nguyên trong hệ thống được chia thành nhiều mức bảo mật khác nhau, phản ánh mức độ quan trọng của tài nguyên và người dùng.

·         Khi mô hình điều khiển bắt buộc đã được thiết lập, nó có tác dụng đối với tất cả người dùng và tài nguyên trên hệ thống.

Mô hình điều khiển truy xuất tự do (Dicscretionary Access Control – DAC): là mô hình điều khiển truy xuất trong đó việc xác lập quyền truy xuất đối với từng tài nguyên cụ thể  do người chủ sở hữu của tài nguyên đó quyết định. Đây là mô hình được sử dụng phổ biến nhất, xuất hiện trong hầu hết các hệ điều hành máy tính.

Ví dụ: trong hệ thống quản lý tập tin NTFS trên windows XP, chủ sở h  ữu của một thư mục có toàn quyền truy xuất đối với thư mục, có quyền cho phép hoặc không cho phép người dùng khác truy xuất đến thư mục, có thể cho phép người dùng khác thay đổi các xác lập về quyền truy xuất đối với thư mục.

Đặc điểm phân biệt của mô hình điều khiển truy xuất tự do:

Không được áp dụng mặc định trên hệ thống.

Người chủ sở hữu của tài nguyên (owner) thường là người tạo ra tài nguyên đó hoặc người được gán quyền sở hữu, có toàn quyền điều khiển việc truy xuất đến tài nguyên.

Quyền điều khiển truy xuất trên một tài nguyên có thể được chuyển từ đối tượng (user) này sang đối tượng (user) khác.

Mô hình điều khiển truy xuất theo chức năng (Role Based Access Control – RBAC):

Đây là mô hình điều khiển truy xuất dựa trên vai trò của từng người dùng trong hệ thống (user’roles)

Ví dụ: Một người quản lý tài chính cho công ty (financial manager) thì có quyền truy xuất đến tất cả các dữ liệu liên quan đến tài chính của công ty, được thực hiện các thao tác sửa, xoá, cập nhật trên cơ sở dữ liệu. Trong khi đó một nhân viên kế toán bình thường thì chỉ được truy xuất đến một bộ phận nào đó của cơ sở dữ liệu tài chính và chỉ được thực hiện các thao tác giới hạn đối với cơ sở dữ liệu.

Vấn đề quan trọng trong mô hình điều khiển truy xuất theo chức năng là định nghĩa các quyền truy xuất cho từng nhóm đối tượng tuỳ theo chức năng của các đối tượng đó. Việc này được định nghĩa ở mức hệ thống và áp dụng cho tất cả các đối tượng.

       Cơ chế quản lý theo nhóm (account group) của Windows NT chính là sự mô phỏng của mô hình RBAC. Trong cơ chế này, người sử dụng được gán làm thành viên của một hoặc nhiều nhóm trong hệ thống, việc phân quyền truy xuất đến các tài nguyên được thực hiện đối với các nhóm chứ không phải đối với từng người dùng, khi đó các người dùng thành viên trong nhóm sẽ nhận được quyền truy xuất tương đương một cách mặc định. Việc thay đổi quyền truy xuất đối với từng người dùng riêng biệt được thực hiện bằng cách chuyển người dùng đó sang nhóm khác có quyền truy xuất thích hợp.

Đặc điểm phân biệt của mô hình điều khiển truy xuất theo chức năng:

·  Quyền truy xuất được cấp dựa trên công việc của người dùng trong hệ thống (user’s role).

·  Linh động hơn mô hình điều khiển truy xuất bắt buộc, người quản trị hệ thống có thể cấu hình lại quyền truy xuất cho từng nhóm chức năng hoặc thay đổi thành viên trong các nhóm.

·  Thực hiện đơn giản hơn mô hình điều khiển truy xuất tự do, không cần phải gán quyền truy xuất trực tiếp cho từng người dùng.

       Ứng dụng các mô hình điều khiển truy xuất trong thực tế.

Trong thực tế, mô hình điều khiển truy xuất tự do (DAC) được ứng dụng rộng rãi nhất do tính đơn giản của nó đối với người dùng. Tuy nhiên, DAC không đảm bảo được các yêu cầu đặc biệt về an toàn hệ thống. Do vậy, một mô hình thích hợp nhất là phối hợp cả 3 mô hình: mô hình điều khiển truy xuất bắt buộc, mô hình điều khiển truy xuất tự do và mô hình điều khiển truy xuất theo chức năng.

2. Xác thực

Xác thực là một thủ tục có chức năng xác minh nhận dạng (identity) của một đối tượng trước khi trao quyền truy xuất cho đối tượng này đến một tài nguyên nào đó. Xác thực được thực hiện dựa trên 3 cơ sở:

·  What you know (điều mà đối tượng biết), ví dụ: mật khẩu.

·  What you have (cái mà đối tượng có ), ví dụ thẻ thông minh smartcard.

·  What you are (đặc trưng của đối tượng): các đặc điểm nhận dạng sinh trắc học như dấu vân tay, võng mạc,…..

Trong môi trường máy tính, xác thực được dùng ở nhiều ngữ cảnh khác nhau, ví dụ: xác thực tên đăng nhập và mật khẩu của người sử dụng (hình dưới) trước khi cho phép người sử dụng thao tác trên hệ thống máy tính (xác thực của hệ điều hành), xác thực tên đăng nhập và mật khẩu trước khi cho phép người dùng kiểm tra hộp thư điện tử (xác thực Mail server), trong giao dịch ngân hàng, thủ tục xác thực dùng để xác minh người đang ra lệnh thanh toán có phải là chủ tài khoản hay không, trong trao đổi thông tin, thử tục xác thực dùng để xác định chính xác nguồn gốc của thông tin.

Nhiều kỹ thuật khác nhau được áp dụng để thực thi cơ chế xác thực. Cơ chế xác thực dùng tên đăng nhập và mật khẩu là cơ chế truyền thống và vẫn còn được sử dụng rộng rải hiện nay. Khi việc xác thực được thực hiện thông qua mạng, một số hệ thống thực hiện việc mã hoá tên đăng nhập và mật khẩu trước khi truyền đi để tránh bị tiết lộ, nhưng cũng có nhiều hệ thống gửi trực tiếp những thông tin nhạy cảm này trên mạng.

Một số kỹ thuật tiên tiến hơn được dùng trong xác thực như thẻ thông minh (Smartcard), chứng thực số (Digital certificate), các thiết bị nhận dạng sinh trắc học (biometric devices)….

Để tăng độ tin cậy của cơ chế xác thực, nhiều kỹ thuật được sử dụng phối hợp nhau gọi là multi-factor authentication. Ví dụ: xác thực dùng thẻ thông minh kèm với mật khẩu, nghĩa là người sử dụng vừa có thẻ vừa phải biết mật khẩu thì mới đăng nhập được, tránh trường hợp lấy cắp thẻ của người khác để đăng nhập.

Trong thực tế tồn tại hai phương thức xác thực: xác thực một chiều (one way authentication) và xác thực hai chiều (mutual authentication).Phương thức xác thực một chiều chỉ cung cấp cơ chế để một đối tượng (thường là máy chủ) kiểm tra nhận dạng của đối tượng kia (người dùng) mà không cung cấp cơ chế kiểm tra ngược lại (tức không cho phép người dùng kiểm tra nhận dạng của máy chủ). Xét trường hợp một người sử dụng đăng nhập vào một hộp thư điện tử ở xa thông qua dịch vụ web (web mail). Người sử dụng dĩ nhiên phải cung cấp tên đăng nhập và mật khẩu đúng thì mới được phép truy xuất hộp thư. Để đánh cắp mật khẩu của người dùng, kẻ tấn công có thể xây dựng một trang web hoàn toàn giống với giao diện của máy chủ cung cấp dịch vụ thư điện tử (mail server) và đánh lừa người sử dụng kết nối đến trang web này. Do không có cơ chế xác thực máy chủ, người sử dụng không thể nhận biết đây là một máy chủ giả mạo nên yên tâm cung cấp tên đăng nhập và mật khẩu.

Phương thức kiểm tra hai chiều cho phép hai đối tượng tham gia giao tác xác thực lẫn nhau, do đó tính chính xác của quá trình xác thực được đảm bảo. Giao thức bảo mật SSL (Security Sockets Layer) dùng trong dịch vụ web cung cấp cơ chế xác thực hai chiều dùng chứng thực số.

Có nhiều giải thuật xác thực khác nhau. Giải thuật đơn giản nhất chỉ cần so sánh tên đăng nhập và mật khẩu mà người sử dụng cung cấp  với tên đăng nhập và mật khẩu đã được lưu trong hệ thống, nếu giống nhau nghĩa là thủ tục xác thực thành công (PAP). Giải thuật phức tạp hơn như CHAP thì thực hiện việc mã hoá thông tin trên một giá trị ngẫu nhiên nào đó do máy chủ đưa ra (gọi là challenge) để tránh trường hợp mật khẩu bị đọc lén trên mạng và các hình thức tấn công phát lại (reply attack). Một giải thuật phức tạp khác là Kerberos thực hiện thủ tục xác thực theo một quá trình phức tạp gồm nhiều bước nhằm đảm bảo hạn chế tất cả các nguy cơ gây nên xác thực sai.

3. Kiểm tra

Kiểm tra là cơ chế theo dõi hoạt động của hệ thống ghi nhận các hành vi diễn ra trên hệ thống và liên kết các hành vi này với các tác nhân gây ra hành vi.

Ví dụ: cài đặt cơ chế kiểm tra cho một thư mục trong hệ thống tập tin NTFS sẽ cho phép người quản trị theo dõi các hoạt động diễn ra trên thư mục như: thao tác nào đã được thực hiện, ngày giờ thực hiện, người sử dụng nào thực hiện….

Các mục tiêu của kiểm tra:

·  Cung cấp các thông tin cần thiết cho việc phục hồi hệ thống khi có sự cố.

·  Đánh giá mức độ an toàn của hệ thống để có kế hoặch nâng cấp kịp thời.

·  Cung cấp các thông tin làm chứng cứ cho việc phát hiện các hành vi truy xuất trái phép trên hệ thống.

Trong một hệ thống tin cậy (reliable system) thì việc kiểm tra cũng là một yêu cầu quan trọng bởi vì nó đảm bảo rằng các hành vi của bất kỳ người dùng nào trong hệ thống (kể cả những người dùng hợp lệ đã được xác thực – authentication user) cũng đều được theo dõi để chắc rằng những hành vi đó diễn ra đúng theo các chính sách anh toàn đã được định nghĩa trên hệ thống.

Nguyên tắc chung khi xây dựng các hệ thốn an toàn là chia nhỏ các thủ tục thành nhiều công đoạn được thực hiện bởi nhiều tác nhân khác nhau, và do đó việc thực hiện hoàn chỉnh một thủ tục yêu cầu phải có sự tham gia của nhiều tác nhân. Đây là cơ sở để thực thi các cơ chế kiểm tra.

Ví dụ: công việc giữ kho hàng và công việc quản lý sổ sách phải được thực hiện bởi hai nhân viên khác nhau để tránh trường hợp một nhân viên vừa có thể lấy hàng ra ngoài vừa có thể thay đổi thông tin trong sổ quản lý. Nguyên tắc này được áp dụng triệt để trong cơ chế kiểm tra trên hệ thống nhằm phân biệt rõ ràng giữa chức năng kiểm tra với các hoạt động được kiểm tra. Thông thường, một đối tượng được kiểm tra sẽ không có quyền thay đổi các thông tin mà cơ chế kiểm tra ghi lại.

Các thành phần của hệ thống kiểm tra:

·  Logger: Ghi lại thông tin giám sát trên hệ thống.

·  Analyzer: Phân tích kết quả kiểm tra.

·  Notifier: Cảnh báo về tính an toàn của hệ thống dựa trên kết quả phân tích.

Song song với cơ chế kiểm tra thường trực  trên hệ thống (auditing), việc kiểm tra hệ thống định kỳ (system scanning) cơ chức năng kiểm tra và phát hiện các sơ hở kỹ thuật ảnh hưởng đến sự an toàn của hệ thống. Các chức năng có thể thực hiện bởi các chương trình kiểm tra hệ thống trên máy tính thường gặp:

· Kiểm tra việc tuân thủ chính sách an toàn về mật khẩu (password policy), ví dụ: người dùng có đổi mật khẩu thường xuyên không, độ dài mật khẩu, độ phức tạp của mật khẩu……

· Đánh giá khả năng xâm nhập hệ thống từ bên ngoài.

· Kiểm tra phản ứng của hệ thống đối với các dấu hiệu có thể dẫn đến tấn công từ chối dịch vụ hoặc sự cố trên hệ thống (system crash).

Tài liệu tham khảo

[1] JASON ANDRES, The Basics of Information Security

[2] JOHN R. VACCA, Network and System Security