如何让 Web 服务器少消化一些垃圾数据? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
Wizards
V2EX    云计算

如何让 Web 服务器少消化一些垃圾数据?

  •  1
     
  •   Wizards 2020-09-05 22:57:58 +08:00 3692 次点击
    这是一个创建于 1930 天前的主题,其中的信息可能已经有所发展或是发生改变。

    用 netcat 执行了如下一行命令:向某个弹幕网站的服务器端口写空字符。

    dd if=/dev/zero bs=10MB count=1 | nc -n -N 120.92.174.135 80 

    大厂服务器可能是速战速决,直接返回了 EOF,没有标准 HTTP 响应。

    对于我自己的服务器,执行相同的指令。Nginx 傻傻地接受了 10MB 的数据,然后返回了 HTTP/1.1 400 Bad Request 。

    请问如何让服务器变聪明?

    11 条回复    2020-09-07 23:08:02 +08:00
    singerll
        1
    singerll  
       2020-09-05 23:09:40 +08:00 via Android
    waf
    Wizards
        2
    Wizards  
    OP
       2020-09-05 23:27:36 +08:00
    @singerll 个人闹着玩用商业 WAF 还是奢侈了一点。

    刚刚改试了 tengine,就比 nginx 机智那么一点,好奇 nginx 能不能通过打开某个开关实现防御
    opengps
        3
    opengps  
       2020-09-05 23:30:42 +08:00 via Android
    个人的话,有点为难,毕竟在企业应用领域,高防 ip,waf,甚至某些 cdn 都具备这种清洗能力
    chendy
        4
    chendy  
       2020-09-05 23:54:54 +08:00
    设置 client_max_body_size ?
    opengps
        5
    opengps  
       2020-09-05 23:59:40 +08:00 via Android
    @chendy 不合适的,有些网页的回传数据就几个 M,设置成 10M 有可能阻挡了正常业务
    saytesnake
        6
    saytesnake  
       2020-09-06 01:31:28 +08:00
    @Wizards 一楼的意思应该是 ModSecurity 、Naxsi 或者自己戳 Lua 。
    kangsheng9527
        7
    kangsheng9527  
       2020-09-06 11:09:34 +08:00
    感谢楼主给了大家一个新的攻击思路。。。代表所有攻击手给楼主一个赞!
    PolarBears
        8
    PolarBears  
       2020-09-06 17:27:10 +08:00
    如果有意想要占服务端下行流量直接可以构造正常的请求,这个问题好像不做特别处理也没什么问题吧?
    learningman
        9
    learningman  
       2020-09-06 19:47:52 +08:00
    我试了一下你的命令,直接返回了 414 啊,,,
    zjsxwc
        10
    zjsxwc  
       2020-09-07 08:45:17 +08:00
    没有吧,

    我看到 nginx 返回的 400html 文本里面是
    `Content-Length: 166`
    166 个字符而已,并没有 10M 。

    http 协议里面客户端请求也是有格式要求的,不符合要求的会被 nginx 直接关掉网络连接。
    monter
        11
    monter  
       2020-09-07 23:08:02 +08:00
    这个是个有趣的问题,你需要的是 ngx_http_core_module 中的 lingering_close off;
    nginx 配置繁杂,非专业人士难以捉摸
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2667 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 11:47 PVG 19:47 LAX 03:47 JFK 06:47
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86