1. Trang chủ
  2. » Công Nghệ Thông Tin

Các cơ chế an toàn cơ bản về cơ sở dữ liệu

131 556 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 131
Dung lượng 488,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tài liệu này dành cho sinh viên, giáo viên khối ngành công nghệ thông tin tham khảo và có những bài học bổ ích hơn, bổ trợ cho việc tìm kiếm tài liệu, giáo án, giáo trình, bài giảng các môn học khối ngành công nghệ thông tin

Trang 1

­­C¸c­c¬­chÕ­an­toµn­c¬­b¶n

Giảng viên Trần Thị Lượng

Trang 2

 Thiết kế hệ điều hành an toàn.

 Chuẩn an toàn DoD.

Trang 3

 2.3.3 Bảo vệ dựa vào thanh ghi (bound register)

 2.3.4 Phân trang (paging)

 2.3.5 Phân đoạn (segmentation)

 2.4 Kiểm soát truy nhập tài nguyên

 2.5 Các cơ chế kiểm soát luồng

 2.6 Sự cách ly

 2.7 Các chuẩn an toàn

Trang 4

2.4 KiÓm so¸t truy nhËp tµi nguyªn

2.5 C¸c c¬ chÕ kiÓm so¸t luång

2.6 Sù c¸ch ly

Trang 5

Hệ điều hành là một chương trình đóng vài trò

trung gian trong việc giao tiếp giữa người sử dụng

và phần cứng máy tính Mục tiêu của hệ điều hành

là cung cấp một môi trường cho phép người sử dụng phát triển và thực hiện các ứng dụng của họ một

cách dễ dàng và hiệu quả

 Hệ điều hành quản lý tất cả tài nguyên hệ thống (bộ nhớ, các file, thiết bị vào/ra, bộ xử lý) và tối ưu hoá việc sử dụng tài nguyên cho các chương trình ứng

dụng khác nhau.

Trang 7

Phần cứng: bao gồm CPU, bộ nhớ, các thiết bị nhập xuất (là các tài nguyên của máy tính).

Ch ơng trình cơ sở (phần mềm hệ thống): đây là phần mềm hệ thống trong ROM đ ợc nạp cố định trong bộ nhớ – không thể thay đổi đ ợc.

Ch ơng trình dịch hợp ngữ ư(assembler)

Hệ điều hành (OS) : ưđiều khiển và phối hợp việc sử

dụng phần cứng cho những ứng dụng khỏc nhau của nhiều người dùng khỏc nhau.

Các ứng dụng

Trang 8

 Đảm bảo tối đa hiệu năng sử tài nguyên hệ thống

Quản lý tài nguyên

 OS cấp phát các tài nguyên hệ thống nh : bộ nhớ, file, thiết bị vào/ra cho ứng dụng

 OS giải quyết vấn đề xung đột giữa các tiến trình

Trang 10

Các chức năng chính của hệ điều hành:

Giám sát:

 OS t ơng tác trực tiếp với các ch ơng trình ứng dụng

sử dụng trái phép tài nguyên hệ thống

Nhận xột: Hệ điều hành không ngừng phát triển từ một ch

ơng trình đơn giản đến các hệ thống phức tạp, hỗ trợ kiến trúc đa nhiệm, đa xử lý, phân tán và xử lý thời gian thực

Trang 11

 KiÓm so¸t truy nhËp vµo tµi nguyªn

 KiÓm so¸t luång

 KiÓm to¸n

Trang 13

2.4 KiÓm so¸t truy nhËp tµi nguyªn

2.5 C¸c c¬ chÕ kiÓm so¸t luång

2.6 Sù c¸ch ly

2.7 C¸c chuÈn an toµn

Trang 14

 Yêu cầu đối với một hệ thống an toàn là phải nhận dạng chính xác ng ời sử dụng, do đó ta tìm hiểu

xem chức năng an toàn nhận dạng/xác thực ng ời

