分享

如何禁用不需要的HTTP方法

 和帅书馆 2019-06-03

IIS7.0默认开启了不安全的OPTIONS和TRACE方法,建议关闭这两个方法。

以下环境为windows server 2008、IIS7.0

方法(1):web.config

在<configuration>节点下添加如下代码:

<system.webServer>    <security>      <requestFiltering>        <verbs allowUnlisted="false">          <add verb="GET" allowed="true"/>          <add verb="POST" allowed="true"/>          <add verb="HEAD" allowed="true"/>        </verbs>      </requestFiltering>    </security></system.webServer>

 

以上代码只允许开启GET、POST和HEAD方法。

allowUnlisted="false":拒绝未列出的谓词。

方法(2):IIS7.0 --> “请求筛选”-->"编辑功能设置"-->"不允许未列出的谓词"-->"HTTP谓词"-->"添加允许谓词"

添加“允许”和“拒绝”规则,特定谓词只能填一个。

方法(3):IIS7.0 --> applicationHost.config

文件位置:C:/Windows/System32/inetsrv/config/

  • 若要配置 IIS 处理未列出的谓词的方式,请使用以下语法:

    appcmd set config /section:requestfiltering /verbs.allowunlisted:true | false

    例如,若要拒绝未列出的谓词,请在命令提示符处键入以下命令,然后按 Enter:

    appcmd set config /section:requestfiltering /verbs.allowunlisted:false

  • 若要配置要筛选的谓词,请使用以下语法:

    appcmd set config /section:requestfiltering /+verbs.[verb=' string ',allowed='true | false']

    变量 verb string 用于指定将应用此限制的谓词。

    例如,若要指定允许使用 GET,请在命令提示符处键入以下命令,然后按 Enter:

    appcmd set config /section:requestfiltering /+verbs.[verb='GET',allowed='true']

参考文献:

http://technet.microsoft.com/zh-cn/library/86bb183f-a016-40ca-b9c3-bbb2f5c8a4b5.aspx

http://www./learn/manage/configuring-security/use-request-filtering

http://technet.microsoft.com/zh-cn/library/hh831621

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多