!
也想出现在这里? 联系我们
广告位
当前位置:首页>安全咨询>漏洞复现>Evolution CMS 2.0.x 反射跨站点脚本漏洞

Evolution CMS 2.0.x 反射跨站点脚本漏洞

漏洞描述

第二种也是最常见的 XSS 类型是反射型 XSS(非持久性 XSS)。在这种情况下,攻击者的有效负载必须是发送到 Web 服务器的请求的一部分。然后以 HTTP 响应包含来自 HTTP 请求的有效负载的方式反射回来。攻击者使用恶意链接、网络钓鱼电子邮件和其他社会工程技术来引诱受害者向服务器发出请求。然后在用户的浏览器中执行反射的 XSS 有效负载。

反射型 XSS 不是持久性攻击,因此攻击者需要将有效载荷传递给每个受害者。这些攻击通常是使用社交网络进行的。
 


 

漏洞复现

登录到应用程序

Evolution CMS 2.0.x 反射跨站点脚本漏洞

转到文档管理器并查看文档列表

Evolution CMS 2.0.x 反射跨站点脚本漏洞

有一个搜索边界插入 xss 有效负载为


Evolution CMS 2.0.x 反射跨站点脚本漏洞

影响 URL



Evolution CMS 2.0.x 反射跨站点脚本漏洞
 


 

缓解

输出编码:建议实施“输出编码”以将不受信任的输入转换为安全的形式,其中输入作为数据显示给用户,而不在浏览器中作为代码执行。Java HTML 编码函数 public static String HTMLEncode(String aTagFragment){ final StringBuffer result = new StringBuffer(); 最终 StringCharacterIterator 迭代器 = new StringCharacterIterator(aTagFragment); char 字符 = iterator.current(); while (character != StringCharacterIterator.DONE ) { if (character == '<') result.append("<"); else if (character == '>') result.append(">"); else if (character == '"') result.append("""); else if (character == ''') result.append("'"); else if (character == '') result.append(""); else if (character == '&') result.append("&"); else { // char 不是特殊的 // 将其添加到结果中,结果是 result.append(character); } 字符 = iterator.next(); } 返回结果.toString(); } • 转义:根据将放入数据的 HTML 上下文(正文、属性、JavaScriptCSS URL)转义所有不受信任的数据。EASPI API String safe = ESAPI.encoder().encodeForHTML(request.getParameter("input")); • 过滤输入参数:肯定或“白名单” 推荐的过滤技术是具有适当规范化的输入验证。或者,黑名单过滤输入的工作原理是从您的输入中删除部分或全部特殊字符。特殊字符是使脚本能够在 HTML 流中生成的字符。特殊字符包括: <> " ' % ; ) ( & + - JavaScript Codefunction RemoveBad(strTemp) { strTemp = strTemp.replace(/<|>|"|'|%|;|(|)|&|+ |-/g,""); 返回 strTemp; }

在调查该问题时,完成了一些后端更新,这些更新显然自动神秘地修复了该问题。
 

给TA打赏
共{{data.count}}人
人已打赏
漏洞复现

ZZCMS2022后台/admin/sendmailto.php?tomail=&groupid=SQL注入漏洞

2022-10-24 22:06:06

漏洞复现

Evolution CMS 2.0.x 会话劫持漏洞

2022-10-24 22:06:58

声明 本站上的部份代码及教程来源于互联网,仅供网友学习交流,若您喜欢本文可附上原文链接随意转载。无意侵害您的权益,请发送邮件至 admin@s9h.cn 或点击右侧 私信:少羽 反馈,我们将尽快处理。
0 条回复A文章作者M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索