css - 有没有办法在现代浏览器中获取 CSS XSS?

标签 css browser xss internet-explorer-10

我想知道是否有任何方法可以在现代浏览器上获取 CSS 样式 XSS?

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

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

最佳答案

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

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

总结:CSS 没有 Javascript 的位置,因此在正确实现时不能像在每个当前浏览器中一样使用 XSS 进行攻击。

关于css - 有没有办法在现代浏览器中获取 CSS XSS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25612661/

相关文章:

javascript - android浏览器中是否有任何“书签网络图标”功能?

c# - 忽略控制台应用程序中的 Web 浏览器 SSL 安全警报

防止 XSS 的 Javascript

javascript - 为什么javascript是: URIs allowed in the src attribute of <img> tags?

php - 这个清理是否有任何 XSS 泄漏?

javascript - Owl Carousel 2垂直图像分页

html - 标签和跨度的引导模式对齐

browser - F5、Ctrl + F5 和单击刷新按钮之间的区别?

javascript - 如何通过单击导航按钮开始/结束 smoke.js 动画?

c# - 是否有用于 C# 的 CSS 解析器?