美文网首页
mirai变种之infeno分析

mirai变种之infeno分析

作者: 烤土豆啦 | 来源:发表于2018-07-31 16:47 被阅读0次

    mirai变种之infeno分析

    简述

    • 名称
      • infeno
    • 覆盖平台
      • arm(armv5,armv6,armv7)
      • mips
      • x86_64
    • 关联的域名/ip
      • 178.128.11.199
      • 69.90.132.124
      • thotnet.pw
    • 发现过程
      • 某云发现被持续扫描攻击,从扫描攻击的payload中提取样本

    逆向分析

    该样本类似于mirai,具有设置watchdog等功能,但是没有设置反adb调试,相应的代码却被替换为解析cnc地址的函数,有点奇怪。

    1.png
    第一处与miral不同之处在于,mirai的cnc地址经过xor加密,放置在table_init函数中。在需要的时候需要解密。而在此处样本中,cnc地址则明文存放在resolv_cnc_addr函数中。如图
    2.png
    可以看出,首先调用resolv_lookup函数去解析cnc地址thotnet.pw。如果解析失败则跳转至loc_C9F8位置,设置cnc地址为ip 69.90.132.124。
    其他地方都与mirai类似,设置watchdog防止设备重启,初始化攻击等。但是在main函数中,竟然初始化自定义的攻击函数exploit_worker。这让该变种具备了使用exp去攻击的功能。
    exploit_worker函数很简单,直接调用各个子攻击函数,如图
    3.png
    每个攻击函数在调用之前,都要针对性的生成IP,例如GPON80_IPGen等等,然后再调用exp函数。下面以exploit_socket_huawei为例。
    首先调用HUAWEI_IPGen生成目标IP,如图
    4.png
    5.png
    调用random生成随机数,然后通过sprintf生成完整的ip地址。一共成成5组。这与mirai不同之处在于,mirai生成随机IP后,会刻意避开部分IP地址。但是在这些函数中,没有避开任何IP。而在该样本的scanner_init中,却又引用了原版mirai的生成IP算法,如图
    15.png
    生成这5组随机IP地址后,再调用exploit_socket_huawei去攻击。
    exploit_socket_huawei函数如图所示
    6.png
    可以看出该函数很简单,建立socket链接,发送包含exploit代码的http请求,然后关闭socket链接。在包含exploit代码的http中,包含了wget下载该样本的shell代码,也就是说如果目标设备存在漏洞的话,则直接下载该mirai样本。这样降低了exploit函数的复杂度。
    可以粗略的看一下,该样本包含了数种exp代码,如图
    7.png
    危害程度甚至比mirai还大。不过可疑的是,在搜索引擎中,发现该exploit代码早已被人上传pastebin网站上。经过比对,发现只有个别之处不一样,其他大部分都相同。该文件上传者还收集mirai变种样本。目前暂未发现该文件上传者与此样本有关
    8.png
    在table_init函数中,存放该样本一些重要配置信息,例如cnc端口等。这里的加密为简单的异或加密,加密密钥存放在data段。加密密钥和解密函数如图
    9.png
    10.png
    可以根据此写一个解密脚本
    def decode_str(s):
        res = []
        key = 0xdedefbaf
        a = key & 0xff
        b = (key >> 8) & 0xff
        c = (key >> 16) & 0xff
        d = (key >> 24) & 0xff
        for i in s:
            i = ord(i)
            i ^= a
            i ^= b
            i ^= c
            i ^= d
            res.append(chr(i))
        res = "".join(res)
        print(res)
    

    解析出cnc的端口为961,另外还有一串奇怪的字符串1gba4cdom53nhp12ei0kfj。我们可以使用nc去链接cnc,不过由于不知道用户名和密码,所以作罢。我们将这串奇怪的字符串使用google搜索。竟然发现了该样本的代码。


    11.png

    将源码下载下来,发现大部分都与此样本相似,只有个别极少的内容不一致。


    12.png
    该样本与mirai类似,只不过魔改了一下。在网站中可以发现该网站管理员的instgram。点进去发现这人经常在几种炫耀自己ddos攻击。不过因为此代码已经公开,不确定此人是否与该样本有关。如图
    14.jpg 13.jpg

    解决方案

    1.及时升级路由器等智能设备的固件
    2.不要随便链接公网,设置好防火墙等

    相关文章

      网友评论

          本文标题:mirai变种之infeno分析

          本文链接:https://www.haomeiwen.com/subject/mrmhvftx.html