Tải bản đầy đủ (.doc) (21 trang)

PHÁT HIỆN XÂM NHẬP CƠ SỞ DỮ LIỆU TRÁI PHÉP

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 (269.42 KB, 21 trang )

CHƯƠNG 5
PHÁT HIỆN XÂM NHẬP CƠ SỞ DỮ LIỆU TRÁI PHÉP
5.1 Giới thiệu
- Mục đích của các biện pháp phát hiện xâm nhập máy tính là phát hiện ra các
loại xâm phạm an toàn cơ bản như:
+ Xâm phạm tính toàn vẹn.
+ Từ chối dịch vụ.
+ Truy nhập trái phép.
- Khó khăn: nảy sinh một số vấn đề làm hạn chế hiệu quả của các biện pháp
phát hiện xâm nhập này, như:
+ Người dùng áp dụng các biện pháp này chưa đúng
+ Các kiểm soát an toàn làm giảm hiệu năng của hệ thống.
+ Những người dùng hợp pháp có thể lạm dụng quyền của mình bằng những
điểm yếu mà các biện pháp phát hiện xâm nhập chưa phát hiện ra.
- Phát hiện xâm nhập là khả năng nhận dạng xâm nhập do các cá nhân gây ra,
bao gồm: những người dùng hệ thống bất hợp pháp ('tội phạm máy tính' cracker) và những người dùng hợp pháp nhưng lại lạm dụng các đặc quyền của
mình ('đe doạ bên trong').
- Ví dụ về các xâm phạm như:
+ Sửa đổi trái phép các tệp để có thể truy nhập vào dữ liệu.
+ Truy nhập hoặc sửa đổi trái phép các tệp người dùng và thông tin.
+ Sửa đổi trái phép các bảng của hệ thống (chẳng hạn như sửa đổi các bảng
định tuyến để chối bỏ sử dụng mạng).
+ Tạo ra các account trái phép hoặc sử dụng trái phép các account hiện có.
- Mô hình xâm nhập: Khả năng phát hiện xâm nhập máy tính phụ thuộc vào
sự xuất hiện của một mô hình xâm nhập. Hiện nay có hai kiểu mô hình xâm
nhập được các hệ thống phát hiện xâm nhập (Intrusion Detection System - IDS)
áp dụng là:
160


 Mô hình phát hiện tình trạng bất thường (Anomaly detection models):


Các mô hình này cho phép so sánh profile (trong đó có lưu các hành vi
bình thường của một người dùng) một cách có thống kê với các tham số
trong phiên làm việc của người dùng hiện tại. Các sai lệch 'đáng kể' so
với hành vi bình thường sẽ được hệ thống IDS báo cáo lại cho chuyên gia
an ninh, các sai lệch được đo bằng một ngưỡng (do mô hình xác định
hoặc chuyên gia an ninh đặt ra).
 Mô hình phát hiện sự lạm dụng (Misuse detection models): Mô hình này
trợ giúp việc so sánh các tham số trong phiên làm việc của người dùng
với các mẫu tấn công đã có, được lưu trong hệ thống..
- Cơ chế làm việc dựa vào kiểm toán: các IDS kiểm soát hành vi của người
dùng trong hệ thống bằng cách theo dõi các yêu cầu mà người dùng thực hiện và
ghi chúng vào một vết kiểm toán thích hợp. Sau đó phân tích vết kiểm toán này
để phát hiện dấu hiệu đáng nghi của các yêu cầu đó.
+ Nhược điểm: trong các hệ thống kiểm toán truyền thống, các kiểm soát
kiểm toán rất phức tạp và được tiến hành sau cùng, đồng thời việc kiểm toán
được thực hiện thủ công với một khối lượng lớn dữ liệu kiểm toán, do đó hạn
chế rất nhiều khả năng làm việc của hệ thống. Dẫn đến các kiểm soát kiểm toán
này không được tiến hành thường xuyên. Kết quả là các tấn công vào hệ thống
không được phát hiện thường xuyên, hoặc chỉ được phát hiện sau khi chúng đã
xảy ra được một thời gian khá lâu.
=> Cần cung cấp các công cụ và các hệ thống sao cho việc kiểm tra dữ liệu
kiểm toán xảy ra một cách tự động hoặc bán tự động, cố gắng phát hiện ra các
xâm phạm trực tuyến, thời gian thực.
(Chú ý: việc kiểm toán thực hiện thủ công, có nghĩa là các chuyên gia an ninh
phải xem xét các vết kiểm toán, nếu thấy đáng nghi thì mới có thể phát hiện ra
tấn công. Nhưng với các công cụ kiểm toán tự động, nó có thể kiểm tra các vết
kiểm toán để xác định là có tấn công hay không và báo về cho chuyên gia an
ninh).

161



- Một số IDS:
+ Các IDS dựa vào việc phân tích các vết kiểm toán do hệ điều hành (OS)
đưa ra, ví dụ như IDES (hệ chuyên gia phát hiện xâm nhập) của SRI.
+ MIDAS của Trung tâm an ninh quốc gia.
+ Haystack System của Thư viện Haystack.
+ Wisdom & Sense của thư viện quốc gia Alamos...
5.2 Các công cụ tự động phát hiện xâm nhập
- Các hệ thống phát hiện xâm nhập (IDS) được sử dụng kết hợp với các kiểm
soát truy nhập, nhằm phát hiện ra các xâm phạm hoặc các cố gắng xâm phạm có
thể xảy ra. Hình 5.1 minh hoạ kiến trúc cơ bản của một IDS.

Vết kiểm toán
(Audit trail)

CSDL mẫu
tấn công

Nhân viên an ninh
(Security officer)

Phát hiện sự
bất thường
(Anomaly
detection)

Phân tích sự
lạm dụng
(Misuse

analysis)

Mức nghi ngờ
(Suspicion level)

Hình 5.1 Kiến trúc của một IDS

162

CSDL profile


Phân
tích bất
thường

Tiền
xử lý

So
sánh
mẫu

Cảnh
báo

- Khi phân tích an toàn dữ liệu kiểm toán, một mục đích của các công cụ tự
động là giảm khối lượng dữ liệu kiểm toán được xem xét một cách thủ công. Các
công cụ này có thể đưa ra các bằng chứng về sự cố gắng xâm phạm an toàn hệ
thống trực tuyến hoặc ngoại tuyến.

- Sử dụng dữ liệu kiểm toán, ta phân loại các đe doạ có thể xảy ra với hệ
thống như: các đối tượng xâm nhập bên ngoài, xâm nhập bên trong và đối tượng
lạm dụng quyền gây ra.
+ Trong số các đối tượng xâm nhập bên trong, nguy hiểm chính là những
‘người dùng bí mật’ được định nghĩa là những người có thể tránh được các kiểm
soát truy nhập và kiểm toán, bằng cách sử dụng các đặc quyền của hệ thống,
hoặc hoạt động tại mức thấp hơn mức kiểm toán.
=> Chúng ta có thể giải quyết tình trạng này bằng cách:
+ Giảm mức kiểm toán xuống thấp hơn. (Ví dụ, mức kiểm toán chỉ đến mức
file, bảng CSDL, ta giảm xuống mức bản ghi, mức cột, mức phần tử...)
163


+ Định nghĩa các mẫu sử dụng thông thường của các tham số hệ thống (như
hoạt động của CPU, bộ nhớ và sử dụng ổ đĩa) và so sánh chúng các giá trị thực
trong quá trình sử dụng hệ thống.
- Từ các vết kiểm toán ghi lại được, các IDS tiến hành một số kiểu phân tích
như sau: một số chương trình so sánh hoạt động của người dùng với các profile
(phát hiện sự bất thường), một số chương trình khác tiến hành so sánh với các
phương pháp tấn công đã biết (phát hiện lạm dụng) và một số chương trình thì
tiến hành cả hai.
- Hoạt động của IDS:
+ Các IDS chấp nhận các bản ghi kiểm toán từ một (hoặc một số) máy chủ
(host).
+ Trích lọc ra các đặc điểm liên quan đến phân tích và tạo ra một profile có
lưu các hoạt động
+ So sánh nó với CSDL bên trong của máy chủ. Nếu CSDL này là một CSDL
cho phát hiện bất thường thì việc so sánh mang tính chất thống kê, còn nếu nó là
một CSDL lạm dụng thì tiến hành đối chiếu mẫu khi so sánh.
+ Cuối cùng, IDS sử dụng các phương pháp so sánh như: suy diễn, phân tích

dự báo, hoặc các phương pháp xấp xỉ khác.
=> Kết quả phân tích thu được:
+ Có thể được lưu giữ trong CSDL của IDS
+ Được dùng để sửa đổi các bản ghi kiểm toán, bằng cách bổ sung thêm/xoá
bỏ một số đặc điểm, rồi chuyển cho bộ phận phân tích của hệ thống, nhờ đó IDS
có thể kiểm soát được tình hình.
Chúng ta có thể làm được điều này bằng cách kiểm soát các đặc điểm được
sử dụng khi phân tích, có nghĩa là tuân theo một mô hình hành vi.
- Một hướng tiếp cận (đã được đề xuất từ lâu) là đưa các cửa sập
(trapdoors) vào trong hệ thống để đối phó lại những kẻ xâm nhập.
- Một hướng tiếp cận phổ biến là xác định các quy tắc. Chúng định
nghĩa các mẫu hành vi cho các lớp người dùng. Thông qua hướng tiếp cận
này, người ta có thể phát triển các IDS chuyên gia. Thông thường, các
phân tích trợ giúp có thể kết hợp các kiến thức chuyên gia (về các vấn đề
164


an toàn) với khả năng xử lý chính xác và kết hợp một khối lượng lớn dữ
liệu của hệ thống: tốc độ xử lý trợ giúp hệ thống tự động trong việc kiểm
toán các hoạt động đáng ngờ để phát hiện và ngừng ngay các hoạt động
đó, hoặc đảm bảo các biện pháp phòng thủ một cách tự trị (ví dụ, không
cho kẻ xâm nhập tiến hành đăng nhập).
Hạn chế của hướng tiếp cận dựa vào quy tắc chính là dữ liệu kiểm toán
được tìm kiếm cho các tấn công đã biết, trong khi nhiều xâm nhập có thể xảy
ra theo các chế độ chưa được biết. Hơn nữa, việc viết quy tắc rất phức tạp,
đồng thời việc duy trì nó cũng rất khó khăn.
- Một hướng tiếp cận nữa là sử dụng mô hình dựa vào lập luận
(model-based reasoning). Đây là mô hình dựa vào các giả thiết, kẻ xâm
nhập sử dụng các thủ tục đặc thù để tấn công vào một hệ thống, chẳng
hạn như tấn công mật khẩu hệ thống hoặc truy nhập vào các tệp đặc

quyền. Hệ thống phát hiện xâm nhập suy luận, lấy mô hình làm cơ sở, có
nghĩa là hệ thống tìm kiếm những kẻ xâm nhập bằng cách tìm kiếm các
hoạt động nằm trong kịch bản tấn công đã được giả thiết từ trước. Các
kịch bản biến đổi tuỳ thuộc vào kiểu của hệ thống và kẻ xâm nhập.
Lợi ích của mô hình dựa vào lập luận trong việc phát hiện xâm nhập chính
là khả năng chọn lọc dữ liệu kiểm toán của nó: dữ liệu liên quan được tập
trung lại, do đó giảm bớt số lượng dữ liệu được mang ra xem xét. Tuy nhiên,
chúng ta có thể tuân theo các hoạt động ngăn ngừa chống xâm nhập, khi hệ
thống có khả năng dự báo. Với các hệ chuyên gia, hướng tiếp cận bị hạn chế,
bởi vì nó tìm kiếm các kịch bản xâm nhập đã biết, nhưng vẫn có thể tồn tại
nhiều điểm yếu và các tấn công không được biết trước. Do vậy, cần nghiên
cứu kết hợp mô hình dựa vào lập luận với việc phát hiện sự không bình
thường mang tính thống kê.
Còn nhiều hướng tiếp cận khác (không dựa vào sự nghi ngờ) định nghĩa các
hành vi được chấp nhận.
Các dự án gần đây khai thác khả năng của các mạng thần kinh để đối phó lại
các tấn công xâm nhập. Mạng thần kinh giải quyết vấn đề của các phương pháp
thống kê. Hiện nay, mặc dù có nhiều triển vọng nhưng hướng tiếp cận này
không được phát triển thích đáng để có thể thay thế các thành phần thống kê
nằm trong các nguyên mẫu hiện có.
165


