mXSS:好像兴趣不大,快点攻击我啊

看了火狐最近的大版本更新记录,说是在序列化 HTML 特性的时候会转义 <> 以防止 mXSS 攻击了:

Firefox will now escape less-than (<) and greater-than (>) symbols when serializing HTML attributes, making certain mXSS attacks on websites more difficult.

不知道 mXSS 是啥玩意儿,于是去了解了一下:《mXSS: The Vulnerability Hiding in Your Code | Sonar》。 大意其实就是:出于浏览器对 HTML 标签的兼容性解析策略,可能会出现手写的 HTML 和实际得到的 DOM 树不预期。即浏览器会出现各种自动调整 DOM 树构建顺序的决策,进而导致跨站脚本攻击。这种“自动调整”就被称作“Mutation(mutation cross-site scripting)”。具体看上述文章的例子就很好(比如把双引号内的“</style>”也解析成标签的一部分)。

自我感觉这种情况对我来说风险不大,出现的可能性较小,所以暂时不处理。希望有兴趣的人士来攻击一下我,给我网站挂马。让我找到我自己的薄弱点。

我的网页几乎全部是 Go 的模板生成的,之前也不是没有出现过拼出的最终 HTML 页面出现过标签错误。也想过把W3C Markup Validation Service集成到端到端测试环境中,这样就基本能杜绝这种情况。后来一想到我有点谨小慎微了,就尚且没有这样做。

碎碎念 桃子