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

Bài giảng Bảo mật cơ sở dữ liệu: Chương 6 - Trần Thị Kim Chi

171 85 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 171
Dung lượng 2,57 MB

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

Nội dung

Bài giảng Bảo mật cơ sở dữ liệu - Chương 6: Audit Database trình bày các nội dung: Giới thiệu về Audit Database, các hoạt động của Auditi, Database Auditing Models, Application Data Auditing, Additing trong SQL, Auditing trong Oracle. Mời các bạn cùng tham khảo.

Trang 1

Audit Database

Giảng viên: Trần Thị Kim Chi

1

Trang 2

Nội dùng

 Giới thiệu về Audit Database

Các hoạt động của Auditi

Database Auditing Models

Application Data Auditing

Additing trong SQL

Auditing trong Oracle

2

Trang 3

Giới thiệu Audit

giám sát(Audit): giám sát và ghi lại những hoạt động

đã và đang xảy trong hệ thống một cách có chọn lọc

 Audit = Ai làm gì với dữ liệu nào khi nào và bằng

cách nào (Who did what to which data when and

how)

Trách nhiệm giải trình, gọi tắt là giải trình (Accountability): trách nhiệm tìm ra và chứng minhnguồn gốc các hoạt động xảy ra trong hệ thống

 Hoạt động giám sát nhằm phục vụ cho hoạt động giảitrình

3

Trang 4

Giới thiệu Audit Database

Audit/auditing: quá trình kiểm tra và xác nhận cáctài liệu, dữ liệu, quy trình, thủ tục, hệ thống

Nhật lý giám sát (Audit log): tài liệu có chứa tất cả

các hoạt động đang được giám sát được sắp xếptheo thứ tự thời gian

Mục tiêu giám sát: thiết lập các quy tắc kinh doanh,

điều khiển hệ thống, các quy định của chính phủ,hoặc các chính sách bảo mật

4

Trang 5

Giới thiệu Audit Database

Data audit: giám sát lịch sử những thay đổi dữ liệuđược lưu trữ trong tập tin nhật ký hoặc các bảng(table) của cơ sở dữ liệu

Database auditing: giám sát lịch sử của các hoạtđộng cơ sở dữ liệu

Internal auditing: kiểm tra các hoạt động được thựchiện bởi các nhân viên của tổ chức giám sát bêntrong hệ thống

External auditing: : kiểm tra các hoạt động đượcthực hiện bởi các nhân viên của tổ chức giám sátbên ngoài hệ thống

5

Trang 6

Tại sao phải Audit Database

Trách nhiệm giải trình từ những hành động xảy ra

lên các dữ liệu (schema, bảng, dòng, …)

Kiểm tra hành động đáng ngờ (suspiciousactivity)

Trang 7

Tại sao phải Audit Database

 Giám sát và ghi lại các hoạt động xảy ra nhằm phát

hiện các vấn đề trong quá trình định quyền và điều

 Chọn cách đánh chỉ mục thích hợp để tăng hiệu suất

 giám sát để thỏa các yêu cầu chính sách pháp lý(compliance): thể hiện trách nhiệm với dữ liệu củakhách hàng

7

Trang 8

 Graham-Leach-Bliley Act (GLBA)

 Các chính sách thường không mô tả công nghệ cầnthực thi

 Cần xác định yêu cầu và lựa chọn công nghệ

8

Trang 9

Khi nào và giám sát những gì?

 Khi nào nên giám sát?

 giám sát tại mọi thời điểm từ khi hệ thống bắt đầu hoạt động

 giám sát những gì?

 Việc giám sát có thể làm giảm hiệu suất của hệ thống

 Chỉ nên giám sát những gì cần thiết

9

Trang 10

Khi nào và giám sát những gì?

 Trong chính sách Sarbanes-Oxley, phần 404 có đưa

ra những hoạt động cần phải giám sát:

 Hoạt động của những người dùng có quyền

 Đăng nhập và đăng xuất

 Những thay đổi trong các application trigger và data trigger

 Thay đổi quyền và mô tả thông tin của người dùng

 Cấu trúc dữ liệu bị thay đổi

 Các truy cập đọc và ghi trên những dữ liệu nhạy cảm

 Những lỗi và ngoại lệ

 Nguồn gốc của những hoạt động truy cập dữ liệu

 Thời gian, tên chương trình, kích thước dữ liệu, câu