- Với các xâm nhập đặc biệt (như virus) và các xâm nhập nói chung, các hệ
thống hiện có được phân loại thành:
+ Các bộ giám sát sự xuất hiện (appearance monitors): Bộ giám sát sự xuất
hiện là công cụ phân tích tĩnh, được sử dụng để phát hiện sự không bình thường
trong các tệp nguồn và các tệp thực hiện.
+ Các bộ giám sát hành vi (behaviour monitors). Bộ giám sát hành vi tự động
xem xét hành vi của các tiến trình khi có hoạt động nguy hiểm xảy ra. Theo sự

phân loại này, IDES là một bộ giám sát hành vi trong thời gian thực, nó nhận
dạng một tập các tham số kiểm toán, thiết lập hệ thống và các profile người
dùng.
5.3 Hướng tiếp cận dựa vào các hệ chuyên gia - hệ thống IDES
Sau đây là các lý do cơ bản lý giải tại sao người ta sử dụng các hệ chuyên gia
phát hiện xâm phạm:
• Nhiều hệ thống đang tồn tại có các điểm yếu về an toàn, chính vì
vậy các đe doạ xâm nhập có thể xảy ra. Người ta thường khó có thể xác
định chính xác hoặc loại trừ các điểm yếu này, vì các lý do kỹ thuật và
kinh tế.
• Việc thay thế các hệ thống đang tồn tại (với các điểm yếu đã biết)
bằng các hệ thống an toàn lại không dễ dàng, bởi vì các hệ thống này
thường phụ thuộc vào hệ thống ứng dụng, hoặc việc thay thế đòi hỏi nhiều
nỗ lực rất lớn về kỹ thuật và kinh tế.
• Việc phát triển các hệ thống an toàn tuyệt đối là vô cùng khó khăn,
thường là không thể.
• Thậm chí, các hệ thống an toàn cao là các điểm yếu dễ bị người
dùng hợp pháp lạm dụng.
IDES là một hệ thống thời gian thực. IDES giám sát các đe doạ bên ngoài
(người dùng cố gắng xâm nhập vào hệ thống) và các đe doạ bên trong (người
dùng cố gắng lạm dụng các quyền của mình).
5.3.1 Cơ sở
IDES sử dụng cách tiếp cận chuyên gia, bằng cách giả thiết rằng việc khai
thác các điểm yếu của hệ thống do các hành vi xâm phạm gây ra sẽ dẫn đến việc
sử dụng bất thường. Do đó, bằng việc quan sát hành vi của người dùng, ta có thể
166


phát hiện ra những hành vi bất thường bằng cách định nghĩa các hành vi bình
thường, các quy tắc đánh giá cho việc phát hiện hành vi bất thường.

Các mối quan hệ giữa các hành vi đe dọa
Các mối quan hệ cơ bản giữa các loại xâm nhập và hành vi bất thường trong
IDES là:
- Sự cố gắng xâm nhập: Nhiều lần cố gắng đăng nhập sử dụng những mật
khẩu khác nhau với cùng một account-id, hoặc sử dụng cùng một mật khẩu với
nhiều tên account khác nhau.
- Sự giả mạo: xâm nhập qua đăng nhập hợp pháp (nghĩa là tên tài khoản và
mật khẩu lấy cắp được hoặc sao chép được, chúng là hợp lệ) và sau đó sử dụng
hệ thống khác mẫu thông thường (như: duyệt thư mục thay vì những hành động
bình thường: soạn thảo, biên dịch, liên kết,…).
- Xâm nhập bằng những người dùng hợp pháp: những người dùng hợp pháp
cố gắng phá vỡ các kiểm soát an toàn (họ sử dụng các chương trình khác với
bình thường chúng vẫn chạy). Nếu sự xâm nhập này thành công, họ sẽ truy nhập
được vào các file và các lệnh (bình thường bị cấm), do đó thể hiện những hành
vi bất thường.
- Sự truyền bá dữ liệu bởi những người dùngh hợp pháp: một người dùng cố
gắng truy nhập vào dữ liệu nhạy cảm bằng cách đăng nhập ở những thời điểm
khác thường, bằng cách viết theo kiểu khác thường (nhiều lần thực hiện đọc), sử
dụng các máy in từ xa, hoặc sinh ra nhiều bản sao hơn bình thường.
- Suy diễn bởi những người dùng hợp pháp: lấy được dữ liệu bí mật bằng
cách gộp hoặc suy diến.
- Con ngựa thành Troa: là một đoạn chương trình được chèn vào hoặc thay
thế một chương trình, nó có thể thay đổi tốc độ sử dụng CPU, bộ nhớ, thiết bị …
- Virus:
- DOS
Phân tích hành vi bất thường
Việc định nghĩa mô hình phát hiện xâm nhập này cần yêu cầu định nghĩa các
profile và các quy tắc. Nói riêng, việc định nghĩa các profiles có thể dùng các
thuật ngữ metrics và các mô hình thống kê (statistical models). Một metric là
167



