【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

admin 2024年1月18日22:57:00评论19 views字数 13900阅读46分20秒阅读模式

网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

概述

网络安全等级保护S3A3安全计算环境之操作系统(Linux)中主要包括以下11个部分:

身份鉴别、访问控制、安全审计、入侵防范、恶意代码防范、可信验证、数据完整性、数据保密性、数据备份恢复、剩余信息保护、个人信息保护

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

本文主要参考以下7个资料:

  • GB-T 22239-2019 信息安全技术 网络安全等级保护基本要求

  • GB-T 28448-2019 信息安全技术 网络安全等级保护测评要求

  • 网络安全等级保护基本要求(通用要求部分)应用指南

  • 网络安全等级保护基本要求(扩展要求部分)应用指南

  • 网络安全等级测评师培训教材(初级)2021版

  • 网络安全等级保护测评安全计算环境测评指导书

  • T-ISEAA 001-2020 网络安全等级保护测评高风险判定指引

注:参考最新发布的《网络安全等级保护基本要求(通用要求部分)应用指南》,针对安全计算环境中操作系统仅整理了身份鉴别、访问控制、安全审计、入侵防范、恶意代码防范、可信验证6项。

身份鉴别

基本要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

测评要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

应用指南

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

a)应对登录的用户进行身份标识和鉴别,身份标识具有唯一性,身份鉴别信息具有复杂度要求并定期更换。

符合建议项

1.查看系统账户

cat /etc/passwd
cat /etc/shadow

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

目前有哪些账户可登录,是否存在空口令账户

grep nullok /etc/pam.d/system-auth
lastlog

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

2.查看口令复杂度策略(对root账户无效,询问管理员root账户复杂度策略)

cat /etc/login.defs
cat /etc/pam.d/system-auth

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

[SysAdmin@iZb5dlyg1ebe6oZ ~]$ cat /etc/pam.d/system-auth
password requisite pam_pwquality.so minlen=8 dcredit=-2 ucredit=-1 lcredit=-1 ocredit=-1 try_first_pass local_users_only retry=3 enforce_for_root authtok_type=

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

retry=3 表示在前3次尝试失败后禁止访问该账户。
enforce_for_root 表示管理员账户也需要符合密码质量要求。
maxrepeat=3 表示不允许重复使用超过3次的字符。
minlen=8 表示密码最小长度为8个字符。
lcredit=-1 表示小写字母至少需要1个。
dcredit=-2 表示数字至少需要2个。
ucredit=-1 表示大写字母至少需要1个。
ocredit=-1 表示特殊符号至少需要1个。

特别注意

密码复杂度要求仅对新用户或者修改密码有用,对已经存在的用户无效。

3、限制口令的重复使用:

cat /etc/pam.d/system-auth
password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok remember=5

4、查看系统账户有效期:

cat /etc/login.defs
cat /etc/shadow

查看每个账户状态

chage -l account

chage -l root
[SysAdmin@iZb5dlyg1ebe6oZ ~]$ sudo chage -l root
Minimum number of days between password change : 5
Maximum number of days between password change : 90
Number of days of warning before password expires : 7

结果记录

1)经核查,用户在登录时采用了用户名+口令的身份鉴别措施,用户通过堡垒机输入账号口令登录服务器;
2)经核查用户列表,用户身份标识具有唯一性,目前用户列表root、SysAdmin、SecAdmin、AudAdmin;
3)经核查用户配置信息并测试验证,不存在空口令用户;
4)经核查,用户鉴别信息具有复杂度要求并定期更换,
使用命令查看口令复杂度策略:cat /etc/login.defs、cat /etc/pam.d/system-auth,
PASS_MAX_DAYS 90
PASS_MIN_DAYS 5
PASS_MIN_LEN 8
PASS_WARN_AGE 7
用户口令8位,采用大小写字母、数字和特殊字符组合,有效期为90天。
查询限制口令的重复使用次数:cat /etc/pam.d/system-auth
限制重复使用次数为5次。
查看系统账户的有效期:cat /etc/login.def、cat /etc/shadow,或者查看每个账户的状态:chage -l account,如:chage -l root
两次改变密码之间相距的最小天数 :5
两次改变密码之间相距的最大天数 :90
在密码过期之前警告的天数 :7

