概述

网络安全审计是指对网络信息系统的安全相关活动信息进行获取、记录、存储、分析和利用的工作。网络安全审计的作用在于建立“事后”安全保障措施,保存网络安全事件及行为信息,为网络安全事件分析提供线索及证据,以便于发现潜在的网络安全威胁行为,开展网络安全风险分析及管理。

常见的网络安全审计方式,采用日志记录服务器统一集中存储系统、设备产生的日志信息,本期就日志记录服务器中的syslog协议向各位小伙伴分享一篇文章。

参考依据

GB/T 22239-2019《信息安全技术网络安全等级保护基本要求》,网络安全审计日志需集中收集存储,即:应对分散在各个设备上的审计数据进行收集汇总和集中分析,并保证审计记录的留存时间符合法律法规要求。

《中华人民共和国网络安全法》 第三章 第二十一条明确规定:采取监测、记录网络运行状态、网络安全事件的技术措施,并按照规定留存相关的网络日志不少于六个月。

RFC标准:RFC 3164、RFC 5424

关键词

网络安全审计、Syslog、UDP 514、Facility、Severity和Priority

Syslog

参考RFC 3164对syslog定义设备、通信端口、数据包组成以及Facility值、Severity值和Priority值进行说明。

定义设备

产生日志的设备被定义为Device,接收日志并转发日志给另外一台设备的设备被定义为Relay,接收日志并且不转发日志的设备被定义为Collector,就是我们常说的日志记录服务器。

备注:RFC 5424文档中定义originator来代替Device,定义transport sender将采用特定的传输协议发送syslog消息,定义transport receiver将采用特定的传输协议接收syslog消息。Relay和Collector保持不变。

Syslog服务端口

Syslog采用UDP作为其底层传输层机制,默认通信端口UDP 514。RFC文档建议Device采用源端口514发送日志,以此表明日志消息来自发送方的syslog进程。

备注:RFC 5424文档中未指定任何传输层协议,而是以独立于传输层的方式描述syslog消息的格式。

Syslog组成

完整的syslog消息由3部分组成,分别是PRI,HEADER和MSG,其中PRI字段包含Facility和严重性(Severity),HEADER包含了时间戳、主机名或设备IP等,MSG是日志消息主体。Syslog消息总长度数据包必须小于等于1024字节,未定义最小长度的syslog消息数据包。

备注:RFC 5424文档中定义syslog格式如下所示,详情参见RFC文档。

SYSLOG-MSG = HEADER SP STRUCTURED-DATA [SP MSG]

Facility值、Severity值和Priority值

备注:关于Facility值、Severity值和Priority在RFC 3164和RFC 5424文档中描述基本一致。

Facility值和Severity值以十进制进行编码。通常情况,一些操作系统守护进程和进程已分配Facility值,而守护进程和进程未分配Facility值的则采用“local use”或者“user-level”方式。已分配Facility值如下表所示。

Numerical Code

Facility

0

kernel messages

1

user-level messages

2

mail system

3

system daemons

4

security/authorization messages (note 1)

5

messages generated internally by syslogd

6

line printer subsystem

7

network news subsystem

8

UUCP subsystem

9

clock daemon

10

security/authorization messages

11

FTP daemon

12

NTP subsystem

13

log audit

14

log alert

15

clock daemon

16

local use 0  (local0)

17

local use 1  (local1)

18

local use 2  (local2)

19

local use 3  (local3)

20

local use 4  (local4)

21

local use 5  (local5)

22

local use 6  (local6)

23

local use 7  (local7)

每个syslog消息Priority由Severity值表示,常见Severity值如下表所示。

Numerical Code

           Severity

0

Emergency: system is unusable

1

Alert: action must be taken immediately

2

Critical: critical conditions

3

Error: error conditions

4

Warning: warning conditions

5

Notice: normal but significant condition

6

Informational: informational messages

7

Debug: debug-level messages

Priority值= Facility值*8+Severity值;

例如:Facility是“local use 4”对应20,Severity是Notice对应5,那么Priority值=20*8+5=165。

参考连接

RFC 3164

http://www.faqs.org/rfcs/rfc3164.html

RFC 5424

http://www.faqs.org/rfcs/rfc5424.html

总结

本期本章就网络安全审计概念、依据和syslog协议进行总结,不足之处,欢迎各位小伙伴留言指正。