dùng của OS thực hiện nh thế nào.

 Xỏc thực là một trong ba yờu cầu bảo vệ: 3A (Authentication – Authorization – Authentication).

Trang 15

Các hệ thống xác thực dựa vào thông tin ng ời dùng biết

 Các hệ thống dựa vào mật khẩu

 Các hệ thống dựa vào hỏi đáp

 Xác thực dựa vào thẻ từ

Các hệ thống xác thực dựa vào đặc điểm của ng ời dùng

 Các hệ thống nhận dạng qua ảnh

 Các hệ thống nhận dạng qua vân tay

 Nhận dạng qua đặc tr ng của chữ ký viết tay

 Các hệ thống nhận dạng qua tiếng nói

 Các hệ thống nhận dạng qua đặc điểm võng mạc

Trang 16

2.2.1.ưCácưhệưthốngưxácưthựcưdựaưvàoưthôngư tinưngườiưdùngưbiết

Các hệ thống dựa vào mật khẩu : Ng ời dùng đ ợc nhận dạng thông qua một chuỗi ký tự bí mật (mật khẩu), chỉ

có ng ời dùng và hệ thống biết

Các hệ thống dựa vào hỏi đáp : Ng ời dùng đ ợc nhận dạng, thông qua việc trả lời một tập hợp các câu hỏi

mà hệ thống đặt ra Các câu hỏi đ ợc đặt riêng cho từng

ng ời dùng và chủ yếu dựa vào các hàm toán học Hệ thống sẽ tính toán các hàm này sau khi nhận đ ợc các giá trị đ a vào từ ng ời dùng và so sánh kết quả với nhau

Trang 17

2.2.1.ưCácưhệưthốngưxácưthựcưdựaưvàoưthôngư tinưngườiưdùngưbiết

Các hệ thống dựa vào hỏi đápCác hàm mẫu nh sau:

Các hàm đa thức: (ví dụ, f(x) = x3+ x2- x + 4): giá trị của

biến x do hệ thống cung cấp, người dựng tớnh f(x) và gửi

cho hệ thống

Các hàm dựa vào việc biến đổi chuỗi ký tự: ví dụ,

f(a1a2a3a4a5) = a4a3a5a2a1 Khi đó ng ời dùng phải gửi lại kết quả biến đổi chuỗi ký tự cho hệ thống

Các hàm dựa vào các thuật toán mật mã đơn giản: ví dụ

f(E(x)) = E(D(E(x))2) Hệ thống cung cấp cho ng ời dùng giá trị đã mã hóa E(x), ng ời dùng phải giải mã D(E(x)) sau

đó tính hàm bình ph ơng [D(E(x))]2, cuối cùng mã hóa giá trị này E(D(E(x))2) Sau đó ng ời dùng gửi kết quả này tới

Trang 18

2.2.1.ưCácưhệưthốngưxácưthựcưdựaưvàoưthôngư tinưngườiưdùngưbiết

Các hệ thống xác thực hai lần bắt tay : hệ

thống tự giới thiệu mình với ng ời dùng, còn ng ời dùng tự xác thực ng ợc trở lại hệ thống

Xác thực hệ thống dựa vào các thông tin chỉ có ng

ời dùng biết (ví dụ, ngày, giờ và đoạn ch ơng trình của phiên làm việc cuối).

Xác thực ng ời dùng dựa vào mật khẩu

Trang 19

điểmưcủaưngườiưdùng

 Các hệ thống nhận dạng qua ảnh

 Các hệ thống nhận dạng qua vân tay

 Nhận dạng qua đặc tr ng của chữ ký viết tay

 Các hệ thống nhận dạng qua tiếng nói

 Các hệ thống nhận dạng qua đặc điểm võng mạc

Trang 20

Tổng quan về các phương pháp xác thực

 What you know: password, PIN

 What you have: Key, ID Card

 Who you are: Fingerpint, Voice,

Face, Retinal

Trang 21

Tổng quan về các phương pháp xác thực