b)应具有登录失败处理功能,应配置并启用结束会话、限制非法登录次数和当登录连接超时自动退出等相关措施。

符合建议项

1、登录失败:查看相关配置文件是否配置登录失败处理策略

cat /etc/pam.d/system-auth
cat /etc/pam.d/password-auth
cat /etc/pam.d/sshd

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

最多连续5次认证登录都出错时,600秒后解锁,root用户也可以被锁定,root用户600秒后解锁。

特别注意

添加位置要写在第一行,即#%PAM-1.0的下面。

auth required pam_tally2.so onerr=fail deny=5 unlock_time=600 even_deny_root root_unlock_time=600

在SSH配置文件

cat /etc/ssh/sshd_config | grep MaxAuthTries

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

2、查看是否配置登录会话超时策略:

cat /etc/profile

是否存在

export TMOUT=900
readonly TMOUT

echo $TIMEOUT
echo $TMOUT

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

在SSH上配置

cat /etc/ssh/sshd_config | grep ClientAliveInterval

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

结果记录

1)经核查,配置并启用登录失败处理功能,查看登录失败处理功能相关参数,cat /etc/pam.d/system-auth 文件中存在“auth required pam_tally2.so onerr=fail deny=5 unlock_time=600 even_deny_root root_unlock_time=600
”;
2)经核查,配置并启用了限制非法登录功能,所有用户登录失败5次锁定600秒;
3)经核查,配置并启用登录连接超时及自动退出功能,本地登录超时时间900秒,远程登录超时时间300秒。

c)当进行远程管理时,应采取必要措施防止鉴别信息在网络传输过程中被窃听。

符合建议项

检查远程管理方式

ps -ef | grep ssh
ps -ef | grep telnet

查看远程管理是否使用SSH方式进行远程管理。

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

结果记录

经核查,用户通过堡垒机输入账号密码通过SSH协议远程登录服务器,可以防止鉴别信息在网络传输过程中被窃听。

d)应采用两种或两种以上组合的鉴别技术对用户进行身份鉴别,且其中一种鉴别技术至少应使用动态口令、密码技术或生物技术来实现。

符合建议项

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

结果记录

经核查,用户在登录操作系统的过程中只使用了口令鉴别技术,未采用动态口令、数字证书、生物技术或设备指纹等鉴别技术对用户身份进行鉴别。

访问控制

基本要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

测评要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

应用指南

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

a)应对登录的用户分配账户和权限。

符合建议项

创建用户,三权分立

