查看: 14300|回复: 19

oecms 存储型 xss

[复制链接]
发表于 2015-3-12 23:40:49 | 显示全部楼层 |阅读模式
没有对文件的访问做验证,并且其中有一个参数在最后转义了,看了一下用oecms的网站挺多的;此xss用起来也比较方便,直接post数据,前台直接触发,后端也没做csrf处理,这也增大了xss的威力。(没错在乌云偷的)
Ps目前3月3日官方对此漏洞进行了修复
造成xss的的两个原因:



(1)对admincp下的文件访问验证有问题



(2)有一个参数开始过滤了,最后又用stripslashes还原了





问题出现在admincp/frendlink.php文件的action_saveadd()函数



args从_validAdd()函数传入

[AppleScript] 纯文本查看 复制代码
public function action_saveadd() {
        $args = $this->_validAdd();
        
        $model = parent::model('friendlink', 'am');
        $result = $model->doAdd($args);
        unset($model); 
        if (true === $result) {
            $this->log('friendlink_add', '', 1);
            XHandle::halt("添加成功", $this->cpfile.'?c=friendlink', 0);
        }
        else {
            $this->log('friendlink_add', '', 0);
            XHandle::halt('添加失败', '', 1);
        }
        }


跟踪_validAdd()函数,传入的参数 'name', 'orders', 'flag', ‘remark’,’catid’在getGpc函数都做了过滤,而url传入了getArgs()函数







getArgs如果isfliter是false的话就会执行XFilter::stripArray(),此函数把转义的都还原了 ,造成了xss漏洞

[AppleScript] 纯文本查看 复制代码
public static function getArgs($value, $default=NULL, $isfliter = true) {
                if (!empty($value)) {
                        if (isset($_GET[$value])) $temp = trim($_GET[$value]);
                        if (isset($_POST[$value])) $temp = trim($_POST[$value]);
                        if ($isfliter == true) {
                                $temp = XFilter::filterStr($temp);
                        }
                        else {
                                $temp = XFilter::stripArray($temp);
                        }
                        if (empty($temp) && !empty($default)) {
                                $temp = $default;
                        }
                        return trim($temp);
                }
                else {
                        return '';
                }
        }





[AppleScript] 纯文本查看 复制代码
public static function stripArray(&$_data){
                if (is_array($_data)){
                        foreach ($_data as $_key => $_value){
                                $_data[$_key] = trim(self::stripArray($_value));
                        }
                        return $_data;
                }else{
                        return stripslashes(trim($_data));
                }
        }




直接向此文件post数据添加frendlink,前台存储xss。


评分

参与人数 1i币 +20 收起 理由
C4r1st + 20

查看全部评分

回复

使用道具 举报

发表于 2015-3-13 08:00:33 | 显示全部楼层
一大早来抢个沙发
回复 支持 反对

使用道具 举报

发表于 2015-3-13 08:21:41 | 显示全部楼层
前排出售各种0day
回复 支持 反对

使用道具 举报

发表于 2015-3-13 09:53:58 | 显示全部楼层
很不错,路过支持一下! http://asp-muma.com/ 免杀asp木马,免杀php大马,jsp大马,aspx大马下载。
回复 支持 反对

使用道具 举报

发表于 2015-6-28 14:24:12 | 显示全部楼层
学习学习技术,加油!
回复 支持 反对

使用道具 举报

发表于 2015-6-28 16:44:08 | 显示全部楼层
支持,看起来不错呢!
回复 支持 反对

使用道具 举报

发表于 2015-6-30 21:10:55 | 显示全部楼层
感谢楼主的分享~
回复 支持 反对

使用道具 举报

发表于 2015-7-1 05:06:15 | 显示全部楼层
支持中国红客联盟(ihonker.org)
回复 支持 反对

使用道具 举报

发表于 2015-7-2 02:30:58 | 显示全部楼层
学习学习技术,加油!
回复 支持 反对

使用道具 举报

发表于 2015-7-3 15:32:58 | 显示全部楼层
还是不错的哦,顶了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

旗下站点

邮箱系统

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2025-3-9 07:59 , Processed in 0.029143 second(s), 14 queries , Gzip On, MemCache On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部