当您在名为“堡垒之夜”的游戏中发布 map 时,它会要求您提供名称、描述和可选的 Youtube 视频。我想要做的是将“描述”设置为脚本标签。检查 site here 上的描述并编辑为 html 以查看发生的编码,您输入的描述设置为该 island-header-tagline h3 标记
我正在尝试运行 <script>
<h3>
上的标签标签。然而,当我尝试将脚本标签注入(inject) h3 标签时,它似乎对它进行了 html 编码( <
到 <
和 >
到 >
)。所以它实际上并没有将它识别为 html 标记并且不运行脚本。有谁知道这将如何实现?谢谢。
编辑:这是我要实现的目标:说这是输入的地方:<h3>USER INPUT</h3>
.我正在尝试做这样的事情 <h3></h3><script>alert('test');</script>
然而<
和 >
被转义到 <
和 >
P.S.:我正在学习 XSS(用于非恶意目的)
最佳答案
发生的情况是 Fortnite 要求“标题”,而您以 HTML 代码的形式提供标题,例如:
<script>alert('test');</script>
然后 Fortnite 网络服务器接受该文本,并出于安全原因对其进行清理。这样做是为了保护最终用户免受试图插入代码的人的侵害
<script>StealAllTheMoney();</script>
这也称为用户输入的“sanitization”。我们这样做是为了保护最终用户和我们的网络服务器。除非 Fortnite 方面存在漏洞,否则您无法绕过这种清理 escapes some characters这可能是恶意输入的一部分。在您的情况下,它至少是“>”。
关于javascript - 绕过 XSS 的 HTML 编码/转义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55778310/