Skip to content

[bug] 新版本--fuzzy-status参数指定的响应码结果会全部被过滤 #167

Description

@Herbert-555

使用的命令

spray_windows_amd64.exe \
    -u "http://117.172.194.103:8066" \
    -d "static_dirs.txt" \
    -f "new_case_current.json" \
    --force \
    -t 10 \
    --fuzzy-status 404,200 \
    --no-stat \
    --read-all \
    --timeout 30 \
    -P 1 \
    --debug \
    --no-bar \
    --no-color

  字典 static_dirs.txt:

  css/
  img/
  fonts/
  js/

  对比低版本也是同一条命令,只替换为低版本二进制执行即可:

  spray_windows_amd64.exe \
    -u "http://117.172.194.103:8066" \
    -d "static_dirs.txt" \
    -f "old_case_current.json" \
    --force \
    -t 10 \
    --fuzzy-status 404,200 \
    --no-stat \
    --read-all \
    --timeout 30 \
    -P 1 \
    --debug \
    --no-bar \
    --no-color

遇到的问题

使用新版 spray_windows_amd64.exe (1.3.2)时,--fuzzy-status 404,200 会把与基线页面差异明显的 200 响应目录过滤掉。

测试目标存在以下目录索引:

/css/
/img/
/fonts/
/js/

使用只包含这 4 个路径的字典扫描时,新版 debug 输出显示这些路径都被过滤:

/css/ [reason: fuzzy compare failed]
/img/ [reason: fuzzy compare failed]
/fonts/ [reason: fuzzy compare failed]
/js/ [reason: fuzzy compare failed]
found: 0

期望行为:
这些目录与首页和 404 页面内容差异明显,应该根据 simhash 差异保留为有效结果。

对比低版本:
使用同样命令、同样字典、同样目标,低版本可以稳定扫出 4 个目录,并显示 sim 值:

/css/ [sim:14]
/img/ [sim:1018]
/fonts/ [sim:13
19]
/js/ [sim:18]
found: 4

是否稳定复现:
稳定复现。新版(1.3.2)多次运行均为 found: 0,低版本(1.2.6)同样条件下均能 found: 4。

版本

v1.3.2

截图

Image Image

日志


运行环境

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions