ECShop 4.0反射型XSS漏洞分析
媒介: Ecshop是海内的一款开源的电商框架,在海内应用较为普及,当前最新版本为4.0.0,最近对其代码举办了简朴的说明,发明可以绕过其filter触发XSS。 一、裂痕操作方法 发送GET哀求包如下:
个中裂痕触发代码为:
实现绕过过滤法则,触发XSS裂痕的结果。 二、相干情形 版本:ECShop4.0.0 裂痕范例:反射型XSS 当地情形:php5.6.27+ Apache + Mysql 三、裂痕说明 该XSS裂痕路口点在user.php文件,查察user.php:328行 在用户登入界面的处理赏罚代码中,起首变量$action赋值为login进入主体代码,若变量$back_act为空而且哀求包中存在REFERER字段,则将REFERER字段中的内容赋值给变量$back_act,这是导致该裂痕的直接缘故起因,对$back_act变量赋值事后传入assign函数举办处理赏罚,个中$smarty是模版类cls_template的实例化:/includes/init.php:170行 以是查察assign函数时跟进到模版类cls_template中查察:/includes/ cls_template.php:70行 对传入变量名和变量值举办变量注册,我们可以传入非数组数据对$back_act举办变量注册,注册完毕回到user.php代码,继承跟进模版类中的display函数:/includes/ cls_template.php:100行 挪用fetch函数举办user_passport.dwt文件的页面表现,也就是表现用户登入页面,个中在user_passport.dwt文件中: $back_act值被赋值给input标签中的value,以是我们节制了$back_act变量值便可以在html页面中插入js代码。 四、绕过全局Waf触发XSS Ecshop中界说了全局安详过滤法则,查察代码:/includes/safety.php 这个过滤法则较量简朴粗暴,操作’on[a-zA-Z]{3,15}’ 过滤了全部的on开头js变乱,以是用变乱触发是较为坚苦了,而且 个中javascript:alert(‘Cyc1e_test’)可以绕过xss过滤法则的匹配从而绕过处事端的安详过滤植入html页面中,颠末html编码理会会规复成javascript:alert(‘Cyc1e_test’),从而触发执行,结果如图: 通过点击图片可以直打仗发 裂痕绕过触发的方法不独一。
五、总结 裂痕发掘首要在于必然的技能基本,充实的履历蕴蓄以及一些命运地址,发掘的裂痕不在巨细,每一裂痕都是一次生长,新手发掘文章,,但愿大牛们品评指正。 【编辑保举】
点赞 0 (编辑:河北网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |