首页
社区
课程
招聘
[分享] 攻击工具分析-哥斯拉(Godzilla)
发表于: 2021-7-30 14:27 4941

[分享] 攻击工具分析-哥斯拉(Godzilla)

2021-7-30 14:27
4941

一、简介

对,你没有看错,本期我们要研究的目标是哥斯拉。

不过,此哥斯拉非彼哥斯拉,他是继菜刀、蚁剑、冰蝎之后具有更多优点的Webshell管理工具,由java语言开发,如名称一样,他的“凶猛”之处主要体现在:

  • 全部类型的shell能绕过市面大部分的静态查杀

  • 流量加密能绕过过市面绝大部分的流量Waf

  • Godzilla自带的插件是冰蝎、蚁剑不能比拟的

图1 哥斯拉运行界面

(如此简单的操作界面,实际效果和功能可绝不简单。)

它能实现的功能除了传统的命令执行、文件管理、数据库管理之外,根据shell类型的不同还包括了:

  • MSF联动
  • 绕过OpenBasedir
  • ZIP压缩 ZIP解压
  • 代码执行
  • 绕过 DisableFunctions
  • Mimikatz
  • 读取服务器 FileZilla Navicat Sqlyog Winscp XMangager 的配置信息以及密码
  • 虚拟终端 可以用netcat连接
  • Windows权限提升 (2012-2019烂土豆)
  • 读取服务器 谷歌 IE 火狐 浏览器保存的账号密码
  • Windows权限提升烂土豆的C#版本 甜土豆
  • 支持 哥斯拉 冰蝎 菜刀 ReGeorg 的内存shell 并且支持卸载
  • 屏幕截图
  • Servlet管理 Servlet卸载
  • 内存加载Jar 将Jar加载到 SystemClassLoader

图2 功能界面

介绍的也差不多了,我们来分析看看他到底强在哪。

二、加密模块分析

  • 分析脚本类型:PHP_XOR_base64
  • 工具版本:3.03

1.先进行反编译,加密代码的位置位于:”shells” packet->”cryptions” packet->”phpxor” packet->phpxor class

图3 加密函数位置

从代码中可以分析出,发送的payload内容先经过XOR加密后,再将密文进行base64编码,最后进行URL编码,再发给客户端。

图4 加密函数

XOR加密的密钥来自用户提供的密钥经过MD5的32位摘要后,取前16位的值。

图5 密钥生成

图6 数据主要处理流程

2. 生成shell脚本

接下来查看手动生成的脚本内容,可以看到shell对数据的处理方式基本和工具源码中的分析一致,变量key的值也确实为进行MD5摘要后的前16位的值。

图7 shell脚本内容

图8 密钥的值为'key'

其中,encode()函数主要是进行XOR操作。

主要的数据处理代码为:

$data=encode(base64_decode($_POST[$pass]),$key)

(代码先记下来,一会可以利用到。)

三、 尝试对数据进行解密

利用wireshark抓取攻击的流量包。

图9 流量包

抓取数据中等号之后的内容,即被加密编码后的数据内容,然后先将内容进行URL解码。

图10 URL解码


再利用第二点提到的代码,写一个简单的解密脚本,将”$POST”的内容替换为URL解码后的数据。

图11 解密脚本

再执行脚本,瞬间感觉豁然开朗了有没有,明文出现,说明分析的思路是正确的。简单分析了一下payload的内容,包含run、bypass_open_basedir、formatParameter、evalFunc等二十多个功能函数,具备代码执行、文件操作、数据库操作等诸多功能。

图12 payload明文

三、总结

不得不佩服开发哥斯拉作者的思路很有创造性,虽然其实现的原理并不是很难,但却有效地避开了同类工具在网络流量中出现的常见特征,加上工具配置了自定义http_header,使得一些利用UA等其他http_header数据的检测效果也大打折扣。



[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 1
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//