一尘不染

CSS样式表中的跨站点脚本

css

是否可以在CSS样式表中使用跨站点脚本?例如,参考样式表包含恶意代码,您将如何处理?我知道您可以使用样式标签,但是样式表呢?


阅读 352

收藏
2020-05-16

共1个答案

一尘不染

来自浏览器安全手册

JavaScript执行的风险。作为一个鲜为人知的功能,某些CSS实现允许将JavaScript代码嵌入样式表中。至少有三种方法可以实现此目标:使用expression(…)指令,该指令可以评估任意JavaScript语句并将其值用作CSS参数;通过在支持它的属性上使用url(’javascript:…’)指令;或通过调用特定于浏览器的功能(例如Firefox的-moz->binding机制)。

…阅读完之后请参阅在CSS中使用Javascript。在Firefox中,您可以使用XBL通过CSS在页面中注入JavaScript。但是,由于已修复错误324253,因此XBL文件必须位于同一域中。

还有另一种有趣的(尽管与您的问题有所不同)滥用CSS的方法。本质上,您滥用CSS解析器来窃取来自其他域的内容。

2020-05-16