p.s. windows下面用urlscan可以方便的拦截 TRACE,OPTIONS,PUT等敏感method,只保留get和post。但是默认情况下回返回200状态再给一个404页面,这不友好,我们需要直接返回一个403状态。
一、打开urlscan.ini,指定出现拦截时候的跳转文件 RejectResponseUrl
然后在根目录建立403目录,下面建立一个网站语言匹配的默认文件 index.php index.aspx 等等,访问就能返回403了
使用curl做TRACE 验证
-v 或 --verbose:详细模式,显示请求和响应的详细信息,包括请求头、响应头和数据传输过程。
-X 或 --request:指定 HTTP 请求方法,例如 GET、POST、PUT、DELETE 等。
参考资料如下:
RejectResponseUrl=(默认情况下不指定)
此选项指定在 URLScan 禁止请求时运行的文件的虚拟路径。这允许您自定义针对被禁止的请求发送给客户机的响应。必须将 RejectResponseUrl 指定为相应文件的虚拟路径,如/Path/To/RejectResponseHandler.asp。可以指定 URLScan 通常禁止的文件,如 Active Server Pages (ASP)页。还可以从该页指定以下服务器变量:
o HTTP_URLSCAN_STATUS_HEADER:此变量指定请求被禁止的原因。
o HTTP_URLSCAN_ORIGINAL_VERB:此变量指定被禁止的请求中的原始谓词(例如GET、POST、HEAD 或 DEBUG)。
o HTTP_URLSCAN_ORIGINAL_URL:此变量指定被禁止的请求中的原始 URL。
如果将 RejectResponseUrl 设置为特殊值 /~*,则 URLScan 使用“仅日志记录”模式。这允许 IIS 为所有请求提供服务,但它会在 URLScan 日志中为所有通常被禁止的请求添加相应的项。这在需要测试 URLScan.ini 文件时很有用。
如果没有指定 RejectResponseUrl 的值,则 URLScan 使用默认值 /。
UseFastPathReject=0
默认情况下,此选项设置为 0。如果将此选项设置为 1,则 URLScan 忽略 RejectResponseUrl 设置并立即向浏览器返回 404 错误信息。这比处理 RejectResponseUrl 要快,但它允许的日志记录选项没有那么多。如果将此选项设置为 0,则 URLScan 使用 RejectResponseUrl 设置来处理请求。
评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=2997
一、打开urlscan.ini,指定出现拦截时候的跳转文件 RejectResponseUrl
RejectResponseUrl=/403
然后在根目录建立403目录,下面建立一个网站语言匹配的默认文件 index.php index.aspx 等等,访问就能返回403了
<?php
header("HTTP/1.1 403 Forbidden");
exit;
?>
header("HTTP/1.1 403 Forbidden");
exit;
?>
使用curl做TRACE 验证
-v 或 --verbose:详细模式,显示请求和响应的详细信息,包括请求头、响应头和数据传输过程。
-X 或 --request:指定 HTTP 请求方法,例如 GET、POST、PUT、DELETE 等。
curl.exe -v -X GET http://test1.xg98.com
curl.exe -v -X TRACE http://test1.xg98.com
curl.exe -v -X OPTIONS http://test1.xg98.com
curl.exe -v -X TRACE http://test1.xg98.com
curl.exe -v -X OPTIONS http://test1.xg98.com
参考资料如下:
RejectResponseUrl=(默认情况下不指定)
此选项指定在 URLScan 禁止请求时运行的文件的虚拟路径。这允许您自定义针对被禁止的请求发送给客户机的响应。必须将 RejectResponseUrl 指定为相应文件的虚拟路径,如/Path/To/RejectResponseHandler.asp。可以指定 URLScan 通常禁止的文件,如 Active Server Pages (ASP)页。还可以从该页指定以下服务器变量:
o HTTP_URLSCAN_STATUS_HEADER:此变量指定请求被禁止的原因。
o HTTP_URLSCAN_ORIGINAL_VERB:此变量指定被禁止的请求中的原始谓词(例如GET、POST、HEAD 或 DEBUG)。
o HTTP_URLSCAN_ORIGINAL_URL:此变量指定被禁止的请求中的原始 URL。
如果将 RejectResponseUrl 设置为特殊值 /~*,则 URLScan 使用“仅日志记录”模式。这允许 IIS 为所有请求提供服务,但它会在 URLScan 日志中为所有通常被禁止的请求添加相应的项。这在需要测试 URLScan.ini 文件时很有用。
如果没有指定 RejectResponseUrl 的值,则 URLScan 使用默认值 /。
UseFastPathReject=0
默认情况下,此选项设置为 0。如果将此选项设置为 1,则 URLScan 忽略 RejectResponseUrl 设置并立即向浏览器返回 404 错误信息。这比处理 RejectResponseUrl 要快,但它允许的日志记录选项没有那么多。如果将此选项设置为 0,则 URLScan 使用 RejectResponseUrl 设置来处理请求。
[最后修改由 admin, 于 2025-04-30 14:53:57]

这篇日志没有评论。
此日志不可发表评论。