chainreactors / spray

Next Generation HTTP Dir/File Fuzz Tool
https://chainreactors.github.io/wiki/spray/
GNU General Public License v3.0
458 stars 39 forks source link

deadline 无效 #58

Open SuperXiaoxiong opened 3 weeks ago

SuperXiaoxiong commented 3 weeks ago

image

不知道是waf原因,还是其他连接原因 超时设置无效

SuperXiaoxiong commented 3 weeks ago

具体无法结束的原因 响应未设置 cl

测试如下 image image

理解兜底 deadline 没起效果

M09Ic commented 3 weeks ago

我无法复现这个问题, 找到了一个疑似bug的地方, 不是很确定.

加上 -c standard 手动指定标准http库看看是否还会存在这个问题?

SuperXiaoxiong commented 2 weeks ago

一个开发老师傅说

https://github.com/chainreactors/spray/commit/ea5218b7f3b994d21d2ea38c3f34635ce195d1a6

修 tcp 连接 超时失效的时候,把 read timeout 搞没了

师傅看看是不是这里出错了

SuperXiaoxiong commented 2 weeks ago

我无法复现这个问题, 找到了一个疑似bug的地方, 不是很确定.

加上 -c standard 手动指定标准http库看看是否还会存在这个问题?

使用curl 会出现这个问题,库标准是这样的。

一般响应中都有 content-length 字段 image

当非常规响应中没有 content-length 字段时 就会出现这个问题,请求不会关闭

M09Ic commented 2 weeks ago

我猜测的原因也是这个,fasthttp的timeout文档上说是全局生效, 但是似乎对tcp需要单独声明, 之前这一块的代码被我注释了。

https://github.com/chainreactors/spray/blob/f6037d7a1e9fbb313120389a8d991bb03c081706/internal/ihttp/client.go#L42-L58

M09Ic commented 2 weeks ago

尝试在 https://github.com/chainreactors/spray/releases/tag/v1.1.1 中进行了修复, 但是我无法确定问题是否已被解决, 是否可以帮忙测试下

SuperXiaoxiong commented 1 week ago

image 还是没有解决这个问题

找到一个简单的测试方案 nc -lvp 48080 监听 48080 端口

然后使用spray 扫描该ip:port , 设置deadline

M09Ic commented 6 days ago

https://github.com/chainreactors/spray/releases/tag/v1.1.2