javascript - 在没有脚本标签的情况下为 XSS 执行 JavaScript

标签 javascript html security xss

我正在学习 XSS(出于道德目的),我想知道如何在不使用 <script> 的情况下执行一些 JavaScript 代码。标签。这是在

HTML 标记内:

"The search term" <p> *JavaScript here* </p> "returned no results"

由于某些原因,脚本标签不起作用。

最佳答案

  1. 尝试输入带有特殊字符的不同类型的字符串,并查看是否对其中的任何字符串进行了编码或输出。 (我个人使用 '';!--"<XSS>=&{()} )
  2. 现在您有三个选择:
    1. 在 HTML 标签内: <>没关系,因为你已经在 HTML 标签中了。您可以查看此标签是否支持事件并使用某种 onload=alert(1)或其他事件。如果<>被允许,你可以打破并创建自己的标签 '><img src=0 onerror=alert(1)>
    2. HTML 标记之外: <>是重要的。有了这些,您可以打开一个新标签,整个世界都在您的脚下(或者……)
    3. Javascript 内部: 好吧...如果您可以使用 '" 来拆分字符串, 那么基本上可以写成';alert(1)
  3. 根据您的编码字符和字符串输出位置的周围环境制作您的 XSS

<XSS>完全消失: 应用程序使用某种 strip_tags .如果您在 HTML 标签之外,并且没有 HTML 标签被列入白名单,很遗憾,我不知道有什么方法可以实现 XSS。

制作您自己的有效载荷

实现这一点的方法有很多种,无法一一列举。 看看这两个网站,它们有很多方法和概念来构建你自己的。 它归结为:页面允许通过什么。

  1. https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#XSS_Locator_.28short.29
  2. https://html5sec.org/

关于javascript - 在没有脚本标签的情况下为 XSS 执行 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37435077/

相关文章:

javascript - 在表中选择适当的tr - jquery

javascript - 禁用详细信息/摘要

javascript - 如何找到表单/网页上按钮后面的来源或链接?

security - 如何在 .NET 中使用成员身份重命名角色?

security - 如何禁用 NodeJs 内部模块?

javascript - 创建一个启动 iOS 应用程序或重定向到应用程序商店的链接

javascript - 如何测试 React Native 模块?

jquery - 如果可能的话,如何使用 jquery 和/或 bootstrap 制作可切换的 div 以进行多种选择?

电子邮件验证/确认的安全性

javascript - 您好,非 ie 浏览器中的字幕延迟