轉(zhuǎn)帖|大數(shù)據(jù)產(chǎn)品動(dòng)態(tài)|編輯:黃竹雯|2018-11-16 15:40:36.000|閱讀 297 次
概述:面對(duì)惡意軟件Hadoop集群攻擊,我們?cè)撎幚斫鉀Q,這篇文章給出了答案。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
相關(guān)鏈接:
有兩個(gè)新的惡意軟件,XBash和DemonBot,是針對(duì)Apache Hadoop服務(wù)器比特幣挖礦和DDOS目的。這種惡意軟件瘋狂掃描互聯(lián)網(wǎng)尋找Hadoop集群,當(dāng)有未設(shè)安全的集群連接到公共互聯(lián)網(wǎng)上,幾分鐘內(nèi)便可被感染。本文將描述此惡意軟件使用的機(jī)制,并提供保護(hù)Hadoop群集的相應(yīng)操作。
大約兩年前,對(duì)開(kāi)源數(shù)據(jù)庫(kù)解決方案MongoDB以及Hadoop發(fā)生了大量攻擊。這些攻擊來(lái)自勒索軟件:攻擊者擦除或加密數(shù)據(jù),然后要求贖金來(lái)恢復(fù)數(shù)據(jù)。就像最近的攻擊一樣,當(dāng)時(shí)受影響的唯一Hadoop集群是那些直接連接到互聯(lián)網(wǎng)并且沒(méi)有啟用安全功能的集群。Cloudera曾在2017年1月發(fā)布了一篇關(guān)于此威脅的博客。該博客闡述了如何確保Hadoop集群不直接連接到互聯(lián)網(wǎng),并建議啟用Cloudera的安全和治理功能。
XBash和DemonBot的起源故事說(shuō)明了安全研究人員如何看待Hadoop生態(tài)系統(tǒng)和漏洞的生命周期。 在2016年盧森堡的Hack.lu會(huì)議上,兩位安全研究人員發(fā)表了題為“Hadoop Safari:尋找漏洞”的演講。 他們描述了Hadoop及其安全模型,然后針對(duì)沒(méi)有啟用安全功能的集群提出了一些“攻擊”。這些攻擊類(lèi)似于在大門(mén)敞開(kāi)時(shí)闖入房屋。
這些攻擊受到基本安全功能的阻礙,該功能多年來(lái)一直是hadoop的一部分:使用Kerberos進(jìn)行強(qiáng)身份驗(yàn)證。如果沒(méi)有Kerberos,任何與集群交互的用戶(hù)都可以偽裝成任何其他用戶(hù),不需要特定驗(yàn)證,任何用戶(hù)都可以像任何用戶(hù)那樣執(zhí)行任何操作。就好比在Linux系統(tǒng)中每個(gè)人都知道root密碼。
但是,在正確配置的群集中,Kerberos用于身份驗(yàn)證。這意味著要與群集進(jìn)行交互,用戶(hù)必須首先輸入認(rèn)證(如用戶(hù)名和密碼)以證明他們是他們所說(shuō)的人。此身份驗(yàn)證提供了用戶(hù)和管理員期望的安全性:用戶(hù)在系統(tǒng)中具有某些功能,他們無(wú)法模擬其他人,只有管理員可以訪(fǎng)問(wèn)管理帳戶(hù)。
但是,如果沒(méi)有Kerberos,任何人都可以接觸Hadoop集群做各種不好的事情。安全研究人員在Hack.lu建議的一個(gè)示例攻擊是提交一個(gè)簡(jiǎn)單的YARN作業(yè)在集群中的所有機(jī)器上執(zhí)行代碼。這可以用來(lái)在該集群中的每臺(tái)機(jī)器上獲取shell。
為了觀察攻擊的真實(shí)性,我們用Cloudera Altus創(chuàng)建了一個(gè)Hadoop集群。Altus是一個(gè)云服務(wù)平臺(tái),該服務(wù)使用CDH在公共云基礎(chǔ)架構(gòu)內(nèi)大規(guī)模分析和處理數(shù)據(jù)。雖然使用Altus創(chuàng)建不受這些攻擊影響的安全集群很簡(jiǎn)單,但也可能將Altus集群設(shè)置成易受攻擊。
在Altus中,要使集群易受攻擊,就不要勾選Secure Clusters的框,也不要用AWS安全組,允許來(lái)自互聯(lián)網(wǎng)上任何位置的傳入流量。在創(chuàng)建這個(gè)對(duì)世界敞開(kāi)的不安全的集群的幾分鐘內(nèi),我們就觀察到了攻擊行動(dòng)。 YARN Web UI顯示了許多正在提交和運(yùn)行的作業(yè):
大約每分鐘一次,DemonBot試圖利用集群。對(duì)我們來(lái)說(shuō)幸運(yùn)的是,由于DemonBot本身的錯(cuò)誤配置(換句話(huà)說(shuō),我們很幸運(yùn)),這些攻擊失敗了。
教訓(xùn):如果你放一個(gè)不安全的群集,它一定會(huì)受到攻擊。
現(xiàn)在我們已經(jīng)看到了一個(gè)不安全的集群會(huì)發(fā)生什么,那讓我們來(lái)設(shè)置一個(gè)更安全些的集群。 我們的目標(biāo)是
1.僅允許從一組有限的計(jì)算機(jī)對(duì)群集進(jìn)行SSH訪(fǎng)問(wèn)
2.使用Kerberos啟用強(qiáng)身份驗(yàn)證
好在這在Altus中很容易配置。在Altus中,集群是在環(huán)境內(nèi)創(chuàng)建的。一個(gè)環(huán)境會(huì)描述如何訪(fǎng)問(wèn)用戶(hù)的云帳號(hào)及其包含的資源。它還指定了如何創(chuàng)建集群的一些基本內(nèi)容。因此,我們感興趣的配置選項(xiàng)出現(xiàn)在Altus環(huán)境中。創(chuàng)建環(huán)境有兩種方法:通過(guò)簡(jiǎn)單的快速入門(mén)過(guò)程或通過(guò)設(shè)置向導(dǎo)有更大的靈活性。
快速入門(mén)過(guò)程當(dāng)然是最簡(jiǎn)單的。創(chuàng)建環(huán)境時(shí),選擇“Environment Quickstart”路徑,然后選擇“Secure Clusters”中的“Enable”復(fù)選框:
完成!啟用安全群集后,就啟用了Kerberos。 Quickstart路徑還將創(chuàng)建了一個(gè)外部世界無(wú)法訪(fǎng)問(wèn)的安全組,防范DemonBot和XBash等漏洞。我們?cè)诖?環(huán)境中創(chuàng)建了這樣一個(gè)集群,當(dāng)然就沒(méi)有在集群上發(fā)生攻擊。
如果需要使用環(huán)境創(chuàng)建向?qū)В部梢赃x擇像“快速啟動(dòng)”中的“安全群集”復(fù)選框。 不同之處在于,在向?qū)е校仨氉约禾峁┌踩M。創(chuàng)建此安全組時(shí),請(qǐng)確保它僅允許從Altus IP地址進(jìn)行SSH訪(fǎng)問(wèn)。
互聯(lián)網(wǎng)是Hadoop集群的危險(xiǎn)場(chǎng)所。 因此,我們建議如下:
通過(guò)這些簡(jiǎn)單的步驟,您的Hadoop集群將受到保護(hù),免受此處描述的攻擊類(lèi)型的影響。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: