Ví dụ: một trường học chia người dùng thành cácnhóm gán sẵn quyền truy nhập vào các phần trong hệ thống: Nhóm Quản lý được quyền truy nhập vào tất cả cácthông tin trong hệ thống; N
Trang 1AN TOÀN HỆ ĐIỀU HÀNH Câu 1: Anh/ Chị hãy mô tả về mô hình điều khiển truy nhập theo vai trò trong hệ điều hành? 3 Câu 2: Anh/ Chị hãy nêu hướng tiếp cận dựa vào nhân khi thiết kế hệ điều hành an toàn? 4 Câu 3: Anh/ Chị hãy nêu các yêu cầu khi đánh giá bộ
xử lý truyền thông an toàn nhân (SCOMP)? 5 Câu 4: Anh/ Chị hãy trình bày những hiểu biết của mình về lỗ hổng bảo mật GHOST trong hệ điều hành Linux/Unix? 7 Câu 5: Anh/ Chị hãy trình bày các chức năng chính của hệ điều hành? 8 Câu 6: Anh/ Chị hãy mô tả về mô hình điều khiển truy nhập dựa theo luật trong hệ điều hành? 9 Câu 7: Anh/ Chị hãy nêu các chức năng hỗ trợ và giám sát của nhân an toàn trong hệ điều hành? 10 Câu 9: Anh/ Chị hãy trình bày 3 biện pháp đảm bảo
an toàn trong hệ thống Linux/Unix? 11 Câu 10: Anh/ Chị hãy trình bày khái niệm về hệ điều hành? Hãy trình bày khái niệm về hệ điều hành tin cậy? 14
Trang 2Câu 11: Anh/ Chị hãy trình bày 3 biện pháp đánh giá mức độ an toàn hệ điều hành 14 Câu 12: Anh/ Chị hãy trình bày về ma trận điều khiển truy cập trong an toàn hệ điều hành? 17
13 Kiến trúc SCOMP 19 Câu 14: Anh/ Chị hãy trình bày những hiểu biết của mình về lỗ hổng bảo mật ShellShock trong hệ điều hành Linux/Unix? 22 Câu 15: Anh/ Chị hãy trình bày về các nguyên tắc an toàn hệ điều hành 24 Câu 16: Anh/ Chị hãy trình bày về phần cứng của bộ
xử lý truyền thông an toàn nhân (SCOMP)? Hãy vẽ
sơ đồ minh họa phần cứng đó? 26
17 Mô hình bảo mật đa mức Bell La Padula 28
18 Lỗ hổng bảo mật trong windows 30
Trang 3Câu 1: Anh/ Chị hãy mô tả về mô hình điều khiển truy nhập theo vai trò trong hệ điều hành?
Điều khiển truy nhập dựa trên vai trò có thể được
áp dụng cho một nhóm người dùng hoặc từng người dùng riêng lẻ
Quyền truy nhập được tập hợp thành các nhóm
“vai trò” với các mức quyền truy nhập khác nhau
Ví dụ: một trường học chia người dùng thành cácnhóm gán sẵn quyền truy nhập vào các phần trong hệ thống:
Nhóm Quản lý được quyền truy nhập vào tất cả cácthông tin trong hệ thống;
Nhóm Giáo viên được truy nhập vào CSDL các môn học, bài báo khoa học, cập nhật điểm các lớp phụ trách;
Nhóm Sinh viên chỉ được quyền xem nội dung các môn học, tải tài liệu học tập và xem điểm của
mình
Trang 4 Liên kết giữa người dùng và vai trò:
Người dùng được cấp “thẻ thành viên” của các nhóm “vai trò” trên cơ sở năng lực và vai trò, cũng như trách nhiệm của họ trong một tổ chức
Trong nhóm “vai trò”, người dùng có vừa đủ quyền để thực hiện các thao tác cần thiết cho công việc được giao
Liên kết giữa người dùng và vai trò có thể được tạo lập và huỷ bỏ dễ dàng
Quản lý phân cấp vai trò: các vai trò được tổ chức thành một cây theo mô hình phân cấp tự nhiên của các công ty/tổ chức
Trang 5Câu 2: Anh/ Chị hãy nêu hướng tiếp cận dựa vào nhân khi thiết kế hệ điều hành an toàn?
TL:
Hướng tiếp cận: cố gắng làm giảm kích cỡ và độ
phức tạp của các cơ chế an toàn bắng cách nhóm các chứcnăng an toàn vào trong nhân an toàn Khi đó nhân an toàn
sẽ cung cấp 1 tập các chức năng an toàn của hệ điều hành cho hệ thống
- Phát triển nhân an toàn
- Định nghĩa HĐH căn cứ vào nhân
- Bộ giám sát tham chiếu trong nhân kiểm soát tất cả mọi thao tác truy nhập và thực hiện tất cả các chức năng liên quan đến an toàn
- Nhân an toàn phải thỏa mãn:
+ Tính đầy đủ
+ Tính cách ly
+ Khả năng có thể kiểm tra
- Kiến trúc 1 HĐH dựa vào nhân gồm:
+ Nhân an toàn
+ Giám sát viên
+ Các ứng dụng
Trang 6Câu 3: Anh/ Chị hãy nêu các yêu cầu khi đánh giá bộ
xử lý truyền thông an toàn nhân (SCOMP)?
- Làm sao để biết được rằng giao diện giám sát thamchiếu có cung cấp Complete Mediation hay không?
- Tính đúng đắn của cơ sở tính toán đáng tin cậy của
hệ thống được lấy cơ sở từ đâu?
- Các mục tiêu an ninh của hệ thống có thực sự đượcthực thi?
Trang 7Câu 4: Anh/ Chị hãy trình bày những hiểu biết của mình về lỗ hổng bảo mật GHOST trong hệ điều hành Linux/Unix?
Glibc là một thư viện chuẩn của C được sử dụng rộngrãi bởi các hệ điều hành tựa Linux Ghost là một lỗ hổng bảo mật của thư viện glibc Lỗ hổng này cho phép kẻ tấn công kiểm soát từ xa hoàn toàn hệ thống đang bị lỗi bằng cách khai thác lỗ hổng tràn bộ đệm trong chức năng
GetHOST của glibc
GHOST cho phép kẻ tấn công có thể thực thi code trên hệ thống bị lỗi với quyền của người dùng hiện tại Lỗhổng có thể khai thác trên cả phiên bản hệ điều hành 32 bits và 64 bits Lỗ hổng được mô tả trong CVE-2015-
0235 và được đặt tên là GHOST vì sự liên quan của nó tớihàm _gethostbyname()
Trang 8tấn công hệ thống Khi người dùng chạy ứng dụng, mã khai thác sẽ chạy và thực thi theo đúng quyền của người dùng đang sử dụng chúng.
Kẻ tấn công có thể khai thác lỗ hổng bảo mật này để chiếm quyền điều khiển các máy tính chạy Linux, có thể sánh ngang với một số lỗi như Heartbleed hay Shellshock
về mức độ nghiêm trọng
Lỗ hổng Ghost có thể khai thác trên các máy chủ
chạy hệ điều hành Linux có sử dụng thư viện glibc từ các phiên bản 2.18 trở về trước
Để vá lỗi Ghost bạn chỉ cần update glibc lên bản mới nhất và restart lại các dịch vụ ảnh hưởng
Câu 5: Anh/ Chị hãy trình bày các chức năng chính của hệ điều hành?
• Đa nhiệm, chia sẻ
• Quản lý tài nguyên
• Điều khiển các chuỗi hoạt động
• Cung cấp giao diện người dùng
• Quản trị hoạt động người dùng và các tài khoản của
họ
• Chạy các chương trình và tiện ích phần mềm
• Thi hành các biện pháp an toàn
Trang 9• Lập lịch công việc
• Cung cấp tiện ích cấu hình hệ thống và phần cứng
Câu 6: Anh/ Chị hãy mô tả về mô hình điều khiển truy nhập dựa theo luật trong hệ điều hành?
Điều khiển truy nhập dựa trên luật cho phép người dùng truy nhập vào hệ thống vào thông tin dựa trên các luật (rules) đã định nghĩa trước
Các luật có thể được thiết lập để hệ thống cho phép truy nhập đến các tài nguyên của mình cho người dùng thuộc tên miền, một mạng hay một dải địa chỉ IP
Firewalls/Proxies là ví dụ điển hình về điều khiển truy nhập dựa trên luật:
- Dựa trên địa chỉ IP nguồn và đích của các gói tin
- Dựa trên phần mở rộng các files để lọc các mã độc hại
- Dựa trên địa chỉ IP hoặc các tên miền để lọc/chặn các website bị cấm
- Dựa trên tập các từ khóa để lọc các nội dung bị cấm
Trang 10Câu 7: Anh/ Chị hãy nêu các chức năng hỗ trợ và giám sát của nhân an toàn trong hệ điều hành?
Trả lời:
Nhân an toàn là phần mã cốt yếu nhất của các chươngtrình hệ thống Nhân an toàn cung cấp các hàm nguyênthuỷ (Primitive Functions) cho xây dựng các trình tiện ích(Utilities), Services của OS Nhân an toàn bao gồm các cơchế phần cứng và phần mềm có cơ sở tính toán đáng tincậy, cùng những giám sát tham chiếu chống giả mạo,kiểm tra quyền truy cập và có khả năng kiểm chứng
Nhân an toàn là phần trung tâm của hệ thống:
- Hoạt động chính xác, tin cậy
- Thực hiện các thủ tục an toàn cơ bản để kiểm soátcác truy nhập tới các tài nguyên hệ thống
- Là cơ chế khoanh vùng gồm: Hardware và Softwarenhằm kiểm soát sự truy nhập của người dùng để lấythông tin thường trú trong hệ thống hoặc kết nối với
hệ thống
- Cung cấp cơ chế điều khiển truy nhập
- Không cho các chương trình người dùng cài đặtnhững hàm truy xuất cấp thấp
- Tạo, xóa, đọc, ghi file Sửa thuôc tính file
Trang 11- Phát hiện lỗi trong chương trình của người dùng vàcác thiết bị phần cứng.
Ngoài ra, nhân an toàn còn hỗ trợ OS quản lí các thành phần:
- Kiểm soát Files
- Phân chia thời gian sử dụng CPU cho các chương trình
- Kiểm soát thiết bị: bàn phím, chuột, màn hình, ổ
cứng…
- Kiểm soát bộ nhớ: Cấp bộ nhớ cho các chương trình đang chạy
- Quản lý các tiến trình
Câu 9: Anh/ Chị hãy trình bày 3 biện pháp đảm bảo
an toàn trong hệ thống Linux/Unix?
Trả lời:
Đảm bảo an toàn trong hệ thông Linux/Unix có 3 biện pháp sau:
- Đảm bảo an toàn theo định kỳ
- Đảm bảo an toàn các quyền của người dùng
- Đảm bảo an toàn truy nhập từ xa
Đảm bảo an toàn theo định kỳ:
Quản lý bản vá
Trang 12- Sử dụng cron với crontab –e (có thể dùng cho cập nhật)
+ Với Debian, Ubuntu: apt-get
+ Red Hat, Fedora, CentOS: up2date
+ SuSE: yast
+ Mac OS X: ports
- Sử dụng crontab:
-e : Edit hay tạo file crontab
-l : Xem file crontab
-r : Xóa fole crontab
Cấu hình dịch vụ và ứng dụng:
- Cấu hình toàn bộ hệ thống tại /etc hoặc trong cây chương trình
- Cấu hình cục bộ trong các ~/.<dir>
+ ~ là alias cho $HOME, là thư mục home của ngườidùng, tương đương với C:\Users\<username>
+ Thông thường trong /home/<username>/.<dir>
Ưu điểm: Có thể sử dụng chương trình (như Perl) để tính hash cho các file cấu hình và đảm bảo tính toàn vẹn sau này
Đảm bảo an toàn các quyền của người dùng:
Quyền của người dùng/nhóm
- Cả file lẫn process (/proc), memory (/dev), boot (/boot), v.v
Trang 13 Lệnh
- chmod: đổi chế độ file
- getfacl/setfacl: lấy/thiết lập danh sách điều khiển truy nhập file
- chown: đổi người sở hữu file
- chgrp: đổi nhóm file
- groups <username>: bằng với cat /etc/groups | grep
<username>
Access Control List
- setfacl -m u:lisa:r file
Đảm bảo an toàn truy cập từ xa:
- Cấu hình tường lửa để chặn truy cập từ xa
- Lệnh:
+ /etc/hosts.allow và /etc/hosts.deny file
+ Iptables: lọc theo giao thức, nguồn/đích, luật
- Nên ghi log vào /dev/log
- chroot jail: tạm thời thiết lập một thư mục root (ví dụ:services) trong trường hợp bị chiếm thì cũng khôngtruy cập được tới hệ thống (lời gọi hệ thống: chroot)
Các công cụ kiểm tra an toàn Linux/Unix:
- Nessus: quét và kiểm tra các lỗ hổng
- Tripwire: tạo và kiểm tra sự toàn vẹn của các file
(qua so sánh MD5)
Trang 14- Nmap: kiểm tra các dịch vụ mạng của hệ thống
Câu 10: Anh/ Chị hãy trình bày khái niệm về hệ điều hành? Hãy trình bày khái niệm về hệ điều hành tin cậy?
- Hệ điều hành: là tập hợp các chương trình cho phépngười sử dụng vận hành phần cứng máy tính Gồm balớp:
Lớp bên trong, phần cứng máy tính
Lớp giữa, hệ điều hành
Lớp ngoài, các phần mềm khác
- hệ điều hành tin cậy: 1 số khái niệm về HĐH tin cậy:
• Nhân: là phần trong HĐH thực hiện các chức năng mức thấp nhất
• Nhân an toàn: có trách nhiệm đảm bảo các cơ chế an toàn cho toàn bộ HĐH
• Bộ giám sát tham chiếu: là một phần trong nhân an toàn có nhiệm vụ kiểm soát truy cập tới các đối tượng
• Khối cơ sở tính toán tin cậy (TCB): là tất cả mọi thứ trong HĐH tin cậy cần phải thực thi chính sách an toàn
Trang 15Câu 11: Anh/ Chị hãy trình bày 3 biện pháp đánh giá mức độ an toàn hệ điều hành.
- Kiểm tra bảo mật:
• Kiểm tra an toàn là một đánh giá có hệ thống về sự
an toàn của hệ thống thông tin bằng cách đo mức độ phù hợp với một tập các tiêu chí đã xác lập trước
• Bao gồm: đánh giá các cấu hình phần cứng/mềm, cácbiện pháp đo về an toàn vật lý, các tiến trình xử lý dữliệu, và các thực hiện của người dùng dựa trên một danh sách kiểm tra các chính sách và thủ tục chuẩn
• Kiểm tra an toàn đảm bảo rằng tổ chức có và đã triển khai các chính sách an toàn thông tin chuẩn
• Công cụ: SCM trong Windows
- Đánh giá lỗ hổng:
• Sử dụng các công cụ quét hệ thống để tìm điểm yếu
an toàn thông tin
• Nhận dạng các hệ điều hành và các ứng dụng hệ
thống đi kèm
• Phát hiện các sai sót trong cấu hình hệ thống
• Công cụ: Nessus, Retina
- Thử nghiệm xâm nhập:
Trang 16• Mô phỏng các phương pháp kẻ xâm nhập sử dụng để đạt được quyền truy cập trái phép vào hệ thống mạng của một tổ chức và sau đó thỏa hiệp chúng
• Trong bối cảnh thử nghiệm thâm nhập, các thử
nghiệm được giới hạn bởi nguồn tài nguyên - đó là thời gian, nguồn lực có tay nghề cao, và truy cập vào thiết bị - như đã nêu trong hợp đồng thử nghiệm thâmnhập
• Hầu hết các kẻ tấn công đều theo một cách thức
chung để thâm nhập vào hệ thống
• Thâm nhập thử nghiệm không được hoàn thành một cách chuyên nghiệp có thể dẫn đến mất mát các dịch
vụ và làm gián đoạn kinh doanh
• Thâm nhập thử nghiệm đánh giá toàn bộ mô hình bảomật của tổ chức
• Việc này cho thấy những hậu quả tiềm tàng khi một
Trang 17ra thiệt hại cụ thểnếu lỗ hổng bịkhai thác thànhcông
đánh giá an toànbao gồm cả haiphương phápkiểm tra an toàn
và đánh giá lỗhổng Nó thể hiệnliệu một lỗ hổngtrong hệ thống cóthể bị kẻ tấn côngkhai thác thànhcông hay không
Câu 12: Anh/ Chị hãy trình bày về ma trận điều khiển truy cập trong an toàn hệ điều hành?
- Ma trận điều khiển truy nhập (Access matrix) là mộtphương pháp mô tả điều khiển truy
cập thông qua ma trận 2 chiều gồm subject, object và cácquyền truy nhập
Các dòng của ma trận biễu diễn các miền bảo vệ và cáccột tương ứng với các đối tượng trong hệ thống Phần tửacess[i,j] của ma trận xác định các quyền truy xuất màmột tiến trình hoạt động trong miền bảo vệ Di có thể thaotác trên đối tượng Oj
Trang 18• Đối tượng/Khách thể (Objects) là các thực thể cần bảo vệ Objects có thể là các files, các tiến trình
Các đối tượng: O1, O2, O3
Các quyền: r(read), w(write), x(execute) và o(own)
Cơ chế bảo vệ được cung cấp khi ma trận quyền truy xuất được cài đặt ( với đầy đủ các thuộc tính ngữ nghĩa đả mô
tả trên lý thuyết), lúc này người sử dụng có thể áp dụng các chiến lược bảo vệ bằng cách đặc tả nội dung các phần
tử tương ứng trong ma trận _ xác định các quyền truy xuấtứng với từng miền bảo vệ , và cuối cùng, hệ điều hành sẽ quyết định cho phép tiến trình hoạt động trong miền bảo
vệ thích hợp
Trang 1913 Kiến trúc SCOMP
Hệ tính toán tin cậy SCOMP bao gồm 3 thành phần chạy trong vòng 0,1 và 2
STOP (SCOMP Trusted Operating System) bao gồm:
- Một nhân an ninh chạy trong vòng 0 (Được bảo vệ nhất, sở hữu đặc quyền nhất)
- Các phần mềm đáng tin cậy trong vòng 1
- Các hàm tin cậy của SCOMP Kernel Interface
Package (SKIP) chạy trong vòng 2
Các ứng dụng truy cập vào các nguồn tài nguyên được bảo vệ bởi cơ sở đáng tin cậy SCOMP sử dụng thư viện SKIP (SCOMP Kernel Interface Package) chạy trong
Trang 20không gian địa chỉ của ứng dụng (Vòng 3 – Vòng ít bảo
Nhân an toàn SCOMP làm trung gian truy cập tới tất cả nguồn tài nguyên được bảo vệ sử dụng một chính sách MLS
- Cách ly / Chống giả mạo được cung cấp bởi cơ chế vòng
- Các vòng và chuyển tiếp được thực hiện trong phần cứng
Khi một tiến trình ứng dụng cần truy cập đến một nguồn tài nguyên được bảo vệ (ví dụ một bộ nhớ hoặc đoạn vào ra), nó phải yêu cầu nhân an ninh cho một mô tả phần cứng đủ để truy cập vào tài nguyên
Nhân an ninh xem xét quá trình có thể truy cập tài nguyênhay không, nếu được phép, nó sẽ xây dựng một mô tả phần cứng để truy cập tài nguyên này Nhân an toàn sẽ
Trang 21lưu trữ mô tả phần cứng đó và sẽ gửi tham chiếu tới mô tả
đó cho tiến trình trong lần sử dụng tiếp theo
1 mô tả phần cứng của SCOMP bao gồm 1 đối tượng
tham chiếu và 1 quyền truy nhập được cấp cho tiến trình
(Hardware descriptor: là một đối tượng được sinh ra khi
có yêu cầu truy cập đến hệ thống tài nguyên thông qua nhân an toàn theo tiêu chuẩn an ninh MLS Một
“hardware descriptor” bao gồm 2 thành phần là đối
tượng tài nguyên muốn tham chiếu đến và quyền truy cập được cấp đến tài nguyên đó Nhân an toàn lưu trữ các
“hardware descriptor” cho quá trình sử dụng về sau)
Ngay từ lần đầu tiên phát triển tiến trình của hệ điều hành,việc xác minh rằng mô hình an ninh SCOMP và được cài đặt tuân theo chính sách MLS là nhiệm vụ hàng đầu
Phần mềm tin cậy của SCOMP được xác nhận sử dụng hai công nghệ:
- Phương pháp phát triển phân cấp của SRI được sử dụng để xác minh rằng 1 mô hình chính thức của đặc điểm kỹ thuật của nhân an toàn, có tên gọi là “Formaltop-level specification” (FTLS), thực thi các chính sách của MLS
- Phần mềm tin cậy bên ngoài nhân được xác nhận sử dụng 1 đặc điểm kỹ thuật về thủ tục áp dụng phương pháp Gyspy