风险评估:IIS的安全配置,IIS安全基线检查加固

「作者简介」:冬奥会网络安全中国代表队,CSDN Top100,就职奇安信多年,以实战工作为基础著作 《网络安全自学教程》,适合基础薄弱的同学系统化的学习网络安全,用最短的时间掌握最核心的技术。

这一章节我们需要知道IIS基线检查的标准以及对应的加固方式。

IIS(Internet Information Server)是因特网信息服务器,是 Windows Server 自带的 Web 服务器,默认使用80端口提供Web服务。

IIS基线检查

1、卸载无关组件

按照软件安全设计原则中攻击面最小化原则,卸载不需要的IIS组件,比如:

  • FTP服务
  • SMTP Server
  • Internet打印
  • NNTP Server
  • FontPage 2022 Server Extensions

服务器管理器 - 删除角色和功能。

删除不需要的服务器角色、功能。

2、设置匿名账户

IIS7.0开始默认开启匿名身份验证,匿名身份默认是IUSR用户。

匿名身份验证模式下,客户端(用户)访问站点时不做身份验证,而是以匿名的形式映射到服务端的IUST账户上。

扩展:IUSR自IIS7引入,取代IIS6的 IUSR_主机名 账户。

不开启匿名身份验证时,访问网站资源会提示401无权限。

匿名身份验证只能给IUSR用户。IIS6则只给IUSR_主机名用户

【控制面板】-【管理工具】-【IIS管理器】- 双击打开【身份验证】。

【匿名身份验证】-【编辑】-【特定用户】- 检查是否设置了其他用户。

3、绑定监听地址

IIS只对监听的IP地址和端口提供Web服务,当你的服务器上有多个网卡时,访问未监听的IP地址就会无法访问。

只监听提供服务的IP地址。

【控制面板】-【管理工具】-【IIS管理器】-【操作】-【编辑网站】-【绑定】- 检查是否绑定IP地址。

4、传输加密

启用SSL,加密传输数据,防止嗅探。

【控制面板】-【管理工具】-【IIS管理器】-【SSL设置】- 检查SSL是否启用。

5、限制权限

设置网站目录权限,防止用户上传的脚本文件在服务器上执行。

5.1、文件系统

Web目录所在磁盘建议使用NTFS格式。

5.2、Web目录

Web目录除了SYSTEM和Administrators有完全控制权限外,其他用户和组只给读取和执行权限。

【控制面板】-【管理工具】-【IIS管理器】-【编辑权限】- 【安全】- 检查用户权限。

5.3、网站目录

IIS6中,网站目录权限只开启读取、记录访问、索引资源;应用程序设置中执行权限设置为纯脚本。

写入和脚本资源访问会导致IIS Put上传;目录浏览会导致目录遍历。

IIS7中,网站目录权限只开启读取权限。

【控制面板】-【管理工具】-【IIS管理器】- 左侧找到需要设置权限的目录 - 打开处理和映射程序 - 编辑权限 - 取消勾选【脚本】。

5.4、文件上传目录

询问研发文件上传目录位置,取消执行权限。

IIS6中:【IIS管理器】-【文件上传目录】- 右键属性 - 【目录】-【应用程序设置】-【执行权限】选择无。

IIS7中:【控制面板】-【管理工具】-【IIS管理器】-【文件上传目录】-【编辑权限】-【安全】- 取消执行权限。

6、应用程序扩展

删除不使用的应用程序扩展,比如.acx.htm等。

IIS6中:【IIS管理器】- 站点右键属性 - 【主目录】-【应用程序设置】-【配置】- 按需求删除应用程序扩展。

IIS7中:【控制面板】-【管理工具】-【IIS管理器】- 【MIME类型】-【打开功能】- 选中不使用的扩展名 - 【删除】

7、访问控制

对网站或敏感目录做IP访问限制。

IIS6中:IIS管理器】- 站点右键属性 - 【目录安全性】-【IP地址和域名限制】-【编辑】

IIS7中:【控制面板】-【管理工具】-【IIS管理器】-【IP地址和域限制】

扩展:IIS7安装时,默认功能不包含【IP地址和域限制】,需要到服务器管理器中重新安装。安装过程和安装IIS时一样,只在服务器角色那里多勾选IP和域控制就行了。

8、Web服务扩展

禁用不使用的Web服务扩展。

IIS6中:【IIS管理器】-【Web服务扩展】

IIS7中:【控制面板】-【管理工具】-【IIS管理器】-【本地服务器】-【ISAPI和GCI限制】-【打开功能】

扩展:IIS7安装时,默认功能不包含【ISAPI和CGI限制】,需要到服务器管理器中重新安装。安装过程和安装IIS时一样,只在服务器角色那里多勾选CGI、ISAPI扩展就行了。

9、日志

【控制面板】-【管理工具】-【IIS管理器】-【日志】-【打开功能】- 开启日志,格式选W3C。

日志默认保存在网站目录的logs下面,每天一个日志文件。

10、默认错误处理

按照软件安全设计中默认故障处理保护原则,自定义IIS的报错页面。

控制面板】-【管理工具】-【IIS管理器】-【错误页】-【打开功能】- 选中对应的状态代码 - 【编辑】- 将文件路径设置到自定义的报错页面。

相关推荐
万事可爱^3 小时前
HDBSCAN:密度自适应的层次聚类算法解析与实践
算法·机器学习·数据挖掘·聚类·hdbscan
牧歌悠悠4 小时前
【深度学习】Unet的基础介绍
人工智能·深度学习·u-net
坚毅不拔的柠檬柠檬4 小时前
AI革命下的多元生态:DeepSeek、ChatGPT、XAI、文心一言与通义千问的行业渗透与场景重构
人工智能·chatgpt·文心一言
坚毅不拔的柠檬柠檬5 小时前
2025:人工智能重构人类文明的新纪元
人工智能·重构
jixunwulian5 小时前
DeepSeek赋能AI边缘计算网关,开启智能新时代!
人工智能·边缘计算
Archie_IT5 小时前
DeepSeek R1/V3满血版——在线体验与API调用
人工智能·深度学习·ai·自然语言处理
大数据追光猿5 小时前
Python应用算法之贪心算法理解和实践
大数据·开发语言·人工智能·python·深度学习·算法·贪心算法
竹言笙熙6 小时前
代码审计初探
学习·web安全
灵感素材坊6 小时前
解锁音乐创作新技能:AI音乐网站的正确使用方式
人工智能·经验分享·音视频
xinxiyinhe7 小时前
如何设置Cursor中.cursorrules文件
人工智能·python