日常刷網(wǎng)頁的時(shí)候,無意中看到一個(gè)storm ui 的web頁面,搜了一下好像是大數(shù)據(jù)的框架,順便看到了aRe00t 師傅的文章《黑掉大數(shù)據(jù)之spark》蠻有意思的,spark,storm 都有一個(gè)很有意思的功能,可以遠(yuǎn)程提交代碼,了解了一番,storm是有專門的安全設(shè)置,但是在默認(rèn)配置情況,nimubs的6627端口是對外開放,若是該端口可任意訪問,那我們就可以在任意地方給nimbus 提交代碼,然后實(shí)現(xiàn)遠(yuǎn)程命令執(zhí)行。
臨時(shí)翻看了一些關(guān)于storm 的資料,若有錯(cuò)誤,望大神們多多指導(dǎo)。下面是我對strom 實(shí)現(xiàn)遠(yuǎn)程命令執(zhí)行的一些思路及本地實(shí)踐。
>>>> >>>> 提前條件<<<< <<<<
1、nimbus 的6627端口可以訪問。
>>>> >>>> 步驟<<<< <<<<
1、打包jar包
2、通過storm 客戶端將jar包上傳到nimbus
3、通過 web ui 觀察命令執(zhí)行情況
>>>> >>>> 執(zhí)行命令代碼<<<< <<
>>>> >>>> 上傳jar 包<<<< <<<<
在storm ui上可以看到剛上傳的Topology
稍等片刻就可以在storm ui 的日志里面看到命令執(zhí)行的結(jié)果
>>>> >>>> 總結(jié) <<<< <<<<
Storm 遠(yuǎn)程提交代碼給開發(fā)人員提供便利的同時(shí),但若部署時(shí)配置不當(dāng),不做訪問限制,就很容易給集群帶來風(fēng)險(xiǎn)。類似的安全問題還有redis、memcache等,很多都是因?yàn)樵摲?wù)部署時(shí)缺少安全意識未作訪問限制也沒做權(quán)限限制,導(dǎo)致該服務(wù)可任意訪問使用。那黑客們也就可以隨意利用了。
本文轉(zhuǎn)載自微信公眾號“新浪安全中心”,原文作者: 浪劍楓