极方便的蚁剑动态调试[自定义webshell编码器的前摇]

admin 2024年9月29日21:32:03评论20 views字数 1134阅读3分46秒阅读模式

蚁剑源码结构

网上有很多webshell连接工具,主流的有蚁剑、哥斯拉、冰蝎等,像中国菜刀(China Chopper)、Weevely、Cknife、天蝎等工具因为历史原因不更新,或者流行度小的缘故,使用受众相对没那么多。

我个人更喜欢用蚁剑,因为开源社区丰富,而且二开起来感觉更方便些。

蚁剑源码项目地址:https://github.com/AntSwordProject/antSword

蚁剑加载器地址:https://github.com/AntSwordProject/AntSword-Loader

官方教程和文档:https://www.yuque.com/antswordproject/antsword

蚁剑插件市场-远程仓库:https://github.com/AntSword-Store/

一般二开只需要修改项目源码就好,加载器可以忽略。

极方便的蚁剑动态调试[自定义webshell编码器的前摇]

源码目录结构

/antData/ 用户目录
/modules/ 蚁剑后端模块
/node_modules/ 安装的node模块
/source/ 核心模块
 /base/  自定义的功能类
 /core/ payload模板
 /language/ 语言模块
 /modules/ 显示模块
 /ui/ UI模块
 /app.entry.js 渲染程序入口
 /load.entry.js 前端加载模块
/static/ 静态资源文件
/views/  前端文件

其中最核心的是modules目录跟source目录。modules里的内容为蚁剑的后端模块,属于主进程。source中存放着蚁剑运行的核心代码,属于渲染进程。

动态调试js代码

众所周知蚁剑用到的技术栈有:javascript / nodejs / electron

我们运行的蚁剑其实就是chrome里跑nodejs

极方便的蚁剑动态调试[自定义webshell编码器的前摇]

我们并不需要对modules中的后端模块进行修改,所以一般不会用到主进程调试,仅仅蚁剑中自带的dev tool就可以完成我们日常的调试工作。

打开蚁剑->调试->开发者工具即可看到调试工具。也就是和浏览器一样调试工具~

极方便的蚁剑动态调试[自定义webshell编码器的前摇]

在做了对应的操作后,我们可以很容易地在开发者工具 --> sources --> no domain下面,找到渲染进程中加载到的js文件。

比如我们可以在这里调试一下rot-13的文件,下一个断点

极方便的蚁剑动态调试[自定义webshell编码器的前摇]

然后用rot-13的编码器发起连接,就会在这里断住了,我们可以在右边的Scope看见变量的信息

极方便的蚁剑动态调试[自定义webshell编码器的前摇]

以此为例,就可以进行愉快的调试了~

如果是要自己写编码器的话,需要用js的代码来写编码器,然后shell中用对应语言(PHP、ASP、JSP、ASPX等)进行相应逻辑的解码,这样就能正常使用了。

极方便的蚁剑动态调试[自定义webshell编码器的前摇]

原文始发于微信公众号(安全光圈):极方便的蚁剑动态调试[自定义webshell编码器的前摇]

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年9月29日21:32:03
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   极方便的蚁剑动态调试[自定义webshell编码器的前摇]http://cn-sec.com/archives/3219566.html

发表评论

匿名网友 填写信息