You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在IIS日志中查看SQL语句与查询参数?

提问内容

我正在开发一款用于分析Web服务器日志以检测SQL注入攻击的应用程序。目前我已能够解析Apache日志并从中提取SQL语句,因为这类语句会包含在请求的查询参数中,示例如下:

84.55.41.57- - [14/Apr/2016:08:22:13 0100] "GET /wordpress/wp-content/plugins/custom_plugin/check_user.php?userid=1 AND (SELECT 6810 FROM(SELECT COUNT(*),CONCAT(0x7171787671,(SELECT (ELT(6810=6810,1))),0x71707a7871,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) HTTP/1.1" 200 166 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.2.3) Gecko/20100401 Firefox/4.0 (.NET CLR 3.5.30729)"

为实现该功能我曾在Apache的访问日志中开启了查询字符串记录。请问IIS日志是否也支持查看SQL语句?我目前尚未找到有效参考资料,甚至不清楚该检索哪些关键词,提前感谢各位的帮助。

解答
  • IIS日志支持记录查询参数内容,你可以通过配置实现和Apache相同的日志采集能力,用于SQL注入检测。首先将IIS日志格式设置为W3C扩展格式,在字段配置中勾选cs-uri-query项,该字段会完整记录GET请求URL中?后的所有查询参数,和你在Apache中提取的query params作用完全一致,你可以直接从该字段解析疑似注入的SQL语句。
  • IIS默认日志存储路径为C:\inetpub\logs\LogFiles\,每个站点对应独立的日志文件夹,配置生效后新生成的日志会自动新增cs-uri-query字段内容,你之前针对Apache日志开发的注入检测规则,仅需调整日志字段解析逻辑适配W3C格式即可直接复用。
  • 如果你需要检测POST请求中携带的SQL注入语句,默认IIS日志不会记录请求体内容,你需要额外配置IIS高级日志功能,或者配置请求筛选规则捕获请求体中的参数内容,才能覆盖POST请求的注入检测场景。

内容的提问来源于stack exchange,提问作者AKang123.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 13:54:04