CobaltStrike二次开发 - 1

admin 2024年12月17日10:17:19评论12 views字数 1732阅读5分46秒阅读模式

朋友们现在只对常读和星标的公众号才展示大图推送,建议大家把SecretTeam安全团队设为星标”,否则可能就看不到了啦!

CobaltStrike二次开发 - 1

免责声明

"本文档所提供的信息旨在帮助网络安全专业人员更好地理解并维护他们负责的网站和服务器等系统。我们鼓励在获得适当授权的情况下使用这些信息。请注意,任何未经授权的使用或由此产生的直接或间接后果和损失,均由使用者自行承担。我们提供的资源和工具仅供学习和研究之用,我们不鼓励也不支持任何非法活动。"

"我们创建这个社区是为了促进技术交流和知识分享。我们希望每位成员都能在遵守法律法规的前提下参与讨论和学习。如果使用本文档中的信息导致任何直接或间接的后果和损失,我们提醒您,这将由您个人承担。我们不承担由此产生的任何责任。如果有任何内容侵犯了您的权益,请随时告知我们,我们将立即采取行动并表示诚挚的歉意。我们感谢您的理解和支持。"

1. CS 反编译

以 MAC 为例,IDEA 自带的 java-decompiler.jar 地址为:

/Applications/IntelliJ IDEA.app/Contents/plugins/java-decompiler/lib/java-decompiler.jar

因为MANIFEST.MF 中没有main class 属性,没有指定主类,因此不能直接使用java -jar,如果想要执行java 包中具体的类,要使用java -cp 输入如下命令:

使用方法:

java -cp java-decompiler.jar org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler -dgs=true cs_bin/cobaltstrike.jar cs_src
CobaltStrike二次开发 - 1

反编译后,会自动打包成jar 包,右键解压后打开可以看到都是.java 了,使用这个方法会非常方便,就不需要第三方工具,这个反编译出来的就可以直接放入IntelliJ IDEA 中,可直接实现代码搜索,相关的交叉引用。

CobaltStrike二次开发 - 1

2.  CS 二次开发准备工作

2.1 创建工程

打开IntelliJ IDEA 选择Create New Project 一直选择 Next。

CobaltStrike二次开发 - 1

创建工程目录:

CobaltStrike二次开发 - 1

创建好后需要先建立两个文件夹,右击选择New Directory 建立一个decompiled_src 文件夹,之后再建立一个lib 文件夹。

2.2 配置依赖关系

把刚刚反编译好的CobaltStrike 复制到decompiled_src中,然后把它解压出来,可看到一个完整的反编译后的目录。

CobaltStrike二次开发 - 1

随后把原始的未编译的CobaltStrike 放到刚刚新建的 lib 中去。

接下来需要对这个项目进行设置,点击File中的Project Structure 在Modules 对Dependencies 进行设置。

CobaltStrike二次开发 - 1
CobaltStrike二次开发 - 1

点击添加Jar or Directories,添加./lib 下的原始JAR 包,并勾选Export

CobaltStrike二次开发 - 1

2.3 寻找 Main Class

点击1./lib/META_INF/MANIFEST.MF,复制Main-Class

CobaltStrike二次开发 - 1

将原始包中MANIFEST.MF 的内容复制到项目中的MANIFEST.MF

2.4 配置 Artifacts

CobaltStrike二次开发 - 1
CobaltStrike二次开发 - 1

接下来在decompiled_src 目录中找到已经反编译完的aggressor 主类,右击选择Refactor ——Copy File 到src 下的相同目录:

CobaltStrike二次开发 - 1
CobaltStrike二次开发 - 1

2.5 修改后编译

点击Build ->Build Artifacts ->build

IDEA 其它 Tips

3.1 比对 JAR 包

在进行 bin 文件对比时,自动进行反编译

命令行形式:

windows:/path/to/idea/bin/idea64.exe diff absolute/path/to/file1 absolute/path/to/file2mac:/Applications/IntelliJ IDEA.app/Contents/MacOS/idea absolute/path/to/file1 absolute/path/to/file2
CobaltStrike二次开发 - 1

在 IDEA 中:

选中要比对的两个文件,Command + D 进行比对

原文始发于微信公众号(SecretTeam安全团队):CobaltStrike二次开发 - 1

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月17日10:17:19
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CobaltStrike二次开发 - 1https://cn-sec.com/archives/3517556.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息