một biến ngẫu nhiên x thể hiện một lượng vượt quá khoảng thời gian quan sát
cho trước (hoặc là khoảng thời gian cố định, hoặc là khoảng thời gian giữa 2 sự
kiện tương quan). Sự quan sát này là theo dõi các hành động của người dùng,
các hành động này là các điểm mẫu xi của x được sử dụng trong một mô hình
thống kê để xác định xem một biến quan sát mới có được coi là ‘bình thường’
hay không. Mô hình thống kê này độc lập với sự phân phối của x, do đó tất cả
hiểu biết về x có thể đạt được từ những biến quan sát đó.
Sau đây ta sẽ tìm hiểu các metrics và các mô hình thống kê để phân tích các
hành vi bất thường.
Metrics
Các metrics thể hiện cách thức nhóm những biến quan sát đơn lẻ của hành vi
của một người dùng để tạo ra một profile liên quan đến hành vi của người dùng
đó. Một số metric có thể được sử dụng như:
- Event Counter (bộ đếm sự kiện): x là số sự kiện liên quan đến một khoảng
thời gian cho trước, khoảng thời gian này thỏa mãn các thuộc tính đã cho. Ví dụ,
x có thể mô tả số lần đăng nhập trong một giờ, số lần một lệnh cụ thể được thực
hiện trong một phiên làm việc, số lượng các mật khẩu sai trong một phút, hay số
lương các truy nhập trái phép vào một file trong một ngày.
- Time interval: x là khoảng thời gian giữa hai sự kiện liên quan: ví dụ
khoảng thời gian giữa hai lần đăng nhập liên tiếp liên quan đến một tài khoản
đơn lẻ.
- Resource measurement: x là lượng tài nguyên được sử dụng bởi một hoạt
động của hệ thống trong một khoảng thời gian đã cho: ví dụ, tổng số trang được
in bởi một người dùng trong một ngày, tổng thời gian CPU của một chương
trình đang chạy, hay số lượng các bản ghi được đọc trong 1 ngày. Chú ý
Resource measurement có thể thuộc kiểu event counter hay time interval, ví dụ
số lương các trang được in là một event counter.
Mô hình thống kê – statistical models

Với một metric đã cho của một biến ngẫu nhiên x và n biến quan sát x1,
x2,..,xn, mục đích của một mô hình thống kê của x là để xác định xem nếu có một
biến quan sát mới xn+1 được so sánh là bất thường với các biến trước đó. Một số
mô hình thống kê được sử dụng cho mục đích này là:
168


- Operational model – mô hình thao tác: Mô hình này giả thiết rằng
sự bất thường có thể xác định được bằng cách so sánh một biến quan sát
mới của x với một giới hạn cố định. Giới hạn cố định này sẽ được tính
nhờ các biến quan sát trước của x. Mô hình này có thể áp dụng với các
metric để chỉ ra các giá trị ngưỡng tồn tại liên quan đến các xâm nhập. Ví
dụ, 3 lần đăng nhập sai có thể bị nghi ngờ là một dạng đe dọa xâm nhập,
hay một truy nhập được thực hiện bằng cách đăng nhập một tài khoản đã
không sử dụng 2 tháng được coi là một xâm nhập.
- Mô hình độ lệch trung bình và độ lệch chuẩn: mô hình này dựa vào
giả thiết rằng một biến quan sát mới được xem là ‘bình thường’ nếu nó
nằm trong khoảng tin cậy: avg ± d × stdev trong đó avg và độ lệnh chuẩn
stdev:
avg =

x1 + ... + x n
n

stdev = (

x12 + ... + x n2
− avg 2 )
n −1


và d là một tham số.
Mô hình này có thể áp dụng với tất cả các metrics được mô tả trước đó.
Thuận lợi của nó là không có hiểu biết ban đầu nào về hoạt động bình
thường của người dùng được yêu cầu, thay bởi đó, mô hình ‘học’ từ các
biến quan sát và có thể dễ dàng so sánh giữa những người dùng, trong đó
những gì là ‘bình thường’ với một người dùng có thể ‘khác thường’ với
những người dùng khác.
- Multivaried model – Mô hình này tương tự với mô hình trên, trừ
thực tế là nó dựa vào tương quan giữa hai hoặc hơn hai metric. Mô hình
này
- Markovian model: mô hình này xét mỗi kiểu sự kiện (yêu cầu của người
dùng) như một biến trạng thái, và sử dụng một ma trận chuyển đổi trạng
thái để mô tả các tần suất biến đổi giữa các trạng thái. Một biến quan sát
mới được gọi là 'bình thường' nếu xác suất của nó được xác định bởi trạng
thái trước đó và bởi ma trận chuỷên đổi, là cao. Mô hình này chỉ có thể áp
dụng cho metric event counter, hữu ích trong việc kiểm soát sự biến đổi
giữa các lệnh đã cho, khi chuỗi các lệnh này liên quan đến nhau.
169


- Time series model: Mô hình này sử dụng cả hai event counter và
measurement of resource và interval metric, được xác định bởi thứ tự và
khoảng thời gian xảy ra giữa các biến quan sát và các giá trị của các biến
quan sát đó. Một biến quan sát mới được gọi là 'bất thường' nếu xác suất
của sự xuất hiện của nó là quá thấp. Thuận lợi của mô hình này là nó cho
phép đánh giá hành vi của người dùng. Nhưng bất lợi của nó là chii phí
cao.
Sự mô tả profile
Một số profile được sử dụng để so sánh hành vi thực của những người dùng
được mô tả trong profile. Mỗi một profile sử dụng một metric và một mô hình

thống kê.
Các profile được xác định với các chủ thể thực hiện hành động, xác định các
đối tượng là nơi các hành động được thực hiện, xác định loại hành động. profile
hành vi có thể được xác định cho mỗi chủ thể trong mỗi đối tượng, hoặc cho
mỗi lớp chủ thể/đối tượng. Hình sau chỉ ra tất cả các kết nối chủ thể/đối tượng
có thể được kiểm soát. Trong hình này, system nghĩa là các hành động của bất
kỳ chủ thể nào trên bất kỳ đối tượng hệ thống nào đều được xem xét; subject
nghĩa là các hành động được tạo ra bởi một chủ thể đã cho trên bất kỳ đối tượng
hệ thống nào đều được xét; object nghĩa rằng các hành động của bất kỳ chủ thể
nào trên một đối tượng đã cho đều được xét.
System

Subject class

Object class

Subject class - Object class

Subject

Object

Subject - Object class

Subject class- Object
170

Subject - Object



Hình. Hệ phân cấp các phần tử mà các profile hành vi định nghĩa

