windows+Linux基线检查自动化脚本

windows+Linux基线检查自动化脚本

windows和linux基线检查,配套自动化检查脚本.

基线配置文档: 本文规定了LINUX操作系统主机应当遵循的操作系统安全性设置标准,本文档旨在指导系统管理人员或安全检查人员进行LINUX 操作系统的安全合规性检查和配置。 服务器安全基线是指为满足安全规范要求,考虑到信息安全管理的三+四个特性:保密性、完整性、可用性、可审计性、可靠性、抗抵赖性。服务器安全配置必须达到的标准,一般通过检查安全配置参数是否符合安全标准或公司标准来度量。

主要包括了账号配置安全、口令配置安全、授权配置、日志配置、IP通信配置等方面内容,这些安全配置直接反映了系统自身的安全脆弱性。

脚本检查项

①Linux

linux主要从以下方面进行检查.

windows+Linux基线检查自动化脚本
第2章 账号口令
2.1	检查是否已设置口令生存周期	3
2.2	检查口令最小长度	4
2.3	检查是否设置口令过期警告天数	4
2.4	检查设备密码复杂度策略	5
2.5	检查是否存在空口令账号	5
2.6	检查是否设置除ROOT之外UID为0的用户	6

第3章	认证授权	6
3.1	检查用户UMASK设置	6
3.2	检查重要目录或文件权限设置	7
3.3	检查重要文件属性设置-需重启	9
3.4	检查用户目录缺省访问权限设置	11
3.5	检查是否设置SSH登录前警告BANNER	11

第4章	日志审计	12
4.1	检查是否配置远程日志功能	12
4.2	检查安全事件日志配置	13
4.3	检查日志文件是否非全局可写	14
4.4	检查是否对登录进行日志记录	15
4.5	检查是否配置SU命令使用情况记录	16

第5章	协议安全	17
5.1	检查系统OPENSSH安全配置	17
5.2	检查是否已修改SNMP默认团体字	17
5.3	检查使用IP协议远程维护的设备是否配置SSH协议,禁用TELNET协议	18
5.4	检查是否禁止ROOT用户登录FTP	18
5.5	检查是否禁止匿名用户登录FTP	19

第6章	其他配置操作	20
6.1	检查是否设置命令行界面超时退出-需重启	20
6.2	检查是否设置系统引导管理器密码	20
6.3	检查系统CORE DUMP设置	21
6.4	检查历史命令设置	21
6.5	检查是否使用PAM认证模块禁止WHEEL组之外的用户SU为ROOT	22
6.6	检查是否对系统账户进行登录限制	22
6.7	检查密码重复使用次数限制	23
6.8	检查用户认证失败次数限制	24
6.9	检查是否关闭绑定多IP功能	25
6.10	检查是否限制远程登录IP范围	25
6.11	检查别名文件/ETC/ALIASES(或/ETC/MAIL/ALIASES)配置	26
6.12	检查拥有SUID和SGID权限的文件	28
6.13	检查是否配置定时自动屏幕锁定(适用于具备图形界面的设备)	28
6.14	检查系统内核参数配置	30
6.15	检查是否按组进行账号管理	31
6.16	检查是否按用户分配账号	32
6.17	检查ROOT用户的PATH环境变量	32
6.18	检查系统是否禁用CTRL+ALT+DEL组合键-需重启	33
6.19	检查是否关闭系统信任机制	33
6.20	检查系统磁盘分区使用率	34
6.21	检查是否删除了潜在危险文件	34
6.22	检查是否删除与设备运行,维护等工作无关的账号	35
6.23	检查是否配置用户所需最小权限	36
6.24	检查是否关闭数据包转发功能(适用于不做路由功能的系统)-对于集群系统或者需要数据包转发的系统不做该配置	37
6.25	检查是否禁用不必要的系统服务	37
6.26	检查是否使用NTP(网络时间协议)保持时间同步	38
6.27	检查NFS(网络文件系统)服务设置	39
6.28	检查是否安装OS补丁	39
6.29	检查是否设置SSH成功登陆后BANNER	40
6.30	检查FTP用户上传的文件所具有的权限	40
6.31	检查FTP BANNER设置	41
6.32	检查/USR/BIN/目录下可执行文件的拥有者属性	42
6.33	检查TELNET BANNER设置	42
6.34	检查是否限制FTP用户登录后能访问的目录	43
6.35	检查是否关闭不必要的服务和端口-需重启	44

②Windows

Windows主要检查以下方面

windows+Linux基线检查自动化脚本
第2章 操作系统的基本安装	6
2.1 基本安装	6

第3章 账号口令	6
3.1 检查是否已正确配置密码最短使用期限	6
3.2 检查是否已正确配置密码长度最小值	6
3.3 检查是否已正确配置“强制密码历史”	7
3.4 检查是否已正确配置帐户锁定时间	7
3.5 检查是否已正确配置帐户锁定阈值	8
3.6 检查是否已正确配置“复位帐户锁定计数器”时间	8
3.7 检查是否按照权限、责任创建、使用用户账号	8
3.8 检查是否已更改管理员帐户名称	9

