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
访问靶机地址