Tùy thuộc vào từng loại nhật ký hệ thống mà nhãn của trƣờng dữ liệu có thể đƣợc xác định và trích xuất. Tuy nhiên, khơng phải tất các các trƣờng này đều có thể đƣợc trích xuất, có nghĩa là một số nhật ký hệ thống chứa giá trị tƣơng ứng với các nhãn trên, và một số nhật ký hệ thống có thể khơng chứa các giá trị tƣơng ứng với các nhãn đó. Do vậy, để xác định một loại nhật ký hệ thống mới ngƣời quản trị sẽ thực hiện một số bƣớc cơ bản sau:
Bƣớc 1: Xác định nhãn thông tin quan trọng
Các thiết bị an ninh hoặc ứng dụng trong hệ thống GSANM cung cấp nhiều dạng nhật ký hệ thống khác nhau. VD: Đối với nhật ký hệ thống Firewall có các loại nhật ký hệ thống nhƣ Access, Deny, Drop, … Sau đây là một ví dụ về nguồn nhật ký hệ thống chƣa đƣợc định dạng.
<13>Aug 3 14:32:58 SERVER FTP: Connection closed <SessionID=58616793, Listener=198.147.12.43:21, Client=172.25.254.27:27515><Command=start> <11>Aug 3 14:32:44 SERVER SSH: No User. Possible reasons: Invalid username, invalid license, error while accessing user database <SessionID=29634951, Listener=198.147.12.43:22, Client=172.25.254.27:8077, User=infosec> <14>Aug 3 14:28:17 SERVER FTP: SendResponse: An existing connection was forcibly closed by the remote host <SessionID=19346180, Listener=198.147.12.43:21,
Client=172.25.254.27:19971><Command=QUIT, Error=10054> <13>Aug 3 12:10:00 SERVER SSH: Completed password Authentication. User logged in <Host=usftp.discovery.com, SessionID=41272593, Listener=198.147.12.43:22, Client=50.58.39.77:63163, User=ussidecoder> 4>Aug 3 12:10:01 SERVER SSH: Client closed connection <Host=usftp.discovery.com, SessionID=41272593, Listener=198.147.12.43:22, Client=50.58.39.77:63163, User=ussidecoder> <13>Aug 3 13:01:36 SERVER FTP: <Host=usftp.discovery.com, SessionID=62734836, Listener=198.147.12.43:21, Client=172.30.31.81:11632, User=netcaptioning><Command=STOR, Parameters=144356.040.01.285A.txt><Filename=\\us\shared\usftp\private\n etca ptioning\Offline Files\Hub\144356.040.01.285A.txt, FileSize=51648 bytes, TransferTime=1078 ms>
Khi đọc nhật ký hệ thống trên ngƣời quản trị có thể hiểu đƣợc các một số thông tin quan trọng với các nhãn nhƣ User, Command, File name, …. Sau đây là bảng các nhãn thông tin quan trọng mà ngƣời quản trị thƣờng phải xác định để đƣa vào định dạng mẫu.
Thuộc tính Mơ tả
Event Name Đằng sau thông tin bắt đầu phiên nhƣ ―SSH‖, sau thông tin ―Command‖
Source IP Giá trị trong nguồn nhật ký hệ thống tại vị trí nhãn―Client=‖ Source Port Giá trị đứng sau địa chỉ IP nguồn đƣợc phân cách bằng dấu ―:‖ Destination IP Giá trị trong nguồn nhật ký hệ thống tại vị trí nhãn ―Listener=‖
Destination Port
Giá trị đứng sau địa chỉ IP đích đƣợc phân cách bằng dấu ―:‖
Username Giá trị trong ngồn nhật ký hệ thống tại vị trí nhãn ―User=‖ Hostname Giá trị trong nguồn nhật ký hệ thống tại vị trí nhãn ―Host=‖
Bảng 3.1: Nhãn thông tin quan trọng
Các giá trị thông tin trên rất quan trọng và hữu dụng cho hệ thống GSNAM bởi vì đó là các thơng tin cơ bản khi ngƣời quản trị cần điều tra hoặc phát hiện các tấn công. Các thông tin trên cho phép ngƣời quản trị xác định nguồn đích và sự kiện xảy ra giữa hai máy chủ, các cổng của máy đích và máy nguồn cũng nhƣ địa chỉ IP của các máy đó, thơng tin ngƣời dùng, ....
Bƣớc 2: Trích xuất các trƣờng thơng tin quan trọng
Ngƣời quản trị hệ thống sử dụng ngôn ngữ Regular Expression (Regex) để lấy các giá trị của thông tin. Đây là nhiệm vụ chính trong q trình định dạng một dạng nhật ký hệ thống mới cho hệ thống GSANM. Nhƣ vậy nhìn vào định dạng mẫu có thể nhận ra rằng, nhãn của các trƣờng thơng tin quan trọng đã đƣợc xác định, và việc cần làm tiếp theo là xác định các giá trị và đƣa vào từng trƣờng tƣơng ứng với các nhãn. Với sự hỗ trợ của Regex ngƣời quản trị có thể trích xuất các giá trị thông tin quan trọng trong một chuỗi sự kiện an ninh nhằm gán các giá trị này vào các nhãn đã đƣợc cung cấp trong định dạng mẫu.
Cụ thể đối với VD trên, giả sử nhật ký hệ thống FTP chƣa đƣợc định dạng và ngƣời quản trị buộc phải định dạng nhật ký hệ thống với các trƣờng tƣơng ứng. Trƣớc hết ngƣời quản trị cần làm là tìm giá trị của Event name,
nhãn này sẽ có giá trị là ―Connection closed‖ và tên đầy đủ của sự kiện này là ―FTP: Connection closed‖. Theo Regular Expression thực hiện lọc chuỗi này với cú pháp: FTP:\s(.\w+\s\w+) nhƣ hình 3.4. Khi tìm kiếm chuỗi với cú pháp trên ta thấy dòng sự kiện ―FTP: Connection closed‖ hiển thị lên, giá trị này sẽ đƣợc đƣa vào nhãn Event name. Cú pháp ―FTP:\s(.\w+\s\w+)‖ có nghĩa là tìm các giá trị có chứa ―FTP:‖ tiếp theo sau là một khoảng trắng và hai từ khóa cách nhau bởi khoảng trắng.