Các phương pháp xác thực:

 Xác thực dựa trên User Name và Password

 Challenge Handshake Authentication Protocol (CHAP)

 Kerberos

 Tokens (Thẻ)

 Biometrics (Sinh trắc học)

 Multi-Factor Authentication (Xác thực đa nhân tố)

 Mutual Authentication (Xác thực lẫn nhau)

Trang 22

Tổng quan về các phương pháp xác thực

Xác thực dựa trên User Name và Password

 Sự kết hợp của một user name và password là cách xác thực

Trang 23

Tổng quan về các phương pháp xác thực

Xác thực bằng phương thức CHAP:

 (CHAP) cũng là mô hình xác thực dựa trên username/password.

 Khi user cố gắng log on, server đảm nhiệm vai trò xác thực sẽ gửi một thông điệp thử thách (challenge message) trở lại máy tính

authenticated Mật khẩu sẽ được mã hóa dưới dạng băm.

 Thường được sử dụng khi User logon vào các remote servers của công ty.

Trang 24

Tổng quan về các phương pháp xác thực

Xác thực Kerberos:

 Dùng một Server trung tâm để kiểm tra việc xác thực

user và cấp phát vé thông hành (service tickets) để User

có thể truy cập vào tài nguyên

 Kerberos là một phương thức rất an toàn trong

authentication bởi vì dùng cấp độ mã hóa rất mạnh

Kerberos cũng dựa trên độ chính xác của thời gian xác

thực giữa Server và Client Computer

 Kerberos là nền tảng xác thực chính của nhiều OS như

Unix, Windows

Trang 25

 Các thông tin trên token chỉ có thể được đọc và xử lý bởi các thiết

bị chuyên dụng, ví dụ như thẻ smart card được đọc bởi đầu đọc smart card gắn trên Computer, sau đó thông tin này được gửi đến Server xác thực

 Tokens chứa chuỗi text hoặc giá trị số duy nhất thông thương mỗi giá trị này chỉ sử dụng một lần.

Trang 26

Tổng quan về các phương pháp xác thực

Tokens:

 Ví dụ về Smart Cards (Thẻ thông minh)

Smart cards là ví dụ điển hình về xác thực dựa vào

tokens Một smart card là một thẻ nhựa có gắn một chip máy tính lưu trữ các loại thông tin điện tử khác nhau Nội dung thông tin của card được đọc với một thiết bị đặc biệt

Trang 27

Tổng quan về các phương pháp xác thực

Biometrics (Sinh trắc học):

 Là mô hình xác thực dựa trên đặc điểm sinh học của từng cá nhân, như: Quét dấu vân tay (fingerprint

scanner), quét võng mạc mắt (retinal scanner), nhận

dạng giọng nói(voice-recognition), nhận dạng khuôn mặt

 Vì nhận dạng sinh trắc học hiện rất tốn kém chi phí khi triển khai nên không được chấp nhận rộng rãi như các phương thức xác thực khác

Trang 28

Tổng quan về các phương pháp xác thực

Trang 29

Tổng quan về các phương pháp xác thực

Trang 30

Tổng quan về các phương pháp xác thực

Multi-Factor Authentication

 Xác thực nhiều nhân tố dựa trên nhiều nhân tố kết hợp,

là mô hình xác thực yêu cầu kiểm tra ít nhất 2 nhân tố xác thực.Có thể đó là sự kết hợp của bất cứ nhân tố nào

ví dụ như: bạn là ai, bạn có gì chứng minh, và bạn biết gì?

Ví dụ: về một Multi-Factor Authentication:

Cần phải đưa thẽ nhận dạng vào đầu đọc và cho biết tiếp password là gì

Trang 31

không hay là một cái bẫy của hacker giăng ra, và ngược lại Server này sẽ kiểm tra lại bạn…

Trang 32

Giới thiệu cơ chế xác thực trong Oracle

Trang 33

Mật khẩu là một chuỗi ký tự bí mật (số hoặc chữ), chỉ có