Các profile hoạt động đăng nhập và phiên làm việc
Các profile này ghi các hành động được thực hiện bởi một chủ thể (người
dùng) trên các đối tượng được hiển thị trên các site đăng nhập của người dùng
(các site này là các máy đầu cuối, các máy trạm, các mạng, các máy chủ từ
xa, ...). Các profile đó có thể được mô tả cụ thể bởi các thuật ngữ sau:
- Tần số đăng nhập: profile này kiểm soát tần số đăng nhập bằng cách sử
dụng metric event counter và mô hình thống kê độ lệch trung bình/chuẩn. Bởi vì
hành vi của người dùng có thể thay đổi đáng kể trong suốt quá trình làm việc
trong 1 tuần, những sự kiện đăng nhập có thể được biểu diễn như một vector các
sự kiện được tham số hoá, với chú ý đến ngày trong tuần (được xét là một ngày
cụ thể, hoặc phân biệt giữa ngày làm việc và ngày cuối tuần) và chú ý đến
khoảng thời gian trong ngày (thời gian, sự quay vòng, sáng/chiều, tối/đêm). Các
profile dựa vào đăng nhập có thể được sử dụng để phát hiện những người dùng
kết nối qua số tài khoản không hợp lệ trong suốt những giờ không phải giờ làm
việc. Các profile đăng nhập có thể được định nghĩa cho những người dùng đơn
lẻ (hoặc nhóm người dùng), và các lớp đối tượng có thể được tạo thành theo
kiểu vị trí, kiểu kết nối.
- Tần số vị trí: tham số này kiểm soát tần số đăng nhập từ các site khác nhau,
bằng cách sử dụng event counter và mô hình độ lệch trung bình/ chuẩn. Một số
phương pháp liên quan đến profile này có thể được xét một cách riêng biệt, theo
ngày trong tuần và khoảng thời gian trong ngày; bởi vì một người dùng có thể
kết nối từ một vị trí trong suốt những giờ làm việc và từ vị trí khác trong những
giờ không phải giờ làm việc. Việc phân tích tần số vị trí có ích trong việc xác
định xâm nhập, ví dụ trong trường hợp một người nào đó đăng nhập vào hệ
171


thống qua một tài khoản cụ thể từ một vị trí không bao giờ được những người

dùng hợp lệ sử dụng. Đồng thời cho phép nhận ra những xâm phạm của những
người dùng hợp lệ. Đồng thời có thể phát hiện ra xâm nhập từ những người
dùng làm việc ở các máy đầu cuối không được quyền, nhưng lại kết nối từ các
máy có đặc quyền.
- Đăng nhập lần cuối: profile này kiểm soát thời gian trôi qua từ lần đăng
nhập cuối cùng, sử dụng metric time interval và mô hình thao tác. Profile này
nên được định nghĩa cho những người dùng đơn lẻ và các lớp vị trí. Không cần
thiết định nghĩa các profile cho mỗi site đơn lẻ, bởi vì vị trí chính xác có thể là
không liên quan.
- Session duration- khoảng thời gian của phiên làm việc: Tham số này kiểm
soát khoảng thời gian của một phiên làm việc sử dụng metric time interval và
mô hình độ lệch trung bình/chuẩn. Profile này có thể được định nghĩa cho những
người dùng đơn lẻ hoặc các nhóm người dùng, nhưng nên định nghĩa cho các
lớp đối tượng. Độ lệch so với hành vi chuẩn được đánh dấu là các tấn công.
- Session output: tham số này kiểm soát số lượng đầu ra được sinh ra tư một
máy đầu cuối, trong một phiên làm việc hoặc trong một ngày, sử dụng metric
đếm tài nguyên và mô hình độ lệch trung bình/chuẩn. Định nghĩa profile này
cho các site riêng hoặc các lớp vị trí sẽ có ích trong việc xác định sự quá tải dữ
liệu truyền tới các vị trí ở xa, đó được coi là một hành động không hợp lệ truyền
dữ liệu nhạy cảm.
- CPU per session, I/O per session, pages per session,..
các tham số này kiểm soát việc sử dụng các tài nguyên trong một phiên làm
việc sử dụng metric đánh giá tài nguyên và mô hình độ lệch trung
bình/chuẩn.Các profile hữu ích trong việc xác định các xâm nhập.
- Lỗi mật khẩu: profile này kiểm soát số mật khẩu lỗi liên quan đến một đăng
nhập đã cho sử dụng metric event counter và mô hình thao tác. Profile này có
ích để phát hiện xâm nhập với những người dùng đơn lẻ và tất cả các người
dùng hệ thống.
- Lỗi vị trí: phần tử này kiểm soát các lỗi đăng nhập sử dụng event counter và
mô hình thao tác. Profile này có thể được định nghĩa cho những người dùng dơn

và cho các nhóm vị trí. Các nhóm vị trí có thể được xét bởi vì một site cụ thể

172


không liên quan đến các mục đích kiểm soát, ngược lại thực tế rằng một vị trí
không hợp lệ thì lại rất có ý nghĩa.
Profile này có thể được sử dụng để xác định các cố gắng xâm nhập hoặc các
cố gắng kết nối từ các máy đặc quyền.
Các profile truy nhập file
Các profile truy nhập file xét các phép toán 'read', 'write', 'delete' và 'append'
được thực hiện trên một file. Các file có thể được phân loại theo kiểu file (text,
file thực thi, thư mục,...) theo người dùng chúng hoặc file hệ thống, hoặc các đặc
tính khác. Một chương trình cũng là một file. Số các file trong một hệ thống có
thể rất cao, vì vậy không thể kiểm soát cho từng file.
Tuy nhiên, các file liên quan đến bảo mật có thể kiểm soát riêng, ví dụ trong
các file mật khẩu, các file chứa quyền, chứa dữ liệu kiểm toán hoặc các bảng
định tuyến trong mạng.
Các profile truy nhập file có thể được xác định với:
- Tần số read, write, delete: tham số này kiểm soát số lượng truy nhập và các
kiểu chế độ truy nhập. Profile tần số truy nhập với các phép toán 'đọc'/'ghi' có
thể được xác định cho những người dùng đơn lẻ và các file hoặc cho các lớp
người dùng hay các lớp file. Các profile cho các phép toán 'create'/'delete' chỉ có
nghĩa với việc gộp file, bởi vì mỗi file được tạo ra hoặc bị xoá nhiều nhất 1 lần.
Sự bất thường trong truy nhập 'đọc'/'ghi' đối với những người dùng đơn lẻ có thể
thể hiện tấn công.
- Các bản ghi được read/written: các tham số này kiểm soát số lượng các bản
ghi được đọc/được ghi sử dụng metric đánh giá trài nguyên và mô hình độ lệch
trung bình/chuẩn. Các profile này có thể được đánh giá cho mỗi truy nhập hoặc
trong một ngày. Chúng có thể được định nghĩa cho những người dùng đơn, các

