当前位置: 首页 > news >正文

新一代Webshell管理器

工具介绍

游魂是一个开源的Webshell管理器,提供更为方便的界面和更为简单易用的功能,可配合或代替其他webshell管理器,帮助用户在各类渗透场景中控制目标机器。游魂不仅支持常见的一句话webshell以及常见Webshell管理器的功能,还支持添加冰蝎的webshell,以及将任何webshell提供给蚁剑进行连接的功能。通过使用游魂,用户可以使用蚁剑操控冰蝎webshell,在冰蝎webshell上使用蚁剑的各类插件,同时享受蚁剑的丰富生态以及冰蝎的流量加密和免杀特性。游魂使用了B/S架构,用户可以将游魂架设在服务器上,通过本地浏览器进行连接,彻底移除了本地机器被感染的风险。游魂自带上手即用RSA2048+AES256-CBC强加密,AES密钥在连接时生成并使用RSA加密传输,彻底阻止重放攻击和流量分析。

在这里插入图片描述

工具特点

  • 同时支持PHP一句话webshell和冰蝎PHPwebshell
  • 流量防重放和流量强加密
  • TCP正向代理
  • 异步上传下载文件
  • chunked transfer encoding分块发包
  • 对接蚁剑
  • 默认使用随机User AgentHTTP
  • 填充垃圾数据自定义encoder和decoder支持导入部分蚁剑encoder和decoder
  • 自定义主题和背景图片(?)

工具预览

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

工具功能

  • 支持的webshell
    PHP一句话冰蝎PHP
  • webshell操作
    异步文件上传下载
    支持伪终端和普通的命令执行
    命令执行文件
    管理PHP代码
    执行TCP正向代理
    查看基本信息
    下载phpinfo
  • webshell编码
    HTTP参数混淆
    蚁剑类encoder和decodersession
    暂存payload
    防流量重放RSA+AES加密

为什么不用蚁剑?

我自从学习渗透开始就一直在用蚁剑,蚁剑是一个非常优秀的webshell管理器,但是在我想要二开蚁剑的时候才发现蚁剑的架构存在一些问题,无法实现我想要的功能。具体来说:

  • 蚁剑基于早已过时的Electron 4,其Chromium内核存在多个安全漏洞,存在被反制的风险。同时Electron
    4的开发环境难以配置,给二开带来困难。

  • 蚁剑的PHP webshell不支持GET参数传参,在CTF环境下较为不便

  • 这里虽然可以在GET参数下指定eval另一个POST参数,但是有这时间填参数为什么不去直接拿flag?

  • 蚁剑使用的Electron导致XSS漏洞极易被提升为RCE漏洞,导致攻击机被反制

  • 蚁剑的encoder需要经过复杂配置之后才可支持AES和RSA加密

  • 虽然蚁剑可以使用php_raw配合encoder连接冰蝎webshell,但蚁剑的插件生态仅支持php类型的webshell,无法在冰蝎webshell上使用各类插件

蚁剑的encoder生态和插件生态还是很丰富的,encoder可以通过让python调用nodejs直接使用,插件移植难度比较大,可以让游魂假装是一个webshell,接受蚁剑传来的代码就可以解决。

TODO

  • 对接蚁剑、冰蝎、哥斯拉
    [done] 导入冰蝎webshell
    从哥斯拉的本地数据库导入哥斯拉webshell
    从蚁剑的本地目录导入蚁剑webshell
    从冰蝎的本地目录导入冰蝎webshell
    [done] 以webshell形式对接蚁剑
  • i18n
  • 改进文件管理的文件夹管理功能
  • 支持冰蝎4.1的自定义类型webshell
  • 批量测试webshell是否存活
  • 数据库连接功能
  • 写安装使用的文档,然后把文档分割为多个文件,存到docs/里
  • 让用户决定是否将AES密钥在session中持久化
  • 加密(或者至少混淆的)反弹Shell
  • 一键生成webshell
  • pyinstaller打包,给windows用户提供一个绿色的exe项目地址

项目地址

https://github.com/Marven11/EtherGhost
如侵权请联系,请立即删除。工具来源于网络,仅供研究学习。

http://www.lryc.cn/news/476125.html

相关文章:

  • 「iOS」——知乎日报一二周总结
  • windows C#-匿名类型
  • CryptoHack 简介
  • transformControls THREE.Object3D.add: object not an instance of THREE.Object3D.
  • 游戏开发与游戏运营:哪个更难?
  • 大模型在自动化渗透测试中的应用
  • 《AI在企业战略中的关键地位:以微软和阿里为例》
  • C语言 | Leetcode C语言题解之第537题复数乘法
  • Vue如何实现数据的双向绑定和局部更新?
  • java学习1
  • 如何缩小PPT演示文稿的大小?
  • 闯关leetcode——234. Palindrome Linked List
  • 通过源码分析类加载器里面可以加载的类
  • RSA算法:数字安全的基石
  • DPDK高性能处理框架VPP
  • Spring工厂方式实现实例化bean有哪些方式?
  • 衡石分析平台系统分析人员手册-指标分析看板
  • 《C++17 结构化绑定:解锁不同类型处理的秘籍》
  • 大型音频模型:AudioLLMs
  • 【ShuQiHere】️理解Python中的相对路径:使用 `..` 和 `.` 的指南
  • DMFLDR数据载入使用实践
  • 发布 NPM 包时,终端显示发布成功但实际上版本并没有更新,可能是由于以下原因
  • Java学习Day57:碧水金睛兽!(Spring Cloud微服务1.0)
  • 物联网开发教程专栏介绍与专栏说明——列表目录查阅(持续更新)
  • uni-app实现app展示进度条在线更新以及定时更新提醒
  • 【Linux】进程间通信(命名管道、共享内存、消息队列、信号量)
  • [Android]从FLAG_SECURE禁止截屏看surface
  • python 五子棋小游戏
  • JeecgBoot集成工作流实战教程
  • 第三十章 章节练习商品列表组件封装