ng ời dùng và hệ thống biết, do đó hệ thống có khả năng nhận dạng duy nhất ng ời dùng dựa vào việc xác nhận tính hợp lệ của mật khẩu

 Các tiêu chuẩn đối với mật khẩu 'bí mật' là:

 Sử dụng ít nhất 6 ký tự, nên sử dụng các mật khẩu dài

 Sử dụng cả số và chữ

 Sử dụng cả chữ th ờng và chữ in hoa

 Sử dụng các ký hiệu bàn phím đặc biệt (ví dụ, &,@ và %)

 Chọn các từ n ớc ngoài

Trang 34

 Mật khẩu đ ợc l u trong một file do OS quản lý

=> Các modul trong OS đều có thể truy nhập đ

ợc file mật khẩu.

 Giải pháp: mã hóa mật khẩu bằng các thuật

toán mã hóa, sau đó l u vào file mật khẩu.

=> mật khẩu sau khi mã hóa cũng giống

nhau…

Trang 35

Kü thuËt salt (UNIX)

 Mét salt lµ mét sè 12 bit ® îc thªm vµo mËt khÈu

 salt lµ duy nhÊt víi mét tiÕn tr×nh?

MËt khÈu

MËt khÈu m· hãa Salt File mËt

khÈu

DES

Salt

Trang 36

Kü thuËt salt (UNIX)

 X¸c thùc mËt khÈu cña ng êi dïng

Trang 37

2.4 KiÓm so¸t truy nhËp tµi nguyªn

2.5 C¸c c¬ chÕ kiÓm so¸t luång

2.6 Sù c¸ch ly

2.7 C¸c chuÈn an toµn

Trang 38

2.3 Bảo vệ bộ nhớ

Bộ nhớ chính là thiết bị l u trữ duy nhất thông qua đó, CPU có thể trao đổi thông tin với môi tr ờng bên ngoài

 Bộ nhớ chính đ ợc tổ chức nh một mảng một chiều các từ nhớ (word), mỗi từ nhớ có một địa chỉ

 C ỏc OS cho phộp đa nhiệm để nõng cao hiệu suất C PU=> nảy sinh nhu cầu chia sẻ bộ nhớ giữa cỏc tiến trỡnh.

 Vấn đề: Bộ nhớ thỡ hữu hạn cũn cỏc yờu cầu bộ nhớ

Trang 39

2.3 B¶o vÖ bé nhí

 OS chịu trách nhiệm cấp phát vùng nhớ cho các tiến trình yêu cầu, OS phải xét đến:

 Sự tương ứng giữa địa chỉ logic và địa chỉ vật lý: làm sao

để chuyển đổi một đ/c tượng trưng sang đ/c thực?

 Quản lý bộ nhớ vật lý: làm sao để mở rộng bộ nhớ có sẵn nhằm lưu trữ được nhiều tiến trình đồng thời?

 Chia sẻ thông tin: làm thế nào để cho phép 2 tiến trình chia sẻ thông tin trong bộ nhớ?

 Bảo vệ: làm thế nào để ngăn chặn các tiến trình xâm phạm đến vùng nhớ được cấp phát cho các tiến trình khác?

Trang 43

Không gian vật lý: là tập hợp tất cả các địa chỉ vật lý t

ơng ứng với các địa chỉ ảo.

MMU (Memory Management Unit): là một cơ chế

phần cứng để chuyển đổi địa chỉ ảo thành địa chỉ vật

Trang 44

2.3.1 Địa chỉ rào

Địa chỉ rào: đánh dấu ranh giới giữa vùng nhớ dành

cho hệ điều hành và vùng nhớ cho tiến trình ng ời

hành

Trang 45

HÖ ®iÒu hµnh

FA

Trang 46

2.3.1 Địa chỉ rào

Nhận xột: Giá trị của địa chỉ rào có thể đ ợc l u trong một thanh ghi rào Khi đó, giá trị rào có thể

