小伙伴们,我们接着上次的分享,一起往下看吧。
操作系统-Linux:
- 运用passwd -l锁定不必要的帐号,运用userdel命令删除不必要的帐号;查看口令为空的帐号并设置复杂密码;查看UID为0的帐号,并确保只有root。
- 通过在/etc/profile中添加传说中的“umask 027”,实现新建文件仅“属主可读写,同组用户只读和执行,其他用户根本无权”的默认文件管控。
- 编辑/etc/pam.d/common-auth文件,添加“如果连续输错三次密码,则帐号锁定半小时”的策略;并编辑/etc/pam.d/su文件,限制能够su到root的用户组。
- 通过script实现对全部用户的登录进行日志记录。
- 关闭不必要的服务,并通过编辑/etc/ssh/sshd_config文件,对SSH使用的版本、允许的密码错误次数等进行加固。
Web服务器-Apache/IIS:
- 修改默认帐号及其密码,创建专门用于运行的用户帐号和组。
- 严格控制主目录的访问权限,非特权管理用户不能修改或写入该目录中的内容。
- 通过配置,跟踪包括时间和用户使用的 IP 地址等信息,来实现对运行错误和用户访问等方面的日志记录。
- 禁止该服务访问本Web目录之外的任何文件。
- 禁用或拒绝目录罗列的功能与浏览请求。
- 修改设置错误页面重定向功能,并隐藏版本号及其软件相关的敏感信息。
- 设置session的保持时间,以应对DoS攻击。
- 删除默认安装的无用文件、文件夹和脚本。
- 对于Apache,要禁用TRACE、CGI功能;禁用PUT和DELETE等危险的HTTP 方法,仅允许GET和POST方法。
- 对于IIS,禁用掉不必要的Web服务扩展(WebDAV)和应用程序扩展,限定支持的页面类型。
如前所述,另外还有其他方面需要进行安全加固与配置,这里就不赘述了。我们的基本思路就是:做好账户(组)和例程脚本的剪裁,文件(夹)访问、端口和服务的最小化,会话连接、错误信息与日志的设置,管理后台的更改以及安全补丁与杀毒的更新。
在根据上述流程逐步完成了系统与服务的安全配置,并且导入了相关的业务数据之后,我们就可以其进行多种、多次的漏洞扫描和渗透测试了。我们的宗旨就是要在系统的起步阶段,尽量扫清如OWASP提及的十大安全隐患。