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 (4.51 MB, 86 trang )
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG THU THẬP THÔNG TIN
- Hệ điều hành: Linux Kernel version 2.6.32
- Hệ quản trị cơ sở dữ liệu : MySQL Version 5.1.41
- Ngôn ngữ lập trình : C
- Nền tảng phát triển ứng dụng : Glib & GTK+
V.1.1.3 Dữ liệu đầu vào
Dữ liệu đầu vào của phân hệ NSIAT bao gồm:
- Yêu cầu thiết lập kênh kết nối từ sensor và phần mềm thu thập thông tin
an toàn mạng gửi tới NSIAR
- Sự kiện an toàn mạng từ sensor và phần mềm thu thập thông tin an toàn
mạng gửi tới NSIAR
- Các lệnh điều khiển từ SIPS gửi tới NSIAR,
V.1.1.4 Dữ liệu đầu ra
Dữ liệu đầu ra của hệ thống bao gồm:
- Các sự kiện an toàn mạng được lưu trữ vào cơ sở dữ liệu
- Các lệnh điều khiển gửi tới sensor.
V.1.1.5 Các tác nhân của hệ thống
Tác nhân liên quan đến phân hệ NSIAR bao gồm:
- Các sensor chuyên dụng: cung cấp sự kiện an toàn mạng phát hiện được
cho NSIAR.
- Các phần mềm thu thập thông tin an toàn mạng: Cung cấp các sự kiện an
toàn mạng thu thập từ các sản phẩm đảm bảo an toàn mạng thương mại
như IDS, Antivirus và Firewall.
- Một số thiết bị an toàn mạng khác: NSIAR có khả năng tiếp nhận trực tiếp
thông tin an toàn mạng từ một số loại thiết bị/ phần mềm an toàn mạng.
- Phân hệ xử lý thông tin theo dõi- thống kê - cảnh báo và điều khiển
(SIPS) : Có chức năng điều khiển hoạt động của NSIAR như:
Bật và tắt hoạt động của NSIAR
17
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG THU THẬP THÔNG TIN
Cập nhật danh mục sensor cung cấp sự kiện an toàn mạng
- Cở sở dữ liệu an toàn mạng : Lưu trữ các sự kiện an toàn mạng do NSIAR
tiếp nhận được và cung cấp cho NSIAR các thông tin liên quan đến quản
lý hoạt động.
V.1.1.6 Yêu cầu về chức năng
Hệ thống NSIAR cần đáp ứng các yêu cầu chức năng sau đây:
-
Tiếp nhận thông tin an toàn mạng từ các nguồn tự động:
o Kết nối với ba loại thiết bị sensor là sản phẩm của đề tài để tiếp
nhận thông tin an toàn mạng.
o Kết nối với phần mềm thu thập thông tin an toàn mạng từ các
thiết bị thương mại.
o Có khả năng mở rộng để tiếp nhận các thông tin ATM từ các
nguồn cung cấp tự động khác.
-
Kiểm tra xác thực nguồn cung cấp thông tin
-
Phân tích, giải mã và lưu trữ dữ liệu vào cơ sở dữ liệu chung phục vụ
cho công tác giám sát, phát hiện và xử lý các sự cố an toàn mạng.
Có thể kết nối với 50 nguồn thông tin hay sensor tại nút mạng cấp quốc gia
và 500 nguồn thông tin từ mạng người dùng, xử lý khoảng 100.000 bản ghi mỗi
ngày. Tốc độ xử lý đáp ứng dung lượng tương đương.
Hệ thống phải được trang bị các chức năng đảm bảo an toàn để hạn chế
được các rủi ro an toàn thông tin có thể xảy ra như: quản lý an toàn truy cập,
phát hiện tấn công v.v…
V.1.2
Thiết kế phân hệ phần mềm NSIAR
V.1.2.1 Cơ chế hoạt động
Về cơ chế hoạt động NSIAR được xây dựng hoạt động như một dịch vụ hoạt
động ở chế độ background trên hệ điều hành Linux. Dữ liệu đầu vào và các lệnh
điều khiển được gửi tới NSIAR thông qua cổng TCP. Với cơ chế hoạt động như
trên, NSIAR hoạt động hoàn toàn độc lập với hệ thống SIPS giảm thiểu các tác
động bất lợi giữa các hệ thống.
18
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG THU THẬP THÔNG TIN
V.1.2.2 Phân loại thông tin đầu vào
Nguồn cung cấp thông tin an toàn mạng được phân làm hai loại:
- Loại sensor chủ động gửi thông tin tới NSIAR – Detector, các sensor
detector sẽ chủ động gửi thông báo sự kiện an toàn mạng tới NSIAR khi
phát hiện ra vấn đề. Điển hình loại sensor này có thể kể đến như Snort,
Ntop, ISS Proventia v.v….
- Loại chỉ gửi thông tin khi có yêu cầu từ NSIAR – Monitor, các sensor loại
này sẽ không chủ động gửi các thông báo sự kiện an toàn mạng tới
NSIAR. Khi NSIAR cần có thông tin an toàn mạng từ các sensor này sẽ
gửi các lệnh yêu cầu cung cấp thông tin tới Sensor và sensor sẽ tiến hành
các hoạt động để thu thập thông tin an toàn mạng theo yêu cầu của
NSIAR sau đó gửi lại NSIAR. Điển hình loại Sensor Monitor có thể kể
đến như các sensor sử dụng phần mềm nmap, phần mềm nessus v.v…
Các sensor này sẽ thực hiện quét và kiểm tra một đối tượng nào đó theo
các lệnh được gửi từ NSIAR tới và sau đó thu thập và phân tích kết quả để
gửi thông báo tới NSIAR.
Với giai đoạn hiện nay, đề tài tập trung vào việc sử dụng các nguồn cung cấp
thông tin loại Detector. Tuy nhiên thiết kế hệ thống hoàn toàn có thể đáp ứng
khả năng triển khai việc thu thập thông tin an toàn mạng từ các sensor loại
Monitor.
Sự kiện an toàn mạng được chia làm bốn loại cơ bản sau:
- Sự kiện an toàn mạng được chuẩn hóa: Sự kiện này do các phần mềm
thu thập thông tin an toàn mạng cung cấp, dữ liệu sau khi được truyền từ
các thiết bị an toàn mạng thương mại tới phần mềm thu thập thông tin an
toàn mạng sẽ được chuẩn hóa và chuyển tới hệ thu thập thông tin an toàn
mạng trung tâm NSIAR. Sự kiện này bao gồm các thông tin sau về sự
kiên ATM: Kiểu nguồn phát hiện sự kiện (Detector hoặc monitor); Thời
gian; IP của sensor phát hiện; giao diện mạng; Mã của Plugin ; Mã của
19
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG THU THẬP THÔNG TIN
Sub-Plugin; Mức độ ưu tiên; Giao thức; địa chỉ IP nguồn, cổng nguồn, địa
chỉ IP đích, cổng đích liên quan đến sự kiện; Log; dữ liệu; mật khẩu mã
hóa, file dữ liệu liên quan; 9 trường dữ liệu dự phòng, được định nghĩa
trong các plugin.
Bảng dưới đây mô tả chi tiết các trường nội dung sự kiện an toàn mạng:
Trường dữ liệu
Kiểu DL
NULL Mô tả
id
bigint(20)
No
Mã sự cố
timestamp
timestamp
No
Thời gian
sensor
text
No
Tên sensor
interface
text
No
Giao diện
type
int(11)
No
Kiểu Sensor
plugin_id
int(11)
No
Mã plugin
plugin_sid
int(11)
No
Mã sub-plugin
plugin_sid_name varchar(255)
Yes
Tên Sub-Plugin
protocol
int(11)
Yes
Giao thức
src_ip
int(10)
Yes
Địa chỉ IP Nguồn
dst_ip
int(10)
Yes
Địa chỉ đích
src_port
int(11)
Yes
Cổng nguồn
dst_port
int(11)
Yes
Cổng đích
priority
int(11)
Yes
Mức ưu tiên
reliability
int(11)
Yes
Độ tin cậy
filename
varchar(255)
Yes
Tệp tin liên quan
userdata1
varchar(255)
Yes
Trường dữ liệu dự phòng, sử
dụng để mở rộng khả năng kết
20
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG THU THẬP THÔNG TIN
nối
userdata2
varchar(255)
Yes
Trường dữ liệu dự phòng, sử
dụng để mở rộng khả năng kết
nối
userdata3
varchar(255)
Yes
Trường dữ liệu dự phòng, sử
dụng để mở rộng khả năng kết
nối
userdata4
varchar(255)
Yes
Trường dữ liệu dự phòng, sử
dụng để mở rộng khả năng kết
nối
userdata5
varchar(255)
Yes
Trường dữ liệu dự phòng, sử
dụng để mở rộng khả năng kết
nối
userdata6
text
Yes
Trường dữ liệu dự phòng, sử
dụng để mở rộng khả năng kết
nối
userdata7
text
Yes
Trường dữ liệu dự phòng, sử
dụng để mở rộng khả năng kết
nối
userdata8
text
Yes
Trường dữ liệu dự phòng, sử
dụng để mở rộng khả năng kết
nối
userdata9
text
Yes
Trường dữ liệu dự phòng, sử
dụng để mở rộng khả năng kết
nối
- Sự kiện OS: Sự kiện liên quan đến sự thay đổi bất bình thường của hệ
điều hành, thông thường do các sản phẩm như Pof (Operationg System
21
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG THU THẬP THÔNG TIN
anomaly detection) phát hiện ra. Sự kiện OS bao gồm các thông tin cơ
bản: host, hệ điều hành, sensor, cổng mạng và thời gian.
- Sự kiện MAC: Sự kiện an toàn mạng liên quan đến địa chỉ mac thường
dựa thu thập từ các phần mềm giám sát arpwatch hoặc hệ thống pads. Các
sự kiện này có vai trò quan trọng trong phát hiện các tấn công sử dụng kỹ
thuật arpwatch poisioning. Sự kiện Mac bao gồm các thông tin cơ bản:
host, địa chỉ mac, hãng cung cấp, sensor, cổng mạng và thời gian.
- Sự kiện Service: Sự kiện liên quan đến việc cập nhật thông tin về các
cổng dịch vụ trên các thiết bị được sử dụng. Sự kiện Service bao gồm các
thông tin cơ bản: host, sensor, cổng mạng, cổng dịch vụ, giao thức, dịch
vụ, ứng dụng và thời gian.
V.1.2.3 Phân tích dữ liệu an toàn mạng
Dữ liệu an toàn mạng được các sensor và phần mềm thu thập thông tin an
toàn mạng gửi tới NSIAR thông qua các định dạng chuẩn được mô tả chi tiết
trong giao thức trao đổi thông tin an toàn mạng. Với Sensor khác nhau, thì tại
NSIAR sẽ hỗ trợ các cơ chế khác nhau để phân tích gói tin tiếp nhận được thành
các thông tin cụ thể có thể lưu trữ vào cơ sở dữ liệu.
V.1.2.4 Kiến trúc
Kiến trúc của phân hệ NSIAR bao gồm 4 module, cung cấp bốn nhóm chức
năng tương ứng sau đây:
- Module tiếp nhận thông tin – NSAIR-R Module
Quản lý việc xác thực các nguồn cung cấp thông tin và trao đổi thông tin.
- Module phân tích thông tin an toàn mạng – NSAIR-A Module
Phân tích các thông tin thu được để xác định các thông tin an toàn mạng
do các nguồn cung cấp khác nhau cung cấp.
- Module tương tác với CSDL – NSAIR-DI Module
22
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG THU THẬP THÔNG TIN
Cung cấp các chức năng tương tác với cơ sở dữ liệu chung của hệ thống
NSIAR, trong đó bao gồm hai chức năng chính là truy xuất và cập nhật /
lưu trữ dữ liệu vào CSDL.
- Module điều khiển hoạt động – NSAIR-C Module
Tiếp nhận các lệnh điều khiển từ các phân hệ khác, kiểm tra và tạo các
lệnh điều khiển nội bộ cần thiết tới các module khác trong nội bộ NSAIRC.
V.1.2.5 Lược đồ luồng dữ liệu
ANTIVIRS
SENSOR
SENSOR
Phần mềm TTTT ATM
FIREWALL
IDS / IPS
Gói tin ATM
NSAIR-A
Gói tin
ATM
NSAIR-R
1. Tiếp nhận
Nguồn
thông tin
Lệnh điều
khiển
2. Phân tích
NSAIR-DI
Thông tin
ATM
3.1 Lưu trữ
Danh mục Sensor/ PM thu thập
Lệnh điều
khiển
Thông tin
ATM
NSAIR-DI
3.2 Truy xuất
CƠ
SỞ
DỮ
LIỆ
U
NSAIR-C
4. Điều khiển
Configuration Files
Lệnh điều khiển
PHÂN HỆ NSIAR
SIPS
Lược đồ luồng dữ liệu của NSIAR
Luồng xử lý thông tin của NSIAR bao gồm bốn bước chính:
- Tiếp nhận và lọc các thông tin do các sensor và phần mềm an toàn mạng
thương mại theo các chuẩn cung cấp khác nhau mà hệ thống hỗ trợ. Chức
năng này do mô đun SIR thực hiện
23
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG THU THẬP THÔNG TIN
- Phân tích các gói tin ATM nhận được theo các định dạng đã có và trích ra
các thông tin ATM, các gói tin không phân tích được sẽ bị loại bỏ.
- Lưu trữ các thông tin ATM sau khi phân tích vào CSDL lưu trữ.
- Quản trị toàn bộ hoạt động của module NSIAR bao gồm việc: quản lý
danh sách các sensor và phần mềm cung cấp thông tin ATM, cấu hình các
định dạng gói tin cung cấp thông tin ATM, thông tin về CSDL và các
thông tin khác.
- Configuration files: các tệp tin chứa nội dung cấu hình hoạt động cho toàn
bộ thành phần NSIAR.
- Cơ sở dữ liệu là cơ sở dữ liệu lưu trữ thông tin chung của toàn bộ hệ
thống SIGS.
V.1.2.5.1 Module tiếp nhận thông tin – NSAIR-R Module
Module tiếp nhận thông tin ATM có tên viết tắt là NSAIR-R module có chức
năng tạo cổng chờ, tiếp nhận và cập nhật tình hình hoạt động của các nguồn
cung cấp thông tin an toàn mạng cho phân hệ NSAIR.
NSAIR-R Module bao gồm các trường hợp sử dụng chính sau đây:
- Khởi động dịch vụ tiếp nhận thông tin ATM
- Khởi động lại dịch vụ tiếp nhận thông tin ATM
- Đóng cổng tiếp nhận
- Xác thực kênh kết nối
- Tạo kênh trao đổi thông tin
- Đóng kênh trao đổi thông tin
V.1.2.5.2 Module phân tích thông tin – NSAIR-A Module
Module NSAIR-A có chức năng phân tích các thông tin thu nhận được để
trích ra các thông tin về an toàn mạng theo các định dạng chuẩn đã được quy
định theo các lược đồ trong cơ sở dữ liệu. Với mỗi định dạng truyền tin khác
nhau, thì hệ thống NSAIR-A sẽ có một lược đồ phân tích tương ứng phù hợp,
với cơ chế quản lý linh động này thì khi định dạng truyền tinh với sensor
hoặc các phần mềm thu thập thông tin ATM được nâng cấp, thay đổi thì
NSAIR-A không phải thay đổi nhiều mà chỉ cần bổ sung lược đồ phân tích
thông tin mới, tương tự như vậy NSAIR-A cũng có thể phân tích cả các gói
24
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG THU THẬP THÔNG TIN
tin do các phần mềm / thiết bị ATM thương mại khác được trực tiếp gửi đến
SIGS hoặc NSAIR-C nếu có được lược đồ định dạng thông tin truyền.
NSAIR-A bao gồm các trường hợp sử dụng cơ bản sau đây:
- Cập nhật lược đồ phân tích thông tin
- Phân tích thông tin.
V.1.2.5.3 Module tương tác cơ sở dữ liệu – NSAIR-DI Module
Module NSAIR-DI có chức năng thực hiện tương tác với hệ thống CSDL
chung của SIGS để truy xuất và lưu trữ dữ liệu, hỗ trợ hoạt động cho các module
xử lý nghiệp vụ khác trong phân hệ NSAIR.
NSAIR-DI có hai chức năng chính:
- Tiếp nhận các yêu cầu truy xuất và lưu trữ dữ liệu từ các module khác
trong phân hệ NSAIR-DI
- Truy xuất dữ liệu từ CSDL
- Lưu dữ liệu vào CSDL
- Gửi thông tin phản hồi đến các yêu cầu truy xuất dữ liệu từ các module
khác trong phân hệ NSAIR-DI.
V.1.2.5.4 Module điều khiển hoạt động – NSAIR-C Module
Hoạt động phân hệ NSAIR bao gồm các dịch vụ nội bộ hoạt động chế độ
nền, không hỗ trợ giao diện điều khiển trực tiếp cho người sử dụng tới các dịch
vụ nội bộ kể trên. Thông qua hệ thống giao diện của SIPS, người sử dụng có thể
gửi một số lệnh điều khiển tới các dịch vụ của NSAIR như lệnh khởi động, khởi
động lại dịch vụ tiếp nhận thông tin; thay đổi các dịch vụ phân tích thông tin;
sửa đổi, cập nhật danh mục các nguồn cung cấp thông tin v.v… Các lệnh điều
khiển không được SIPS gửi trực tiếp đến các dịch vụ thi thành của NSAIR như
NSAIR-A hay NSAIR-R mà được thực thi thông qua module điều khiển
NSAIR-C. Module này có chức năng tiếp nhận các lệnh điều khiển từ SIPS sau
đó chuyển tới các module xử lý tác vụ phù hợp. Với thiết kế này, hệ thống SIPS
hoàn toàn độc lập và không bị ảnh hưởng khi SIGS có các thay đổi trong nội bộ.
Các trường hợp sử dụng chính của NSAIR-C bao gồm:
- Cập nhật danh sách các nguồn cung cấp thông tin ATM
- Mở và tắt các dịch vụ giải mã thông tin ATM
25
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG THU THẬP THÔNG TIN
- Mở/khởi động lại và đóng dịch vụ tiếp nhận thông tin ATM.
V.1.2.6 Cấu trúc cơ sở dữ liệu lưu trữ thông tin an toàn mạng
Cấu trúc cơ sở dữ liệu lưu trữ thông tin an toàn mạng bao gồm các bảng
chính sau đây:
Bảng chính được sử dụng để lưu trữ thông tin an toàn mạng là bảng
Event, bảng event có các liên kết đến các bảng dữ liệu khác như sau
Liên kết bảng plugin_reference để thực hiện các luật corrilation,
Liên kết với bảng alarm để xác định liên quan giữa các event đến cảnh
báo.
Liên kết với bảng Backlog_event để hỗ trợ corrilation.
Bảng Event có cấu trúc cơ sở dữ liệu như sau:
Tên trường
Kiểu dữ liệu
Id
Null
Bigint(20)
Khóa
Ghi chú
Mã sự kiện
Timestamp
Not Null PK
Timestamp(14) Null
Sensor
Text
Not Null
Máy chủ giám sát
Interface
Text
Not Null
Giao diện sử dụng
26
Nhãn thời gian
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG THU THẬP THÔNG TIN
Type
Int(11)
Not Null
Kiểu sự kiện
Plugin_id
Int(11)
Not Null
Mã Plugin
Plugin_sid
Int(11)
Not Null
Mã Sub Plugin
Protocol
Null
Giao thức mạng
Null
Địa chỉ IP nguồn
Null
Địa chỉ IP đích
Src_port
Int(11)
Int(10)
unsigned
Int(10)
unsigned
Int(11)
Null
Cổng nguồn
Dst_port
Int(11)
Null
Cổng đích
Condition
Int(11)
Null
Điều kiện
Value
Text
Null
Giá trị
Time_interval
Int(11)
Null
Thời gian
Absolute
Tinyint(4)
Null
Mức độ tuyệt đối
Priority
Int(11)
Null
Mức độ ưu tiên
reliability
Int(11)
Null
Độ tin cậy
Asset_src
Int(11)
Null
Tài sản nguồn
Asset_dst
Int(11)
Null
Tài sản đích
Risk_a
Int(11)
Null
Độ rủi ro
Risk_c
Int(11)
Null
Độ rủi ro
Alarm
Tinyint(4)
Null
Cảnh báo
Snort_sid
Int(10)
unsigned
Null
Mã snort server
Snort_cid
Int(10)
unsigned
Null
Mã snort client
Src_ip
Dst_ip
V.1.3
Các yêu cầu khác đối với hệ thống NSAIR
V.1.3.1 Yêu cầu về hiệu năng
Đảm bảo hiệu năng là một trong các yếu tố rất quan trọng mà hệ thống
NSIAR phải đáp ứng do NSIAR kết nối thu thập thông tin trực tuyến với nhiều
thiết bị khác nhau bao gồm tối thiếu: 50 Sensor thu thập thông tin tại nút mạng
tốc độ cao và 500 sensor thu thập thông tin an toàn mạng tại các nút mạng tốc độ
thấp với tốc độ đạt trên 100.000 thông tin một ngày.
27