thay đổi động tuỳ thuộc vào sự thay đổi của kích

cỡ OS, đồng thời OS sẽ l u giá trị mới của địa chỉ rào vào trong thanh ghi Các địa chỉ trong ch ơng trình ng ời dùng đ ợc so sánh với giá trị l u trong thanh ghi rào xem có hợp lệ hay không

Trang 47

2.3.1 §Þa chØ rµo

 Ưu, nhược điểm của địa chỉ rào?

Trang 48

2.3.1 §Þa chØ rµo

¦u ®iÓm: b¶o vÖ ® îc vïng nhí cña hÖ ®iÒu hµnh tr¸nh khái sù can thiÖp cña c¸c tiÕn tr×nh ng êi dïng.

Trang 50

2.3.2 Tái định vị

Nhắc lại:

Hệ thống đa ch ơng với phần vùng cố định : bộ nhớ đ ợc chia thành n phân vùng (chú ý là phân

vùng vật lý) với kích th ớc cố định (các phân vùng

có thể có kích th ớc bằng nhau hoặc khác nhau) Các tiến trình có yêu cầu bộ nhớ sẽ đ ợc đặt trong hàng đợi, có hai cách tiếp cận để tổ chức hàng đợi:

Trang 52

2.3.2 Tái định vị

Hệ thống đa ch ơng với phần vùng cố định :

Nhiều hàng đợi: Mỗi phân vùng có một hàng đợi t ơng ứng, một tiến trình sinh ra sẽ đ ợc đặt vào trong hàng đợi của phân vùng có kích th ớc nhỏ nhất nh ng vẫn thỏa

mẵn nhu cầu chứa tiến trình đó

=> Nh ợc điểm: Có hàng đợi thì trống, hàng đợi thì đầy khiến nhiều tiến trình phải chờ đợi để cấp phát bộ nhớ

Một hàng đợi: Tất cả các tiến trình đ ợc đặt trong một hàng đợi duy nhất, khi có một phân vùng tự do (tự do hoàn toàn cả phân vùng) thì tiến trình đầu tiên trong

Trang 53

phân mảnh nội vi (internal fragement).

 Mức độ đa ch ơng của hệ thống sẽ bị giới hạn bởi số l ợng phân vùng

 Khi cho phép sự đa ch ơng, cần giải quyết 2 vấn đề:

Trang 54

2.3.2 Tái định vị

 2 vấn đề đú là

Tái định vị (relocation)

Bảo vệ ưcác tiến trình: Khi cho phép sự đa ch ơng,

có nhiều tiến trình đồng thời trong bộ nhớ, do đó cần phải bảo vệ các tiến trình khỏi sự xâm phạm

lẫn nhau (Vì lúc này, một tiến trình có thể tạo ra các chỉ thị truy xuất đến một địa chỉ bất kỳ trong

bộ nhớ => truy xuất đến dữ liệu của tiến trình khác, nếu nh không có ph ơng pháp bảo vệ).

Trang 55

2.3.2 Tái định vị

Trang 56

2.3.2 Tái định vị

 Địa chỉ trong ch ơng trình nguồn là địa chỉ logic, muốn chạy ch ơng trình phải biờn dịch v nạp ch ơng à nạp chương trình vào bộ nhớ => phải chuyển đổi địa chỉ.

 Tái định vị = chuyển đổi đ/c logic -> đ/c vật lý

 Ví dụ, nếu ch ơng trình truy xuất đến địa chỉ 100 (địa chỉ logic), và ch ơng trình đ ợc nạp vào phân vùng 1

có địa chỉ vật lý bắt đầu là 100K, thì địa chỉ truy xuất thực sự là 100K+100 = địa chỉ vật lý.

 Trỡnh liờn kết (linker) phải thực hiện nhiệm vụ tỏi định vị

Trang 57

2.3.2 Tái định vị

 Nh vậy, thực chất tái định vị là việc chuyển

