可以使用 HTTP 请求方法“-”

可以使用 HTTP 请求方法“-”

得到一个看起来像这样的 apache 日志条目,实际上我有一堆随时间推移而分散的日志条目。

XXX.XXX.XXX.XXX - - [27/Apr/2012:14:39:52 -0500] "-" 408 - "-" "-"

它不是 GET 或 POST,方法是“-”。

还有人见过这样的请求吗?它不是来自渗透测试人员,但我从 2012 年 4 月到今天为止从很多其他 IP 那里得到了这样的请求。

我们失败了,得到了 408,只是想知道有人可能会尝试什么,并且在谷歌上搜索减号却不起作用。

答案1

408 是请求超时。这意味着客户端已连接但实际上一段时间内没有发送任何数据,服务器放弃并断开连接并出现此错误。这也是为什么没有记录任何其他内容的原因;客户端实际上没有发送任何数据。

Apache 的默认超时在这种情况下为 300 秒(5 分钟);它是可配置的,但通常不需要更改。

答案2

这意味着 Apache 不知道请求方法是什么。在这种情况下,它是由超时引起的(即客户端从未发送请求)。400 Bad Request 响应也很常见,其中客户端发送了无效请求(例如尝试将 TLS 与非 TLS 端口通信,反之亦然),或者在建立 TCP 连接后立即关闭而不发送任何内容(例如监控服务执行 TCP 连接检查)。

答案3

可能由以下原因造成懒猴或类似攻击。其目的是尽可能长时间地打开尽可能多的连接。Timeout默认情况下为 300 秒在 Apache 中

如果您使用预分叉服务器,则很容易MaxClients导致网站无法访问。如果 Apache 配置错误,大量分叉处理可能会导致过度交换并导致机器死机或速度变慢。

mpm_event或者一个好的配置mpm_worker应该是 slowloris 更难攻击的目标。其他缓解措施正在降低Timeout到较低的值。我想这取决于您的客户。您可能不想用太短的超时时间杀死拨号用户。另一方面,5 分钟可能太多了。

相关内容