An ninh bảo mật - Chương 5: Kiểm toán cơ sở dữ liệu

Trìnhbàycácđịnhnghĩa,vaitròcủakiểmtoán.

Trìnhbàycácloạikiểmtoánthườngdùng.

ThựchànhviệckiểmtoántrênOracle

pdf61 trang | Chia sẻ: Mr Hưng | Lượt xem: 897 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu An ninh bảo mật - Chương 5: Kiểm toán cơ sở dữ liệu, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
liệu. Cuối cùng, bất kỳ một cố gắng thực hiện nào bị lỗi liên quan đến phân quyền là một cảnh báo cho một cuộc tấn công có thể được tiến hành. 45/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.5 Kiểm toán lỗi cơ sở dữ liệu  Lỗi cũng rất quan trọng từ góc độ chất lượng, và điều này cũng phản ánh đến vấn đề tuân thủ. Việc ứng dụng sản phẩm phát sinh lỗi bởi vì thiếu xót về vấn đề kỹ thuật và ứng dụng nên phải được xác định và sửa chữa.  Ghi lại lỗi SQL thường là một cách đơn giản để xác định những vấn đề này.  Các lỗi có thể dẫn bạn theo hướng của các vấn đề có ảnh hưởng đến thời gian phúc đáp và tính sẵn sàng. 46/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.5 Kiểm toán lỗi cơ sở dữ liệu  Kiểm toán lỗi chi tiết được hỗ trợ bởi một số các nhà cung cấp cơ sở dữ liệu, và bạn có thể tham khảo các tài liệu hướng dẫn về môi trường để thực hiện. Trong Oracle bạn có thể sử dụng lại trigger hệ thống: 47/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.5 Kiểm toán lỗi cơ sở dữ liệu Tạo bảng ghi lỗicreate table error_audit ( user_id varchar2(30), session_id number(8), host varchar2(30), error_date date, error varchar2(100) ); 48/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.5 Kiểm toán lỗi cơ sở dữ liệu Tạo các trigger để khởi tạo khi lỗi xảy ra create or replace trigger audit_errors_trigger AFTER SERVERERROR ON DATABASE BEGIN insert into error_audit values( user, sys_context('USERENV','SESSIONID'), sys_context('USERENV','HOST'), sysdate, dbms_standard.server_error(1) ); COMMIT; END; 49/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.5 Kiểm toán lỗi cơ sở dữ liệu  Trong SQL Server, bạn có thể sử dụng kiểm toán tính năng hoặc dò vết tính năng. Nếu bạn chọn sử dụng dấu vết, bạn cần thiết lập các sự kiện thích hợp có liên quan đến lỗi sử dụng sp_trace_event. Những sự kiện bao gồm các định danh được hiển thị trong bảng 5.1. 50/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm Bảng 5.1 Các sự kiện xử lý lỗi Tên sự kiện Lớp sự kiện Mô tả 16 Attention Tập hợp tất cả các sự kiện quan tâm, như yêu cầu gián đoạn kết nối client, hoặc khi một kết nối client bị ngắt. 21 ErrorLog Sự kiện lỗi đã được ghi trong nhật ký lỗi. 22 EventLog Sự kiện khi đăng nhập nhật ký ứng dụng 33 Exception Ngoại lệ xuất hiện trên server. 67 Execution Warnings Bất kỳ cảnh báo nào đã xảy ra trong quá trình thực hiện của thủ tục lưu trữ và câu lệnh trên máy chủ. 51/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm Bảng 5.1 Các sự kiện xử lý lỗi Tên sự kiện Lớp sự kiện Mô tả 55 Hash Warning Hoạt động của bảng băm có thể gặp cácvấn đề về lỗi 79 Missing Column Statistics Cột số liệu thống kê cho các truy vấn tối ưu thường không có sẵn. 80 Missing Join Predicate Thực hiện truy vấn không có vị từ kết nối. Điều này có thể làm cho câu truy vấn chạy rất lâu. 61 OLEDB Errors Lỗi OLE DB có thể xuất hiện. 52/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.5 Kiểm toán lỗi cơ sở dữ liệu  Đường cơ sở là quan trọng nếu môi trường ứng dụng của bạn là không hoàn hảo. Không phải mọi cơ sở dữ liệu và ứng dụng là môi trường sạch, và trong hầu hết các môi trường một số ứng dụng tạo ra lỗi cơ sở dữ liệu ngay cả trong sản xuất.  Tuy nhiên, lỗi được tạo ra bởi các ứng dụng được lặp đi lặp lại: các lỗi tương tự xảy ra ở cùng một nơi bởi vì các lỗi thường là kết quả từ những sai xót kỹ thuật và không thay đổi.  Nếu lỗi bạn lỗi đường cơ sở và đột nhiên thấy xuất hiện từ nhiều nơi khác nhau hoặc bạn thấy mã lỗi hoàn toàn khác nhau, thì bạn nên điều tra những gì đang xảy ra. 53/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.6 Kiểm toán hoạt động của câu lệnh DML  Kiểm toán hoạt động của câu lệnh DML là một yêu cầu phổ biến, đặc biệt là trong trường hợp như dự án Sarbanes-Oxley nơi mà tính chính xác của thông tin tài chính là sự kiện chính. Vệt kiểm toán thay đổi dữ liệu là phổ biến ở hầu hết các kiểm toán chính.  Một yêu cầu kiểm toán liên quan mà đôi khi được nhắc đến (mặc dù nó không phải là phổ biến như kiểm toán các hoạt động DML) liên quan đến việc ghi chép đầy đủ giá trị mới và cũ cho mỗi hoạt động DML. 54/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.6 Kiểm toán hoạt động của câu lệnh DML  Vệt kiểm toán DML và ghi lại các giá trị mới và cũ là một loại kiểm toán quan trọng mà có lẽ bạn sẽ cần. Tuy nhiên, bạn phải cẩn thận với loại kiểm toán này và nhận ra rằng kiểm toán này nên được thực hiện có chọn lọc.  Trong một số trường hợp, người đang có quá vệt kiểm toán và để đơn giản nên thực hiện kiểm toán hoạt động DML. Trong khi đây là kỹ thuật có thể, số lượng dữ liệu có thể được tạo ra là rất lớn, và bạn nên chắc chắn rằng cơ sở hạ tầng kiểm toán của bạn có thể quản lý được, đặc biệt là khi bạn bao gồm giá trị mới và cũ. 55/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.6 Kiểm toán hoạt động của câu lệnh DML  Ví dụ, giả sử bạn có 1.000.000 DML chuyển tác mỗi ngày, và giả định đơn giản là mỗi bản cập nhật một giá trị giao dịch duy nhất, và bạn có 100 bảng trong cơ sở dữ liệu với mỗi bảng có 10 giá trị có thể sẽ được cập nhật, và bạn bắt đầu ra với một cơ sở dữ liệu đó có 10.000 bản ghi trong mỗi bảng.  Mặc dù tính toán này là đơn giản và không chính xác, bạn không nên ngạc nhiên rằng nếu bạn ghi lại những giá trị cũ và mới, sau một năm cơ sở dữ liệu kiểm toán của bạn sẽ có hơn 35 lần so với các cơ sở dữ liệu của chính nó.. 56/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.6 Kiểm toán hoạt động của câu lệnh DML  Vì vậy, khi bạn xem vệt kiểm toán DML, bạn nên chọn có chọn lọc các đối tượng và lệnh để kiểm toán. Ví dụ, bạn có thể quyết định tạo ra những vệt kiểm toán cho một tập hợp con của các bảng cơ sở dữ liệu, cho một nhóm nhỏ hoặc đăng nhập tài khoản, vv. Thậm chí có chọn lọc hơn là lựa chọn những bảng và cột để duy trì các giá trị cũ và mới. 57/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.6 Kiểm toán hoạt động của câu lệnh DML  Kiểm toán DML cũng được hỗ trợ thông qua ba phương pháp chính, nhưng việc so sánh hàng ngày (hoặc định kỳ) không phải là một lựa chọn trong trường hợp này. Ba phương pháp này là sử dụng khả năng của cơ sở dữ liệu, sử dụng một hệ thống kiểm toán bên ngoài, hoặc sử dụng trigger. 58/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.6 Kiểm toán hoạt động của câu lệnh DML Tất cả các cơ sở dữ liệu cung cấp cho bạn một số cách để thực hiện các vệt kiểm toán cho các hoạt động DML. Trong Oracle, ví dụ, bạn có thể sử dụng công cụ log miner được dựa trên redo log. Bởi vì ghi lại tất cả các hoạt động DML (bao gồm cả giá trị cũ và mới), log miner có thể giải nén thông tin này và làm cho nó sẵn sàng phục vụ bạn. Trong SQL Server, bạn có thể sử dụng sự kiện dò vết DOP: 59/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.6 Kiểm toán hoạt động của câu lệnh DML Bảng 5.2 Bảng sự kiện DOP Tên sự kiện Lớp sự kiện Mô tả 28 DOP Event Xảy ra trước khi một câu lệnh SELECT, INSERT, hoặc UPDATE được thi hành. 60/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.2 CÁC LOẠI KIỂM TOÁN 5.2.6 Kiểm toán hoạt động của câu lệnh DML  Đối với cách thứ hai, hệ thống kiểm toán cơ sở dữ liệu bên ngoài hỗ trợ kiểm toán DML dựa trên bất kỳ tiêu chí nào được lọc, bao gồm các đối tượng cơ sở dữ liệu, người sử dụng, ứng dụng, vv. Họ cũng giúp đỡ trong việc thu giữ và nén thông tin này và làm cho nó sẵn sàng để báo cáo, ngay cả khi số lượng dữ liệu rất lớn.  Cuối cùng, cách thứ ba đơn giản là sử dụng các tùy chọn trigger. Nếu bạn không phải là một phần của một dự án kiểm toán mở rộng và chỉ cần tạo một vệt kiểm toán DML cho một vài đối tượng, thêm vào đó gây nên ghi các thông tin vào một bảng kiểm toán cụ thể có thể là điều đơn giản nhất và nhanh nhất để giúp bạn chuyển sang bước tiếp theo của bạn dự án. 61/61 Trường CĐ CNTT HN Việt Hàn Nguyễn Phương Tâm 5.3 THỰC HÀNH KiỂM TOÁN TRÊN ORACLE Thực hiện qua các bước:  Bước 1: Tạo bộ kích khởi DDL với Oracle khởi động sau sự kiện đăng nhập và đăng xuất trong Oracle.  Bước 2: Kiểm toán mã lệnh: kiểm toán hoạt động của câu lệnh DDL, DML,  Bước 3: Tìm hiểu tập tin Alert Log trong Oracle  Bước 4: Đánh giá dựa vào kết quả đạt được.

Các file đính kèm theo tài liệu này:

  • pdfan_toan_co_so_du_lieu_phan_5_2944.pdf
Tài liệu liên quan