关于DedeCMS漏洞,这是一个涉及PHP弱类型比较导致的安全问题,DedeCMS,全称织梦内容管理系统,是一款简单实用的开源PHP网站管理系统,下面将详细分析这个漏洞的不同方面:
1、漏洞成因
弱类型比较问题:在用户密码重置功能处,由于PHP的弱类型比较特性,即使用户没有设置密保问题,也能绕过验证直接修改密码,尤其是管理员账户默认不设置密保问题,这为攻击者提供了可乘之机。
2、影响范围
受影响的版本:该漏洞出现在DedeCMS V5.7SP2 正式版 (2018-01-09),环境要求为PHP5.6+MySQL。
影响的账户:此漏洞仅影响前台账户,且只能修改未设置安全问题的账户。
3、可能的攻击思路
获取管理员权限:攻击者可以通过修改cookie中的mid(用户ID)来模拟登录管理员账户,然后利用前台的密码修改功能,通过弱类型比较的问题,修改管理员的密码,但需要注意,此时修改的密码是member表中的密码,即使修改了管理员密码也是member表中的管理员密码,仍是无法进入管理。
4、进一步利用
获取原密码:要完成攻击,需要知道原来的密码,而原密码可以通过利用前台任意密码修改漏洞获取,但值得注意的是,前台任意密码修改漏洞只会修改dde_member表的密码,不会同时修改dede_admin和dede_member两个表的密码。
5、修复建议
代码改进:推荐使用严格比较(===)代替弱类型比较(==),严格比较会检查变量的类型和值,这样就能避免因类型转换导致的问题。
DedeCMS的这个漏洞主要是由于PHP的弱类型比较特性导致的,尽管目前只发现可以影响DedeCMS V5.7SP2 正式版,并且只能攻击未设置安全问题的前台账户,但仍然不能忽视其潜在的威胁,及时进行代码改进,使用更严格的比较方式,是防止此类漏洞的关键。
本文来源于互联网,如若侵权,请联系管理员删除,本文链接:https://www.9969.net/42526.html