Sau khi sinh ra policy cho ECommerce, chúng ta tiến hành phân tích file
ECommerce.te. Đầu tiên là lọc ra các allow rule, sau đó áp dụng RMP để tìm ra các role (tập các permission).
Kết quả của quá trình tìm ra các role: File new_ecommerce.te:
allow ecommerce_shipping_t ecommerce_pipeline_t:file r0; allow ecommerce_shipping_t ecommerce_data_t:dir r1; allow ecommerce_esales_t ecommerce_pipeline_t:file r2;
allow ecommerce_shipping_t ecommerce_shipping_exec_t:file r0; allow ecommerce_acct_rcv_t ecommerce_acct_rcv_exec_t:file r0; allow ecommerce_acct_rcv_t ecommerce_data_t:dir r1;
allow ecommerce_esales_t ecommerce_esales_exec_t:file r0; allow ecommerce_acct_rcv_t ecommerce_pipeline_t:file r0; allow ecommerce_acct_rcv_t ecommerce_pipeline_t:file r2; File role.txt:
r0: { getattr read }; r1: search;
r2: write;
Vì trong file obj_perm_sets.spt không tồn tại tập các permission nào có giá trị bằng r0, r1 hay r2 nên file explain_ecommerce.te là:
allow ecommerce_shipping_t ecommerce_pipeline_t:file { getattr read }; allow ecommerce_shipping_t ecommerce_data_t:dir search;
allow ecommerce_esales_t ecommerce_pipeline_t:file ;
allow ecommerce_shipping_t ecommerce_shipping_exec_t:file { getattr read };
allow ecommerce_acct_rcv_t ecommerce_acct_rcv_exec_t:file { getattr read };
allow ecommerce_acct_rcv_t ecommerce_data_t:dir search;
allow ecommerce_esales_t ecommerce_esales_exec_t:file { getattr read }; allow ecommerce_acct_rcv_t ecommerce_pipeline_t:file { getattr read }; allow ecommerce_acct_rcv_t ecommerce_pipeline_t:file write;
Để kiểm chứng việc áp dụng RMP, chúng ta sử dụng đầu vào là file reference policy của mysql ( file /usr/src/redhat/SOURCES/serefpolicy- 2.4.6/policy/modules/services/mysql.te).
Kết quả sau khi chạy: File explain_mysql.te
allow mysqld_t self:unix_stream_socket create_stream_socket_perms; allow mysqld_t self:tcp_socket create_stream_socket_perms;
allow mysqld_t self:udp_socket create_socket_perms; allow mysqld_t mysqld_db_t:dir rw_dir_perms; allow mysqld_t mysqld_db_t:dir create_lnk_perms; allow mysqld_t mysqld_db_t:dir create_dir_perms; allow mysqld_t mysqld_db_t:dir r_dir_perms;
allow mysqld_t mysqld_db_t:file manage_file_perms; allow mysqld_t mysqld_db_t:file create_lnk_perms; allow mysqld_t mysqld_db_t:lnk_file create_lnk_perms; allow mysqld_t mysqld_etc_t:dir r_dir_perms;
allow mysqld_t mysqld_log_t:file manage_file_perms; allow mysqld_t mysqld_log_t:file create_lnk_perms; allow mysqld_t mysqld_tmp_t:dir rw_dir_perms; allow mysqld_t mysqld_tmp_t:dir create_lnk_perms; allow mysqld_t mysqld_tmp_t:dir create_dir_perms; allow mysqld_t mysqld_tmp_t:dir r_dir_perms;
allow mysqld_t mysqld_tmp_t:file manage_file_perms; allow mysqld_t mysqld_tmp_t:file create_lnk_perms; allow mysqld_t mysqld_var_run_t:dir rw_dir_perms; allow mysqld_t mysqld_var_run_t:dir r_dir_perms;
allow mysqld_t mysqld_var_run_t:sock_file manage_file_perms; allow mysqld_t mysqld_var_run_t:sock_file create_lnk_perms; allow mysqld_t mysqld_var_run_t:file manage_file_perms; allow mysqld_t mysqld_var_run_t:file create_lnk_perms;
Như vậy, các permission trong các câu lệnh allow đã được thay thế bằng tên của tập permission tương ứng.
KẾT LUẬN
SELinux cung cấp chế độ điều khiển truy cập rất linh hoạt và bảo mật. Để đạt được mục tiêu đó, các chính sách của SELinux phải được viết rõ ràng và cụ thể. Mỗi ứng dụng sẽ có chính sách riêng quy định việc truy cập. Việc này có thể gây khó khăn với những người mới làm quen với SELinux khi đưa ứng dụng của họ vào hệ thống. Phần lớn các chính sách được viết bởi chuyên gia có kinh nghiệm với SELinux.
Chúng tôi đã sinh ra được SELinux policy cho ứng dụng mới và áp dụng bài toán RMP để giúp người quản trị hiểu rõ về policy đó hơn mà không cần có kiến thức chuyên sâu về SELinux. Qua đó thực hiện được mục tiêu mà khóa luận đã đề ra.
Ngoài ra luận văn đã thực hiện quá trình xây dựng, triển khai và thực hiện quy trình kiểm chứng những lý thuyết dựa trên ý tưởng và phương án đề xuất của nhóm tác giả trường Đại học Keio (Nhật Bản).
Luận văn cũng đã thực hiện được mục tiêu đề ra là làm giảm số lượng chính sách bảo mật cần phải viết mà vẫn đảm bảo được tính năng bảo mật nâng cao mà SELinux cung cấp cho hệ điều hành bảo mật.
Như vậy luận văn đã góp phần vào việc đơn giản hóa chính sách bảo mật vốn được coi là vô cùng đồ sộ, hiệu quả của phương án là đáng kể. Tuy nhiên, chính sách bảo mật vẫn còn khá lớn, gây khó khăn không nhỏ cho người quản trị hệ thống. Vì vậy, cần có thêm thời gian để đầu tư nghiên cứu nhằm tìm ra những phương án giúp người quản trị và tiến tới cả người dùng cũng cảm thấy dễ dàng hơn trong việc sử dụng SELinux trong tương lai.
TÀI LIỆU THAM KHẢO Tiếng Việt:
[1] Hoàng Ngọc Diêu, Biên dịch nhân Linux
[2] Nguyễn Thúc Hải (1997), Mạng máy tính và các hệ thống mở, NXB Giáo dục.
[3] Trần Văn Thành, Quản trị Windows Sẻver 2003, Đại học Quốc gia Thành phố Hồ Chí Minh
Tiếng Anh:
[4] MCSE Training Kit – Microsoft Windows 2000 Server / Microsoft Corporation, Microsoft Press, 2000.
[5] MCSE Training Kit – Networking Essentials Plus, 3rd ed. Microsoft press, 1999.
[6] LPI (2006). Study Guide for GNU/Linux System Administration (101, 102, 201, 202).
[7] RedHat (2006). RedHat Certificate Engineer study book. [8] Red Hat Certificate Engineer, version 6.0, 2010
[9] Frank Mayer, Karl MacMillan, David Caplan, SELinux by Example: Using Security Enhanced Linux
[10] Peter Jay Salzman, Michael Burian, Ori Pomerantz, The Linux Kernel Module Programming Guide. 2007-05-18 ver 2.6.4
[11] Toshihiro Yokoyama, Miyuki Hanaoka, Makoto Shimamura, and Kenji Kono in Japan, Reducing Security Policy size for Internet Servers in Secure Operating System, department of information and Computer Science, Keio University 3-14-1 Hiyoshi, Kohoku-ku, Yokohama, Japan
[12] David R. Harris, Brian T. Sniffen and John D. Ramsdell, ―Guided Policy Generation for Application Authors‖, 2008.
[13] Jaideep Vaidya, Vijayalakshmi Atluri and Qi Guo, ―The Role Mining Problem: Finding a Minimal Descriptive Set of Roles‖, 2007.
[14] Floris Geerts, Bart Goethals, and Taneli Mielikäinen, ―Tiling Databases‖ in
Website tham khảo: [15] http://hedieuhanh.forumvi.net/t1911-topic [16] http://www.tldp.org [17] http://www.redhat.com [18] http://www.nsa.gov/research/selinux/index.shtml [19] http://docs.fedoraproject.org/en-US/Fedora/13/html/Security- Enhanced_Linux [20] http://en.wikipedia.org/wiki/ [21] http://docs.redhat.com/docs/en- US/Red_Hat_Enterprise_Linux/4/html/SELinux_Guide [22] http://wiki.centos.org/HowTos/SELinux [23] http://www.google.com.vn/ [24] http://polgen.sourceforge.net/polgen.html [25] http://linux.die.net/man