freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

WordPress插件YITH WooCommerce Wishlist SQL注入漏洞
secist 2018-01-20 14:00:45 566725

作为我们对Sucuri防火墙定期研究审计的一部分,我们发现了一个愿望清单插件YITH WooCommerce Wishlist,存在SQL注入漏洞。据统计,该插件目前至少已被50000+的wordpress站点安装使用。

受影响范围

这个漏洞主要出现在2.2.0版本以下,主要是因为该版本缺少对用户输入数据进行严格过滤措施。攻击者(至少有一个用户帐户)可能会利用该缺陷盗取用户敏感数据,甚至通过某些配置项危害你整个的WordPress安装。

需要提醒的是在MySQL版本低于5.7的服务器中,该漏洞极易被利用。

这个漏洞有个非常有意思的地方,也是我们决定要发布该安全公告的原因,就是使用这个插件的站点通常会启用免费“用户注册”功能,以允许用户的偏好(例如愿望清单)被存储和访问,以便后续使用。

技术细节

产生漏洞的代码,可在2.1.2版本中的includes/class.yith-wcwl-shortcode.php的第523行中找到。这段代码是get_products()函数的一部分,用于返回特定用户的所有wishlist元素:

1vulnerable_code1-1-768x413.png

如果攻击者控制了$limit变量,就可以为其赋任意值。例如构建一个查询语句。这样攻击者将有可能直接获取走,几台服务器上的所有敏感数据。例如加密哈希和电子邮件等。

攻击者想要达到构建查询的目的必须满足以下条件:

分页值必须为“yes”

count变量必须大于1(此变量存储特定用户的wishlist元素数量)

limit变量必须被设置

攻击者可以通过 includes/class.yith-wcwl-shortcode.php中定义的短代码yith_wcwl_wishlist来满足所有这些条件:

2vulnerable_code2-1-768x214.png

3vulnerable_code3-1-768x447.png

攻击者唯一要做的就是创建一个用户帐户,并调用漏洞短代码(具体可以参考我们此前的文章)。

紧急措施

检查你的插件版本,并尽快将其更新到最新版!

如果由于某种原因你无法升级,我们建议你使用Sucuri或其它WAF来保障你的站点安全。

*参考来源:sucuri,FB小编 secist 编译,转载请注明来自FreeBuf.COM

# SQL注入 # WordPress
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 secist 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
secist LV.9
每个人的心中都有一个梦。。
  • 369 文章数
  • 267 关注者
ATTCK-PenTester-Book:根据ATT&CK知识体系编制的长达400页的渗透手册
2020-02-10
Sniffle: 蓝牙5和4.x LE嗅探器
2019-11-23
Docem:向docx odt pptx等文件中嵌入XXE或XSS Payload
2019-11-11
文章目录