Trang 11

Nội dùng

 Giới thiệu về Audit Database

 Các hoạt động của Auditi

Database Auditing Models

Application Data Auditing

Additing trong SQL

Auditing trong Oracle

11

Trang 12

Các hoạt động của Audit

 Đánh giá hiệu quả và đầy đủ của các thành phầnđược giám sát

 Xác định và xem lại độ tin cậy và tính toàn vẹn củacác thành phần được giám sát

 Đảm bảo tổ chức tuân thủ chính sách, thủ tục, quyđịnh, pháp luật, và các tiêu chuẩn của chính phủ vàngành công nghiệp

 Lập kế hoạch, chính sách và thủ tục thực hiện giámsát

12

Trang 13

Các hoạt động của Audit

 Lưu lại tất cả các thay đổi cho các thành phần đượcgiám sát

 Cập nhật những thông tin đã audit và các quy địnhgiám sát mới

 Cung cấp tất cả các chi tiết giám sát cho tất cả nhânviên công ty tham gia vào việc giám sát

 Xuất bản hướng dẫn và thủ tục giám sát

 Các hoạt động như liên lạc giữa các công ty và cácnhóm giám sát bên ngoài

13

Trang 14

Các hoạt động của Audit

 Hoạt động như một nhà tư vấn cho các kiến trúc sư,nhà phát triển, và các nhà phân tích kinh doanh

 Tổ chức và thực hiện giám sát nội bộ

 Đảm bảo tất cả các mục trong hợp đồng được đápứng bởi các tổ chức được giám sát

 Xác định các loại giám sát sẽ được sử dụng

 Xác định các vấn đề an ninh phải được giải quyết

 Tư vấn cho Vụ Pháp chế

14

Trang 15

Auditing Environment

 Ví dụ giám sát:

 giám sát tài chính

 kiểm tra bảo mật

 giám sát cũng đo lường sự phù hợp với các quy định

và luật pháp của chính phủ

 giám sát diễn ra trong một môi trường:

 Môi trường giám sát

 Môi trường cơ sở dữ liệu giám sát

15

Trang 16

People: giám sát viên,

nhân viên, nhà quản lý

Các đơn vị được giám

sát: người, tài liệu, quy

trình, hệ thống

16

Trang 18

Auditing Process-Qui trình Audit

 Đảm bảo chất lượng (QA):

 Đảm bảo hệ thống là không lỗi và hoạt động theothông số kỹ thuật của nó

Quá trình giám sát: đảm bảo rằng hệ thống đanglàm việc và tuân thủ các chính sách, quy định vàpháp luật

18

Trang 19

Auditing Process-Qui trình Audit

Thực hiện giám sát: quan sát nếu có suy giảm hiệu

suất hoạt động vào những thời điểm khác nhau

 giám sát quá trình dòng chảy:

Trang 20

Auditing Process-Qui trình Audit

20

Trang 21

Auditing Process-Qui trình Audit

21

Trang 22

Quy trình giám sát

 Quy trình giám sát do NIST đưa ra

22

Trang 23

 Thông báo cho người giám sát rằng có user bất hợp phát đang thao tác hay xóa dữ liệu hay user có nhiều quyền hệ thống hơn

sự cho phép.

 Giám sát và thu thập dữ liệu về các hoạt động CSDL cụ thể Ví

dụ, người quản trị CSDL có thể thu thập thống kê về thông tin các bảng đang được update, hay bao nhiêu users cùng trung cập vào thời điểm cực đỉnh.

23

Trang 24

 Data structure changes

 Database or application availability

 Change control

 Physical access

 Auditing reports 24

Trang 25

Các vấn đề với giám sát

 giám sát là công cụ, không phải là mục tiêu

 Nên sử dụng kết hợp giữa giám sát bên trong vàgiám sát bên ngoài

 Lưu trữ và bảo mật thông tin audit log

 Tự động hóa và giám sát hoạt động giám sát

 Kích thước của các audit log lớn, cần sử dụng cáccông cụ kho dữ liệu (data warehouse) và khai phá dữliệu (data mining) để quản lý và phân tích dữ liệuaudit log

 Vấn đề tính riêng tư trong audit log