file đơn hoặc cho các lớp người dùng, lớp file. Sự bất thường có thể báo hiệu
những sự cố gắng để đạt được dữ liệu nhạy cảm qua quá trình suy diễn và gộp
(ví dụ, yêu cầu số lượng lớn dữ liệu tương quan nhau).
- Lỗi đọc, ghi, xoá, tạo: Tham số này kiểm soát số các xâm phạm truy nhập
trong một khoảng thời gian cho trước (ví dụ 1 ngày), sử dụng event counter và
mô hình thao tác. Nó có thể được định nghĩa cho những người dùng đơn, file
đơn, hoặc cho các nhóm người dùng và các lớp file. Các profile người dùng đơn
với một lớp chứa tất cả các file, sẽ có ích trong việc phát hiện những người dùng
173


đang cố gắng lặp lại việc truy nhập vào các file ko hợp lệ. Các profile của file
đơn, với tất cả các người dùng có thể giúp phát hiện những truy nhập không hợp
pháp vào các file có độ nhạy cảm cao.
Profile truy nhập CSDL
Truy nhập CSDL cũng được coi như truy nhập file. Bởi vì trong thực tế trong
các hệ thống CSDL quan hệ, mỗi quan hệ được lưu trongnhư một file riêng lẻ,
truy nhập tới một quan hệ tương tự như truy nhập file. Tuy nhiên, các phép toán
thì khác nhau trong một CSDL, 'retrieve', 'update', 'insert' và 'delete' truy nhập
phải được xét cho các bản ghi trong quan hệ đó, và các chế độ 'create' và 'delete'
cho toàn bộ quan hệ đó. Các phép toán 'retrieve' trong CSDL đó tương ứng với
các phép toán 'đọc file'; 'update', 'insert' và 'delete' tương ứng với các phép toán
'ghi file'.
Nếu chức năng kiểm toán được thực hiện ở mức quan hệ, thì các profile được
sử dụng để kiểm soát hoạt động của file, có thể được sử dụng để kiểm soát hoạt
động của CSDL. Nếu việc kiểm toán được thực hiện ở mức thấp hơn (ví dụ, các
bản ghi đơn), khi đó các nguyên lý tương tự có thể được áp dụng tới các file,
nhưng DBMS đó phải được cung cấp hỗ trợ trong việc tạo ra dữ liệu kiểm toán
ở mức bản ghi. Một hệ thống phát hiện xâm nhập ở mức bản ghi thì thường
không khả thi. Với một số hệ thống, cần kiểm soát đầy đủ ở mức 'CSDL', mà

không cần phân tích CSDL thành các file cấu thành của nó.
Sử dụng một CSDL và một tập tiến trình, IDES kiểm soát:
- Các tấn công xâm nhập.
- Giả mạo.
- Xâm nhập hệ thống bằng những người dùng bên ngoài.
- Các tấn công suy diễn và gộp.
- Các kênh truyền thông tin: hai loại kênh chuyển đổi được kiểm soát: các
kênh bộ nhớ, có thể liên quan đến sự bão hoà tài nguyên và các điều kiện ngoại
lệ; và các kênh thời gian (dẫn tới việc suy diễn sử dụng các đặc tính thời gian hệ
thống)
- Từ chối dịch vụ.
5.3.2 Mô hình IDES
Mô hình an toàn IDES bao gồm các phần tử sau: (hình 5.3):
1. Subject:

174


5.4 Kiểm toán trong các hệ thống quản trị CSDL tin cậy (TDBMS)
- Các yêu cầu kiểm toán của TCSEC chỉ rõ: một tập các sự kiện (có thể đếm
được) cần được xác định rõ và mỗi sự kiện phải liên quan đến một người dùng
và được ghi lại trong audit log - nhật ký kiểm toán có bảo vệ, cùng với ngữ cảnh
phù hợp của sự kiện đó (proper event context), chẳng hạn như ID của người
dùng, ngày, giờ, kiểu sự kiện, v.v.
- Audit log đặc biệt cần thiết khi thiếu các biện pháp an toàn. Việc sử dụng
hiệu quả cơ chế kiểm toán cũng có thể phát hiện ra các thiếu sót và các điểm yếu
trong hệ thống.
- Sau đây là các câu hỏi chính cần được nhận diện:
 Volume dữ liệu kiểm toán (Audit data volume): Các volume dữ liệu lớn
ảnh hưởng như thế nào đến hiệu năng và hoạt động của các hệ thống

TDBMS?
 Tính nhạy cảm của ứng dụng (Application sensitivity): Trong các hệ
thống tin cậy, việc ghi lại các sự kiện là một chức năng của chính sách
kiểm soát truy nhập, đúng hơn là một chức năng của ứng dụng. Điều đó
lý giải tại sao người ta mong muốn chức năng kiểm toán của TDBMS có
thể tương thích với các ứng dụng (ví dụ, để đảm bảo tính toàn vẹn hoặc bí
mật)?
 Nhật ký kiểm toán và nhật ký giao tác (audit log and transaction log):
Hầu hết các DBMS thương mại ghi lại các sự kiện "sửa đổi" trong CSDL,
transacion log thường xuyên được sử dụng để lưu giữ thông tin về tình
trạng hỏng hóc của CSDL, hoặc để nhận dạng nguồn của các sửa đổi trên
CSDL. Audit log và transaction log có thể đáp ứng phần nào trong chức
năng kiểm toán an toàn?

175


 Thực tế và sự đảm bảo (Verisimilitude and assurance): Quan hệ nào tồn
