首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
探索世界的好奇心万岁
Udacity
网易公开课
Godel, Escher, Bach: An Eternal Golden Braid
V2EX  ›  分享发现

赶紧检查你的 access.log,看看有没有被恶意解析

  •  
  •   zjb861107 · 138 天前 · 1726 次点击
    这是一个创建于 138 天前的主题,其中的信息可能已经有所发展或是发生改变。

    起因是我的腾讯云小鸡突然访问巨慢,今天登上去看了下发现磁盘空间满了,其中 nginx 的 access.log 就占了 33G。
    大量 log 都是类似下面这种:

    121.238.181.104 - - [23/Jul/2019:17:06:15 +0800] "GET /otsmobile/app/mgs/mgw.htm?operationType=com.cars.otsmobile.queryLeftTicket&requestData=%5B%7B%22train_date%22%3A%2220190728%22%2C%22purpose_codes%22%3A%2200%22%2C%22from_station%22%3A%22CZH%22%2C%22to_station%22%3A%22ZDN%22%2C%22station_train_code%22%3A%22%22%2C%22start_time_begin%22%3A%220000%22%2C%22start_time_end%22%3A%222400%22%2C%22train_headers%22%3A%22QB%23%22%2C%22train_flag%22%3A%22%22%2C%22seat_type%22%3A%22%22%2C%22seatBack_Type%22%3A%22%22%2C%22ticket_num%22%3A%22%22%2C%22dfpStr%22%3A%22Kkc-ypSI1MmN1-xm-shsDUoFhTpNRYwoDt4q0o7Zk6yal4RFOLPEZAlkgnKaxuVWMv1gm6vaJhCzOYwvXS_KxtVXYf7foWgHKybovOoVfeGnPNUrJK4GXuUXX-S2GxNE8z-Fmdr3aGNPwBWlpePKTibGpcEuA89D%22%2C%22baseDTO%22%3A%7B%22check_code%22%3A%2299976ef2a5f0c45ca0cba6957f5add03%22%2C%22device_no%22%3A%22XTWYw2mjkUQzMGMfFr5qoFiY%22%2C%22mobile_no%22%3A%22%22%2C%22os_type%22%3A%22a%22%2C%22time_str%22%3A%2220190723170615%22%2C%22user_name%22%3A%22%22%2C%22version_no%22%3A%224.2.10%22%7D%7D%5D&ts=1563872775032&sign=2f8b45dd42d0544d64a9f7af81b1f706 HTTP/1.1" 444 0 "-" "Go-http-client/1.1"
    110.218.205.25 - - [23/Jul/2019:17:06:15 +0800] "GET /otsmobile/app/mgs/mgw.htm?operationType=com.cars.otsmobile.queryLeftTicket&requestData=%5B%7B%22train_date%22%3A%2220190724%22%2C%22purpose_codes%22%3A%2200%22%2C%22from_station%22%3A%22ZYJ%22%2C%22to_station%22%3A%22LZJ%22%2C%22station_train_code%22%3A%22%22%2C%22start_time_begin%22%3A%220000%22%2C%22start_time_end%22%3A%222400%22%2C%22train_headers%22%3A%22QB%23%22%2C%22train_flag%22%3A%22%22%2C%22seat_type%22%3A%22%22%2C%22seatBack_Type%22%3A%22%22%2C%22ticket_num%22%3A%22%22%2C%22dfpStr%22%3A%22eXNvnG_dhMV52v1v7hCA8Ny47hOWo89M7Hoxg1n45OyJJ8VqnBs2AiD0lUcJSiUzEimLKNWtIYeVYr06VX2tsUA6mfgpUyNrFWaDouCRYGzmn_r138y27EC4oa-v8yK6dZHsGVGZ2F5ji4-ax4plmpGKyJGjFwvo%22%2C%22baseDTO%22%3A%7B%22check_code%22%3A%224e3333eb814f961347a92b05457a25e3%22%2C%22device_no%22%3A%22XTWYwANleQwzMHXUqoMlBfdk%22%2C%22mobile_no%22%3A%22%22%2C%22os_type%22%3A%22a%22%2C%22time_str%22%3A%2220190723170615%22%2C%22user_name%22%3A%22%22%2C%22version_no%22%3A%224.2.10%22%7D%7D%5D&ts=1563872775144&sign=9caf0e8903ead8174a45e6532f8f7404 HTTP/1.1" 444 0 "-" "Go-http-client/1.1"
    

    所有的请求都指向/otsmobile/app/mgs/mgw.htm

    借助搜索引擎,我发现了有文章介绍类似情况: http://niliu.me/articles/367.html

    参照此文我在 nginx 的配置中添加了:

    server {
         listen 443 default_server;
         server_name _;
         ssl on;
         return 444;
    }
    

    瞬间服务器就变得流畅了。
    ps:确定 444 生效以后,我又添加了access_log off;,防止 log 过大。

    9 回复  |  直到 2019-07-24 10:49:08 +08:00
        1
    VD   138 天前
    你确定,443 端口下,没有证书,这个能返回 444 生效?
        2
    GM   138 天前
    @VD 用 443 提供 http 服务,没毛病。
        3
    ruimz   138 天前 via Android
    就算 443 口不能提供 ssl 下的 444 返回,哪怕是错误,也完成了初始目标
        4
    VD   138 天前
    @GM 你没看到他配置中的 ssl on ?

    @ruimz 楼主说,确定 444 生效了,所以有些不解。
        5
    Vegetable   138 天前   ♥ 1
    你这是 12306 查询余票的参数,然后 ua 是 go-http-client。
    看起来是哪个抢票软件的请求发到你这里来了。
        6
    sizhe   137 天前
    为啥不设置 404... 简单粗暴,迷惑性强

    不过被攻击真的无可奈何,把 log 关了也不太好啊。最好是在路由层直接堵了。
        7
    zjb861107   137 天前
    @VD 我没有放完整配置。另外还有个:
    server {
    listen 80 default_server;
    listen [::]:80 default_server;
    return 301 https://$host$request_uri;
    }


    这样是不是能说得通了?
        8
    VD   137 天前
    @zjb861107 http 的 server_name 没写吧?
    然后 301 跳转到 https 后呢,没有 ssl,如何返回 444 ?你确定返回 444 了?
        9
    chen90902   137 天前
    我是直接把 80 的访问给 ban 了,然后 443 的访问返回 444,只有通过域名才可以访问。
    域名有 DNS 商做防护,一般就不怕了~

    栗子:
    server {
    listen 443 ssl default_server;
    server_name _;
    ssl_certificate example.pem;
    ssl_certificate_key example_key.pem;
    return 444;
    }
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   806 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 27ms · UTC 22:23 · PVG 06:23 · LAX 14:23 · JFK 17:23
    ♥ Do have faith in what you're doing.