【问题标题】:Bypass the chrome XSS Auditor by changing attributes in forms通过更改表单中的属性绕过 chrome XSS Auditor
【发布时间】:2014-04-07 18:44:15
【问题描述】:

最近我读了一个帖子 - Web Application Design Does Matter - Google Chrome XSS Auditor Bypass : Version <= 32.0.1700.41 m Aura !

它介绍了一种绕过 的xss 审核员的方法。

在帖子里说:

...让我们分析最新(和更早)版本的 Google 中的绕过 铬浏览器。网页 URL 如下所示: http://www.example.com/index.php?m=login 生成表单如下: 对于注入,我们精心制作 网址如下:

http://www.example.com/index.php/" onmouseover="JavaScript:alert(document.location)" name="?m=login .

在这个注入中,我们没有注入“m”参数,而是我们 玩过 URI 结构。这个想法是调整表格 layout 而不是“m”参数接受的值。如果你放置 你在“m”参数中的注入,它会被 XSS Auditor 取消。 让我们看看注入是如何发生的:结果,Google Chrome XSS 审核员被绕过。**

我的问题是如何仅使用 uri 来更改表单?我试过了,但它不起作用。

它与“m”参数有关吗?并且由于代码不处理 $_GET[] ,所以我没有看到任何将 js 代码嵌入到表单标签中的方法。

【问题讨论】:

    标签: google-chrome javascript php html google-chrome xss


    【解决方案1】:

    那是因为通常是这样的

    <form action="<?php echo $_SERVER['REQUEST_URI'] ?>" method="POST">
    

    用于使表单 POST 到它呈现到的同一页面。这里的问题是有人可以操纵 URL 本身,而不仅仅是查询字符串。所以在这种情况下,$_SERVER['REQUEST_URI'] 被呈现为未转义,因此容易出现 XSS。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多