tại giữa các sự kiện (có thể ghi lại được) trên một TDBMS và những gì
xảy ra thực tế trên hệ thống? Ví dụ, câu truy vấn được ghi lại trước khi
thực hiện, nhưng sau khi thực hiện xong câu truy vấn này, có nên kết thúc
ghi? Có thể trả lại dữ liệu cho người đưa ra câu truy vấn mà vẫn đảm bảo
được tính tương thích về mặt ngữ nghĩa của câu truy vấn?
Khi kiểm toán trên các hệ thống tin cậy, các yêu cầu của TCSEC là ghi lại
các quyết định dàn xếp truy nhập. Ban đầu, các yêu cầu của TCSEC hướng
kiểm toán trên các hệ thống tin cậy, với mối quan tâm chủ yếu là toàn vẹn dữ
liệu. Sau đó, chúng được mở rộng cho các hệ thống TDBMS liên quan tới một
số vấn đề, chẳng hạn như các kiểm soát truy nhập phức tạp, các điểm yếu bổ
sung, độ chi tiết và volume cao hơn, các đối tượng truy nhập và lạm dụng quyền
(trong nhiều TDBMS, việc lạm dụng quyền do những người dùng hợp pháp gây

ra có thể dẫn đến rủi ro cao hơn, so với việc lạm dụng quyền do những người
dùng trái phép gây ra).
Các kết quả nghiên cứu
Sau đây là các kết quả nghiên cứu cơ bản:
 Các mục tiêu của kiểm toán phụ thuộc phần lớn vào ứng dụng,
chính sách an toàn và các hiểm hoạ môi trường. Tuy nhiên, khả năng lấy
dữ liệu để sử dụng khi kiểm toán có thể bị hạn chế trong kiến trúc của
TDBMS. Điều này có nghĩa là chính sách và ứng dụng quyết định những
gì nên được kiểm toán, trong khi đó kiến trúc hệ thống quyết định những
gì có thể kiểm toán.
 Một số sản phẩm TDBMS cung cấp dữ liệu kiểm toán. Dữ liệu này
thích hợp hơn so với dữ liệu được OS của máy chủ tập hợp. Hơn nữa,
nhiều dữ liệu giao tác được tập hợp, nhưng chỉ có một số ít trong đó được
phân tích bởi vì thiếu các công cụ tự động.
 Các phân tích yêu cầu tập hợp dữ liệu và đảm bảo tính tương quan
của dữ liệu kiểm toán trong các giai đoạn xử lý câu truy vấn. Người ta có
thể áp dụng được điều này nếu việc dàn xếp truy nhập được thực hiện tại
các mức kiến trúc và mức trừu tượng khác nhau, thông qua các cơ chế
khác nhau.

176


 Kỹ thuật phát hiện xâm nhập được thể hiện rõ trong một số thành
công khi sử dụng các vết kiểm toán OS và có thể mở rộng cho việc phân
tích các vết kiểm toán TDBMS.
 Tuỳ thuộc vào "thực tế" của sự kiện được ghi trong các vết kiểm
toán, câu hỏi nảy sinh là sự kiện được kiểm toán có thực sự xảy ra hay
không.
Quản lý giao tác đặt ra các vấn đề xuất phát từ ảo tưởng: các sự kiện xác định

nào đó thực sự xảy ra trên CSDL, nhưng không phải như vậy. Điều này xảy ra
khi một giao tác không được hoàn thành và DBMS phục hồi CSDL. Các vấn đề
về tính bí mật cũng nảy sinh. Trong thực tế, trước khi được lưu giữ, một giao tác
có thể thử các hoạt động ghi và đọc. Vì vậy, một vết kiểm toán đúng đắn có thể
chứa profile của các sự kiện. Đây là các sự kiện đã xảy ra trong các giao tác bị
huỷ bỏ. Nói cách khác, hệ thống kiểm toán phải phân biệt được các sự kiện kiểm
toán, sự kiện nào là sự kiện được hoàn tất, với từng sự kiện thì thời gian tác
động của nó ra sao. Ví dụ, cơ chế quản lý giao tác có thể dừng hoặc huỷ bỏ tác
động của một phép thử ghi để đáp ứng các sự kiện sau đó. Vì vậy, chúng ta sử
dụng các công cụ phân tích kiểm toán để làm sáng tỏ các sự kiện truy nhập và
trình tự của chúng trong phạm vi các sự kiện hoàn tất giao tác.
Khi kiểm toán, các nhà phát triển DBMS đã mang nhiều hướng tiếp cận khác
nhau vào trong các cơ chế chọn lựa, tuỳ thuộc vào các công cụ dự định sử dụng
khi xử lý dữ liệu kiểm toán (các công cụ OS hoặc một DBMS). Các thương
nhân thường thiết lập vết kiểm toán như là một bảng trong từ điển dữ liệu, sử
dụng SQL để lấy lại và phân tích dữ liệu kiểm toán.
Nói chung khi DBMS back- end không tin cậy được ghép thêm vào các kiến
trúc hệ thống có OS tin cậy, khả năng thiết lập tùy thuộc vào các nguyên tắc
được trình bày trong phần "Thiết kế CSDL an toàn", ở đây có hai vấn đề cơ bản
liên quan đến kiểm toán:
1) Nếu câu truy vấn được lấy ở dạng văn bản và được OS/TCB ghi lại
trước khi chuyển tới DBMS back- end, người ta có thể làm như thế nào để
xác định: đáp ứng của DBMS và dữ liệu trả lại có đúng với ngữ nghĩa hình
thức của câu truy vấn hay không?
2) Nếu một phiên bản của câu truy vấn được phân tích cú pháp (hoặc
tuân theo), OS/TCB lấy nó ra và ghi lại trước khi chuyển tới DBMS back177


end, người ta có thể làm như thế nào để xác định: đáp ứng của DBMS và
dữ liệu trả lại có đúng với ngữ nghĩa học hình thức của câu truy vấn hoặc

