Tải bản đầy đủ (.ppt) (41 trang)

Bài giảng Hệ điều hành: Chương 7 - Đặng Minh Quân

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (171.95 KB, 41 trang )

Hệ điều hành
Chương 7: Bảo vệ và an toàn hệ
thống

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

1


Tổng quan





Mục tiêu của việc bảo vệ
Miền bảo vệ
Ma trận quyền truy xuất
An toàn hệ thống

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

2


Mục tiêu của việc bảo vệ
• Bảo vệ chống lỗi của tiến trình : khi có nhiều
tiến trình cùng hoạt động, lỗi của một tiến
trình j phải được ngăn chặn không cho lan
truyền trên hệ thống làm ảnh hưởng đến các
tiến trình khác.


• Chống sự truy xuất bất hợp lệ : Bảo đảm các
bộ phận tiến trình sử dụng tài nguyên theo
một cách thức hợp lệ được qui định cho nó.

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

3


Miền bảo vệ
• Một hệ thống máy tính được xem như một tập các
đối tượng (objects). Một đối tượng có thể là một bộ
phận phần cứng ( CPU, bộ nhớ, ổ đĩa...) hay một
thực thể phần mềm ( tập tin, chương trình,
semaphore...).
• Hệ điều hành chỉ cho phép các tiến trình được truy
xuất đến các tài ngun mà nó có quyền sử dụng,
hơn nữa tiến trình chỉ được truy xuất đến các tài
nguyên cần thiết trong thời điểm hiện tại để nó hồn
thành tác vụ (ngun lý need-to-know) nhằm hạn
chế các lỗi truy xuất mà tiến trình có thể gây ra
trong hệ thống.
Dang Minh Quan: Institute of IT for Economics-NEU, 2011

4


Miền bảo vệ
• Một hệ thống máy tính được xem như một tập
các đối tượng (objects). Một đối tượng có thể

là một bộ phận phần cứng ( CPU, bộ nhớ, ổ
đĩa...) hay một thực thể phần mềm ( tập tin,
chương trình, semaphore...).
• Các khả năng thao tác trên một đối tượng
được gọi là quyền truy xuất (access right).
• Một miền bảo vệ là một tập các quyền truy
xuất, mỗi quyền truy xuất được định nghĩa bởi
một bộ hai thứ tự <đối tượng, {quyền thao
tác} >.
Dang Minh Quan: Institute of IT for Economics-NEU, 2011

5


Miền bảo vệ
• Mỗi tiến trình trong hệ thống đều hoạt động
trong một miền bảo vệ (protection domain)
nào đó. Một miền bảo vệ sẽ xác định các tài
nguyên ( đối tượng) mà những tiến trình hoạt
động trong miền bảo vệ này có thể sử dụng,
và các thao tác hợp lệ các tiến trình này có
thể thực hiện trên những tài ngun đó.
– Ví dụ : <File F, {read, write}>

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

6


Miền bảo vệ


• Các miền bảo vệ khác nhau có thể giao nhau
một số quyền truy xuất 
• Mối liên kết giữa một tiến trình và một miền
bảo vệ có thể tĩnh hay động

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

7


Miền bảo vệ - Liên kết tĩnh
• Trong suốt thời gian sống của tiến trình, tiến trình
chỉ hoạt động trong một miền bảo vệ
• Ngay từ đầu miền bảo vệ đã phải đặc tả tất cả các
quyền truy xuất qua các giai đoạn cho tiến trình
• ở mỗi giai đoạn tiến trình có thể thao tác trên những
tập tài ngun khác nhau bằng các thao tác khác
nhau
• Điều này có thể khiến cho tiến trình có dư quyền
trong một giai đoạn nào đó, và vi phạm ngun lý
need-to-know.
• Cần phải có khả năng cập nhật nội dung miền bảo
vệ
Dang Minh Quan: Institute of IT for Economics-NEU, 2011

8


Miền bảo vệ - Liên kết động

• Cơ chế này cho phép tiến trình chuyển từ
miền bảo vệ này sang miền bảo vệ khác trong
suốt thời gian sống của nó.
• Để tiếp tục tuân theo nguyên lý need-toknow, thay vì sửa đổi nội dung của miền bảo
vệ, có thể tạo ra các miền bảo vệ mới với nội
dung thay đổi qua từng giai đoạn xử lý của
tiến trình, và chuyển tiến trình sang hoạt
động trong miền bảo vệ phù hợp theo từng
thời điểm.
Dang Minh Quan: Institute of IT for Economics-NEU, 2011

