有没有办法在现代浏览器中获得CSS XSS?

时间:2014-09-01 20:41:08

标签: css browser xss internet-explorer-10

我想知道是否有办法在现代浏览器上使用CSS Style XSS?

例如,在较旧的IE浏览器中,以下内容易受影响:

<div style="width:expression(prompt('XSS'))">

1 个答案:

答案 0 :(得分:6)

没有。正如这个例子完美地说明的那样,Javascript(或任何脚本)在CSS中没有位置,因此XSS(第二个S用于'脚本')是不可能的。 CSS应该只是声明性的,并且在实现时符合W3标准。动态表达式现在使用calc完成,它只能评估简单的数学表达式,而无需使用JS引擎。

expression是一个仅限IE浏览器,用于促进特定功能,直到W3提出替代方案。当calc出现时,expression已被弃用。从IE11开始,expression is no longer supported in the Internet Zoneannounced in 2008以这种方式结束,特别是引用'减少攻击面'作为核心原因之一。在比IE11更旧的版本中,它已经有很长一段时间了,只支持 quirks模式 IE7仿真模式

总结:CSS没有Javascript的地方,因此在正确实施时不会像使用XSS那样受到攻击,就像在每个当前浏览器中一样。