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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions