【中间件安全】IIS6安全加固规范
1. 适用情况
适用于使用IIS6进行部署的Web网站。
2. 技能要求
熟悉IIS配置操作,能够利用IIS进行建站,并能针对站点使用IIS进行安全加固。
3. 前置条件
1、 根据站点开放端口、进程ID、确认站点采用IIS进行部署;
2、 启用IIS
方法一:按Win键+R打开Windows运行,输入inetmgr,回车即可打开;
方法二:开始->管理工具->Internet 信息服务(IIS)管理器。
4. 详细操作
4.1 限制目录执行权限
右键网站目录,对网站用户对目录的权限进行必要的限制,常用于对图片目录、上传目录进行脚本执行权限限制。

4.2 开启日志审计
打开IIS管理工具,右击要管理的站点,选择“属性”。在“网站”选择“启用日志记录”。
PS:IIS默认采用的W3C日志格式采用的是UTC时间,系统时间与UTC的时差为8,也就是UTC+8。

默认情况下Web日志存放于系统目录"%systemroot%/system32/LogFiles",将Wb日志文件放在非网站目录和非操作系统分区,并定期对Web日志进行异地备份。
点击网站-右键属性-选择网站选项卡-点击属性 如下图:

4.3 自定义404错误页面
点击网站-右键属性-选择自定义错误选项卡出现如下图:

4.4 最佳经验实践
因IIS配置不当,可能导致的安全问题,常见安全漏洞如:WebDAV、目录浏览、FTP匿名访问、IIS短文件名信息泄露、mdb数据库被下载、后台对外开放等。
4.4.1 防止.mdb数据库文件被下载
很多网站都是使用的是asp+access数据库,mdb路径可能被猜解,数据库很容易就被别人下载了,利用IIS设置可有效防止mdb数据库被下载。
步骤一:新建一记事本文件,里面不要填写任何内容,将文件名改为nodownload.dll,拷贝到C:\Windows\System32\

步骤二:打开IIS服务管理器,选择需要设置的站点,点击右键,选择“属性”,打开站点属性对话框,切换到“主目录”选项卡,点击中 下方的“配置”按钮

步骤三:弹出应用程序配置窗口,在“映射”选项卡中点击下方的“添加”按钮,弹出添加/编辑应用程序扩展名映射窗口,点击“浏览”按钮,找到刚才那个nodownload.dll文件,“扩展名”文本框中输入“.mdb”,动作设为:全部动作,点“确定”保存设置。

4.4.2 访问源IP限制
在条件允许的条件下,对IIS访问源进行IP范围限制。只有在允许的IP范围内的主机才可以访问WWW服务。常用于限制网站管理后台对外开放。
开始->管理工具->Internet 信息服务(IIS)管理器 选择相应的站点目录,然后右键点击“属性”->目录安全性->IP地址和域名限制->添加允许访问的IP地址。

4.4.3 关闭WebDAV
开始->管理工具->Internet 信息服务(IIS)管理器 选择Web服务扩展->WebDAV,然后右键点击“禁止”,确认选择是,关闭WebDAV。

4.4.4 关闭目录浏览
1、 开始->管理工具->Internet 信息服务(IIS)管理器 选择相应的站点目录,然后右键点击“属性”->目录浏览->去掉勾选

4.4.5 关闭FTP匿名访问
1、开始->管理工具->Internet 信息服务(IIS)管理器 选择FTP站点,然后右键点击“属性”->安全账户->去掉允许匿名连接。

4.4.6 解决IIS短文件名漏洞
利用URLScan工具过滤URL中的特殊字符(仅针对IIS6)-- 解决IIS短文件名漏洞
1、 URLScan 3.1下载地址:http://www.iis.net/downloads/microsoft/urlscan
2、 看系统位数选择安装程序(32或64位),双击运行urlscan程序

3、 安装完成以后,我们可以在System32/InetSvr/URLScan目录下找到以下文件:
log:日志目录,开启日志记录功能,会在此目录下生成日志文件; urlscan.dll:动态连接库文件;
urlscan.ini:软件配置文件,这个文件很只要,因为对URLScan的所有配置,均有这个文件来完成。

4、 IIS管理--网站(右击属性)---ISAPI筛选器--点击添加--输入筛选器名称和可执行文件--点击确定即可。

5、在UrlScan.ini中进行安全设置,
A、以下两个选项需要设置为一,防止因编码、特殊文件夹导致的系统故障:
[options]节点中
AllowHighBitCharacters=1 ;default is 0
AllowDotInPath=1 ;default is 0
B、修复IIS短文件名漏洞:
[DenyUrlSequences]节点中新增波浪号

4.5 风险操作项
4.5.1 停用或删除默认站点
1、IIS安装后的默认主目录是“c:\Inetpub\wwwroot”,为更好地抵抗踩点、刺探等攻击行为,应该更改主目录位置,禁用默认站点,新建立站点并进行安全配置。
开始->管理工具->Internet 信息服务(IIS)管理器 选择相应的站点,然后右键站点,选择停止或者删除。

4.5.2 删除不必要的脚本映射
1、打开IIS服务管理器,选择需要设置的站点,点击右键,选择“属性”,打开站点属性对话框,切换到“主目录”选项卡,点击中 下方的“配置”按钮,从列表中删除以下不必要的脚本,包括 .asa .cer .cdx .idq .htw .ida .shtml .stm .idc .htr .printer等。
删除的原则:只保留需要的脚本映射。

根据需要可以在已经存在的脚本上点击右键进行编辑和删除,也可以自定义添加映射。
4.5.3 设置最大并发连接数
1、打开IIS服务管理器,选择需要设置的站点,点击右键,选择“属性”,打开站点属性对话框,切换到“性能”选项卡,点击中 下方的“网站连接”中,设置连接限制。

4.5.4 独立站点帐户
在Windows server 2003系统下,用IIS架设Web服务器,合理的为每个站点配置独立的Internet来宾账号,这样可以限制Internet 来宾账号的访问权限,只允许其可以读取和执行运行网站所的需要的程序。
1. 选中“我的电脑”右键,选择“管理”,打开“计算机管理”,选择“本地用户和组”,然后点击“用户”,接着“右键”,新建一个用户,如下图:

最后点击“创建”,完成用户创建。
2. 删除新建立的用户属的用户组“USERS”,然后点击“添加”,让用户属于Guests组,如下图:

3、网站设置独立运行用户,加强网站安全

4.5.5 独立应用程序池
给网站设置独立运行的程序池,这样每个网站与错误就不会互相影响:



最后
欢迎关注个人微信公众号:Bypass--,每周原创一篇技术干货。

【中间件安全】IIS6安全加固规范的更多相关文章
- 下一代的中间件必须是支持docker规范的
下一代的中间件必须是支持docker规范的,这是中间件技术走向标准规范化的必经之路. 什么是 Docker? 答案是:Docker 是下一代的云计算模式.Docker 是下一代云计算的主流趋势. Do ...
- 【中间件安全】WebSphere安全加固规范
1. 适用情况 适用于使用WebSphere进行部署的Web网站. 2. 技能要求 熟悉WebSphere安装部署,熟悉WebSphere常见漏洞利用方式,并能针对站点使用WebSphere进行安全加 ...
- 【中间件安全】Jboss安全加固规范
1. 适用情况 适用于使用Jboss进行部署的Web网站. 适用版本:5.x版本的Jboss服务器 2. 技能要求 熟悉Jboss安装配置,能够Jboss进行部署,并能针对站点使用Jboss进行安全加 ...
- 【中间件安全】Weblogic 安全加固规范
1. 适用情况 适用于使用Weblogic进行部署的Web网站. 2. 技能要求 熟悉Weblogic安装部署,熟悉Weblogic常见漏洞利用方式,并能针对站点使用Weblogic进行安全加固. 3 ...
- 【中间件安全】Nginx 安全加固规范
1. 适用情况 适用于使用Nginx进行部署的Web网站. 2. 技能要求 熟悉Nginx配置,能够Nginx进行部署,并能针对站点使用Nginx进行安全加固. 3. 前置条件 1. 根据站点开放端口 ...
- 【中间件安全】Tomcat 安全加固规范
1. 适用情况 适用于使用Tomcat进行部署的Web网站. 2. 技能要求 熟悉Tomcat配置操作,能够利用Tomcat进行建站,并能针对站点使用Tomcat进行安全加固. 3. 前置条件 1.根 ...
- 【中间件安全】IIS7.0 安全加固规范
1. 适用情况 适用于使用IIS7进行部署的Web网站. 2. 技能要求 熟悉IIS配置操作,能够利用IIS进行建站,并能针对站点使用IIS进行安全加固. 3. 前置条件 1. 根据站点开放端口.进程 ...
- 【中间件安全】Apache 安全加固规范
1. 适用情况 适用于使用Apahce进行部署的Web网站. 2. 技能要求 熟悉Apache配置文件,能够利用Apache进行建站,并能针对站点使用Apache进行安全加固. 3. 前置条件 1. ...
- Linux 工作站安全加固规范
目标受众 这是一套 Linux 基金会为其系统管理员提供的推荐规范. 这个文档用于帮助那些使用 Linux 工作站来访问和管理项目的 IT 设施的系统管理员团队. 如果你的系统管理员是远程员工,你也许 ...
随机推荐
- Java 多线程 并发和并行
并发和并行都可以表示执行多个任务,但是偏重点不同.并发偏重于多个任务交替执行,而多个任务之间有可能是串行的.并行是真正意义上的同时执行. 并发和并行示意图如下: 从严格意义上来说,并行的多个任务是真实 ...
- PAT Basic 1008
1008 数组元素循环右移问题 (20 分) 一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥0)个位置,即将A中的数据由(A0A1⋯AN ...
- Android requestcode resultcode的作用
requestcode 一个页面的不同事件,激发不同的函数,startActivityForResult中传入不同的请求码的值以调用下一个界面,在被调用界面结束返回第一个界面时,请求码会自动返回(自动 ...
- vue-cli webpack2项目打包优化
减小文件搜索范围 配置 resolve.modules Webpack的resolve.modules配置模块库(即 node_modules)所在的位置,在 js 里出现 import 'vue' ...
- OPC_Data Access Automation Interface Standard V2.02
文库地址: https://wenku.baidu.com/view/a70d1ad4b14e852458fb57da.html
- Java第一章
第一章 计算机程序:计算机为完成某些功能产生的一系列有序指令集合. Java技术包括:JavaSE(标准版) JavaEE(企业版) ---JavaME(移动版) 开发Java程序步骤:1.编写 2 ...
- HTML5 学习04—— MathML数学标记
MathML 元素标签: <math>...</math> MathML 是数学标记语言,是一种基于XML(标准通用标记语言的子集)的标准,用来在互联网上书写数学符号和公式的置 ...
- Python3 与 NetCore 基础语法对比(List、Tuple、Dict、Set专栏)
Jupyter最新版:https://www.cnblogs.com/dotnetcrazy/p/9155310.html 在线演示:http://nbviewer.jupyter.org/githu ...
- 解决Android Studio出现Failed to open zip file. Gradle's dependency cache may be corrupt的问题
问题如下图所示: 解决: 修改 gradle-wrapper.properties里的gradle的版本,与之前没有报错的gradle版本一致.就可以了 比如我报这个错的时候 : distributi ...
- html5使用canvas实现毫秒级画心电图