0


安全加固之系统加固

为什么要安全加固

法律法规

    《中华人民共和国网络安全法》第二十二条、《关键信息基础设施安全保护条例》第三十三条,发现七网络产品、服务存在安全缺陷,漏洞风险时,应当采取补救措施

利益保护

    若不对自身应用进行安全防护,极易被病毒植入、广告替换、支付渠道篡改、钓鱼、信息劫持、严重侵害企业和个人利益

自身安全

    通过安全加固,将整个信息系统的安全状况提升到一个较高的水平,尽可能地消除或降低系统的安全风险

安全加固的方案原则

版本升级

    对于系统和应用在使用过程中暴露的安全缺陷,系统或应用厂商会即使发布解决问题的升级补丁包。升级系统或应用版本,可有效解决旧版本存在的安全风险

关闭端口服务

    在不影响业务系统的正常运行下,停止或禁用承载业务无关的服务或服务端口,可有效避免无关服务造成的安全风险

修改配置项

    操作系统、安全设备、数据库、中间件、第三方应用和业务系统可更改的配置与安全相关的设置参数等信息,通过修改安全配置,可以为网络或应用提供必要的安全保护

主机和网络ACL策略

    主机和网络ACL策略是一类临时的安全加固方法,说白了就是iptables。ACL通常应用在系统的流量控制上,可通过实施ACL,有效的部署网络出/入口策略,控制对内网资源的访问能力,来保障资源安全性

修改代码(可选)

    修改代码一般由系统开发商完成,安全加固支持方仅提供加固建议及加固有效性验证

部署设备防护(可选)

    部署设备防护的安全加固方式一般由设备厂商完成,雷池……

安全加固测试

回退测试

    运维人员、厂商、第三方代维方完成,系统及数据备份、回退操作验证

业务测试

    运维人员、厂商、第三方代维方配合完成,利用现网环境或搭建虚拟环境进行业务测试,确认加固是否影响业务

有效性测试

    由安全加固实施工程师完成,利用现网环境或搭建虚拟环境进行安全风险测试,确认加固有效性

Linux加固方向

账号管理与认证授权

            为不同的管理员分配不同的账号,目的就是根据不同用途,设置不同账户账号,提高安

    全层级

1、创建多用途账号

                    useradd username

                    passwd username

2、修改目录权限

                    chmod 750 directory

                    chown username:groupname directory

3、普通用户使用特定授权命令

                    sudo ifconfig

4、修改sudo的提权应用

                    visudo

                    username host=shell

            例如redhat可以在本地使用useradd命令

                    redhat localhost=/usr/sbin/useradd

                    ![](https://img-blog.csdnimg.cn/5598ef01945d46b6bfe47cec77f514e7.png) 

            **注意,**多个命令用逗号隔开,!可以防止某用户支持某个命令

                    ![](https://img-blog.csdnimg.cn/fc6c8909396841bb89242a6215e5d8fa.png)

5、检查高权限文件

                    过高的权限或不应该时间段创建或修改文件

                    首先查看哪些文件是高权限文件

                            find / -type f \( -perm -00007 \) -a -ctime -1 -exec 1s -lg {} \;

                    解析:-a就是代表三个时间,-1为一天之内,-lg为不看代表所组

                            ctime:属性变更时间

                            mtime:内容修改时间

                            atime:被访问时间

6、去除不需要的账号、修改默认账号shell环境

                    目的就是删除系统不必要的默认账号、更改危险账号的默认shell变量,降低被利用

                    的可能性

                    **删除/锁定多于用户与组**

                            userdel -r username

                            groupdel groupname

                            passwd -l username

                    **修改程序的登录shell**

                            usermod -s /sbin/nologin username

** **7、限制超级管理员远程登录

                    修改ssh配置文件中PermitRootLogin yes改为no

8、删除root以外UID为0的用户

                    检查哪些账户UID为0

                            awk -F: '($3 == 0) { print $1 }' /etc/passwd

                    删除账户

                            userdel -r username

                    或者编辑passwd与shadow文件

9、不应存在位于高权组的用户

                    检查哪些账户属于其他组

                    grep -v ^# /etc/login.defs | grep "^GID_MIN" |awk '{print $2}'

                    awk -F: '$3>500{print $1}' /etc/passwd | xargs -I {} grep {} /etc/group

                    grep -v "/sbin/nologin" /etc/passwd | awk -F ; '{print $1}' | xargs -I {} grep {} /etc/group

10、缩短默认密码生存周期

                    目的:通过采用静态密码认证的设备,账户密码的生存周期不长于90天

                    修改文件密码策略文件

                            vi /etc/login.defs

                            PASS_MAX_DAYS 90 最常使用期限

                            PASS_MAX_DAYS 0 最短使用期限

                            PASS_MIN_LEN 8 密码最小长度

                            PASS_WARN_AGE 7 最长期限到期前7天提醒更改密码

11、设置密码长度策略

                    目的:规范使用搞钱覆盖度密码,延长被爆破时间

                    修改pam认证文件

                            vim /etc/pam.d/system-auth

                    添加或修改内容

                            passwd requisite pam_cracklib.so try_first_pass retry=3 dcredit=-1 lcredit=-1                                 ucredit=-1 ocredit=-1 minclass=3 minlen=8

12、设置强制密码历史

                    目的:防止被社工字典破解

                    修改pam认证文件,添加/修改内容

                            passwd sufficient pam_unix.so sha512 shadow nullok try_first_pass

                            use_autotok remember=5

13、设置账户锁定策略

                    目的:防止被连续试探密码,降低爆破可能性

                    **修改一下pam认证文件**

                            /etc/pam.d/system-auth

                                    添加/修改:auth required pam_tally2.so deny=6

                            /etc/pam.d/sshd

                                    添加/修改:unlock_time=300 even_deny_root

                            /etc/pam.d/login

                                    添加或修改:root_unlock_time=60

14、修改umask值,即设置反码,防止新建对象有不必要的权限

                    目的:修改创建文件或目录时的默认权限,防止属于该组的其他用户级别组的用户

                    修改该用户的文件

                    修改四个启动脚本文件

                            /etc/profile

                            /etc/csg.login

                            /etc/csh.cshrc

                            /etc/bashrc

                    在文件末尾加入umask值

                            umask 027

15、限制用户对资源的使用,避免DDOS等攻击

                    修改限制文件,减缓被DDOS攻击带来的危害

                            vi /etc/security/limits.conf

                     ![](https://img-blog.csdnimg.cn/4961a00555b94d86a9b70b8a54030397.png)

                    意思是限制用户haha将最多允许使用40个进程,每个进程最多打开50个文件,在

                    shell中可创建的最大文件限制为100MB。最多允许两个admin用户同时登陆,同时

                    登陆的xixi组用户不能超过5个

16、关闭使用su切换到root用户,减少提权风险

                    修改su的配置文件/etc/pam.d/su,添加或修改一下内容

                            auth sufficient /lib/security/pam_rootok.so

                            auth require /lib/security/pam_whell.so -- 只有whell组的用户可以su到root

通讯协议

设置访问控制白名单,减少被入侵的风险

                    **修改拒绝策略**

                            vi /etc/hosts.deny

                    加入信息:ALL:ALL

                    **修改允许策略**

                            vi /etc/hosts.allow

                    加入信息:sshd:来访者ip

关闭无源路由

          **  设置FTP访问白名单**

            **设置FTP服务器的上传权限反码**

           ** 设置FTP服务器的banner信息**

** 配置可信任的NTP服务器,保证时间同步,防止某些服务错误**

** 查看是否存在远程登录文件**

补丁管理

补丁装载

                    使用yum更新:yum update

                    使用rpm安装,访问http://www.redhat.com/corp/support/errata

                            rpm -Fvh rpm包

                  **  注意:**所有补丁需要在测试环境测试不影响业务服务后才可更新,下载补丁时,一

                    定对文件进行签名核实

服务进程与启动

            关闭无用服务,提高系统性能,降低漏洞风险;建议关闭的服务,如无需要,建议关闭或卸载功能

banner与自动注销

                    隐藏系统提示信息,避免通过系统提示信息获取系统状态

                    查看登录banner信息

                            cat /etc/issue

                    清空banner文件

                            echo  > /etc/issue

设置登录超时注销,防止疏忽导致命令会被他人使用

                    修改/etc/profile,在HISTFILESIZE下面加入TMOUT=180

                    生效:source /etc/profile

减少history历史数量

                    修改/etc/profile,修改信息HISTFILESIZE=50

                    生效:source /etc/profile

跳过grup菜单,防止在grup菜刀对引导过程进行修改

                    修改grup配置文件

                    vi /boot/grup2/grup.cfg

                    修改等时

                    set timeout=0

关闭ctrl+alt+del重启功能,防止Windows习惯启动任务管理器导致服务器重启

                    修改配置文件,注释所有内容

                    vi /usr/lib/systemd/system/ctrl-alt-del.target

Windows加固方向

账号管理与认证授权

按用户类型分配账号

                    根据系统要求,设定不同账户和组,管理员、数据库sa、审计用户、来宾用户等

                            打开本地用户和计算机管理器:打开运行,输入lusrmgr.msc

                            根据用户要求将账户加入功能组

                            右击账户 ->属性 ->更改隶属于

                            右击功能组 ->属性 ->成员

清理系统无用账户

                    删除或锁定与设备运行,维护等工作无关的账户,提高系统账号安全性

                            打开本地用户和计算机管理器:打开运行,输入lusrmgr.msc

                            删除或锁定无关账号(删除操作不可逆)

                            右击账户->删除

                            右击账户->属性->账户已禁用

重命名administrator,禁用guest

                    减少账户被爆破可能性,提高系统访问安全性

                            打开运行输入lusrmgr.msc

                            为管理员administrator账户改名

                            右击administrator->重命名->属性->全名

                            禁用来宾guest

                            右击guest->属性->账户已禁用

设置密码策略

                    防止弱口令出现,降低被爆破的可能性

                            打开本地安全策略:打开运行,输入secpol.msc

                            找到密码策略

                            账户策略->密码策略

                            修改默认值

                            密码必须符合复杂性要求:禁用->启用

                            密码长度最小值:0 -> 8

配置账户锁定策略

                    有效降低administrator意外的账户被爆破的几率

                            打开本地安全策略:打开运行,输入secpol.msc

                            找到密码策略

                            账户策略->账户锁定策略

                            账户锁定时间:未定义->30分钟

                            账户锁定阈值:0->6

                            复位账户锁定计时器:未定义->30分钟

远程关机权限设置

                    防止远程用户非法关闭系统

                            打开本地安全策略:打开运行,输入secpol.msc

                            找到用户权限分配

                            本地策略->用户权限分配

                            从远端系统强制关机策略中,只保留administrator组

设置从网络访问此计算机,防止非法用户通过网络访问计算机资源

                    打开本地安全策略:打开运行输入secpol.msc

                    找到用户权限分配

                    本地策略->用户权限分配

                    网络访问此计算机策略,加入授权用户

日志配置

审核策略设置

                    通过审核策略,记录系统登录时间,对象访问事件,软件安装事件,安全事件等

                            打开本地安全策略:打开运行输入secpol.msc

                            找到审核策略

                            本地策略->审核策略

                            修改审核策略

                            审核策略更改设置为成功和失败都要审核

                            日志记录策略设置

优化系统日志记录,防止日志溢出

                    进入条件查看器:打开运行输入eventvwr.msc

                    在日志属性中设置日志大学不小于1024KB,设置最大日志尺寸是,按需要改写时

                    间

IP协议安全

启用TCP/IP筛选,过滤掉不必要的端口,提高网络安全性

                    运维人员列出业务所需端口

                    打开本地连接

                    找到高级TCP/IP设置

                    右击本地连接->internet协议属性->高级TCP/IP设置

                    在选项的属性中启用网络连接的TCP/IP筛选,是开放业务协议端口

开启系统防火墙,多角度封堵业务以外的端口连接

                    运维人员列出业务所需端口

                    打开本地连接中的防火墙

                    在高级选项中设置启用Windows防火墙

                    设置例外

                    只允许业务端口接入网络

关闭默认共享,Windows默认共享区,关闭后提高信息安全性

                    打开注册表编辑器,编辑和新建键值:打开运行输入regedit.msc

                    展开lsa目录

                    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

                    调整restrictanonymous键值为1

                    建两个DWORO值分别命名为AutoShareWks和AutoShareServer

漏洞管理

安全系统补丁,修复系统漏洞,安装最新的service pack补丁集

                    部署WSUS服务器

                    从Microsoft Update下载补丁

                    在测试机上安装补丁后测试业务运行情况

                    使用WSUS服务器内网分发补丁

Windows服务

关闭无用服务

                    打开服务管理器:打开运行输入services.msc

                    关闭禁用服务

                    右击无关服务->属性->启动类型(禁用)->运行状态 ->停止

关闭Windows自动播放功能,防止从移动存储设备感染自运行病毒

                    打开组策略编辑器:打开运行输入gpedit.msc

                    找到策略所在

                    计算机配置->管理模块->系统->设置

                    关闭自动播放->已启用

关闭无用启动项

                    打开微软控制台:打开运行输入msconfig

                    在启动选项卡中去掉多余的启动项的”√“
标签: 安全 网络

本文转载自: https://blog.csdn.net/HH_beibei/article/details/127468828
版权归原作者 嗨害嗨 所有, 如有侵权,请联系我们删除。

“安全加固之系统加固”的评论:

还没有评论