Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript XSS攻击是否只发生在GET和POST请求中?_Javascript_Security_Xss - Fatal编程技术网

Javascript XSS攻击是否只发生在GET和POST请求中?

Javascript XSS攻击是否只发生在GET和POST请求中?,javascript,security,xss,Javascript,Security,Xss,我在看一个教程,导师在一个仅获取请求的应用程序上放置了一个XSS过滤器 我对跨站点脚本的理解是使用POST和GET。“黑客”将脚本发布到服务器,当您的Web应用程序发出GET请求时,它会收到该脚本,当脚本数据加载到页面上时,浏览器会运行该脚本 这会影响所有查看接收数据(脚本)页面的用户 如果您有并且只有一个GET请求web应用程序,您将如何受到攻击?您在这里似乎受到了一些误解 只有POST请求才能导致服务器存储数据-false 虽然HTTP规范要求GET请求是安全且幂等的,但编写违反此规则的服务

我在看一个教程,导师在一个仅获取请求的应用程序上放置了一个XSS过滤器

我对跨站点脚本的理解是使用POST和GET。“黑客”将脚本发布到服务器,当您的Web应用程序发出GET请求时,它会收到该脚本,当脚本数据加载到页面上时,浏览器会运行该脚本

这会影响所有查看接收数据(脚本)页面的用户


如果您有并且只有一个GET请求web应用程序,您将如何受到攻击?

您在这里似乎受到了一些误解

只有POST请求才能导致服务器存储数据-false

虽然HTTP规范要求GET请求是安全且幂等的,但编写违反此规则的服务器端代码很容易

只有GET请求才能从服务器获取数据-false

大多数HTTP请求都可以有一个响应,其中包含一个供客户端呈现的主体

虽然使用Post-Redirect-Get模式通常是个好主意,但这不是必需的,也不总是最好的方法。POST请求可以具有在浏览器中呈现的响应

需要存储数据才能导致XSS漏洞-false

许多XSS攻击都是反射形式的,输入在响应中直接响应


让我们以一个像谷歌这样的搜索引擎的天真实现为例

执行搜索时,搜索词将显示在页面顶部的输入元素中,以便您可以修改它并进行新搜索

<input name="q" value="<?php echo $_GET['q'];">

你似乎被误解了

只有POST请求才能导致服务器存储数据-false

虽然HTTP规范要求GET请求是安全且幂等的,但编写违反此规则的服务器端代码很容易

只有GET请求才能从服务器获取数据-false

大多数HTTP请求都可以有一个响应,其中包含一个供客户端呈现的主体

虽然使用Post-Redirect-Get模式通常是个好主意,但这不是必需的,也不总是最好的方法。POST请求可以具有在浏览器中呈现的响应

需要存储数据才能导致XSS漏洞-false

许多XSS攻击都是反射形式的,输入在响应中直接响应


让我们以一个像谷歌这样的搜索引擎的天真实现为例

执行搜索时,搜索词将显示在页面顶部的输入元素中,以便您可以修改它并进行新搜索

<input name="q" value="<?php echo $_GET['q'];">

它可以通过任何http谓词、websockets和几乎任何可以用来发送数据的通信来完成,这样其他用户就可以在不经过适当清理的情况下查看数据。它可以通过任何http谓词、websockets来完成,几乎所有的通信都可以用来发送数据,这样其他用户就可以在不经过适当清理的情况下查看数据。但在最后一部分中,您提到了“许多XSS攻击都是Refelcted形式,在响应中直接响应输入。”您能详细说明一下吗?除了你自己,这会对用户产生怎样的影响?@Kevorkian–你从来没有点击过一个不是你自己写的链接吗?是的,我点击过一个不是我自己写的链接。这与XSS有什么关系?如果用户单击了一个带有一些古怪参数的链接,那就是用户的错。@Kevorkian-哦,在单击任何链接之前,您检查了目标URL,以确保它看起来不像XSS攻击?你已经配置了你的浏览器,这样它就不会跟随HTTP重定向,这样看起来无辜的链接就不能重定向你了?您已经禁用了JavaScript,这样一个外观纯真的链接就不能让您进入一个页面,该页面通过编程方式提交表单或将
location.href
设置为新值?与XSS有关的是,如答案所示,XSS攻击可以被编码到一个链接中。好的,我理解你们关于http谓词的大部分观点,XSS攻击不需要数据存储。但在最后一部分中,您提到了“许多XSS攻击都是Refelcted形式,在响应中直接响应输入。”您能详细说明一下吗?除了你自己,这会对用户产生怎样的影响?@Kevorkian–你从来没有点击过一个不是你自己写的链接吗?是的,我点击过一个不是我自己写的链接。这与XSS有什么关系?如果用户单击了一个带有一些古怪参数的链接,那就是用户的错。@Kevorkian-哦,在单击任何链接之前,您检查了目标URL,以确保它看起来不像XSS攻击?你已经配置了你的浏览器,这样它就不会跟随HTTP重定向,这样看起来无辜的链接就不能重定向你了?您已经禁用了JavaScript,这样一个外观纯正的链接就不能让您登录到一个以编程方式提交表单或将
location.href
设置为新值的页面上?与XSS有关的是,正如答案中所示,XSS攻击可以编码到链接中。
<input name="q" value=""><script>alert("XSS");</script>">