26 -
2.2. Kiến trúc hệ thống 3 1-
Thông tin có thể đƣợc thu thập từ nhiều nguồn đƣợc lƣu trữ trong một cơ sở dữ liệu tập trung (CSDL giám sát an toàn mạng) và sẽ đƣợc phân tích để đƣa ra những thống kê và cảnh báo. Khi cần, hệ thống có thể tƣơng tác ngƣợc lại các thiết bị mạng để thực hiện ngăn chặn các mối nguy hiểm7
.
- Giám sát: Hệ thống cần có giao diện tập trung để ngƣời quản trị có thể thấy đƣợc tình hình hoạt động của mạng trên toàn phạm vi giám sát.
- 32 -
- Thống kê: Hệ thống có thể cung cấp những số liệu thống kê chi tiết, đầy đủ và cập nhật theo thời gian thực về hoạt động mạng, khi cần có thể xuất ra thành dạng văn bản báo cáo.
- Phát hiện dấu hiệu bất thƣờng: hệ thống có khả năng phát hiện đƣợc những dấu hiệu bất thƣờng xảy ra trên mạng, điều này đƣợc thực hiện bằng cách giám sát các luồng dữ liệu và nhận biết các dấu hiệu bất thƣờng xảy ra.
- Rà soát phát hiện yếu điểm trên diện rộng: hệ thống có khả năng thực hiện rà soát yếu điểm trên các hệ thống mạng khác một cách tự động.
Việc sử dụng cấu trúc phân bố cho hệ thống này mang ý nghĩa rất quan trọng, quyết định đến khả năng hoạt động của hệ thống. Chức năng chính của hệ thống là theo dõi và rà soát mọi luồng lƣu thông mạng đi qua nó. Khi ta sử dụng hệ thống cho một mạng lớn, lƣu lƣợng mạng thông qua đó cũng trở nên quá tải đối với khả năng xử lý của một hệ thống đơn lẻ. Vì vậy ta cần sử dụng cấu trúc phân bố để có thể phân tải xử lý cho nhiều hệ thống con nhằm tăng năng lực xử lý của toàn bộ hệ thống.8
2.3. Chi tiết các thành phần trong hệ thống OSSIM.9
2.3.1. Cơ sở dữ liệu.
Hệ thống quản lý an toàn thông tin sẽ sử dụng một số cơ sở dữ liệu:
- Cơ sở dữ liệu cho Website: Cơ sở dữ liệu cho Website chứa những thông tin phục vụ cho hoạt động của Website. Sau đây là một số bảng dữ liệu chính: Users: lƣu trữ thông tin về ngƣời dùng, hệ thống sẽ kiểm tra tài khoản của ngƣời dùng từ bảng này mỗi khi ngƣời dùng đăng nhập vào hệ thống
Host: hệ thống lƣu giữ thông tin về các host đƣợc giám sát trong mạng Host_services: danh sách các service chạy trên các host
- 33 -
Host_vulnerability: lƣu trữ các yếu điểm của host đƣợc phát hiện sau khi thực hiện quá trình rà soát yếu điểm
Host_mac: danh sách địa chỉ vật lý (địa chỉ MAC) của các thiết bị Host_netbios: danh sách tên của các máy tính trong mạng
Host_os: danh sách hệ điều hành của các máy tính trong mạng Net: danh sách các mạng máy tính đƣợc quản lý
Sensor: danh sách các máy trinh sát tham gia vào hệ thống quản lý an toàn thông tin
Policy: bảng thiết lập các chính sách cho các đối tƣợng trong mạng Events: bảng danh sách ghi nhận các sự kiện
Config: lƣu các thông tin về thiết lập cấu hình hệ thống Incidents: thông tin về các sự cố an toàn mạng
Plugins: thông tin về các tiện ích dùng cho hệ thống, hệ thống có rất nhiều tiện ích cung cấp những dấu hiệu nhận dạng khác nhau.
- Cơ sở dữ liệu hệ thống phát hiện xâm nhập: Bao gồm các bảng phục vụ cho hoạt động của thành phần phát hiện xâm nhập nhƣ:
Event: các sự kiện đƣợc phát hiện bởi Hệ thống phát hiện xâm nhập
Signature: lƣu trữ các dấu hiệu nhận dạng luồng lƣu thông mạng có khả năng gây ra mối nguy hiểm
Data: lƣu trữ phần nội dung của gói dữ liệu, khi cần có thể đọc và phân tích ngƣợc lại những gì xảy ra trên mạng
Ngoài ra còn có một số bảng khác lƣu thông tin mô tả của một số loại gói tin phổ biến: icmphdr, iphdr, tcphdr, udphdr
- Cơ sở dữ liệu điều khiển truy nhập: Dùng cho mục đích phân quyền truy nhập vào các thành phần cho ngƣời sử dụng bao gồm các bảng chứa thông tin về
- 34 -
định nghĩa các nhóm ngƣời dùng, định nghĩa các đối tƣợng trên Website để phân quyền truy nhập đến các đối tƣợng cho từng nhóm ngƣời dùng.
2.3.2. Hệ quản lý tập trung.
Hệ quản lý tập trung là thành phần quản lý và điều phối công việc cho các Máy trạm trinh sát. Hệ quản lý tập trung hoạt động dƣới dạng dịch vụ, lắng nghe ở cổng 40001 (TCP) để tiếp nhận các yêu cầu kết nối từ Máy trạm trinh sát. Khi muốn điều khiển Máy trinh sát, Hệ quản lý tập trung sẽ gửi yêu cầu và chờ phản hồi từ Máy trinh sát trả về. Một Hệ quản lý tập trung có thể quản lý nhiều Máy trạm trinh sát.
2.3.3. Bộ phận xử lý thông tin, đánh giá và đưa ra các cảnh báo.
Bộ phận xử lý chính là thành phần xử lý chính của Hệ quản lý tập trung, bao gồm 4 chức năng chính:
a. Đánh giá
- 35 -
Trong quá trình hệ thống hoạt động, có thể sẽ có rất nhiều sự kiện đƣợc ghi nhận. Điều quan trọng là hệ thống phải có khả năng phân tích, đánh giá mức độ quan trọng và ƣu tiên của mỗi sự kiện để phục vụ cho việc sắp xếp và phân loại. Sự đánh giá, phân loại mức độ ƣu tiên phải cho biết những thông tin sau:
- Thành phần nào là quan trọng và cần bảo vệ? (đánh giá tài sản) - Những địa chỉ nguồn nào là đáng lo ngại?
- Những địa chỉ đích nào là đáng lo ngại?
Mức độ ƣu tiên của một sự kiện phụ thuộc vào kiến trúc mạng và phụ thuộc vào các đặc tính của hệ thống và đƣợc định nghĩa trong các Policy mà chúng ta có thể điều chỉnh đƣợc. Chúng ta có thể xét ví dụ sau:
Nếu một hệ thống chạy hệ điều hành UNIX và đang sử dụng máy chủ web là Apache, trong khi đó ta nhận đƣợc một cảnh báo về dấu hiệu một cuộc tấn công vào Máy chủ web IIS (Microsoft), thì cảnh báo đó có mức ƣu tiên không cao.
Nếu một ngƣời dùng tạo một kết nối đáng ngờ đến máy chủ, hệ thống cần phải:
- Đặt độ ƣu tiên cao nhất nếu ngƣời dùng đó ở bên ngoài mạng nội bộ và tấn công vào cơ sở dữ liệu khách hàng.
- Đặt độ ƣu tiên thấp nếu ngƣời dùng đó ở trong mạng nội bộ và tấn công vào máy in mạng (không quan trọng bằng máy tính).
- Bỏ qua nếu ngƣời dùng đó đang kiểm tra một máy chủ thử nghiệm.
- Chính vì vậy mức độ ƣu tiên phụ thuộc vào ngữ cảnh của sự kiện, nói cách khác, mức độ quan trọng của cảnh báo có liên quan tới môi trƣờng của tổ chức, đƣợc mô tả trong cơ sở tri thức về hệ thống mạng:
- 36 -
- Chính sách truy cập: Chính sách cho phép ta định nghĩa các đối tƣợng, nhóm đối tƣợng mà hệ thống sẽ quản lý. Sau đó, những sự kiện có liên quan đến những đối tƣợng này sẽ đƣợc chú ý, đánh giá xử lý tùy theo mức độ ƣu tiên của sự kiện và đối tƣợng. Hệ thống cũng cho phép thiết lập để phát ra cảnh báo đến ngƣời quản trị mỗi khi có sự kiện nào đó xảy ra trên đối tƣợng.
b. Tổng hợp
Đây chính là tính năng nổi bật của hệ thống Giám sát an toàn thông tin theo cấu trúc phân bố. Hệ thống này có khả năng kết hợp các thông tin để đƣa ra quyết định:
- Nhận biết đƣợc sự liên quan của một cảnh báo với phiên bản của sản phẩm hoặc hệ điều hành có thể bị tấn công. (Nếu một cuộc tấn công chỉ ảnh hƣởng đến máy chủ web IIS-Windows, thì hệ thống sẽ bỏ qua những đối tƣợng sử dụng máy chủ web Apache-Linux)
- Nhận biết đƣợc sự liên quan giữa phần mềm phát hiện xâm nhập Snort và phần mềm rà soát điểm yếu Nessus (nếu hệ thống có khả năng bị tấn công vào một yếu điểm và Nessus phát hiện thấy hệ thống có yếu điểm đó thì cảnh báo sẽ đƣợc gán mức ƣu tiên cao)
- Cho phép định nghĩa sự liên quan giữa các sự kiện xảy ra dựa vào một số dấu hiệu:
Các cảnh báo
Các dấu hiệu bất thƣờng
Trạng thái của những hệ thống đang đƣợc giám sát
Để thực hiện đƣợc những chức năng trên, Hệ thống quản lý an toàn thông tin cũng đồng thời thực hiện những chức năng nhƣ:
- 37 -
- Lƣu trữ thông tin cảnh báo về mối liên quan giữa phiên bản và các lỗ hổng - Truy vấn và giám sát thời gian thực
c. Quản lý
Hệ thống quản lý an toàn thông tin sẽ tự động lƣu giữ những thông tin về các thành phần của mạng, các máy tính trong mạng:
- Hệ điều hành
- Địa chỉ vật lý của các thiết bị - Tên máy tính, tên miền
- Các dịch vụ đang chạy trên hệ thống
- Tên sản phẩm và phiên bản của các dịch vụ
Những thông tin này sẽ đƣợc sử dụng để phát hiện và đƣa ra cảnh báo mỗi khi có sự thay đổi nào đó. Những dữ liệu khác (luồng dữ liệu / các kết nối / thời gian) đƣợc lƣu trong cơ sở dữ liệu giám sát việc sử dụng mạng.
d. Phân tán
Theo mô hình triển khai của hệ thống, Hệ quản lý tập trung có thể quản lý nhiều Máy trạm trinh sát. Vì vậy, Hệ quản lý tập trung phải có chức năng quản lý và phân công việc cho các Máy trinh sát. Khi có yêu cầu quét một hệ thống nào đó, Hệ quản lý tập trung sẽ chuyển yêu cầu đó xuống cho những Máy trạm trinh sát tƣơng ứng với hệ thống muốn quét. Các Máy trinh sát khác sẽ không phải thực hiện yêu cầu này.
e. Ghi nhật ký
Trong quá trình vận hành, Hệ quản lý tập trung có chức năng ghi nhật ký những sự kiện xảy ra trên hệ thống, những thao tác ngƣời dùng đã thực hiện.
- 38 -
Chức năng này rất tiện khi hệ thống có nhiều ngƣời sử dụng và ta muốn xem ai đã làm những gì trên hệ thống.
Bảng 2.1. Nhật ký truy cập hệ thống OSSIM
2.3.4. Máy trạm trinh sát10
.
Máy trạm trinh sát đóng vai trò là các Sensor đặt tại nhiều nơi để thu thập thông tin. Thông tin về các tiện ích đƣợc lƣu trong bảng "plugin” của cơ sở dữ liệu của hệ thống QLAT Internet, bao gồm các trƣờng:
- Id: số hiệu của tiện ích
- Type: chỉ định loại tiện ích (1 là cảnh báo, 2 là giám sát, 3 là rà soát) - Name: tên của tiện ích.
- 39 -
Mỗi tiện ích có thể tạo ra nhiều kiểu sự kiện khác nhau, thông tin này đƣợc lƣu trong bảng “plugin_sid” của cơ sở dữ liệu của hệ thống QLAT Internet nhƣ sau:
- plugin_id: số hiệu của tiện ích sinh ra sự kiện - sid: số hiệu của sự kiện
- reliability: mức độ tin cậy đƣợc gán cho sự kiện - priority: mức độ ƣu tiên đƣợc gán cho sự kiện - Name: tên của sự kiện
Dƣới đây là một số sự kiện của tiện ích Snort trong bộ tập hợp các tiện ích
- 40 -
Bảng 2.2: Plugin trong phần phát hiện xâm nhập Snort
- Một số tiện ích cảnh báo đƣợc sử dụng:
PLUGINS
Id Name Type Description
1001 snort Detector (1) Snort Rules
1002 snort_tag Detector (1) Snort Tagging
1003 intrushield Detector (1) McAfee IntruShield
1100 spp_portscan Detector (1) Portscan1
1101 spp_minfrag Detector (1) Minfrag
1102 http_decode Detector (1) HTTP decode 1/2
1103 spp_defrag Detector (1) First defragmenter
1104 spp_anomsensor Detector (1) SPADE
1105 spp_bo Detector (1) Back Orifice
- 41 -
Id Name Type Description
1107 spp_stream2 Detector (1) 2nd stream preprocessor
1108 spp_stream3 Detector (1) 3rd stream preprocessor
1109 spp_telnet Detector (1) Telnet option decoder
1110 spp_unidecode Detector (1) Unicode decoder
1111 spp_stream4 Detector (1) Stream4 preprocessor
1112 spp_arpspoof Detector (1) Arp Spoof detector
1113 spp_frag2 Detector (1) 2nd fragment preprocessor
1114 spp_fnord Detector (1) NOP detector
1115 spp_asn1 Detector (1) ASN.1 Validator
1116 snort_decoder Detector (1) Snort Internal Decoder
1117 spp_portscan2 Detector (1) Portscan2
1118 spp_conversation Detector (1) Conversation
1119 http_inspect Detector (1) http data check
1120 http_inspect Detector (1) anomalous http server
1121 flow-portscan Detector (1) flow decoder
1122 portscan Detector (1) Portscan decoder
1123 frag3 Detector (1) Fragmentation decoder
1124 smtp Detector (1) SMTP preprocessor
1125 ftp_pp Detector (1) FTP preprocessor
1126 telnet_pp Detector (1) Telnet preprocessor
1128 ssh Detector (1) SSH preprocessor
1129 stream5 Detector (1) TCP preprocessor
1130 dcerp Detector (1) DCE/RPC server preprocessor
- 42 -
Id Name Type Description
1501 apache Detector (1) Apache
1502 iis Detector (1) IIS
1503 iptables Detector (1) Iptables
1504 fw1ngr60 Detector (1) Firewall-1 NG R60
1506 RealSecure Detector (1) RealSecure events
1507 rrd_threshold Detector (1) RRD Threshold
1508 rrd_anomaly Detector (1) RRD Anomaly
1509 threshold Detector (1) Threshold exceeded
1510 cisco-router Detector (1) Cisco router
1511 p0f Detector (1) Passive OS fingerprinting tool
1512 arpwatch Detector (1) Ethernet/FDDI station monitor daemon
1513 prelude Detector (1) Prelude Hybrid IDS
1514 cisco-pix Detector (1) Cisco Pix Firewall
1515 cisco-ids Detector (1) Cisco Secure IDS
1516 pads Detector (1) Passive Asset Detection System
1517 ntsyslog Detector (1) Windows NT/2000/XP syslog service
Bảng 2.3. Bảng mô tả các plugin báo cáo trong hệ thống OSSIM
2.3.4.1. Tiện ích giám sát
Tiện ích giám sát là những tiện ích có chức năng thống kê và báo cáo mỗi khi nhận đƣợc truy vấn từ Hệ quản lý tập trung. Bình thƣờng, các tiện ích này vẫn chạy để thu thập thông tin, chỉ đến khi nhận đƣợc yêu cầu từ Hệ quản lý tập trung, Máy trạm trinh sát mới gửi những kết quả trả lời về cho Hệ quản lý tập trung.
- 43 - - Một số tiện ích giám sát đƣợc sử dụng:
Id Name Type Description
2004 opennms Monitor (2) OpenNMS
2005 ntop Monitor (2) Ntop
2006 tcptrack Monitor (2) Tcptrack
2007 nagios Monitor (2) Nagios
2008 nmap Monitor (2) Nmap: network mapper
Bảng 2.4. Bảng mô tả các plugin giám sát trong hệ thống OSSIM
2.3.4.2. Tiện ích rà soát
Ngoài hai loại tiện ích trên, còn một loại tiện ích có chức năng thực hiện rà soát mạng để thu thập thông tin. Trong máy trạm có sử dụng hai tiện ích loại này, cũng là 2 công cụ rà soát phổ biến của mã nguồn mở: Nmap và Nessus.
Id Name Type Description
3001 nessus Other (3) Nessus
3002 nmap Other (3) NMap
Bảng 2.5. Bảng mô tả các plugin rà soát trong hệ thống OSSIM
Khi quét, chƣơng trình gửi đi những gói tin mang tính chất thăm dò tới đối tƣợng đích sau đó chờ phản hồi. Tùy thuộc phản hồi mà chƣơng trình 11
sẽ biết đƣợc trạng thái của đối tƣợng đích. Những thông tin này sẽ đƣợc lƣu trữ vào cơ sở dữ liệu.
2.3.4.3. Quản lý tiện ích.
Máy trạm trinh sát bao gồm rất nhiều các tiện ích, vì vậy cần có một cách thức để Máy trạm quản lý hiệu quả các tiện ích này: công cụ quản lý tiện ích.
- 44 -
- Giám sát các tiến trình: Công cụ này sẽ kiểm soát hoạt động của các tiện ích, bất cứ lúc nào Máy trạm cũng có thể biết đƣợc trạng thái của một tiện ích có đang hoạt động hay không.
Hình 2.6: Thành phần quản lý các plugin trên giao diện web.
2.4. Hệ quản lý tập trung OSSIM.
Trong quá trình hoạt động của hệ thống, hệ quản lý tập trung và máy trạm trinh sát trao đổi thông tin dữ liệu với nhau thông qua một giao thức riêng. Những cảnh báo, những sự kiện đƣợc truyền tải dƣới dạng văn bản đơn thuần. Sau đây ta sẽ xem xét về hoạt động của hệ thống.
Nhƣ đã nói ở trên, Máy trạm trinh sát là tập hợp những tiện ích chạy song song làm nhiệm vụ giám sát và cảnh báo. Trong tập tin thiết lập cấu hình cho máy trạm trinh sát có khai báo những tiện ích đƣợc sử dụng:
- 45 - #
# send events and receive/send control messages from/to server [output-server] enable = True ip = 127.0.0.1 port = 40001 send_events=True [output-server-pro] enable=False ip=127.0.0.1 port=40001 # plugins
# (list of plugins to be loaded) # [plugins] # detectors # aladdin=/etc/ossim/agent/plugins/aladdin.cfg apache=/etc/ossim/agent/plugins/apache.cfg arpwatch=/etc/ossim/agent/plugins/arpwatch.cfg avast=/etc/ossim/agent/plugins/avast.cfg
- 46 -