đổi từ địa chỉ logic của ch ơng trình sang địa chỉ vật lý, còn gọi là Sự kết buộc ư địa chỉ.

 Giả thiết rằng K là giá trị rào, khi đó địa chỉ vật lý của một ch ơng trình sẽ đ ợc tính bằng cách cộng K với địa chỉ logic của ch ơng

trình đó.

Trang 58

2.3.2 Tái định vị

 Tái định vị có thể thực hiện trong:

 Thời điểm biên dịch

 Thời điểm nạp

 Thời điểm xử lý

Trang 59

2.3.2 Tái định vị

Thời điểm biên dịch:

Nếu tại thời điểm biên dịch, có thể biết vị trí mà ch ơng trình

sẽ th ờng trú trong bộ nhớ (ví dụ ch ơng trình sẽ có địa chỉ bắt

đầu trong bộ nhớ chính là K1 - địa chỉ rào), thì trình biên dịch có thể phát sinh ngay mã lệnh thực thi với các địa chỉ tuyệt đối Trong suốt quá trình biên dịch, địa chỉ trong ch ơng trình là các địa chỉ tuyệt đối = địa chỉ t ơng đối + K1 Sau đú chương trỡnh nạp, sẽ nạp mó lệnh thực thi này vào vựng nhớ bắt đầu từ K1.

 Nếu về sau có sự thay đổi vị trí th ờng trú lúc đầu của ch ơng trình (K1 thay đổi), cần phải biên dịch lại ch ơng trình

Trang 60

2.3.2 Tái định vị

Thời điểm nạp: Nếu trong quá trình biên dịch ch a biết

vị trí th ờng trú của ch ơng trình trong bộ nhớ, thì trình biên dịch sẽ sinh ra mã lệnh thực thi t ơng đối ( object code ) chứa các địa chỉ t ơng đối Khi nạp ch ơng trình vào bộ nhớ, những địa chỉ t ơng đối đó sẽ đ ợc chuyển thành các địa chỉ tuyệt đối trong bộ nhớ Đây đ ợc gọi

“tái định vị tĩnh” Khi có sự thay đổi vị trí l u trữ

tiến trình trong bộ nhớ, chỉ cần nạp lại mà không cần biên dịch lại ch ơng trình.

Trang 61

định vị động.

Trang 62

2.3.2 Tái định vị

Chú ý:

Tái định vị tĩnh: có nghĩa là việc chuyển đổi địa chỉ đ

ợc diễn ra khi biên dịch hoặc khi nạp ch ơng trình vào

bộ nhớ

Tỏi định vị động:ưcó nghĩa là việc chuyển đổi địa chỉ

diễn ra khi chạy ch ơng trình

 Nếu K là địa chỉ rào (địa chỉ bắt đầu của ch ơng trình trong bộ nhớ chính) thì tái định vị động cho phép K

biến đổi trong suốt thời gian chạy ch ơng trình, còn tái

định vị tĩnh K là cố định trong suốt thời gian chạy ch

Trang 63

2.3.2 Tái định vị

Vớ dụ về tỏi định vị động:

PA FA

Địa chỉ vật

lý (PA)

Thanh ghi rào

Địa chỉ logic (LA)

Hệ điều hành

FA = K

CPU

Trang 64

2.3.2 Tái định vị

 Nh vậy, thanh ghi rào giúp bảo vệ vùng nhớ của hệ điều hành

 Thanh ghi rào giúp tái định vị ch ơng trình

Vấn đề: ch a bảo vệ đ ợc vùng nhớ của tiến trình ng ời dùng?

Ngày đăng: 22/10/2014, 22:12

HÌNH ẢNH LIÊN QUAN

Hình chính sách hình thức. - Các cơ chế an toàn cơ bản về cơ sở dữ liệu
Hình ch ính sách hình thức (Trang 116)
Hình thức ( formal specification techniques ): - Các cơ chế an toàn cơ bản về cơ sở dữ liệu
Hình th ức ( formal specification techniques ): (Trang 126)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w