#!/bin/bash
#******************************************************************
# 作者: 利刃信安攻防实验室
# 微信: Mannix6
# 更新时间: 2023.4
# 版本: v1.0
#
# 描述: 网络安全等级保护安全基线加固脚本,兼容Red-Hat、CentOS。
#
# 使用方法:建议在root权限下将本脚本导入/tmp目录下执行。
# sh cybersecurity_enhance.sh
#
# 更新记录:
# v1.0
# 1) 要求用户执行脚本通过useradd添加账号
# 2) 确保每个用户的home目录权限设置为750
# 3) 禁止root账户通过SSH直接登录,需要用户提前创建其他管理账号
#******************************************************************
check_passwd() {
dcredit=0
lcredit=0
ucredit=0
ocredit=0
class=0
user=$1
passwd=$2
num=${#passwd}
[ ${num} -lt 8 ] && return 1
[[ ${passwd} =~ ${user} ]] && return 1
((num--))
for i in $(seq 0 ${num})
do
ch=${passwd:i:1}
case $ch in
[0-9])
((dcredit++))
[ ${dcredit} -eq 1 ] && ((class++))
;;
[a-z])
((lcredit++))
[ ${lcredit} -eq 1 ] && ((class++))
;;
[A-Z])
((ucredit++))
[ ${ucredit} -eq 1 ] && ((class++))
;;
*)
((ocredit++))
[ ${ocredit} -eq 1 ] && ((class++))
esac
done
[ ${class} -ge 3 ] && return 0
return 1
}
# 1. 要求用户执行脚本通过useradd添加账号
echo -e "确保管理员账号通过提权方式管理系统,禁止直接通过root登录管理,因此需要用户手动创建一个管理员账号。"
echo -e "注意账号密码需要满足复杂度要求: "
echo -e " 1.长度不小于8位"
echo -e " 2.至少包含3类字符(大写字母、小写字母、特殊符号、数字)"
echo -e " 3.不得包含用户名"
read -p "请输入要创建的管理员用户:" user
useradd ${user}
until [[ $? -eq 0 ]]
do
echo "无效的管理员用户名, 无法执行useradd命令"
read -p "请重新输入要创建的管理员用户: " user
useradd ${user}
done
rc=1
echo -e "请输入管理员用户${user}的密码:"
until [ ${rc} -eq 0 ]
do
read -s passwd
nullbuf=$(check_passwd ${user} ${passwd})
rc=$?
if [ ${rc} -eq 1 ]; then
echo "密码复杂度不满足要求,请重新输入:"
else
echo "请再次确认密码:"
read -s confirm_passwd
if [ "${passwd}" != "${confirm_passwd}" ]; then
echo "两次输入密码不一致,请重新输入:"
rc=1
else
echo "${passwd}" | passwd --stdin ${user} > /dev/null
if [ $? -ne 0 ]; then
echo "密码复杂度不满足要求,请重新输入:"
rc=1
fi
fi
fi
done
# 用户新添加的管理员账号,加入wheel组, 支持使用su
usermod -G wheel ${user}
semode=$(sestatus |grep "Current mode:" |awk -F: '{print $2}'|tr -d ' ')
[[ $semode == "enforcing" ]] && setenforce 0
# 修改账号的最大口令过期时间、最小修改周期
chage --maxdays 90 ${user}
chage --mindays 7 ${user}
[[ $semode == "enforcing" ]] && setenforce 1
# 2. 确保每个用户的home目录权限设置为750
chmod 750 /home/*
# 3. 禁止root账户通过SSH直接登录,需要用户提前创建其他管理账号
# var=$(sshd -T -C user=root -C addr=localhost|grep -iE "s*permitrootlogins+([^#]+,)?yesb")
# if [ x"$var" != x"" ]; then
line=($(cat /etc/ssh/sshd_config | awk '{if($1 == "PermitRootLogin")print NR}'))
PermitRootLogin="PermitRootLogin no"
if [ -n "${line}" ]; then
sed -i "${line} c ${PermitRootLogin}" /etc/ssh/sshd_config
else
echo ${PermitRootLogin} >> /etc/ssh/sshd_config
fi
systemctl restart sshd
# fi
echo -e "n33[31;49;1m root账号已经被禁止登录系统,请使用新创建的管理员账号${user}登录并使用su或sudo命令提权管理系统。33[39;49;0mn"
echo -e "33[32;49;1m 加固完成,下面部分加固项需要您根据实际部署情况选择手动修改配置加固。33[39;49;0m"
echo -e "------------------------------------------------------------------------------------"
echo -e "等保要求:“应通过设定终端接入方式或网络地址范围对通过网络进行管理的管理终端进行限制”。"
echo -e "n1、应当配置SSH服务侦听IP地址,请根据实际部署情况选择性配置,如果只有1个网卡无需配置。"
echo -e "t修改/etc/ssh/sshd_config文件,在ListenAddress字段后设置相应的IP地址,如果有多个可以设置多行,例如:"
echo -e "tListenAddress <ip addr 1>ntListenAddress <ip addr 2>"
echo -e "2、应当配置认证黑白名单,请根据实际部署情况选择性配置,如果只有1个账号可以登录可以忽略本项。"
echo -e "t修改/etc/ssh/sshd_config文件,添加相关Allow或Deny字段,可以任意组合,例如:"
echo -e "tAllowUsers <user1>ntAllowGroups <group1>ntDenyUsers <user2>ntDenyGroups <group2>"
cat /etc/passwd

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

查看目前存在哪些帐户,询问管理员,是否启用访问控制功能,是否依据安全策略控制用户对资源的访问。

ls -l /etc/passwd /etc/shadow /etc/sudoers /etc/group /etc/gshadow /etc/profile /etc/crontab /etc/securetty /etc/ssh/ssh_config /etc/ssh/sshd_config

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

/etc/passwd 644
/etc/shadow 000
/etc/sudoers 440
/etc/group 644
/etc/gshadow 000
/etc/profile 644
/etc/crontab 644
/etc/securetty 600
/etc/ssh/ssh_config 644
/etc/ssh/sshd_config 600

结果记录

1)经核查,为用户分配了账户和权限,目前系统内账号包括超级管理员root、系统管理员SysAdmin、安全管理员SecAdmin、审计管理员AudAdmin;
2)经核查,不存在匿名,默认用户只允许超级管理员可以登录。/etc/group权限644,/etc/passwd权限为644,/etc/shadow权限为000,/etc/profile权限为644,/etc/crontab权限为644,/etc/ssh/sshd_config权限为400。

b) 应重命名或删除默认账户,修改默认账户的默认口令。

符合建议项

1、

cat /etc/passwd
cat /etc/shadow

记录没有被禁用的系统默认的用户名

bin、daemon、shutdown、halt、sync、adm、lp、news、uucp、operator、games、gopher

删除多余用户

删除多余用户组

groupdel groupname:adm、lp、news、uucp、games、dip、pppusers、popusers、slipusers

2、查看远程连接是否

PermitRootLogin no
cat /etc/ssh/sshd_config | grep Root

核查

/etc/ssh/sshd_config

文件,文件中“PermitRootLogin”参数设置为“no”,即

PermitRootLogin no

即不许可root远程登录。

cat /etc/ssh/sshd_config
cat /etc/ssh/sshd_config | grep Root
PermitRootLogin no

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

结果记录

经核查,其他默认用户均已禁用,默认账户超级管理员root的默认口令已修改。查询配置文件/etc/ssh/sshd_config,SSH 远程管理 PermitRootLogin 状态为no,禁止root用户远程登录。

c) 应及时删除或停用多余的、过期的账户,避免共享账户的存在。

符合建议项

结果记录

经核查,系统目前只启用root、SysAdmin、SecAdmin、AudAdmin,不存在多余或过期账户,管理员用户与账户之间是否一一对应。

d)应授予管理用户所需的最小权限,实现管理用户的权限分离。

符合建议项

结果记录

1)经核查,系统进行角色划分,分为超级管理员、系统管理员、安全管理员、审计管理员;
2)经核查,管理用户的权限已经进行分离;
3)经核查,管理用户权限为其工作任务所需的最小权限。

e)应由授权主体配置访问控制策略,访问控制策略规定主体对客体的访问规则。

要求解读

操作系统的访问控制策略应由授权主体(例如安全管理员)进行配置,非授权主体不得更改访问控制策略。访问控制策略规定了操作系统用户对操作系统资源(例如文件和目录)具有哪些权限、能进行哪些操作。通过在操作系统中配置访问控制策略,可以实现对操作系统各用户权限的限制。

结果记录

1)经核查,系统由授权主体安全管理员SecAdmin负责配置访问控制策略;
2)经核查,授权主体安全管理员SecAdmin依据安全策略配置了主体对客体的访问规则并统一管理;
3)经测试,系统管理员SysAdmin和审计管理员AudAdmin不可越权访问。

f)访问控制的粒度应达到主体为用户级或进程级,客体为文件、数据库表级。

符合建议项

结果记录

经核查,访问控制策略的控制粒度达到主体为用户级或进程级,客体为文件、数据库表、记录或字段级。查看cat /etc/login.defs中的Umask为077。

g)应对敏感信息资源设置安全标记,并控制主体对有安全标记信息资源的访问。

要求解读

敏感标记是强制访问控制的依据,主体和客体都有,存在形式多样,既可能是整型数字,也可能是字母,总之,它表示主体和客体的安全级别。敏感标记由强认证的安全管理员设置。安全管理员通过对重要信息资源设置敏感标记来决定主体以何种权限对客体进行操作,实现强制访问控制。
在操作系统能够对信息资源设置敏感标记的前提下,应严格按照安全策略控制用户对相关资源的操作。

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

结果记录

经核查,系统未对主体、客体设置安全标记。

安全审计

基本要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

测评要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

应用指南

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

a) 应启用安全审计功能,审计覆盖到每个用户,对重要的用户行为和重要安全事件进行审计。

符合建议项

1、检查系统是否开启审计功能:

systemctl is-enabled auditd
Syslog and audit status
systemctl status auditd
systemctl status rsyslog
service auditd status
service rsyslog status

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

2、是否审核了审计功能启用前的进程:

grep "^s*linux" /boot/grub2/grub.cfg

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

3、查看audit.rules中是否记录了修改日期和时间信息的事件(time-change)、修改用户/组信息事件(identity)、修改系统网络环境事件(system-locale)、记录用户登录退出事件(logins)、会话初始化信息(session)、访问控制权限修改事件(perm_mod)、未经授权的文件访问失败事件(access)、记录文件被重命名或修改属性、系统管理员操作(action)、内核模块的加载和卸载(modules)等等。

cat /etc/audit/audit.rules
tail -20 /var/log/audit/audit.log

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

ausearch -ts today

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

-p [r|w|x|a] 和-w一起使用,监测用户对这个目录的读 写 执行 或者属性变化如时间戳变化。

-w /etc/crontab -p rwxa -k crontab
-w /etc/passwd -p rwxa -k passwd
-w /etc/shadow -p rwxa -k shadow
-w /etc/ssh/sshd_config -p rwxa -k ssh
-w /etc/profile -p rwxa -k profile

规则格式:-w 路径 -p 权限 -k 关键字

r 读取文件

w 写入文件

x 执行文件

a 修改文件属性

注:如果没有-p选项,则默认监视所有动作rwxa

-w /etc/at.allow
-w /etc/at.deny
-w /etc/inittab -p rwxa
-w /etc/init.d/
-w /etc/init.d/auditd -p rwxa
-w /etc/cron.d/ -p rwxa
-w /etc/cron.daily/ -p rwxa
-w /etc/cron.hourly/ -p rwxa
-w /etc/cron.monthly/ -p rwxa
-w /etc/cron.weekly/ -p rwxa
-w /etc/crontab -p rwxa
-w /etc/group -p rwxa
-w /etc/passwd -p rwxa
-w /etc/shadow
-w /etc/sudoers -p rwxa
-w /etc/hosts -p rwxa
-w /etc/sysconfig/
-w /etc/sysctl.conf -p rwxa
-w /etc/modprobe.d/
-w /etc/aliases -p rwxa
-w /etc/bashrc -p rwxa
-w /etc/profile -p rwxa
-w /etc/profile.d/
-w /var/log/lastlog
-w /var/log/yum.log
-w /etc/issue -p rwxa
-w /etc/issue.net -p rwxa
-w /usr/bin/ -p rwxa
-w /usr/sbin/ -p rwxa
-w /bin -p rwxa
-w /etc/ssh/sshd_config

注:如果没有-p选项,则默认监视所有动作rwxa

规则:-a 一系列动作 -S 系统调用名称 -F 字段=值 -k 关键字

audit.rules 样本

# This file contains the auditctl rules that are loaded
# whenever the audit daemon is started via the initscripts.
# The rules are simply the parameters that would be passed
# to auditctl.
# First rule - delete all
-D
# Increase the buffers to survive stress events.
# Make this bigger for busy systems
-b 1024
# Feel free to add below this line. See auditctl man page
-a exit,alrwxays -F arch=b64 -S umask -S chown -S chmod
-a exit,alrwxays -F arch=b64 -S unlink -S rmdir
-a exit,alrwxays -F arch=b64 -S setrlimit
-a exit,alrwxays -F arch=b64 -S setuid -S setreuid
-a exit,alrwxays -F arch=b64 -S setgid -S setregid
-a exit,alrwxays -F arch=b64 -S sethostname -S setdomainname
-a exit,alrwxays -F arch=b64 -S adjtimex -S settimeofday
-a exit,alrwxays -F arch=b64 -S mount -S _sysctl
-w /etc/group -p rwxa
-w /etc/passwd -p rwxa
-w /etc/shadow -p rwxa
-w /etc/sudoers -p rwxa
-w /etc/ssh/sshd_config
-w /etc/bashrc -p rwxa
-w /etc/profile -p rwxa
-w /etc/profile.d/
-w /etc/aliases -p rwxa
-w /etc/sysctl.conf -p rwxa
-w /var/log/lastlog
# Disable adding any additional rules - note that adding *new* rules will require a reboot
#-e 2

读取audit报告

aureport --start this-week
aureport --user
aureport --file
aureport --summary

详见man aureport

设置了监控后,会在/var/log/audit/audit.log里出现日志1

ausearch -f /etc/passwd -x rm

简单的使用:

auditd
auditctl -R /etc/audit/audit.rules
cat /var/log/audit/audit.log

就可以查看audit记录的信息

4、若有第三方审计工具或系统则记录其运行状态是否正常。

/var/log/messages 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一

/var/log/secure 与安全相关的日志信息

/var/log/maillog 与邮件相关的日志信息

/var/log/cron 与定时任务相关的日志信息

/var/log/spooler 与UUCP和news设备相关的日志信息

/var/log/boot.log 守护进程启动和停止相关的日志消息

ls -l /var/log/secure /var/log/audit/audit.log /var/log/cron /var/log/lastlog /var/log/messages /etc/rsyslog.conf /etc/audit/auditd.conf

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

结果记录

1)经核查,系统开启了安全审计功能,系统审核策略:rsyslog.service和auditd.service均为active (running) ,可保证6个月留存期;
2)经核查,部署了外部Syslog日志服务器收集审计日志,审计范围覆盖到每个用户;
3)经核查,部署了外部Syslog日志服务器收集审计日志,对重要的用户行为和重要安全事件进行审计。

b) 审计记录应包括事件的日期和时间、用户、事件类型、事件是否成功及其他与审计相关的信息。

符合建议项

结果记录

经核查,Linux日志包括类型、信息、pid、uid、auid、ses、具体信息、用户名、地址、终端、结果。同时部署外部Syslog日志服务器收集审计日志,审计记录信息包括事件的日期和时间、用户、事件类型、事件是否成功及其他与审计相关的信息。

c) 应对审计记录进行保护,定期备份,避免受到未预期的删除、修改或覆盖等。

符合建议项

检查审计日志是否不被自动删除

grep max_log_file_action /etc/audit/auditd.conf

如果设置为KEEP_LOGS,则会循环日志文件,但是会忽略num_logs参数,因此不会删除日志文件。

结果记录

1)经核查,采取了保护措施对审计记录进行保护,日志数据本地保存,覆盖周期不小于6个月;
2)经核查,部署了外部Syslog日志服务器收集审计日志,对审计记录进行定期备份,每6个月打包一次审计记录。

d) 应对审计进程进行保护,防止未经授权的中断。

符合建议项

结果记录

经核查,通过系统管理员SysAdmin和安全管理员SecAdmin无法中断审计进程。同时部署了外部Syslog日志服务器收集审计日志,对审计记录进行定期备份,每6个月打包一次审计记录。

入侵防范

基本要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

测评要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

应用指南

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

a) 应遵循最小安装的原则,仅安装需要的组件和应用程序。

符合建议项

1.查看是否启用多余的inetd.Services服务:

chkconfig --list

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

Chargen services、daytime services、Discard wervices、Echo services、Time services

以上服务均为Debug和测试时使用。

systemctl | grep running

是否对安全隐患的漏洞进行补丁修补或指定补丁策略。

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

2.查看已安装组件和应用程序

yum list installed

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

结果记录

1)经核查,服务器遵循最小安装原则;
2)经核查,服务器未安装非必要的组件和应用程序。

b) 应关闭不需要的系统服务、默认共享和高危端口。

符合建议项

1、检查:

systemctl -a

查看

CUPS、Rsh services、Talk、Telnet、tftp、、IMAPPOP3SNMPDHCP、rsync、NIS

等等服务应该关闭。

2.

systemctl | grep running
ss -ntlp
ss -ntlpu

查看是否开启端口:

2123
1. Telnet服务(默认端口23):telnet是一个不安全的网络协议,会以明文形式传输用户名和密码。建议关闭telnet服务,使用更安全的SSH服务。
2. FTP服务(默认端口21):FTP也是一个不安全的协议,密码以明文形式传输。建议关闭FTP服务,并使用更安全的SCPSFTP替代。

数据库端口是否修改默认端口号:

1433152133066379543227017

等等。

MySQL: 3306
PostgreSQL: 5432
Oracle Database: 1521
SQL Server: 1433
MongoDB: 27017
Redis: 6379
MariaDB: 3306Elasticsearch: 9200 (HTTP), 9300 (TCP)

结果记录

1)经核查,服务器未开启非必要的系统服务和默认共享;
2)经核查,服务器不存在非必要的高危端口,仅开启SSH协议(22端口)、https服务(443端口)。

c) 应通过设定终端接入方式或网络地址范围对通过网络进行管理的管理终端进行限制。

符合建议项

1、查看服务器是否通过

hosts.allow/hosts.deny(cat /etc/hosts.allow、cat /etc/hosts.deny)

或ssh中Listenaddress(cat /etc/ssh/sshd_config)、或iptables(iptables -L -v -n)限制可接入的网络地址。

修改/etc/hosts.allow和/etc/hosts.deny 这两个文件,把需要通过的IP写在/etc/hosts.allow 文件里

cat /etc/hosts.allow
cat /etc/hosts.deny
cat /etc/hosts.allow | grep -v ^#
cat /etc/hosts.deny | grep -v ^#
[root@localhost ~]# cat /etc/hosts.allow
sshd:127.0.0.1:allow
[root@localhost ~]# cat /etc/hosts.deny
sshd:ALL
[root@localhost ~]# service sshd restart #重启服务使配置生效

结果记录

经核查,服务器通过堡垒机输入账号密码登录,堡垒机限制终端接入范围,仅来自ip 111.201.145.182 的终端可以接入堡垒机从而登录服务器。同时,服务器通过/etc/hosts.allow和/etc/hosts.deny进行限制,仅允许ip 111.201.145.182 的终端远程登录。

d)应提供数据有效性检验功能,保证通过人机接口输入或通过通信接口输入的内容符合系统设定要求。

结果记录

不适用,根据GBT 28448-2019 《信息安全技术 网络安全等级保护测评要求》测评对象范围描述,操作系统无该项要求。

e) 应能发现可能存在的已知漏洞,并在经过充分测试评估后,及时修补漏洞。

结果记录

1)定期对操作系统进行漏洞扫描,对扫描发现的漏洞进行评估和补丁更新测试,及时进行补丁更新;
2)本次测评通过漏洞扫描、渗透测试等方式未发现高风险漏洞;
3)对操作系统补丁进行测试和安装,补丁情况为较新稳定版本。

f) 应能够检测到对重要节点进行入侵的行为,并在发生严重入侵事件时提供报警。

符合建议项

1.主机入侵检测

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

2.网络入侵检测

结果记录

1)经访谈安全管理员并核查,服务器部署阿里云安骑士主机入侵检测系统,网络部署阿里巴巴安全组件和阿里云助手;
2)经核查,在发生严重入侵事件时阿里云安骑士主机入侵检测系统可以提供报警。

恶意代码防范

基本要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

测评要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

应用指南

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

a) 应采用免受恶意代码攻击的技术措施或主动免疫可信验证机制及时识别入侵和病毒行为,并将其有效阻断。

结果记录

1)经核查,服务器安装了终端安全EDR,定期进行升级和更新恶意代码库。
2)经核查,终端安全EDR采用主动免疫验证技术即使识别入侵和病毒行为;
3)经核查,当识别入侵和病毒行为时终端安全EDR可以将其有效阻断。

可信验证

基本要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

测评要求

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

应用指南

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解

结果记录

1)经核查,未基于可信根对计算设备的系统引导程序、系统程序、重要配置参数和应用程序
等进行可信验证;
2)经核查,未在应用程序的关键执行环节进行动态可信验证。

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年1月18日22:57:00
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【等保测评】网络安全等级保护测评 S3A3 安全计算环境之操作系统(Linux) 详解http://cn-sec.com/archives/2405867.html

发表评论

匿名网友 填写信息