OSCHINA 也在遭受大量的无效请求。。。

红薯 发布于 2011/12/19 22:53
阅读 2K+
收藏 7

之前也有人反映这个问题:

http://www.oschina.net/question/63935_32651

下面是截取 nginx 的 access_log 中信息一小段

118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
118.186.8.50 - - [19/Dec/2011:22:42:57 +0800] "-" 400 0 "-" "-"
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"
220.173.136.39 - - [19/Dec/2011:22:43:22 +0800] "-" 400 0 "-" "-"

来自同一个IP的同一秒钟内的请求超过10次,分析了一下午发现 IP来源太广,完全没有规律。

此类请求没有直接访问应用,而是针对服务器发起的,在 Nginx 这一层就给报错了。

目前这类的无效请求对网站的访问速度多少有一些影响。

有什么有效措施能防止这类的无效请求吗?

补充:这里碰到的问题跟 http://www.oschina.net/question/54100_34624 这里说的无关,因为已经修改了配置,还是一样的大量错误。

Nginx 官方论坛上也有关于该问题的讨论

http://forum.nginx.org/read.php?2,9695,9708

加载中
0
zuiw
zuiw
传说中的被攻击?
0
Sephiroth
Sephiroth
一般来说,这很正常
Sephiroth
Sephiroth
@红薯 : 恶意攻击?
红薯
红薯
量太大了。。。
0
蟋蟀哥哥
蟋蟀哥哥
刚才我扫描了下osc..不知道有没有我的ip:184.22.118.*
0
鉴客
鉴客
把通过空主机访问请求的日志关闭吧
server {
    listen *:80 default;
    server_name _;
    return 444;
    access_log   off;
}
0
高榕
高榕
严重关注!
0
GentleTroy
GentleTroy
从日志中把这些ip过滤出来 拉黑
0
l
lucika
拉黑会损害用户利益的。或许中了病毒
0
红薯
红薯

来自微博的两个回答:

冯晶-YD小琵琶:slow header dos 攻击 耗费你 connection 的 对apache 效果比较明显, 对nginx 来说 效果不是很明显,如果是apache,现在你已经躺着了 我用python在自己本地测试了这种攻击,log很你这种一样,400:请求格式错误。 只要GET,最后的 \r\n 不发送,就会这样

路塔石:这叫fuzzing,维基:http://t.cn/aj0Dfr 或者http://t.cn/SVpPoh 简单说就是快速大量发送非法数据块或者只发送空header。nginx这个问题解决的很好,直接返回400。不用担心,除了log会花点硬盘空间。如果你硬盘紧张或者不需要这块儿数据干脆不log 400请求

0
lanybass
lanybass
有IP流量,安逸..
0
开源中国射线科科长
开源中国射线科科长
明显写的demo程序用了 osc做靶子  一秒钟8个请求 都不知道 sleep一下再来 呵呵
返回顶部
顶部