Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 66 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
66
Dung lượng
2,17 MB
Nội dung
-1- ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN HỒNG PHONG KIỂM CHỨNG SỰ TUÂN THỦ GIỮA ĐẶC TẢ ĐIỀU KHIỂN TRUY CẬP VÀ CÀI ĐẶT LUẬN VĂN THẠC SĨ -2- ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN HỒNG PHONG KIỂM CHỨNG SỰ TUÂN THỦ GIỮA ĐẶC TẢ ĐIỀU KHIỂN TRUY CẬP VÀ CÀI ĐẶT Ngành : Công nghệ thông tin Chuyên ngành : Công nghệ phần mềm Mã số : 60.48.10 LUẬN VĂN THẠC SĨ HƢỚNG DẪN KHOA HỌC: TS TRƢƠNG NINH THUẬN HÀ NỘI - 2011 -5- MỤC LỤC BẢNG CÁC CHỮ VIẾT TẮT DANH MỤC HÌNH VẼ MỞ ĐẦU Chƣơng GIỚI THIỆU VỀ ĐIỀU KHIỂN TRUY CẬP 1.1 Giới thiệu 1.2 Mục đích thành phần điều khiển truy cập 10 1.3 Lịch sử điều khiển truy cập 12 Chƣơng MƠ HÌNH ĐIỀU KHIỂN TRUY CẬP TRỪU TƢỢNG 22 2.1 Các thành phần hệ thống điều khiển truy cập 22 2.2 Các thực thể sở nguyên tắc thiết kế an toàn 23 2.3 Mô hình điều khiển truy cập trừu tƣợng 26 Chƣơng CÁC CHỨC NĂNG CHÍNH CỦA RBAC 29 3.1 Phân biệt vai trị nhóm ACL 29 3.2 RBAC sở 30 Chƣơng KIỂM CHỨNG TÍNH ĐÚNG ĐẮN TRONG ĐIỀU KHIỂN TRUY CẬP 37 4.1 Bài tốn kiểm chứng tính đắn thiết kế cài đặt sách RBAC 37 4.2 Định nghĩa ngôn ngữ trừu tƣợng LRBAC mức đơn giản 40 4.3 Thuật tốn để kiểm chứng tính đắn 43 Chƣơng CHƢƠNG TRÌNH CÀI ĐẶT KIỂM CHỨNG THUẬT TOÁN 47 5.1 Cài đặt thuật toán dựa thành phần Eclipse 47 5.2 Kết chạy số ví dụ 56 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 64 TÀI LIỆU THAM KHẢO 66 -6- BẢNG CÁC CHỮ VIẾT TẮT Viết tắt Tên đầy đủ ACL Access Control List AST Abstract Syntax Tree DAC Discretionary Access Control DB DataBase DoD U.S Department of Defense MAC Mandatory Access Control RBAC Role Based Access Control SoD Separation of Duties XACML eXtensible Access Control Markup Language XML eXtensible Markup Language -7- DANH MỤC HÌNH VẼ Số Tên hình vẽ Trang Hình 1.1 Ma trận truy cập 12 Hình 1.2 Mơ tả hình thức ban đầu RBAC theo Ferraiolo Kuhn 17 Hình 1.3 Các mối quan hệ RBAC 17 Hình 1.4 Mối quan hệ nhóm điều khiển truy cập 18 Hình 1.5 Ví dụ vai trị phân cấp 19 Hình 1.6 Khung RBAC96 Sandhu 25 Hình 2.1 Mơ hình tham chiếu hệ thống điều khiển truy cập 25 Hình 3.1 Mối quan hệ ngƣời dùng, vai trị quyền 29 Hình 3.2 Các thành phần tĩnh mơ hình RBAC 31 Hình 3.3 Tập ánh xạ động mối quan hệ tĩnh cần thiết để ngƣời dùng truy cập đến đối tƣợng 33 Hình 4.1 Các bƣớc tiến hành kiểm thử phù hợp đặc tả cài đặt RBAC 37 Hình 4.2 Cú pháp ngơn ngữ LRBAC 38 Hình 4.3 Cấu trúc nhị phân ba câu lệnh If, For, While 39 Hình 5.1 Kiến trúc tổng quan Eclipse 46 Hình 5.2 Các thành phần thành phần gắn thêm Ant 47 Hình 5.3 Các bƣớc tiến hành kiểm chứng 49 Hình 5.4 Cây cú pháp trừu tƣợng 50 -8- MỞ ĐẦU Điều khiển truy cập yếu tố an ninh bản, đóng vai trị cốt yếu việc đảm bảo an ninh hệ thống máy tính Bất sử dụng máy tính tuân theo điều phối hệ thống điều khiển truy cập Trong trình hình thành phát triển, có nhiều nghiên cứu điều khiển truy cập Từ khái niệm ban đầu nhƣ : ma trận điều khiển truy cập, danh sách điều khiển truy cập…, sau điều khiển truy cập đƣợc khái qt thành mơ hình DAC, MAC, RBAC RBAC mơ hình điều khiển truy cập tiến thời điểm Mô hình giải đƣợc nhiều vấn đề mà mơ hình trƣớc gặp phải nhƣ : hỗ trợ đặc quyền tối thiểu, dễ dàng quản lý, giảm giá thành vận hành… Rất nhiều tổ chức chƣơng trình quản lý sử dụng mơ hình RBAC nhƣ mơ hình tham chiếu cho sách an ninh Quá trình thiết kế cài đặt luật điều khiển truy cập theo mơ hình RBAC thƣờng đƣợc tiến hành nhiều ngƣời tổ chức, nhƣ diễn khoảng thời gian dài Ngồi ra, luật điều khiển truy cập cịn thƣờng xuyên đƣợc thay đổi cập nhật Vì vậy, kiểm chứng phù hợp việc mô tả luật RBAC việc cài đặt luật ngôn ngữ lập trình cụ thể u cầu mang tính thực tiễn có tính ứng dụng cao Đề tài "Kiểm chứng tuân thủ đặc tả điều khiển truy cập cài đặt" nhằm mục đích tìm hiểu thuật toán kiểm chứng phù hợp đặc tả sách điều khiển truy cập việc cài đặt sách ngơn ngữ lập trình cụ thể, đƣợc mơ tả cơng trình nghiên cứu tác giả Trƣơng Ninh Thuận, Nguyễn Việt Hà Phạm Tuấn Hƣng Sau tiến hành cài đặt thuật tốn ngơn ngữ lập trình cụ thể để kiểm chứng tính đắn phù hợp với thực tế phƣơng pháp Nội dung luận văn gồm chƣơng Chƣơng : Giới thiệu chung điều khiển truy cập Mục đích, thành phần trình hình thành phát triển điều khiển truy cập Chƣơng : Khái qt mơ hình điều khiển truy cập trừu tƣợng Các thành phần mơ hình điều khiển truy cập trừu tƣợng, nguyên tắc cần tuân theo thiết kế an tồn Chƣơng : Mơ tả cấu trúc mơ hình điều khiển truy cập RBAC Các thành phần mơ hình, ƣu điểm mơ hình RBAC so với mơ hình trƣớc Hình thức hóa tốn học tính chất mơ hình RBAC -9- Chƣơng GIỚI THIỆU VỀ ĐIỀU KHIỂN TRUY CẬP 1.1 Giới thiệu Điều khiển truy cập (Access control) xuất lúc với việc ngƣời cần bảo vệ tài sản Nhân viên gác cửa, cổng khóa đƣợc ngƣời xƣa sử dụng để giới hạn cá nhân đƣợc phép truy cập đến đồ vật có giá trị Việc cần thiết phải điều khiển truy cập đƣợc nhắc lại đề cập đến vấn đề an tồn hệ thống máy tính Vào năm 1879, ngƣời giữ cửa phòng khách tên James Ritty phát minh “Thủ quĩ bị mua chuộc” – “incorruptible cashier”, sau đƣợc biết đến rộng rãi với thuật ngữ đăng ký tiền mặt (cash register) Phát minh Ritty làm giảm vấn đề phổ biến nhân viên ăn cắp tiền, phát minh cho phép nhân viên truy cập đến ngăn kéo đựng tiền giao dịch đƣợc bắt đầu, phải nhập số tiền giao dịch khung nhìn khách hàng Bằng cách ghi lại lƣợng tiền giao dịch theo dõi tổng số tiền, việc đăng ký giúp cho ngƣời chủ biết đƣợc lƣợng tiền ngăn kéo tổng số tiền đƣợc giao dịch ngày Trong giới công nghệ thông tin ngày nay, quyền truy cập đƣợc hiểu theo cách ngƣời dùng đƣợc truy cập đến tài nguyên hệ thống máy tính, theo cách nói thơng thƣờng “Ai đƣợc quyền làm gì” Điều khiển truy cập đƣợc cho yếu tố kĩ thuật an ninh đƣợc sử dụng rộng rãi thực tế Điều khiển truy cập có mặt gần nhƣ tất hệ thống, giữ vai trò kiến trúc tổng quát thách thức việc quản trị tất mức công ty máy tính Từ khía cạnh thƣơng mại, điều khiển truy cập có vai trị vơ quan trọng để để thúc đẩy việc tối ƣu hóa chia sẻ trao đổi tài ngun, nhƣng đóng vai trị quan trọng để vơ hiệu hóa ngƣời dùng, chịu giá thành quản trị lớn, làm lộ làm sai lệch thơng tin có giá trị cách khơng đƣợc phép [27] Điều khiển truy cập có nhiều dạng khác Thêm vào đó, để xác định ngƣời dùng có quyền sử dụng tài nguyên, hệ thống điều khiển truy cập có ràng buộc tài nguyên đƣợc sử dụng Ví dụ, ngƣời dùng có quyền truy cập mạng làm việc Một số tổ chức thiết lập điều khiển phức tạp hơn, ví dụ nhƣ yêu cầu hai đội nhân viên thử thao tác với độ rủi ro cao nhƣ mở cửa hầm phóng tên lửa Định nghĩa mơ hình điều khiển truy cập đƣợc khởi đầu vào năm đầu 1970, chuẩn hóa có hiệu lực vào năm 1980, RBAC xuất vào năm đầu 1990, tiếp tục phát triển Trong - 10 - chƣơng giới thiệu nguồn gốc, lịch sử khái niệm trung tâm điều khiển truy cập, xem xét dạng điều khiển truy cập đƣợc sử dụng ngày nay, giới thiệu khái niệm RBAC tiến an ninh hệ thống, ứng dụng mạng máy tính 1.2 Mục đích thành phần điều khiển truy cập Điều khiển truy cập khía cạnh dễ nhận thấy tồn giải pháp an ninh máy tính Mỗi ngƣời dùng đăng nhập vào hệ thống máy tính nhiều ngƣời dùng, họ phải buộc phải tuân theo điều khiển truy cập Để hiểu rõ mục đích điều khiển truy cập, xem lại rủi ro hệ thống thông tin Các nguy an ninh thơng tin đƣợc nhóm thành ba nhóm lớn nhƣ sau: tính bảo mật, tính tồn vẹn tính sẵn sàng Các nhóm đƣợc mơ tả nhƣ sau: - Tính bảo mật đƣợc biết đến nhƣ việc lƣu giữ thơng tin an tồn mang tính cá nhân Nhóm bao gồm điều gì, từ an ninh quốc gia đến điều khoản mật, thơng tin tài thơng tin an ninh nhƣ mật - Tính tồn vẹn đƣợc biết đến nhƣ khái niệm bảo vệ thông tin từ việc thay đổi không cách chỉnh sửa ngƣời khơng đƣợc phép Ví dụ, tất ngƣời dùng muốn đảm bảo số tài khoản ngân hàng đƣợc sử dụng phần mềm tài khơng đƣợc thay đổi ai, ngƣời dùng ngƣời quản lý an ninh đƣợc cho phép thay đổi mật - Tính sẵn sàng đƣợc biết đến với khái niệm thơng tin sẵn sàng để sử dụng cần đến Các vụ công để làm tải hệ thống máy chủ web vụ cơng vào tính sẵn sàng thơng tin Điều khiển truy cập vấn đề cốt yếu để đảm bảo tính bảo mật tồn vẹn thơng tin Điều kiện việc bảo mật yêu cầu ngƣời đƣợc phép đọc thơng tin, điều kiện tính tồn vẹn ngƣời đƣợc cấp phép thay đổi thơng tin theo cách đƣợc ủy quyền Điều khiển truy cập không tập trung vào việc trì tính sẵn sàng, nhƣng đƣa qui tắc quan trọng: Một kẻ cơng truy cập khơng đƣợc phép đến hệ thống tƣơng tự nhƣ làm cho hệ thống giảm tính sẵn sàng 1.2.1 Ngƣời dùng (Users), chủ thể (Subjects), đối tƣợng (Objects), thao tác (Operations) quyền truy cập (Permissions) Các thuật ngữ phù hợp đƣợc phát triển suốt ba thập kỷ để mô tả mơ hình hệ thống điều khiển truy cập Hầu hết mơ hình điều khiển truy cập đƣợc mơ - 11 - tả cách hình thức cách sử dụng khái niệm ngƣời dùng, chủ thể, đối tƣợng, thao tác quyền truy cập mối quan hệ thực thể Việc hiểu thuật ngữ quan trọng đƣợc sử dụng xuyên suốt tài liệu mô tả điều khiển truy cập an ninh máy tính Thuật ngữ ngƣời dùng (User) đƣợc dùng để nói ngƣời dùng có tƣơng tác với hệ thống máy tính Trong nhiều thiết kế, ngƣời dùng đơn có nhiều tài khoản để đăng nhập, tài khoản hoạt động đồng thời Kỹ thuật cấp phép xác định đƣợc nhiều tài khoản ngƣời dùng Một thể hội thoại ngƣời dùng hệ thống đƣợc gọi phiên làm việc (session) Một tiến trình máy tính hoạt động thay mặt cho ngƣời dùng đƣợc gọi chủ thể (subject) Trong thực tế, tất hành động ngƣời dùng hệ thống máy tính đƣợc thực thơng qua vài chƣơng trình chạy máy tính Một ngƣời dùng có nhiều chủ thể thao tác, ngƣời dùng có tài khoản đăng nhập phiên làm việc Ví dụ, hệ thống thƣ điện tử thao tác tiến trình nền, nạp thƣ điện tử từ máy chủ theo chu kỳ, ngƣời dùng thao tác với trình duyệt web Mỗi chƣơng trình ngƣời dùng chủ thể, truy cập chƣơng trình đƣợc kiểm tra để đảm bảo chúng đƣợc cho phép cho ngƣời dùng gọi chƣơng trình Một đối tƣợng (object) tài nguyên truy cập đƣợc hệ thống máy tính, bao gồm tệp tin, thiết bị ngoại vi nhƣ máy in, sở liệu thực thể nhỏ nhƣ trƣờng riêng biệt ghi sở liệu Đối tƣợng đƣợc xem nhƣ thực thể bị động, thực thể bao gồm nhận thông tin, mơ hình điều khiển truy cập trƣớc xem thực thể bao gồm chƣơng trình, máy in hay thực thể hoạt động khác [1] Một thao tác tiến trình hoạt động đƣợc gọi chủ thể Trong mơ hình điều khiển truy cập trƣớc đây, mơ hình liên quan chặt chẽ đến luồng thơng tin (ví dụ nhƣ: truy cập đọc - ghi), áp dụng thuật ngữ chủ thể đến tất tiến trình chủ động, nhƣng mơ hình RBAC u cầu phân biệt giữ chủ thể phép tốn Ví dụ, ngƣời dùng máy ATM đƣa thẻ nhập mã PIN, chƣơng trình điều khiển xử lý xem ngƣời dùng nhƣ chủ thể, nhƣng chủ thể tạo nhiều phép toán – gửi tiền, rút tiền, truy vấn số dƣ, hay thao tác khác Quyền truy cập (Permissions hay gọi đặc quyền) cho phép để thực số thao tác hệ thống Trong hầu hết tài liệu an ninh máy tính, thuật ngữ - 12 - quyền truy cập đƣợc xem nhƣ kết hợp đối tƣợng phép toán Một thao tác xác định sử dụng hai đối tƣợng khác biểu diễn hai quyền truy cập khác nhau, tƣơng tự nhƣ vậy, hai thao tác khác áp dụng cho đối tƣợng biểu diễn hai quyền truy cập khác Ví dụ, thủ quỹ ngân hàng có quyền ghi nợ ghi có ghi khách hàng, thơng qua giao dịch, kế tốn có quyền ghi nợ ghi có sổ kế tốn, điều củng cố liệu kế toán ngân hàng 1.2.2 Đặc quyền tối thiểu Đặc quyền tối thiểu tốn thực tế có từ lâu đời việc lựa chọn cách gán quyền cho ngƣời dùng cho ngƣời dùng khơng đƣợc có nhiều quyền cần thiết để thực công việc Nguyên tắc đặc quyền tối thiểu ngăn ngừa vấn đề cá nhân có khả thực hành động không cần thiết tiềm ẩn nguy hại nhƣ hiệu ứng phụ đƣợc gán quyền để thực công việc cần thiết Câu hỏi đặt để gắn quyền hệ thống đến tập hợp công việc hay nhiệm vụ phù hợp với qui tắc ngƣời dùng chủ thể đại diện cho ngƣời dùng Đặc quyền tối thiểu mục đích cho nơi cài đặt giới hạn chia sẻ mà đƣợc cung cấp kĩ thuật điều khiển truy cập Việc đảm bảo tuân theo nguyên tắc đặc quyền tối thiểu đƣa đến thách thức lớn việc quản lý, điều yêu cầu phải xác định chức công việc, đặc tả tập quyền cần thiết để thực chức công việc, giới hạn ngƣời dùng đến miền đặc quyền Việc tôn trọng triệt để nguyên tắc đặc quyền tối thiểu yêu cầu cá nhân phải có mức quyền khác thời điểm khác nhau, phụ thuộc vào công việc hay tác vụ đƣợc thực thi Trong thực tế, số môi trƣờng số quyền, giới hạn nghiêm ngặt quyền dẫn đến bất tiện không cần thiết ngƣời dùng hay nơi làm việc cần tốn thêm gánh nặng việc quản lý Tuy nhiên, việc gán dƣ thừa đặc quyền dẫn đến nguy bị lợi dụng để phá vỡ việc bảo vệ, tính tồn vẹn hay tính bảo mật thơng tin Vì cần ngăn chặn việc gán dƣ thừa quyền Có điều quan trọng quyền không quán thời gian đƣợc yêu cầu hiệu công việc 1.3 Lịch sử điều khiển truy cập Mặc dù vấn đề an ninh đƣợc đề cập đến hệ thống máy tính từ năm 1960, nhiên an ninh máy tính thực phát triển nhanh từ năm đầu thập niên 1970 Vào thời điểm Mỹ, có nhiều hệ thống chia sẻ tài nguyên đƣợc đặt nơi dùng chung khu vực phủ, quân đội tổ chức thƣơng mại lớn Vấn đề đƣợc phát triển hệ thống phủ, quân sự, khu vực thƣơng mại (ví dụ nhƣ ứng dụng ATM yêu cầu an ninh cao) ... thống điều khiển truy cập Khi xem xét hệ thống điều khiển truy cập nào, cần xem xét ba khái niệm trừu tƣợng điều khiển: Chính sách điều khiển truy cập, mơ hình điều khiển truy cập kĩ thuật điều khiển. .. kiểm chứng phù hợp việc mô tả luật RBAC việc cài đặt luật ngơn ngữ lập trình cụ thể u cầu mang tính thực tiễn có tính ứng dụng cao Đề tài "Kiểm chứng tuân thủ đặc tả điều khiển truy cập cài đặt" ... HÌNH ĐIỀU KHIỂN TRUY CẬP TRỪU TƢỢNG Chƣơng giới thiệu thành phần hệ thống điều khiển truy cập mơ hình điều khiển truy cập trừu tƣợng tham chiếu nhƣ ngun tắc thiết kế mơ hình điều khiển truy cập