1. 程式人生 > >Elasticsearch的遠端執行漏洞

Elasticsearch的遠端執行漏洞

公司使用的是Ucloud的雲主機服務,今天上午突然被告知有一臺伺服器的出口流量激增,對外發包量短時間內達到了100萬,而且都是UDP型別的,第一感覺就是:誒呀,莫不是被黑了,被當肉雞了呀!

探究:

立馬登入對應的伺服器,首先使用iftop檢視流量狀況

wKiom1PXewmxnBlAAAIc3Cx_xKI222.jpg

wKioL1PXfFTz7OPKAAJYayVxA5Q867.jpg

可以看出出口流量好嚇人,1分鐘內累計700M流量,查了一下這2個IP地址,一個是在美國,一個是在浙江電信;

趕緊檢視正在執行的程序,找出疑似程序,還真有所發現:

wKioL1PXffLTYiecAAFKNFx1Tg0944.jpg

[.ECC6DFE919A382]這個程序還想冒充系統程序,疑點極大,而且/tmp/freeBSD也是一個很奇怪的東西,而498這個UID對應的使用者是elasticsearch,想起來昨天部署了Elasticsearch + Logstash,以實現日誌統計系統,不會是ES有bug吧,繼續檢視原因

wKiom1PXf96xKGEEAAO1e8i1ER4561.jpg

懷疑/tmp/freeBSD就是被掛馬的程式,可惜已經被刪除了,無法查看了

原因:

罪魁禍首查出來了,細緻的原因還需要詳查,所以現在最重要的就是解決問題,迅速kill掉相關程序,再次檢視iftop發現流量迅速回落了,更加證實了我們的判斷;

接下來就需要查詢被劫持掛馬的原因和具體的劫持方式,以絕後患,而通過外部搜尋引擎也是很快就定位了問題的原因,就是“Elasticsearch遠端任意程式碼執行”漏洞:

  • ElasticSearch有指令碼執行(scripting)的功能,可以很方便地對查詢出來的資料再加工處理; ElasticSearch用的指令碼引擎是MVEL,這個引擎沒有做任何的防護,或者沙盒包裝,所以直接可以執行任意程式碼。;

  • 而在ElasticSearch 1.2之前的版本里,預設配置是開啟動態指令碼功能的,因此使用者可以直接通過http請求,執行任意程式碼。;

  • 其實官方是清楚這個漏洞的,在文件裡有說明: 

  • First, you should not run Elasticsearch as the root user, as this would allow a script to access or do anything on your server, without limitations. Second, you should not expose Elasticsearch directly to users, but instead have a proxy application inbetween.

終於找到原因,那就解決吧

解決方案:

法一:手動關閉ES遠端執行指令碼的功能,即在每一個ES節點的配置檔案elasticsearch.yml中新增如下一行即可

  1. script.disable_dynamic: true 

然後重啟ES即可;

法二:升級ES至1.2版本以上也可,因為在ES1.2版本中已預設關閉了遠端執行指令碼的功能,但需考慮與Logstash的相容性問題;

後續:

  1. 根據官方的資料,為了保證ES的安全性,不可以root身份啟動ES,且可考慮使用代理(負載均衡器也可),對外開放非9200埠(如9300),轉發至內網的9200埠,可有效防止小人們的惡意埠掃描;

  2. 因為已經被掛馬了一次,所以在重新啟用ES之前,還需全面檢查被入侵的主機是否還有其它隱患,這就涉及web安全掃描的內容了,暫時小白,還未了解,故希望有經驗的前輩可以多多請教!

相關推薦

Elasticsearch遠端執行漏洞

公司使用的是Ucloud的雲主機服務,今天上午突然被告知有一臺伺服器的出口流量激增,對外發包量短時間內達到了100萬,而且都是UDP型別的,第一感覺就是:誒呀,莫不是被黑了,被當肉雞了呀! 探究: 立馬登入對應的伺服器,首先使用iftop檢視流量狀況 可以看出出口流量好嚇人,1分鐘內累計70

