风险名称 | 检查项分类 | 检查项名称 | 检查项描述 | 风险等级 | 修复建议 | ||||||||||||||||||||||||
阿里云标准-CentOS Li | 身份鉴别 | 密码复杂度检查 | 检查密码长度和密码是 | 高危 | 编辑/etc/security/pwquality.conf,把minlen(密码最小长度)设置为9-32位,把minclass(至少包含小写字母、大写字母、数字、特殊字符等4类字符中等3类或4类)设置为3或4。如: ``` minlen=10 minclass=3 ``` |
||||||||||||||||||||||||
阿里云标准-CentOS Li | 服务配置 | 设置SSH空闲超时退出时间 | 设置SSH空闲超时退出 | 高危 | 编辑/etc/ssh/sshd_config,将ClientAliveInterval 设置为300到900,即5-15分钟,将ClientAliveCountMax设置为0-3之间。 ``` ClientAliveInterval 600 ClientAliveCountMax 2 ``` |
||||||||||||||||||||||||
阿里云标准-CentOS Li | 身份鉴别 | 检查密码重用是否受限制 | 强制用户不重用最近使 | 高危 | 在/etc/pam.d/password-auth和/etc/pam.d/system-auth中password sufficient pam_unix.so 这行的末尾配置remember参数为5-24之间,原来的内容不用更改,只在末尾加了remember=5。 | ||||||||||||||||||||||||
阿里云标准-CentOS Li | 身份鉴别 | 设置密码修改最小间隔时间 | 设置密码修改最小间隔 | 高危 | 在 /etc/login.defs 中将 PASS_MIN_DAYS 参数设置为7-14之间,建议为7: ``` PASS_MIN_DAYS 7 ``` 需同时执行命令为root用户设置: ``` chage --mindays 7 root ``` |
||||||||||||||||||||||||
阿里云标准-CentOS Li | 身份鉴别 | 设置密码失效时间 | 设置密码失效时间,强 | 高危 | `使用非密码登陆方式如密钥对,请忽略此项。`在 `/etc/login.defs `中将 PASS_MAX_DAYS 参数设置为 60-180之间,如: ``` PASS_MAX_DAYS 90 ``` 需同时执行命令设置root密码失效时间: ``` chage --maxdays 90 root ``` |
||||||||||||||||||||||||
阿里云标准-CentOS Li | 身份鉴别 | 检查密码重用是否受限制 | 强制用户不重用最近使 | 高危 | 在/etc/pam.d/password-auth和/etc/pam.d/system-auth中password sufficient pam_unix.so 这行的末尾配置remember参数为5-24之间,原来的内容不用更改,只在末尾加了remember=5。 | ||||||||||||||||||||||||
阿里云标准-CentOS Li | 身份鉴别 | 设置密码失效时间 | 设置密码失效时间,强 | 高危 | `使用非密码登陆方式如密钥对,请忽略此项。`在 `/etc/login.defs `中将 PASS_MAX_DAYS 参数设置为 60-180之间,如: ``` PASS_MAX_DAYS 90 ``` 需同时执行命令设置root密码失效时间: ``` chage --maxdays 90 root ``` |
||||||||||||||||||||||||
阿里云标准-CentOS Li | 服务配置 | 设置SSH空闲超时退出时间 | 设置SSH空闲超时退出 | 高危 | 编辑/etc/ssh/sshd_config,将ClientAliveInterval 设置为300到900,即5-15分钟,将ClientAliveCountMax设置为0-3之间。 ``` ClientAliveInterval 600 ClientAliveCountMax 2 ``` |
||||||||||||||||||||||||
阿里云标准-CentOS Li | 身份鉴别 | 设置密码修改最小间隔时间 | 设置密码修改最小间隔 | 高危 | 在 /etc/login.defs 中将 PASS_MIN_DAYS 参数设置为7-14之间,建议为7: ``` PASS_MIN_DAYS 7 ``` 需同时执行命令为root用户设置: ``` chage --mindays 7 root ``` |
||||||||||||||||||||||||
阿里云标准-CentOS Li | 身份鉴别 | 密码复杂度检查 | 检查密码长度和密码是 | 高危 | 编辑/etc/security/pwquality.conf,把minlen(密码最小长度)设置为9-32位,把minclass(至少包含小写字母、大写字母、数字、特殊字符等4类字符中等3类或4类)设置为3或4。如: ``` minlen=10 minclass=3 ``` |
||||||||||||||||||||||||
阿里云标准-Windows 2 | 访问控制 | 匿名账户访问控制 | 匿名账户访问控制 | 高危 | 在管理工具打开本地安全策略,打开路径:安全设置\本地策略\安全选项。将网络访问中“Everyone权限应用于匿名用户“设置为:已禁用,将“不允许SAM帐户的匿名枚举“设置为:已启用,将“不允许SAM帐户和共享的匿名枚举”设置为:已启用,将”允许匿名SID/名称转换“设置为:已禁用。 | ||||||||||||||||||||||||
阿里云标准-Windows 2 | 身份鉴别 | 配置账户锁定策略 | 配置账户锁定策略,降 | 高危 | 在管理工具打开本地安全策略,打开路径:`安全设置\帐户策略\账户锁定策略`。将账户锁定阈值设置为3-8之间,建议值为5,输错5次密码锁定账户;然后将账户锁定时间和重置账户锁定计数器设置为10-30之间,建议值为15,账户锁定时间为15分钟。 | ||||||||||||||||||||||||
阿里云标准-Windows 2 | 身份鉴别 | '强制密码历史'设置为5-24之间 | 设置强制密码历史,防 | 高危 | 在管理工具打开本地安全策略,打开路径:`安全设置\帐户策略\密码策略`,将强制密码历史设置为5-24之间 | ||||||||||||||||||||||||
阿里云标准-Windows 2 | 身份鉴别 | 密码复杂性配置 | 设置强密码,减少密码 | 高危 | 在管理工具打开本地安全策略,打开路径:`(计算机策略\计算机配置\Windows设置)安全设置\帐户策略\密码策略`,将密码必须符合复杂性要求设置为`已启用`,将密码最小长度设置为8以上。 | ||||||||||||||||||||||||
阿里云标准-Windows 2 | 安全审计 | 应启用安全审计功能,审计覆盖到每个用 | 开启审核策略,对重要 | 高危 | 在管理工具打开本地安全策略,打开路径:`安全设置\本地策略\审核策略`,将全部审核策略配置为:`成功,失败`。包括审核策略更改、审核对象访问、审核进程跟踪、审核目录服务访问、审核账户登陆事件、审核特权使用、审核系统事件、审核账户管理、审核登陆事件共九项。 | ||||||||||||||||||||||||
阿里云标准-Windows 2 | 身份鉴别 | 设置密码使用期限策略 | 设置密码使用期限策略 | 高危 | 在管理工具打开本地安全策略,打开路径:`安全设置\帐户策略\密码策略`,将密码最长使用期限设置为30-180之间,建议值为`90`,将密码最短使用期限设置为1-14之间,建议值为`7`. | ||||||||||||||||||||||||
阿里云标准-Redis安全 | 服务配置 | 修改默认6379端口 | 避免使用熟知的端口, | 高危 | 编辑文件redis的配置文件redis.conf,找到包含port的行,将默认的6379修改为自定义的端口号,然后重启redis |
||||||||||||||||||||||||
阿里云标准-Redis安全 | 文件权限 | 限制redis 配置文件访问权限 |
因为redis密码明文存 | 高危 | 执行以下命令修改配置文件权限: ``` chmod 600 /<filepath>/redis.conf ``` |
||||||||||||||||||||||||
阿里云标准-Redis安全 | 入侵防范 | 禁用或者重命名危险命令 | Redis中线上使用keys | 高危 | 修改 redis.conf 文件,添加 ``` rename-command FLUSHALL "" rename-command FLUSHDB "" rename-command CONFIG "" rename-command KEYS "" rename-command SHUTDOWN "" rename-command DEL "" rename-command EVAL "" ``` 然后重启redis。 重命名为"" 代表禁用命令,如想保留命令,可以重命名为不可猜测的字符串,如: `rename-command FLUSHALL joYAPNXRPmcarcR4ZDgC` |
||||||||||||||||||||||||
阿里云标准-Redis安全 | 访问控制 | 禁止使用root用户启动 | 使用root权限去运行网 | 高危 | 使用root切换到redis用户启动服务: ``` useradd -s /sbin/nolog -M redis sudo -u redis /<redis-server-path>/redis-server /<configpath>/redis.conf ``` |
||||||||||||||||||||||||
阿里云标准-Redis安全 | 入侵防范 | 禁用或者重命名危险命令 | Redis中线上使用keys | 高危 | 修改 redis.conf 文件,添加 ``` rename-command FLUSHALL "" rename-command FLUSHDB "" rename-command CONFIG "" rename-command KEYS "" rename-command SHUTDOWN "" rename-command DEL "" rename-command EVAL "" ``` 然后重启redis。 重命名为"" 代表禁用命令,如想保留命令,可以重命名为不可猜测的字符串,如: `rename-command FLUSHALL joYAPNXRPmcarcR4ZDgC` |
||||||||||||||||||||||||
阿里云标准-Redis安全 | 服务配置 | 修改默认6379端口 | 避免使用熟知的端口, | 高危 | 编辑文件redis的配置文件redis.conf,找到包含port的行,将默认的6379修改为自定义的端口号,然后重启redis |
||||||||||||||||||||||||
阿里云标准-Redis安全 | 访问控制 | 打开保护模式 | redis默认开启保护模 | 高危 | redis.conf安全设置: # 打开保护模式 protected-mode yes | ||||||||||||||||||||||||
阿里云标准-Redis安全 | 访问控制 | 禁止使用root用户启动 | 使用root权限去运行网 | 高危 | 使用root切换到redis用户启动服务: ``` useradd -s /sbin/nolog -M redis sudo -u redis /<redis-server-path>/redis-server /<configpath>/redis.conf ``` |
||||||||||||||||||||||||
阿里云标准-Redis安全 | 文件权限 | 限制redis 配置文件访问权限 |
因为redis密码明文存 | 高危 | 执行以下命令修改配置文件权限: ``` chmod 600 /<filepath>/redis.conf ``` |
||||||||||||||||||||||||
阿里云标准-Mysql安全 | 服务配置 | 修改默认3306端口 | 避免使用熟知的端口, | 中危 | 编辑/etc/my.cnf文件,[mysqld] 段落中配置新的端口参数,并重启mysql服务: ``` port=3506 ``` |
||||||||||||||||||||||||
阿里云标准-Mysql安全 | 身份鉴别 | 确保没有用户配置了通配符主机名 | 避免在主机名中只使用 | 高危 | 执行SQL更新语句,为每个用户指定允许连接的host范围。 1. 登录数据库,执行`use mysql;` ; 2. 执行语句`select user,Host from user where Host='%';`查看HOST为通配符的用户; 3. 删除用户或者修改用户host字段,删除语句:`DROP USER 'user_name'@'%';` 。更新语句:`update user set host = <new_host> where host = '%';`。 4. 执行SQL语句: ``` OPTIMIZE TABLE user; flush privileges; ``` |
||||||||||||||||||||||||
阿里云标准-Mysql安全 | 服务配置 | 禁用symbolic-links选项 | 禁用符号链接以防止各 | 高危 | 编辑Mysql配置文件/etc/my.cnf,在[mysqld] 段落中配置`symbolic-links=0`,5.6及以上版本应该配置为`skip_symbolic_links=yes`,并重启mysql服务。 | ||||||||||||||||||||||||
阿里云标准-Mysql安全 | 访问控制 | 禁用local-infile选项 | 禁用local_infile选项 | 高危 | 编辑Mysql配置文件/etc/my.cnf,在[mysqld] 段落中配置local-infile参数为0,并重启mysql服务: ``` local-infile=0 ``` |
||||||||||||||||||||||||
阿里云标准-Mysql安全 | 服务配置 | 禁用symbolic-links选项 | 禁用符号链接以防止各 | 高危 | 编辑Mysql配置文件/etc/my.cnf,在[mysqld] 段落中配置`symbolic-links=0`,5.6及以上版本应该配置为`skip_symbolic_links=yes`,并重启mysql服务。 | ||||||||||||||||||||||||
阿里云标准-Mysql安全 | 身份鉴别 | 确保没有用户配置了通配符主机名 | 避免在主机名中只使用 | 高危 | 执行SQL更新语句,为每个用户指定允许连接的host范围。 1. 登录数据库,执行`use mysql;` ; 2. 执行语句`select user,Host from user where Host='%';`查看HOST为通配符的用户; 3. 删除用户或者修改用户host字段,删除语句:`DROP USER 'user_name'@'%';` 。更新语句:`update user set host = <new_host> where host = '%';`。 4. 执行SQL语句: ``` OPTIMIZE TABLE user; flush privileges; ``` |
||||||||||||||||||||||||
阿里云标准-Mysql安全 | 服务配置 | 修改默认3306端口 | 避免使用熟知的端口, | 中危 | 编辑/etc/my.cnf文件,[mysqld] 段落中配置新的端口参数,并重启mysql服务: ``` port=3506 ``` |
||||||||||||||||||||||||
阿里云标准-Mysql安全 | 访问控制 | 禁用local-infile选项 | 禁用local_infile选项 | 高危 | 编辑Mysql配置文件/etc/my.cnf,在[mysqld] 段落中配置local-infile参数为0,并重启mysql服务: ``` local-infile=0 ``` |
||||||||||||||||||||||||
阿里云标准-Mysql安全 | 服务配置 | 删除'test'数据库 | 测试数据库可供所有用 | 高危 | 登陆数据库执行以下SQL语句删除test数据库: ``` DROP DATABASE test; flush privileges; ``` |
||||||||||||||||||||||||
阿里云标准-Apache安 | 配置日志 | 确保错误日志文件名和严重性级别配置正 | 服务器错误日志非常宝 | 高危 | 1.使用vim编辑器对配置文件进行编辑 `vim path` (`path为主配置文件的绝对路径,如果您的主配置文件中包含`include <path>`,则<path>为您的子配置文件路径) 2.找到`LogLevel `将其设置为`LogLevel notice ` 3.找到`ErrorLog `将其设置为`ErrorLog "logs/error_log"` 如没有,请增加 |
||||||||||||||||||||||||
阿里云标准-Apache安 | 个人信息保护 | 隐藏 Apache 的版本号及其它敏感信息 | 服务器签名在服务器充 | 中危 | 1.使用vim编辑器对配置文件进行编辑 `vim path`path为主配置文件的绝对路径,如果您的主配置文件中包含`include <path>`,则<path>为您的子配置文件路径) 2.找到`ServerSignature`将其设置为`ServerSignature Off ` 如没有,请增加 |
||||||||||||||||||||||||
阿里云标准-Apache安 | 入侵防范 | 确保正确设置KeepAliveTimeout | KeepAliveTimeout指 | 高危 | 1.使用vim编辑器对配置文件进行编辑 `vim path`(path为主配置文件的绝对路径,如果您的主配置文件中包含`include <path>`,则<path>为您的子配置文件路径) 2.找到`KeepAliveTimeout`将其设置为 ```KeepAliveTimeout 15``` 如没有,请增加 |
||||||||||||||||||||||||
阿里云标准-Apache安 | 服务配置 | 确保keepAlive已启用 | 允许每个客户端重用TC | 高危 | 1.使用vim编辑器对配置文件进行编辑 `vim path`(path为主配置文件的绝对路径,如果您的主配置文件中包含`include <path>`,则<path>为您的子配置文件路径) 2.找到`KeepAlive`将其设置为 `KeepAlive On` 如没有,请增加该项 |
||||||||||||||||||||||||
阿里云标准-Apache安 | 服务配置 | 确保禁用http跟踪方法 | TRACE方法不需要,并 | 中危 | 1.`vim path`(path为主配置文件的绝对路径,如果您的主配置文件中包含`include <path>`,则<path>为您的子配置文件路径) 2.找到选项`TraceEnable`将其值设置为`off` 如没有请增加 |
||||||||||||||||||||||||
阿里云标准-Apache安 | 入侵防范 | 确保超时设置正确 | DoS的一种常用技术, | 高危 | 1.使用vim编辑器对配置文件进行编辑 `vim path`(path为apache配置文件路径例`/usr/local/apache2/etc/httpd.conf`或`/etc/httpd/conf/httpd.conf`或查找include文件或自定义安装请自行查找) 2.找到`Timeout`将其设置为`Timeout 10 ` 如没有,请增加 |
||||||||||||||||||||||||
阿里云标准-Apache安 | 入侵防范 | 确保MaxKeepAliveRequests设置为适当 | MaxKeepAliveRequest | 高危 | 1.使用vim编辑器对配置文件进行编辑 `vim path` (path为主配置文件的绝对路径,如果您的主配置文件中包含`include <path>`,则<path>为您的子配置文件路径) 2.找到`MaxKeepAliveRequests`将其设置为 ```MaxKeepAliveRequests 100``` 如没有,请增加 |
||||||||||||||||||||||||
阿里云标准-Apache安 | 数据保密性 | 确保Web根目录的选项受到限制 禁止 Ap |
Web根目录或文档根目 | 中危 | 1.使用 `vim path` (`path为主配置文件的绝对路径,如果您的主配置文件中包含`include <path>`,则<path>为您的子配置文件路径) 2.找到`<Directory "apache网页存放路径">`(默认网页存放路径`/usr/local/apache2`或`/var/www/html`,自定义路径请自行查找) ```<Directory "apache存放网页路径">``` `. . .` `Options Indexes FollowSymLinks` `. . .` ```</Directory>``` 将其设置为 `Options None` 如配置虚拟主机,请确保虚拟主机配置项中含有Options None 如没有,请增加 ```<Directory "apache存放网页路径">``` `. . .` `Options None` `. . .` ```</Directory>``` |
||||||||||||||||||||||||
阿里云标准-Nginx安全 | 服务配置 | 针对Nginx SSL协议进行安全加固 | Nginx SSL协议的加密 | 高危 | Nginx SSL协议采用TLSv1.2: 1、打开`conf/nginx.cconf`配置文件; 2、配置 ``` server { ... ssl_protocols TLSv1.2; ... } ``` 备注:配置此项请确认nginx支持OpenSSL,运行`nginxv -V` 如果返回中包含`built with OpenSSL`则表示支持OpenSSL。如果不支持,请重新编译nginx |
||||||||||||||||||||||||
阿里云标准-Nginx安全 | 服务配置 | Nginx后端服务指定的Header隐藏状态 | 隐藏Nginx后端服务X-P | 高危 | 隐藏Nginx后端服务指定Header的状态: 1、打开`conf/nginx.conf`配置文件; 2、在`http`下配置`proxy_hide_header`项; 增加或修改为 `proxy_hide_header X-Powered-By;` `proxy_hide_header Server;` |
||||||||||||||||||||||||
阿里云标准-Nginx安全 | 身份鉴别 | 检查是否配置Nginx账号锁定策略。 | 1.执行系统命令passwd | 高危 | 配置Nginx账号登录锁定策略: Nginx服务建议使用非root用户(如nginx,nobody)启动,并且确保启动用户的状态为锁定状态。可执行passwd -l <Nginx启动用户> 如`passwd -l nginx` 来锁定Nginx服务的启动用户。命令 `passwd -S <用户>` 如`passwd -S nginx`可查看用户状态。 修改配置文件中的nginx启动用户修改为nginx或nobody 如: ```user nobody;``` |
||||||||||||||||||||||||
弱密码-Mysql数据库登 | 身份鉴别 | 数据库登陆弱密码 | 若系统使用弱口令,存 | 高危 | 将弱密码修改复杂密码,应符合复杂性要求: ``` 1、长度8位以上 2、包含以下四类字符中的三类字符: 英文大写字母(A 到 Z) 英文小写字母(a 到 z) 10 个基本数字(0 到 9) 非字母字符(例如 !、$、#、%、@、^、&) 3、避免使用已公开的弱密码,如:abcd.1234 、admin@123等 ``` 可使用 SET PASSWORD 命令把弱密码修改为强密码 ``` 1、登陆数据库 2、查看数据库用户密码信息 mysql> SELECT user, host, authentication_string FROM user; 部分版本查询命令为: mysql> SELECT user, host, password FROM user; 3、根据查询结果及弱密码告警信息修改具体用户的密码 mysql> SET PASSWORD FOR '用户名'@'主机' = PASSWORD('新密码'); ``` |
||||||||||||||||||||||||
弱密码-Redis数据库登 | 身份鉴别 | 开启redis密码认证,并设置高复杂度密 | redis在redis.conf配 | 高危 | 打开redis.conf,找到requirepass所在的地方,修改为指定的密码,密码应符合复杂性要求: ``` 1、长度8位以上 2、包含以下四类字符中的三类字符: 英文大写字母(A 到 Z) 英文小写字母(a 到 z) 10 个基本数字(0 到 9) 非字母字符(例如 !、$、%、@、^、&等,#除外) 3、避免使用已公开的弱密码,如:abcd.1234 、admin@123等 ``` 再去掉前面的#号注释符,然后重启redis |
阿里基线安全
猜你喜欢
转载自blog.csdn.net/sfmcatl/article/details/104744507
今日推荐
周排行