0x01 前言
"没有网络安全、就没有国家安全",等级保护测评是根据网络安全体系制订的一系列保护流程,对于已有和将上线的业务服务的基础设施(系统、数据库、中间件等)进行的一系列检查、安全需要合规
本次先行分享学习等保中的技术自查阶段知识,关于如:理论知识、机房环境、备案、拓扑等可以根据自身和现实情况进行学习、文章由上中下三篇组成
一般来说:业务系统的组成是由系统和数据库及中间件组成,被攻击的情况下,攻击者也是向此作为目的进行攻击
系统方面: Windows、Linux(Centos、Ubuntu、红帽及一些国产系统)
数据库方面: Mysql、Oracle、redis、mongodb、SQL server等
中间件方面: Tomcat、nginx等
逻辑方面: 双因子认证、应用审计与防范、数据完整性与保密性
* 资料仅作为分享、思路来源于互联网和现实学习复现、仅作为参考、实际根据现实情况操作
0x02 测评过程
一. Windows主机测评
以Windows server 2012为例、实际根据自身环境操作
1. 权限的分配和身份的鉴别
a). 对于账户权限分配和操作应进行鉴权
通过Win+R输入netplwiz命令、查看对话框的勾选用户必须输入账号密码
通过Win+R输入lusrmgr.msc查看用户和组、默认administrator和Guest
默认为Guest禁用、再次检查administrator不存在弱口令或通过(控制面板-程序与系统-管理工具-计算机管理-用户和用户组查看
administrator用户查看勾选密码永不过期和用户不能更改的选项
热知识: 攻击者添加的隐藏用户也可以在此处看到(隐藏用户使用net user看不到)
Win+R输入secpol.msc命令查看账户策略中密码策略的密码复杂度是否开启
根据实际情况进行配置
b). 防止频繁登录、暴力破解的危害
Win+R输入secpol.msc中账户策略-账户锁定策略中进行配置
根据自身情况进行配置、不适用即未开启
通过 控制面板-外观-显示-屏幕保护设置查看有无屏保
c). 应当防止在远程控制时、传输信息被监听
Win+R输入gpedit.msc-管理模板-Windows组件-远程桌面服务-远程桌面会话主机-会话时间限制
2. 访问控制
a). 对登录账户分配账户和权限
如重要的磁盘或者目录、右击属性-安全 查看分配权限是否合理
b). 删除重名和默认账户、更改默认口令
Win+R输入lusrmgr.msc命令、查看是否存在隐藏或多余用户、进行禁用或删除
对于存在默认口令的密码,进行更改密码增加强度
c). 授权管理用户的最小权限、实现权限分离
Win+R输入secpol.msc命令、在本地策略-用户权限分配中查看策略
默认合理、具体细则根据自身环境修改
d). 设定的访问策略、主体和客体之间的访问规则
尝试使用非管理用户访问管理策略是否成功
3. 安全审计
a). 启用安全审计功能、记录每个用户行为和事件作为审计
Win+R输入secpol.msc命令-本地策略-审核策略查看相关安全策略设置
b). 审计记录(包含日期、用户、时间、事件类型等信息)
Win+R输入eventvwr.msc命令、点击Windows日志进行审计相关事件日志
c). 应用审计定期备份、防止被删除、覆盖
Win+R输入eventvwr.msc-Windows日志-应用程序-右击属性
防止在日志容量达到上限时、系统会删除或者覆盖之前的日志,以备不时之需
d). 对审计进程进行保护,防止中断
Win+R输入secpol.msc-本地策略-用户权限分配、在管理审核和安全日志中查看是否有除administrators外其他组
4. 入侵防范
a). 在使用和测评过程中、应遵循最小化安装原则
仅安装需要的组件和系统程序
Win+R输入dcomcnfg命令-组件服务-计算机-我的电脑中查看是否存在多余组件
Win+R输入appwiz.cpl查看是否安装多余服务
b). 关闭不需要的系统服务、共享及高危端口
Win+R输入services.msc查看系统服务及其他服务,查看运行状态,关闭不必要的服务
通过cmd输入net share命令查看共享情况
通过cmd输入netstat -an查看端口开放情况
c). 对于远程管理进行限制指定用户访问进行配置
使用自带主机防火墙查看
Win+R输入firewall.cpl命令-高级设置-入站规则-远程桌面用户模式(TCP-IN)-作用域
d). 及时发现漏洞并确认,及时打补丁修复
Win+R输入appwiz.cpl查看已安装更新、是否有最新版补丁
e). 针对存在入侵、攻击的情况进行告警
根据当前系统安装360、火绒、卡巴斯基等安全软件
5. 剩余的信息保护和清除
a). 在用户的鉴别信息存储空间被释放或重新分配前完全清除
Win+R输入secpol.msc-本地策略-安全选项,是否启用‘不显示最后的用户名'
b). 应保证敏感数据信息存储空间在完全释放或重新分配前完全清除
Win+R输入secpol.msc-本地策略-安全策略,查看是否开启"清除虚拟内存页面文件"
二. Linux主机测评
以Ubuntu为例、实际根据自身环境操作
1. 身份的鉴别
a). 对登录的用户进行身份鉴别和标识,身份标识具有唯一性
/etc/login.defs文件查看密码更改的策略与规则
其中可根据自身环境进行改动以及配置密码策略,如更改密码的复杂度,长度等
在Ubuntu中,配置密码复杂度文件为/etc/pam.d/common-password
其他类型的系统可以自行网上搜索,如centos的为/etc/pam.d/system-auth
b). 应具有登录次数限制、登录超时等措施
在ubuntu中/etc/pam.d/common-auth文件可以配置具体的登录次数限制
以下截图中为登录失败3次后锁定1800秒
centos的配置文件为/etc/pam.d/system-auth
具体以自身环境为准进行配置
c). 在进行远程控制中、防止传输过程被窃听
ps -e|grep sshd查看ssh是否打开
systemctl status telnet.socket是否开启(默认未开)
根据自身系统环境使用工具查看
2. 访问控制
a). 对用户的权限进行分配
r-4 w-2 x-1 --0 对于配置文件权限不能大于644 对于可执行文件权限不能超过755
b). 删除重名和多余可疑用户名,修改默认口令
直接查看/etc/shadow就可以看到
此外root用户一般不能远程登录 /etc/ssh/sshd_config
c). 管理用户所需最小权限,实现权限分离
/etc/sudoers /etc/sudo.conf 一般默认符合
d). 设定的访问策略、主体和客体之间的访问规则
一般默认符合,即普通用户访问使用高权限文件
3. 安全审计
a). 启用安全审计功能、记录每个用户行为和事件作为审计
检查auditd或rsyslog是否开启
根据自身系统环境查看如service或systemctl
b). 审计记录(包含日期、用户、时间、事件类型等信息)
根据开启的日志工具进行查看 /var/log/syslog /var/log/audit/audit.log
一般默认开启并符合
c). 定期对日志进行备份,扩展容量,防止被覆盖或删除
一般Linux使用第三方工具或自写脚本进行定时备份,异机备份,本地备份等
4. 入侵防范
a). 应遵循最小化安装原则、只安装所需组件及系统自带程序
uname -a查看当前系统内核版本是否最新或是否更新
apt-get update
不同系统版本更新所需命令不同,根据自身环境进行适配
b). 关闭不需要的端口、系统服务和共享服务
使用 systemctl list-unit-files | grep enable 筛选正在开放的系统服务
使用netstat -lntp精确筛选当前开放的端口
未开启共享,Linux一般默认没安装smaba服务
c). 对于远程管理进行限制指定用户访问进行配置
/etc/hosts.allow
/etc/hosts.deny
一般这两个出入文件不用,都会在堡垒机或防火墙直接配置
d). 及时发现漏洞并确认,及时打补丁修复
一般使用patch进行检测,其他第三方工具自测
apt install patch或rpm -qa grep patch
0x03 结语
由于篇幅的原因,此次只分享了系统类的等保测评自查步骤,后续会继续分享数据库和中间件及其他,算是比较基础简单的,但是往往由于这些简单不起眼的问题,会一连贯的蝴蝶效应造成不可逆的危害,防护总比没有的好,不要等到事出之后再去做
在正规的等保测评企业中是有符合规定并经过备案的流程的,从物理环境在到系统一系列排查,细节也不会放过,所以这些也都是基础,一起学习,一起努力!
原文始发于微信公众号(州弟学安全):学习干货|等保测评2.0技术自查阶段(上)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论