免费教程_免费网赚教程_破解版软件-寂涯网络学习基地

当前位置: 主页 > 网站相关 > 网站安全 > DeDeCMS v5.7 member漏洞分析(3)

DeDeCMS v5.7 member漏洞分析(3)

时间:2012-04-12 20:32来源:未知 整理:寂涯网络 点击:


exit();
}   // ① $cfg_cookie_encode 值 必须已 知,才 能提交 符合 条件 的
$dede_fieldshash
}
$modelform = $dsql->GetOne("SELECT * FROM dede_member_model WHERE id='$modid' ");
if(!is_array($modelform))
{  howmsg('模型表单不存在',  '-1'); exit(); }      //②$modid 值必须正确
$inadd_f = '';
if(!empty($dede_fields))
{
$fieldarr = explode(';', $dede_fields);        //③用“;”将$dede_fields  变 量分割成为数组
if(is_array($fieldarr))       //即$dede_fields 变量至少必须包含一个“;”
{
foreach($fieldarr as $field)
{
if($field == '') continue;
$fieldinfo = explode(',', $field); //④用“,”将$field 分割成为数组
if($fieldinfo[1] == 'textdata')
{
${$fieldinfo[0]} = FilterSearch(stripslashes(${$fieldinfo[0]}));
${$fieldinfo[0]} = addslashes(${$fieldinfo[0]});
} else if ($fieldinfo[1] == 'img')
{
${$fieldinfo[0]} = addslashes(${$fieldinfo[0]});
}
else
{
if(empty(${$fieldinfo[0]})) ${$fieldinfo[0]} = '';
${$fieldinfo[0]}          =        GetFieldValue(${$fieldinfo[0]},
$fieldinfo[1],0,'add','','diy', $fieldinfo[0]);
}
if($fieldinfo[0]=="birthday")
${$fieldinfo[0]}=GetDateMk(${$fieldinfo[0]});
$inadd_f .= ','.$fieldinfo[0]." ='".${$fieldinfo[0]}."'";
//⑤将用“,”分割成的数组名和值引入$inadd_f 中
}
}
}
$inadd_f=preg_replace('/,/','',$inadd_f,1);
$query    =   "UPDATE    `{$membermodel->table}`set       {$inadd_f}     WHERE
mid='{$cfg_ml->M_ID}'"; //⑥将$inadd_f 引入 Sql 语句中
// 清除缓存
$cfg_ml->DelCache($cfg_ml->M_ID);
...(略)
//调用$dsql->ExecuteNoneQuery($query)执行 Sql 语句
}
通过分析可以得出:1)语句①②,$cfg_cookie_encode 值必须已知,才能提交符合条
件的$dede_fieldshash,提交的 $modid 值必须正确,查看该页面源码即可获得$modid 值;2)
语句③④⑤,$dede_fields 变量形式必须为“变量 1 名称,变量 1 类型;变量 2 名称,变
量 2 类型;….”,最后$inadd_f 变量值为“,变量 1 名称=’ 变量 1 值’, 变量 2 名称=’ 变
量 2 值’,……”;3)$inadd_f 直接引入 Sql 语句,因此可以使用自查询将需要注出的内容
写入个人资料中!
获取$cfg_cookie_encode 值。此值是能否成功利用漏洞二的关键,除了利用漏洞一外, 还可以通过爆破 MD5 码获取。使用$cfg_cookie_encode 变量的用户页面很多,我们选择“上 传 软件”页 面,查看 页面 源码,搜 索“ dede_fieldshash”字 符串,如图 3,其 中
$dede_fieldshash     值 为  MD5($dede_addonfields.$cfg_cookie_encode)  , 由 于
$dede_addonfields 值为空,所以获得的$dede_fieldshash 值就是$cfg_cookie_encode 变
量的 MD5 码,
图3
DeDeCMS 安装时,$cfg_cookie_encode 变量默认生成规则为:
 
$rnd_cookieEncode                                                     = chr(mt_rand(ord('A'),ord('Z'))).chr(mt_rand(ord('a'),ord('z'))).chr(mt_rand (ord('A'),ord('Z'))).chr(mt_rand(ord('A'),ord('Z'))).chr(mt_rand(ord('a'),o
rd('z'))).mt_rand(1000,9999).chr(mt_rand(ord('A'),ord('Z')));
 
形式如:AaAAa9999A,即前 5 位为英文字母,分别为大写、小写、大写、大写、小写,然后
是 4 位数字,最后是 1 位大写英文字母,一共 10 位。爆破工具选择 MD5Crack 4,因为这个
版本可以按指定的规则进行破解,如图 4。
图4

本页地址 http://www.jybase.net/wangzhananquan/20120412823.html

百度搜索更多

谷歌搜索更多

顶一下
(2)
100%
踩一下
(0)
0%
------分隔线----------------------------

评价:
昵称: 验证码:点击我更换图片
推荐内容
赞助商
赞助商


关于本站免责声明视频更新google百度地图视频地图RRS订阅

如有什么问题请在本站留言,或发邮件到 hxt167#foxmail.com