Revo1212/iisaudit

GitHub: Revo1212/iisaudit

iisaudit 解析 IIS W3C 日志时不丢弃格式异常的请求行,确保攻击 payload 等关键证据不会从取证时间线中消失。

Stars: 0 | Forks: 0

# iisaudit 解析 IIS W3C 日志且不丢弃请求数据,并记录每一行未转化为事件的原因。 在界定 webshell 或注入攻击案件时,Web 服务器日志是主要证据,而其中最重要的往往是那些看起来格式错误的行,因为漏洞利用的 payload 本质上就是格式错误的。一个悄悄丢弃这些行的解析器,交给你的是一条看似完整实则残缺的时间线。 ## 问题所在 plaso 的 IIS 插件通过在固定字符集上使用 `pyparsing.Word(...)` 来构建每个字段: ``` _URI_SAFE_CHARACTERS = "/.?&+;_=()-:,%" ``` 这与 `pyparsing.alphanums`(即 ASCII 字母和数字)结合使用。因此,`!`、`#` 和 `*` 根本不会被任何字段类接受,即使是宽容的 `_QUERY` 也不行,任何非 ASCII 字符也同样会被拒绝。SQL 注释绕过 (`/**/`)、模板注入 (`{7*7}`)、`