【发布时间】:2014-12-25 14:07:50
【问题描述】:
我一直在学习网络应用安全渗透测试。场景是,为练习而开发的测试环境演示 Web 应用程序中存在跨站点脚本漏洞。我有一个基于 javascript 表达式的 xss 有效负载:
<div style="width: expression(alert(/XSS/))"></div>
我知道表达式自 IE 8 以来已被弃用。它在 IE7 中运行良好。所以,当我在上面输入有效载荷时,Web 应用程序返回
<div></div>
它剥夺了所有其他属性和值。但是当我像
这样改变有效载荷时<div style="width: expression'(alert(/XSS/))'">
它不是有效的负载意味着它不会执行。所以,我想弄清楚是否有任何替代方法可以在内联样式属性中定义表达式,比如我们是否可以放置除 single_quote 之外的其他不会破坏代码的东西。或者,如果有任何其他方式可以通过 style 属性执行 javascript。
【问题讨论】:
-
注入的输入是否有任何转义?如果没有,您可以关闭样式属性并使用
">标记并在那里注入<script>标记。 -
是的,有转义。
标签: javascript css expression xss