Git中的有個致命的遠端執行漏洞

據外媒 BleepingComputer 報道,Git 專案組於前兩天公佈了一個在 Git 命令列客戶端、Git Desktop 和 Atom 中發現的任意程式碼執行漏洞,這是一個比較嚴重的安全漏洞,可能會使得惡意倉庫在易受攻擊的計算機上遠端執行命令。

ECSHOP全系列遠端執行漏洞的修復方案

最近ecshop到處被插,基本上都被拿下,問題就是\includes\lib_insert.php檔案中存在未過濾變數。 網上分析利用的文章很多了。 http://www.lsablog.com/networksec/penetration/ecshop2-x-rce-a

[更新]Elasticsearch 程式碼執行漏洞利用檢測工具

#!/usr/bin/env python #-*- coding: UTF-8 -*- __description__ = """ detail :http://p2j.cn/?p=1300 solution: http://bouk.co/blog/elasticsearch-rce/ """ __aut

ElasticSearch遠端任意程式碼執行漏洞(CVE-2014-3120)分析

原理 這個漏洞實際上非常簡單,ElasticSearch有指令碼執行(scripting)的功能,可以很方便地對查詢出來的資料再加工處理。 ElasticSearch用的指令碼引擎是MVEL,這個引擎沒有做任何的防護,或者沙盒包裝,所以直接可以執行任意程式碼。 而在Elas

Windows VBScript引擎遠端執行程式碼漏洞 CVE-2018-8174分析與利用

漏洞簡介   VBScript引擎處理記憶體中物件的方式中存在一個遠端執行程式碼漏洞。該漏洞可能以一種攻擊者可以在當前使用者的上下文中執行任意程式碼的方式來破壞記憶體。成功利用此漏洞的攻擊者可以獲得與當前使用者相同的使用者許可權。如果當前使用者使用管理使用者許可權登入,則成功利

驗證php的遠端命令執行漏洞案例

