<、> 和 " 转义时的 XSS?

信息安全 Web应用程序 攻击 xss 应用安全
2021-08-14 11:34:30

我正在测试一个具有反射 XSS 或至少一个反射向量的网站,但问题如下:

  • 它转义<, >,"到它们的 HTML 实体,但不是&,)(.
  • 您不在标签中,因此您必须创建自己的标签。

这不是我第一次看到这种实现。例如,Express.js 默认具有此功能。像这样的实现对 XSS 安全吗?

2个回答

不,这不一定足够。许多XSS 向量可能仍然可以应用,具体取决于注入点的位置。

一些例子:

  • 注入未引用的属性值

  • 注入用单引号('而不是")引用的属性值

  • 注入 CSS

  • 注入Javascript

  • 注入评论

……还有更多。您需要进行上下文相关的转义,并且您肯定需要在某些情况下至少转义<, >, ", ', 以及更多。在 OWASP 网站上花点时间;那里写了很多,对此进行了非常详细的解释。

有时它们也会转义“alert”参数,然后您可以使用“onMouseOver”等内容,您可以在此处找到完整链接。https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet (尝试xss定位器)

此外,您可以使用 %3C insead of < 等等...尝试 url 编码等。

如果文本在后台编码,你的 xss 可能无法工作......