dạng được phân tích/tuân theo cú pháp của câu truy vấn hay không?
Hơn nữa, ở đây không có các câu trả lời thoả mãn các câu hỏi này. Thay thế
vào đó, khi quan tâm đến khối các kiến trúc an toàn DBMS, thậm chí với cả các
DBMS không tin cậy, chúng ta có thể giải quyết một số vấn đề và tồn tại các kết
quả khác nhau.
• Các kiến trúc này không nhất thiết đưa chính sách truy nhập bắt
buộc vào chương trình không tin cậy bất kỳ, do vậy các yêu cầu của
TCSEC MAC nên được các kiến trúc này duy trì.
• Có thể phê chuẩn việc xoá các quan hệ/các CSDL, bằng cách
chứng minh rằng câu truy vấn (lệnh của một người dùng) được chương
trình tin cậy lấy ra, hoặc chứng minh rằng ở đây tồn tại một ánh xạ giữa
đối tượng của CSDL và các đối tượng của OS, hoặc chứng minh rằng OS
ghi lại quá trình tham gia của nó trong sự kiện xoá kết quả.
• Độ chi tiết ánh xạ giữa các đối tượng của DBMS/OS cũng liên quan
đến kiểm toán, tuỳ thuộc vào các dạng cập nhật khác, bao gồm cả yêu cầu
tái sử dụng của đối tượng. Nếu OS/TCB phải bảo vệ các quan hệ cá nhân
hoặc các bộ, nó có thể quyết định sửa đổi hoặc xoá câu truy vấn nào. Nói
cách khác, chúng ta vẫn có thể nhận dạng được các thông tin thô mặc dù
giá trị của nó cho các mục đích phân tích vẫn còn là một câu hỏi.
• Ở đây vẫn không có bằng chứng chứng tỏ rằng các ngữ nghĩa học
đầy đủ của câu truy vấn có liên quan đến profile thực hiện của DBMS/OS
hay không (đây là profile đã được lấy ra và ghi lại).
Tóm lại, kiểm toán là một tiện ích vô cùng quan trọng khi truy nhập vào mức
đảm bảo và tin cậy của các kiến trúc an toàn hệ thống DBMS.
5.5 Các xu hướng chung trong phát hiện xâm nhập
Một số chủ đề nghiên cứu về kiểm toán và một số chủ đề có liên quan đến
lĩnh vực này (khác với an toàn máy tính) đang được tiếp tục phát triển và hứa
hẹn có thể cải thiện được hướng tiếp cận phát hiện xâm nhập trong thời gian
thực. Chẳng hạn như:
Machine learning (ML)

178


Các công nghệ ML có thể được sử dụng trong các IDS để quan sát một hệ
thống nào đó, 'tìm hiểu' nhằm xác định rõ các hoạt động 'thông thường', nhờ đó
phát hiện ra các tình trạng không bình thường. Ứng dụng của các công nghệ ML
đã được đề xuất và sử dụng trong một số nghiên cứu, ví dụ trong các hệ thống
Windom & Sense. Bốn mảng sau đây của ML được coi là có tiềm năng lớn nhất
cho các IDS: Concept learning, Clustering, Predictive learning, Extraction of
features.
Các công nghệ phần mềm
Thông qua nhiều điểm yếu của hệ thống, kẻ xâm nhập có thể thu được hoặc
mở rộng các đặc quyền truy nhập, đây được xem là các vấn đề trong phê chuẩn
và kiểm tra phần mềm. Thậm chí, các điểm yếu trong hoạt động/quản trị cũng là
các điểm yếu dễ bị tấn công cho dù hệ thống được thiết kế tốt nhất, nếu chúng
không được thực hiện chính xác. Vì vậy, các công nghệ xây dựng và quản lý
phần mềm tốt hơn (cho phép tránh và phát hiện ra những điểm yếu mà kẻ xâm
nhập có thể lợi dụng) là một biện pháp bảo vệ, chống lại các tấn công xâm nhập.
Sau đây là 3 kiểu điểm yếu (thông qua đó kẻ xâm nhập có thể gây ra các xâm
nhập tiểm ẩn vào hệ thống) được nhận dạng như sau:
• Các điểm yếu về thiết kế (design flaws): Các điểm yếu này xuất
phát từ việc hiểu sai các yêu cầu, hoặc thiết lập không đúng các đặc tả.
Các kỹ thuật phê chuẩn và kiểm tra phần mềm là các biện pháp thích hợp.
Các lỗi thiết kế phổ biến bao gồm: phê chuẩn không đúng số lượng,
kích cỡ hoặc địa chỉ của các đối số được cung cấp cho các lời gọi đặc
quyền, sơ suất khi xử lý dữ liệu nhạy cảm trong bộ nhớ/các heap/thư mục
dùng chung, báo cáo sai các điều kiện và các lỗi không bình thường,
không đảm bảo khôi phục lỗi an toàn. Các tấn công dựa trên những vấn đề
này có thể là đặc trưng (chúng ta có thể biết được một lớp các hệ thống có
điểm yếu xác định nào đó), hoặc chung (một người nào đó cố gắng khám

phá nếu tồn tại một điểm yếu). Trong cả hai trường hợp, việc giám sát trợ
giúp chống lại các tấn công (ví dụ, giám sát các mẫu hành vi, chẳng hạn
như lặp lại các lời gọi hệ thống với số lượng đối số không đúng).
• Các lỗi (faults): Các lỗi hoặc các con bọ sinh ra khi tạo ra các
chương trình nhưng không thiết lập các đặc tả. Nhiều điểm yếu về an toàn
do các con bọ gây ra, chẳng hạn như chọn lựa không đúng kiểu dữ liệu, sử
179


dụng các tham số không chính xác, các lỗi đồng bộ, .v.v. Giám sát cũng
có thể trợ giúp cho việc phát hiện các tấn công.
• Các điểm yếu về hoạt động/quản trị (Operational/administrative
flaws): Việc khởi tạo các giá trị không phù hợp hoặc không nhất quán cho
các tham số có thể làm giảm độ an toàn của hệ thống. Hầu hết các điểm
yếu đều là đặc trưng và phổ biến, vì vậy có thể nhận dạng được những kẻ
xâm nhập (cố gắng lợi dụng các điểm yếu này), bằng cách giám sát các
vùng chương trình nơi xuất hiện các điểm yếu.

180



×