25

Trang 26

Các yêu cầu của giám sát trong CSDL

 Có khả năng hoạt động độc lập, cho phép theo dõi vàghi nhận lại tất cả các hoạt động trong hệ thống kể

cả những hoạt động của người quản trị hệ thống

 Có khả năng lưu trữ audit log một cách an toàn bênngoài CSDL

 Có khả năng thu thập và kết hợp các hoat động xảy

ra ở nhiều loại DBMS (Database managementsystems) khác nhau

 Không phụ thuộc vào DBMS và cú pháp câu lệnhSQL ứng với mỗi DBMS

26

Trang 27

Các yêu cầu của giám sát trong CSDL

 Có khả năng ngăn chặn người quản trị hệ thốngchỉnh sửa hoặc xóa dữ liệu trong audit log

 Có khả năng đưa ra những cảnh báo kịp thời chongười quản trị hệ thống khi có những bất thường xảy

ra trong hệ thống

27

Trang 28

Các phương pháp giám sát

 giám sát bằng application server log

 giám sát mức ứng dụng(Application audit)

 giám sát bằng trigger

 giám sát bằng câu lệnh(command)

28

Trang 29

Các đối tượng cần giám sát

 Các hoạt động đăng nhập/đăng xuất trong CSDL

 Username

 Client IP mà đăng nhập không thành công

 Chương trình(source program)

 Thời gian đăng nhập và đăng xuất

 giám sát nguồn gốc truy cập CSDL

 Địa chỉ IP và host name được dùng để kết nối CSDL

 Chương trình nào kết nối CSDL

29

Trang 30

Các đối tượng cần giám sát

 giám sát các hoạt động truy cập CSDL ngoài giờ làm việc

 Các truy cập CSDL ngoài giờ làm việc đều đáng nghi ngờ

 Cần ghi lại mọi truy cập CSDL ngoài giờ làm việc trừ những thao tác đã được định giờ

 giám sát các thao tác thuộc ngôn ngữ định nghĩa dữ liệu (Data Definition Language –DDL)

 Rất quan trọng vì trong nhiều trường hợp DDL có thể được dùng để phá hoại hệ thống

 Được quy định trong chính sách HIPAA

 Phương pháp: dùng chức năng built-in của DBMS, sử dụng hệ thống giám sát bên ngoài, so sánh snapshot của lược đồ(shema) theo thời gian

30

Trang 31

Các đối tượng cần giám sát

 Các lỗi trong thao tác với CSDL

 Các lỗi như đăng nhập thất bại, SQL Injection

dấu hiệu của sự tấn công

 Các ứng dụng có thể chứa lỗi và gây ra lỗi: ví dụ sinh

Trang 32

Các đối tượng cần giám sát

 giám sát trên sự thay đổi quyền của người dùng vàcác thuộc tính bảo mật khác

 Việc giám sát này là bắt buộc: tấn công vượt quyền

 Các thông tin cần chú ý:

 Thêm/Xóa trên User/Login/Role

 Thay đổi quyền của Role

 Thay đổi quyền hoặc role của người dùng

 Thay đổi password

32

Trang 33

Các đối tượng cần giám sát

 giám sát sự thay đổi của các dữ liệu nhạy cảm

 Ghi nhận thay đổi giữa giá trị cũ và giá trị mới trong mỗi thao tác thuộc ngôn ngữ thao tác dữ liệu(Data Manipulation Language –DML)

 Cần lọc dữ liệu nào quan trọng mới giám sát vì dữ liệu giám sát sẽ rất lớn (vídụ: CSDL có 100 bảng với khoảng1 triệu transaction/ngày…)

 giám sát sự thay đổi của audit log

 Audit log cần được bảo vệ và không cho phép thay đổi

 Phương pháp: sử dụng các chức năng built-in của CSDL hoặc một hệ thống giám sát bên ngoài khác

33

Trang 34

Nội dùng

 Giới thiệu về Audit Database

 Các hoạt động của Auditi

 Database Auditing Models

Application Data Auditing

Additing trong SQL

Auditing trong Oracle

34

Trang 35

Các mô hình giám sát-Auditing Models

35

Trang 36

