DEDECMS伪随机漏洞分析:碰撞点1的发现和利用

需积分: 0 0 下载量 122 浏览量 更新于2024-08-05 收藏 1.71MB PDF 举报
"DEDECMS伪随机漏洞分析(三)碰撞点1" 本文是DEDECMS伪随机漏洞系列的第三篇,主要介绍了两个碰撞点的发现和POC的编写,以获取rootkey的值。 **碰撞点1:用户主页** 在DEDECMS系统中,用户主页可以作为一个碰撞点。该碰撞点需要开启会员功能,并且可以通过请求admin主页来获取last_vid_ckMd5的hash值。具体的获取方法是请求url+/member/index.php?uid=admin,响应将包含admin和last_vid_ckMd5的hash值。 **代码分析** 在获取用户主页的hash值时,需要分析DEDECMS系统的代码。通过分析,我们可以发现DEDECMS系统使用的随机函数的实现机制,并且可以找到一个适合的碰撞点。 **获取方法** 获取用户主页的hash值可以通过请求url+/member/index.php?uid=admin来实现。响应将包含admin和last_vid_ckMd5的hash值。 **碰撞点2:自定义表单** 在DEDECMS系统中,自定义表单也可以作为一个碰撞点。该碰撞点需要网站管理员定义表单,并且可以通过请求表单来获取dede_fieIds和dede_fieIdshash这两个值。具体的获取方法是请求url+/plus/diy.php?diyid=1,响应将包含dede_fieIds和dede_fieIdshash这两个值。 **代码分析** 在获取自定义表单的hash值时,需要分析DEDECMS系统的代码。通过分析,我们可以发现DEDECMS系统使用的随机函数的实现机制,并且可以找到一个适合的碰撞点。 **获取方法** 获取自定义表单的hash值可以通过请求url+/plus/diy.php?diyid=1来实现。响应将包含dede_fieIds和dede_fieIdshash这两个值。 **POC** 为了验证这两个碰撞点,我们可以编写一个POC。POC的代码可以保存到dede_funcookie.php中,并且需要修改里面的$cpu,$attack_method,$attack_param,$attack_hash等变量。然后,我们可以运行POC来获取rootkey的值。 **注意** 在运行POC时,需要注意CPU的负载情况,并且需要根据不同的PHP版本选择合适的dede_funcookie.php文件。同时,我们也需要注意不要同时运行两个POC,以免影响系统的性能。 本文介绍了DEDECMS伪随机漏洞的第三篇,主要介绍了两个碰撞点的发现和POC的编写,以获取rootkey的值。这两个碰撞点可以帮助我们更好地理解DEDECMS系统的随机函数的实现机制,并且可以帮助我们更好地防御DEDECMS伪随机漏洞的攻击。