比如驗證JBoss EJBInvokerServlet Marshalled Object RCE(CVE-2013-4810 ) 0x01:首先我們開啟php的環境,如phpStudy,wamp等等,這裡我們就使用phpStudy吧,進入php-5.5.38的目錄(當前使用的這個php版本

【每日安全資訊】安全專家發現Edge零日漏洞:可遠端執行程式碼

安全研究專家Yushi Liang表示正計劃公開Edge瀏覽器的零日漏洞。該漏洞能夠執行遠端程式碼,並能從Edge的沙盒中逃脫。Liang在一則推文中演示了利用該漏洞從網頁端開啟桌面的計算器應用,推文中寫道:“我們剛剛攻破Edge,和kochkov合作找到了這個穩定漏洞,支援自身SBX即將到

Apache Struts最新漏洞 遠端程式碼執行漏洞預警 2018年11月08日

2018年11月8日,SINE安全監控檢測中心,檢測到Apache Struts官方更新了一個Struts漏洞補丁,這個漏洞是Apache Struts目前最新的漏洞,影響範圍較廣,低於Apache Struts 2.3.35的版本都會受到此次Struts漏洞的***,目前apache官方更新的漏洞補丁,主要

Git中的遠端程式碼執行漏洞已被修復 多個工具受影響

  據外媒 BleepingComputer 報道,Git 專案組於前兩天公佈了一個在 Git 命令列客戶端、Git Desktop 和 Atom 中發現的任意程式碼執行漏洞,這是一個比較嚴重的安全漏洞,可能會使得惡意倉庫在易受攻擊的計算機上遠端執行命令。   這個漏洞已被分配 CVE-

墨者學院 - Tomcat 遠端程式碼執行漏洞利用(第1題)

重新整理fit網站 burp截包,repeater,更改不安全的HTTP方法為PUT(將get更改為options可檢視伺服器支援哪些) PUT /自定義檔名/ HTTP/1.1 eg:   PUT /9.jsp/ HTTP/1.1  &nb

Drupal 遠端命令執行漏洞(CVE-2018-7600)

名稱: Drupal 遠端命令執行漏洞 CVE-ID: CVE-2018-7600 Poc: https://paper.seebug.org/578/ EXPLOIT-DB: https://www.exploit-db.com/exploits/44448/ 平臺: PHP 漏洞描述:

CVE-2018-8174 IE瀏覽器遠端程式碼執行漏洞

0x00漏洞簡介 在2018年5月9日的時候360發表了一份apt攻擊分析及溯源報告 文中提到了cve-2018-8174這個漏洞的首次在apt方面的應用 原文地址:http://www.4hou.com/vulnerable/11441.html CVE2018-8174這個漏洞是針對

CVE-2018-3191遠端程式碼命令執行漏洞

0x00 weblogic漏洞簡介 北京時間10月17日,Oracle官方釋出的10月關鍵補丁更新CPU(Critical Patch Update)中修復了一個高危的WebLogic遠端程式碼執行漏洞(CVE-2018-3191)。該漏洞允許未經身份驗證的攻擊者通過T3協議網路訪問並破壞易受攻

ghostscript遠端程式碼執行漏洞復現

這兩天網上ghostscript又又有漏洞資訊了,但是沒有poc,於是找找資料把今年8月21日的那個驗證下 1、關於ghostscript Ghostscript是一套建基於Adobe、PostScript及可移植文件格式(PDF)的頁面描述語言等而編譯成的免費軟體。 最初是以商業軟體形式在P

BleedingBit藍芽晶片遠端程式碼執行漏洞

藍芽晶片被曝兩個遠端程式碼執行漏洞,並命名為BleedingBit藍芽晶片被曝兩個遠端程式碼執行漏洞,並命名為BleedingBit 安全研究人員最近公佈了兩個藍芽晶片漏洞的漏洞細節,並將之命名為BleedingBit。這兩個漏洞可以讓攻擊者實現遠端程式碼執行,因為涉及到非常多的物聯網裝置

phpcms2008遠端程式碼執行漏洞

phpcms2008遠端程式碼執行漏洞 描述: 近日,網際網路爆出PHPCMS2008程式碼注入漏洞(CVE-2018-19127)。攻擊者利用該漏洞,可在未授權的情況下實現對網站檔案的寫入。該漏洞危害程度為高危(High)。目前,漏洞利用原理已公開,廠商已釋出新版本修復此漏洞。 影響範

Tomcat 遠端程式碼執行漏洞利用(第1題)

重新整理fit網站 burp截包,repeater,更改不安全的HTTP方法為PUT(將get更改為options可檢視伺服器支援哪些) PUT /自定義檔名/ HTTP/1.1 eg:   PUT /9.jsp/ HTTP/1.1     (jsp後無空格,反之會報

ThinkPHP 5.x (v5.0.23及v5.1.31以下版本) 遠端命令執行漏洞利用(GetShell)(轉載)

ThinkPHP官方2018年12月9日釋出重要的安全更新,修復了一個嚴重的遠端程式碼執行漏洞。該更新主要涉及一個安全更新,由於框架對控制器名沒有進行足夠的檢測會導致在沒有開啟強制路由的情況下可能的getshell漏洞,受影響的版本包括5.0和5.1版本,推薦儘快更新到最新版本。 漏洞分析 Thin

GoAhead Web伺服器遠端命令執行漏洞(CVE-2017-17562)漏洞復現

一、漏洞概述: 1、漏洞簡介: GoAhead Web Server,它是一個開源(商業許可)、簡單、輕巧、功能強大、可以在多個平臺執行的嵌入式Web Server。 GoAhead Web Server是跨平臺的伺服器軟體,可以穩定地執行在Windows,Linux和