第4章 认证授权	9
4.1 检查是否已删除可远程访问的注册表路径和子路径	9
4.2 检查是否已限制匿名用户连接	10
4.3 检查是否已限制可关闭系统的帐户和组	10
4.4 检查是否已限制可从远端关闭系统的帐户和组	11
4.5 检查是否已限制“取得文件或其它对象的所有权”的帐户和组	11
4.6 检查是否已正确配置“允许本地登录”策略	12
4.7 检查是否已正确配置“从网络访问此计算机”策略	12
4.8 检查是否已删除可匿名访问的共享和命名管道	13

第5章 日志审计	13
5.1 检查是否已正确配置审核(日志记录)策略	13
5.2 检查是否已正确配置应用程序日志	14
5.3 检查是否已正确配置系统日志	14
5.4 检查是否已正确配置安全日志	15

第6章 协议安全	15
6.1 检查是否已修改默认的远程桌面(RDP)服务端口	15
6.2 检查是否已启用并正确配置源路由攻击保护	16
6.3 检查是否已开启WINDOWS防火墙	16
6.4 检查是否已启用并正确配置SYN攻击保护	17
6.5 检查是否已启用并正确配置ICMP攻击保护	18
6.6 检查是否已禁用失效网关检测	18
6.7 检查是否已正确配置重传单独数据片段的次数	19
6.8 检查是否已禁用路由发现功能	19
6.9 检查是否已正确配置TCP“连接存活时间”	20
6.10 检查是否已启用并正确配置TCP碎片攻击保护	20
6.11 检查是否已启用TCP/IP筛选功能	21
6.12 检查是否已删除SNMP服务的默认PUBLIC团体	21

第7章 其他配置操作	22
7.1 检查是否已安装防病毒软件	22
7.2 检查是否已启用并正确配置WINDOWS自动更新	22
7.3 检查是否已启用“不显示最后的用户名”策略	23
7.4 检查是否已正确配置“提示用户在密码过期之前进行更改”策略	23
7.5 检查是否已正确配置“锁定会话时显示用户信息”策略	24
7.6 检查是否已禁用WINDOWS硬盘默认共享	24
7.7 检查是否已启用并正确配置屏幕保护程序	25
7.8 检查是否已启用并正确配置WINDOWS网络时间同步服务(NTP)	25
7.9 检查是否已关闭WINDOWS自动播放	26
7.10 检查是否已关闭不必要的服务-DHCP CLIENT	26
7.11 检查系统是否已安装最新补丁包和补丁	26
7.12 检查所有磁盘分区的文件系统格式	27
7.13 检查是否已正确配置服务器在暂停会话前所需的空闲时间量	27
7.14 检查是否已启用“当登录时间用完时自动注销用户”策略	28
7.15 域环境:检查是否已启用“需要域控制器身份验证以解锁工作站”策略	28
7.16 检查是否已禁用“登录时无须按 CTRL+ALT+DEL”策略	29
7.17 域环境:检查是否已正确配置“可被缓存保存的登录的个数”策略	29
7.18 域环境:检查是否已正确配置域环境下安全通道数据的安全设置	30
7.19 域环境:检查是否已启用“域环境下需要强会话密钥”策略	30
7.20 检查共享文件夹的权限设置是否安全	31
7.21 检查是否已启用WINDOWS数据执行保护(DEP)	31
7.22 检查是否已创建多个磁盘分区	31
7.23 检查是否已禁止WINDOWS自动登录	32
7.24 检查是否已关闭不必要的服务-SIMPLE TCP/IP SERVICES	32
7.25 检查是否已关闭不必要的服务-SIMPLE MAIL TRANSPORT PROTOCOL (SMTP)	33
7.26 检查是否已关闭不必要的服务-WINDOWS INTERNET NAME SERVICE (WINS)	33
7.27 检查是否已关闭不必要的服务-DHCP SERVER	34
7.28 检查是否已关闭不必要的服务-REMOTE ACCESS CONNECTION MANAGER	34
7.29 检查是否已关闭不必要的服务-MESSAGE QUEUING	34

基线检查脚本下载地址

①GitHub

linux脚本: linuxcheeklist2.2.sh

Windows脚本: windowsCheck2.1.ps1

②蓝奏云网盘

linux+windows

https://waf.lanzouw.com/iHNj6x6e8gh
解压密码: www.ddosi.org

脚本使用方法

windows脚本

使用powershell运行.\windowsCheck2.1.ps1,运行报错解决

windows+Linux基线检查自动化脚本

powershell输入如下命令

set-ExecutionPolicy RemoteSigned

输入:Y

windows+Linux基线检查自动化脚本

脚本跑起来是这样的

windows+Linux基线检查自动化脚本

这样的

windows+Linux基线检查自动化脚本

生成的报告是这样的

windows+Linux基线检查自动化脚本

根据fail和ture来进行判断是否达标

linux下使用方法

./linuxcheeklist2.2.sh
windows+Linux基线检查自动化脚本

可能会出现如下问题(无权限之类的),运行下面的命令修改权限.

chmod +x linuxcheeklist2.2.sh

运行起来是这样的[颜色不是那么友好–对于黑色背景]

windows+Linux基线检查自动化脚本

这样的

windows+Linux基线检查自动化脚本

结果是这样的:

乱成一堆~

windows+Linux基线检查自动化脚本

项目地址

GitHub:

https://github.com/tangjie1/-Baseline-check

转载请注明出处及链接

Leave a Reply

您的电子邮箱地址不会被公开。