【发布时间】:2018-10-26 19:05:22
【问题描述】:
根据OWASP,用户对href属性的输入应该“......除了字母数字字符,使用%HH转义格式转义所有ASCII值小于256的字符。”
我不明白这背后的原因。为什么 URL 编码不能完成这项工作?我花了几个小时尝试为动态生成并呈现给用户的 URL 字符串创建攻击向量,对我来说,这似乎是针对 XSS 攻击的非常可靠的保护。
我也一直在研究这个问题,大多数人都建议将 URL 编码与 HTML 编码一起使用。我完全明白为什么 HTML 编码不足,因为仍然可以使用其他向量,例如 onclick=alert()
有人可以向我展示一个攻击向量的示例,该攻击向量用于操纵使用 URL 编码且没有 HTML 编码或 owasp.org 在规则 #5 中建议的编码呈现的 href?
【问题讨论】:
标签: javascript security xss