
GiveWP介绍:
GiveWP 是一个WordPress 捐赠插件,专门为接受捐赠而开发,让您从网站接受捐赠变得更容易,Give 使WordPress 用户能够灵活轻松地在他们的网站上接受捐赠。 GiveWP可以一起设置多个活动,以便可以同时为不同的事业或项目筹集资金。
WordPress中的GiveWP捐款插件和募捐平台插件存在PHP对象注入漏洞,该漏洞存在于所有版本,包括最高版本3.14.1在内,导致超过10万个网站面临远程代码执行和未经授权文件删除的风险。该漏洞在CVSS严重性评分中获得了满分10分,攻击者无需任何身份验证即可利用此漏洞。漏洞源于对来自“give_title”参数的不可信输入进行反序列化操作。这使得未经身份验证的攻击者能够注入PHP对象。此外,如果存在POP链,攻击者可以远程执行代码并删除任意文件。
GiveWP<=3.14.1
FOFA:body="/wp-content/plugins/give"
使用docker 容器搭建,平台使用kali 系统,新建一个wordpress 文件夹,写入靶场镜像文件docker-compose.yml 内容如下:
services:
db:
image: mysql:8.0.27
command: '--default-authentication-plugin=mysql_native_password'
restart: always
environment:
- MYSQL_ROOT_PASSWORD=somewordpress
- MYSQL_DATABASE=wordpress
- MYSQL_USER=wordpress
- MYSQL_PASSWORD=wordpress
expose:
- 3306
- 33060
wordpress:
image: wordpress:6.3.2
ports:
- 80:80
restart: always
environment:
- WORDPRESS_DB_HOST=db
- WORDPRESS_DB_USER=wordpress
- WORDPRESS_DB_PASSWORD=wordpress
- WORDPRESS_DB_NAME=wordpress
volumes:
db_data:

在该目录运行以下环境安装靶场,安装完成docker ps 查看容器
docker-compose up -d

访问靶机地址