9


Miền bảo vệ
• Một miền bảo vệ có thể được xây dựng cho:
– Một người sử dụng : trong trường hợp này, tập các đối
tượng được phép truy xuất phụ thuộc vào định danh của
người sử dụng, miền bảo vệ được chuyển khi thay đổi
người sử dụng.
– Một tiến trình : trong trường hợp này, tập các đối tượng
được phép truy xuất phụ thuộc vào định danh của tiến
trình, miền bảo vệ được chuyển khi quyền điều khiển
được chuyển sang tiến trình khác.
– Một thủ tục : trong trường hợp này, tập các đối tượng
được phép truy xuất là các biến cục bộ được định nghĩa
bên trong thủ tục, miền bảo vệ được chuyển khi thủ tục
được gọi.
Dang Minh Quan: Institute of IT for Economics-NEU, 2011


10


Ma trận quyền truy xuất
• Các dịng của ma trận biễu diễn các miền bảo
vệ
• Các cộ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ể thao tác trên đối
tượng Oj.

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

11


Ma trận quyền truy xuất
object
domain

F1

D1

đọc

D2


 

D3

 

D4

F2

 

Đọc

 

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

 

Máy in

 

 

đọc

đọc
ghi


F3

in

Xử lý

 

đọc
ghi

 

12


Ma trận quyền truy xuất
• Có thể kiểm sốt việc chuyển đổi giữa các
miền bảo vệ nếu quan niệm miền bảo vệ cũng
là một đối tượng trong hệ thống, và bổ sung
các cột mơ tả cho nó trong ma trận quyền
truy xuất.
• Khi đó tiến trình được phép chuyển từ miền
bảo vệ Di sang miền bảo vệ Dj nếu phần tử
access(i,j) chứa đựng quyền « chuyển  »
( switch).
Dang Minh Quan: Institute of IT for Economics-NEU, 2011

13



Ma trận quyền truy xuất
object
domain

F1

D1

đọc

D2

 

D3

 

D4

F2

 

 

 


Máy in

đọc

 

 

đọc
đọc
ghi

F3

in

D1

D2

D3

D4

 

chuyển

 


 

 

 

chuyển

chuyển

xử lý

 

 

 

 

 

đọc
ghi

 

chuyển

 


 

 

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

14


Ma trận quyền truy xuất
• Có thể kiểm sốt việc sửa đổi nội dung ma
trận (thay đổi các quyền truy xuất trong một
miền bảo vệ) nếu quan niệm bản thân ma trận
cũng là một đối tượng.
• Các thao tác sửa đổi nội dung ma trận được
phép thực hiện bao gồm : sao chép quyền
( copy), chuyển quyền ( transfer), quyền sở
hữu (owner), và quyền kiểm soát (control)

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

15


Ma trận quyền truy xuất
• Copy: nếu một quyền truy xuất R trong
access[i,j] được đánh dấu là R* thì có thể sao
chép nó sang một phần tử access[k,j] khác
( mở rộng quyền truy xuất R trên cùng đối

tượng Oj nhưng trong miền bảo vệ Dk ).
• Transfer : nếu một quyền truy xuất R trong
access[i,j] được đánh dấu là R+ thì có thể
chuyển nó sang một phần tử access[k,j] khác (
chuyển quyền truy xuất R+ trên đối tượng Oj
sang miền bảo vệ Dk ).
Dang Minh Quan: Institute of IT for Economics-NEU, 2011

16


Ma trận quyền truy xuất
object
domain

F1

D1

xử lý

D2

xử lý

D3

xử lý

 

F2

F3

 

Đọc*

 

object
domain

F1

 
F2

ghi+

D1

xử lý

xử lý

D2

xử lý


Đọc*

xử lý

D3

xử lý

đọc

ghi+

 

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

 

F3

 

17


Ma trận quyền truy xuất
• Owner : nếu access[i,j] chứa quyền truy xuất
owner thì tiến trình hoạt động trong miền bảo
vệ Di có thể thêm hoặc xóa các quyền truy
xuất trong bất kỳ phần tử nào trên cột j (có

quyền thêm hay bớt các quyền truy xuất trên
đối tượng Oj trong những miền bảo vệ khác).

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

18


Ma trận quyền truy xuất
object
domain

F1

D1

D2

D3

owner
xử lý

 
F2

F3

 


 

đọc*
owner

xử lý

 

object
domain

F1

Ghi

D1

đọc*
owner
ghi*

D2

 

owner
đọc*
ghi*


D3

 

ghi

 

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

owner
xử lý

 
F2

 

F3

 

đọc*
owner
ghi*

 

19



Ma trận quyền truy xuất
• Control : nếu access[i,j] chứa quyền truy
xuất control thì tiến trình hoạt động trong
miền bảo vệ Di có thể xóa bất kỳ quyền truy
xuất nào trong các phần tử trên dịng j (có
quyền bỏ bớt các quyền truy xuất trong miền
bảo vệ Dj).

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

20


Ma trận quyền truy xuất
object
domain

F1

D1

đọc

D2

 

D3


 

D4

đọc

D2

 

D3

 

D4

đọc

 

F2

xử lý

 

đọc
ghi

 


D1

chuyển

in

 

D4
 

 

 

 

 

 

 

 

 

chuyển


 

D3

 

Máy in

 

D2

 
in

đọc

đọc
 

 

F3

 
 

ghi

Máy in


 
đọc

F1

D1

F3

 
 

đọc
ghi

object
domain

F2

chuyển

D1

D2

chuyển

D3


D4

 

chuyển

 

 

 

 

chuyển

control
chuyển

xử lý

 

 

 

 


 

ghi

 

chuyển

 

 

 

Dang Minh Quan: Institute of IT for Economics-NEU, 2011

21


Vấn đề an tồn
• Xâm phạm tính bí mật. Kiểu xâm phạm này bao
gồm sự đọc không hợp pháp dữ liệu hay sự ăn trộm
thơng tin.
• Xâm phạm sự tồn vẹn. Sự xâm phạm này bao gồm
sự cải biến không hợp pháp dữ liệu.
• Xâm phạm tính sẵn sàng. Sự xâm phạm này bao
gồm sự phá hủy không hợp pháp dữ liệu.
• Ăn trộm dịch vụ. Sự xâm phạm này bao gồm sự sử
dụng khơng hợp pháp những tài ngun.
• Từ chối dịch vụ. Sự xâm phạm này bao gồm ngăn

ngừa sử dụng hợp pháp của hệ thống.
Dang Minh Quan: Institute of IT for Economics-NEU, 2011

22


Chương trình đe dọa
• Con ngựa thành Tơ-roa
– Phần mềm gián điệp đơi khi đi theo một chương
trình mà người sử dụng lựa chọn để cài đặt.
Thường xuyên nhất, nó đi cùng với phần mềm
miễn phí hay chương trình phần mềm dùng
chung, nhưng đơi khi nó được đi cùng với phần
mềm thương mại. Mục đích của phần mềm gián
điệp là tải xuống những quảng cáo để trình bày
trên hệ thống của người sử dụng, tạo ra khi đến
thăm những chỗ nhất định, hay bắt thông tin từ
hệ thống của người sử dụng và truyền đến một
chỗ trung tâm.
Dang Minh Quan: Institute of IT for Economics-NEU, 2011

23


Chương trình đe dọa
• Cửa bẫy: người thiết kế của một chương trình
hay hệ thống có thể đã để lại một lỗ hổng
trong phần mềm mà chỉ ơng ta có năng lực sử
dụng.


Dang Minh Quan: Institute of IT for Economics-NEU, 2011

24


Chương trình đe dọa
• Bom lơgic: Xem xét một chương trình mà nó kích
hoạt tính năng mất an ninh dưới những hồn cảnh
nhất định. Thật khó để phát hiện vì ở dưới những
thao tác bình thường, ở đó khơng có lỗ hổng an
ninh. Tuy nhiên, khi một tập hợp cài đặt sẵn những
tham số xuất hiện, lỗ hổng an toàn được tạo ra. Kịch
bản này được biết đến như một bom lơgic. Một lập
trình viên, chẳng hạn, có thể đã viết viết mã để phát
hiện liệu mình vẫn cịn được sử dụng; nếu sự kiểm
tra kia thất bại, một tiến trình có thể được sinh ra
cho phép sự truy nhập từ xa, hay một đoạn mã có
thể được chạy nhằm gây ra thiệt hại cho hệ thống.
Dang Minh Quan: Institute of IT for Economics-NEU, 2011

25


×