插件介绍
Squirrly SEO 的 SEO 插件允许您通过内部链接功能改进网站的 SEO,该功能允许您根据特定关键字选择源页面和目标页面。您可以通过内部链接管理页面 (/wp-admin/admin.php?page=sq_focuspages&tab=innerlinks) 管理每个链接的关键字、源页面、目标页面和状态。
漏洞概述
在 Squirrly SEO 插件的 12.4.01 及以下版本中,您可以在内部链接管理页面上搜索创建的内部链接。当用户 (Contributor+) 输入的搜索词未经验证直接传递给数据库查询时,就会出现 SQL 注入漏洞。虽然搜索结果不会直接显示在内部链接管理页面上,但可以使用基于时间的 SQL 注入技术(例如 SLEEP 函数)提取数据库信息。
影响版本
SEO Plugin by Squirrly SEO <= 12.4.01
FOFA
FOFA:body="wp-content/plugins/squirrly-seo"
搭建环境
使用docker 容器进行搭建,docker-compose.yaml 文件内容如下:
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-compose up -d
访问目标地址,依次进行如下安装即可
输入账户密码进入后台
下载插件,插件下载地址如下:
https://downloads.wordpress.org/plugin/squirrly-seo.12.3.24.zip
下载完成解压,执行如下命令复制插件到docker 容器中。
docker cp squirrly-seo wordpress_wordpress_1:/var/www/html/wp-content/plugins
点击启用
此时靶场就搭建好了。
漏洞分析
在Squirrly SEO插件的内部链接管理页面(/wp-admin/admin.php?page=sq_focuspages&tab=innerlinks)中,当搜索内部链接时,它会通过调用/wp-content/plugins/squirrly-seo/models/Qss.php文件中的getSqInnerlinks函数来查询数据库。
此时我们可以看到变量$query_where直接插入到了SQL查询中,我们来看看变量$query_where的值是如何构造的:
第75行:变量$search包含内部链接搜索时输入的搜索词,使用sanitize_text_field函数处理用户输入的数据。
第76行:随后变量$search作为条件
4A评测 - 免责申明
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。
不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。
本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。
如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!
程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。
侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)