Simple Auditing Model 1

 Dễ hiểu và phát triển

 Các đơn vị đăng ký giám sát trong các kho lưu trữ

mô hình giám sát

 Theo dõi các hoạt động theo thứ tự thời gian

 Đối tượng: người sử dụng, bảng, hoặc cột

 Hoạt động: DML giao dịch hoặc đăng nhập và đăng xuất

 Điều khiển cột:

 Giữ chỗ cho dữ liệu được chèn tự động khi một bản ghi được tạo hay cập nhật

36

Trang 37

Simple Auditing Model 1

37

Trang 38

Simple Auditing Model 1

38

Trang 39

Simple Auditing Model 2

 Chỉ lưu trữ các giá trị cột thay đổi

 Có một cơ chế lọc và lưu trữ dữ liệu làm giảm số lượng dữ liệu được lưu trữ

 Không đăng ký một hành động đã được thực

hiện trên dữ liệu

 Rất lý tưởng cho giám sát một hoặc hai cột của một bảng

39

Trang 40

Simple Auditing Model 2

40

Trang 41

Advanced Auditing Model

 Được gọi là “advanced" vì tính linh hoạt của nó

 Phức tạp hơn

 Đăng ký tất cả các thực thể: mức độ giám sát tốt hơn

 Có thể điều khiển người dùng, hành động, bảng, cột

41

Trang 42

Advanced Auditing Model

42

Trang 43

Advanced Auditing Model

43

Trang 44

Historical Data Model

 Được sử dụng khi lưu trữ của cả hàng được yêu cầu

 Thường được sử dụng trong hầu hết các ứng dụng tài chính

44

Trang 45

Auditing Applications Actions Model

45

Trang 46

Nội dùng

 Giới thiệu về Audit Database

 Các hoạt động của Auditi

 Database Auditing Models

 Application Data Auditing

Additing trong SQL

Auditing trong Oracle

46

Trang 47

Application Data Auditing

Mục tiêu:

 Hiểu được sự khác biệt giữa các audit kiến trúc,

giám sát hành động và thay đổi

 Tạo và thực hiện trigger trong Oracle

 Tạo và thực hiện trigger trong SQL Server

47

Trang 48

DML Action Auditing Architecture

 Ngôn ngữ thao tác dữ liệu (DML): các công ty sử

dụng kiến trúc, giám sát cho những thay đổi DML

 Thay đổi DML có thể được thực hiện ở hai cấp độ:

 cấp hàng

 mức độ cột

 Fine-grained auditing (FGA)

48

Trang 49

DML Action Auditing Architecture

49

Trang 50

DML Action Auditing Architecture

50

Trang 51

giám sát trong SQL Server

SQL Server Triggers

Implementation of an Historical Model with SQL Server

51

Trang 52

SQL Server Triggers

 CREATE TRIGGER DDL statement: creates

a trigger

 Trigger condition:

 Prevents a trigger from firing

 UPDATE() and COLUMNS_UPDATE()

functions

 Logical tables:

 DELETED contains original data

 INSERTED contains new data

52

Trang 53

SQL Server Triggers

 Restrictions—Transact-SQL statements not allowed:

 ALTER and CREATE DATABASE

 DISK INIT and DISK RESIZE

 DROP DATABASE and LOAD DATABASE

Trang 54

Implementation of an Historical Model with SQL Server

 Create a history table:

 Same structure as original table

 HISTORY_ID column

 Create a trigger: inserts original row into the HISTORY table

54

Trang 56

Implementing SQL Profiler

 User interface for auditing events

 For each event you can audit:

 Date and time of the event

 User who caused the event to occur

 Type of event

 Success or failure of the event

 Origin of the request

 Name of the object accessed

 Text SQL statement

Trang 57

Implementing SQL Profiler (continued)

Trang 58

Security Auditing with SQL Server

 Steps for setting security auditing level:

 Open Enterprise Manager

 Expand the appropriate SQL Server group

 Right-click on the desired server

 Click Properties

 On the security tab, select the desired security level

Trang 59

Security Auditing with SQL Server (continued)

Trang 60

 ADD LOGIN TO SERVER ROLE

 ADD MEMBER TO DB ROLE

 ADD ROLE

 APP ROLE CHANGE PASSWORD

 BACKUP/RESTORE

 CHANGE AUDIT

Trang 61

 LOGIN CHANGE PASSWORD

 LOGIN CHANGE PROPERTY

 LOGIN FAILED

 Login GDR (GRANT, DENY, REVOKE)

Trang 62

Security Auditing with SQL Server (continued)

 Auditable events (continued):

 Object Derived Permissions

Trang 63

Security Auditing with SQL Server (continued)

Trang 64

Security Auditing with SQL Server (continued)

 New trace information:

 A name for the trace

 The server you want to audit

 The base template to start with

 Where to save the audit data, either to a file or

to a database table

 A stop time, if you don’t want the trace to run indefinitely

Trang 65

Security Auditing with SQL Server (continued)

Trang 66

Security Auditing with SQL Server (continued)

Trang 67

Security Auditing with SQL Server (continued)

 Steps to add Login Change Password event

 Expand the Security Audit node under

Available event classes

 Click Audit Login Change Password Event

 Click the Add button

Trang 68

Security Auditing with SQL Server (continued)

Trang 70

Data Definition Auditing (continued)

Trang 71

Database Auditing with SQL Server

Trang 72

Database Errors Auditing with SQL Server

Trang 73

Nội dùng

 Giới thiệu về Audit Database

 Các hoạt động của Auditi

 Database Auditing Models

 Application Data Auditing

 Additing trong SQL

 Auditing trong Oracle

73

Trang 74

giám sát trong Oracle

Trang 75

Giới thiệu giám sát trong Oracle

 Oracle giám sát các người dùng:

 giám sát các truy cập thành công hoặc không thành công

 giám sát 1 người dùng, 1 nhóm người dùng hoặc tất

cả các người dùng

 giám sát ở cấp phiên làm việc(session level) hoặc cấp truy cập (access level)

 giám sát sẽ làm giảm hiệu suất của hệ thống

 Chỉ nên giám sát những gì cần thiết

75

Trang 76

Giới thiệu giám sát trong Oracle

 Dữ liệu giám sát nên được ghi trên file của hệ điềuhành (OS) để tiết kiếm tài nguyên củaCSDL

 Các tham số khởi tạo AUDIT_TRAIL trong init.ora

76

Trang 77

Các loại giám sát trong Oracle

Trang 78

Statement auditing

Statement auditing:giám sát những lệnh hoặc nhóm

câu lệnh trên từng đối tượng

Câu lệnh DDL: Ví dụ AUDIT TABLE giám sát tất cả

các câu lệnh CREATE và DROP TABLE

Câu lệnh DML: Ví dụ AUDIT SELECT TABLE giám

sát tất cả câu lệnh SELECT trên bảng và trên view

 Có thể giám sát trên mọi người dùng hoặc trên 1nhóm người dùng cụ thể hoặc trên Role

78

Trang 79

Privilege auditing

Privilege auditing: giám sát những quyền hệ

thống

 AUDIT SELECT ANY TABLE sẽ giám sát mọi lệnh

được tạo ra từ những người dùng sử dụng quyền SELECT ANY TABLE

 Trường hợp cả statement và privilege cùng được

giám sát thì chỉ 1 audit record được tạo ra

 Privilege auditing có độ tập trung hơn statement

auditing

 Statement auditing: AUDIT TABLE

CREATE, ALTER, DROP (TABLE) đều được giám sát

 Privilege auditing: AUDIT CREATE TABLE

Trang 80

Schema Object Auditing

 Kiểm tra câu lệnh cụ thể trên đối tượng schema cụ thể, ví dụ AUDIT SELECT ON employees (Rất được chú trọng) Schema object auditing luôn áp dụng cho tất cả các user

 Giám sát trên những đối tượng củaSchema:

Trang 81

Schema Object Auditing

Ví dụ:

Thực hiện giám sát câu lệnh SELECT trên Employee

AUDIT SELECTON Employee;

Tạo view Emp_Name và giám sát câu lệnh SELECT

CREATE VIEW Emp_NameAS SELECT EName

FROM Employee;

AUDIT SELECTON Emp_Name;

 Thực hiện câu lệnh truy vấn trên view Emp_Name

SELECT * FROM Employee_Name;

81

Ngày đăng: 30/01/2020, 13:00

TỪ KHÓA LIÊN QUAN

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