骑士CMS全局XSS过滤绕过存储型XSS前台后台指哪打哪

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

### 简要描述: 74cms_v3.5.1_20141020 骑士CMS全局XSS过滤绕过存储型XSS前台后台指哪打哪(大部分能输入的地方都可以)。 ### 详细说明: 开篇:php里面的strip_tags()函数剥去 HTML、XML 以及 PHP 的标签。但是并不是所有的<XXX>都会被过滤。例如: ``` <%0Ba%0b>(注释:%0b表示字符0x0B, 即为urldecode('%3C%0Ba%0B%3E')的值) ``` 上面的代码经过strip_tags()后,返回字符串不过会改变。本次然过就是基于以上内容+全局过滤函数的一些BUG。 分析: 我们先来看看全局的XSS过滤函数。 ``` function mystrip_tags($string) { $string = new_html_special_chars($string); $string = remove_xss($string); return $string; } function new_html_special_chars($string) { $string = str_replace(array('&amp;', '&quot;', '&lt;', '&gt;'), array('&', '"', '<', '>'), $string); $string = strip_tags($string); return $string; } function remove_xss($string) { $string = preg_replace('/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]+/S', '', $string); $parm1 = Array('javascript', 'union','vbscript', 'expression', 'applet', 'xml', 'blink', 'link', 'script', 'embed', 'object', 'iframe', 'frame', 'frameset', 'ilayer', 'layer', 'bgsound', 'title', 'base'); $parm2 = Array('onabort', 'onactivate', 'onafterprint',...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息