在 IE 中处理重定向时有一个有趣的错误,它可以将任意字符插入到 Host 标头中。...Location 标头看起来并不正确......所以这是 IE 所做的: GET /login.phphp/ HTTP/1.1 Accept: text/html, application/xhtml+...图片说明了一切: image.png 继续前进,您可能会期望服务器会倾向于以 400 Bad Request 响应这样一个奇怪的 Host 标头。这通常是真的.........image.png 但幸运的是,Google 在处理 Host 标头时存在一些怪癖,可以绕过它。 怪癖是在主机头中添加端口号。它实际上没有经过验证,您可以在冒号后放置您喜欢的任何字符串。...好的,让我们继续讨论 Google CSE XSS。它看起来就像这样: 主机标头清楚地反映在响应中,无需任何编码。
在某些情况下,在应用程序的一个 HTTP 标头中传递的信息未正确清理,并在请求页面的某处或另一端输出,从而导致 XSS 情况。...但不幸的是,一旦攻击者无法让受害者在实际的 XSS 攻击中编辑他/她自己的 HTTP 标头,那么只有在攻击者有效负载以某种方式存储时才能利用这些场景。...我们可能想到的第一种情况是典型的情况:我们可以控制的 HTTP 标头中的一些信息存储在数据库中,稍后在同一页面、应用程序的其他任何地方甚至是另一个不可访问的系统中检索攻击者(盲 XSS)。...\n”; 正如我们在下面看到的,在带有 -i 标志的命令行中使用 curl,它会向我们显示响应的 HTTP 标头以及包含我们的请求标头的 JSON。...但仅对我们而言,因为我们通过终端发送该标头。它不会出现在浏览器、其他人甚至我们自己的请求中。 发出了另一个请求(在“日期”标头检查时间),但似乎没有什么区别。
微信图片_20220506100828.png 常见HTTP标头概览 在网络爬虫的实践过程中会遇到诸多挑战,被屏蔽是最令人头疼的一个。...幸好,有许多技术可以帮助您免受IP屏蔽带来的影响,这其中,HTTP标头(HTTP Headers)的使用和优化是最有效的方法之一,但它往往也是最被大家低估的方法之一。...网络抓取的5大常用HTTP标头 HTTP标头之用户代理 HTTP标头之Accept-Language HTTP标头之Accept-Encoding HTTP标头之Accept HTTP标头之Refere...如果您对本个话题感兴趣,可以查看完整文章:了解每个HTTP标头(HTTP Headers)的关键功能,以及为什么在网络抓取时更改它们所携带的信息至关重要等更多实用信息。
什么是 FLoC FLoC 通过获取浏览器的浏览记录将用户加入 “相似” 用户的分组内,每个分组拥有对应的 FLoC ID。...通过这项技术可以实现猜测和收集用户的喜好等隐私数据,如果你曾经看过自己 Google 账户中的 Google 广告设置,其中就可以看到你的年龄、喜好、关注、房产状况等等信息,这些信息主要由 Google...的各项数据收集服务、搜索和个人账户信息等等获取而来,而 FLoC 则是通过浏览器获取类似信息的类似技术。...为什么要抵制 FLoC FLoC 被拒绝的原因正是目前第三方 Cookie 逐渐消失的原因,我们需要的是第三方 Cookie 的消失,而不是出现一个类似 (甚至在用于追踪的情况下功能更加完善) 的替代品...uBlock 等工具进行屏蔽 CloudFlare Browser Insights:CloudFlare 提供的网页性能监测工具,不会收集用户特定的信息 可以做的事 为自己的站点添加相关的拒绝标头:
这是我参与「掘金日新计划 · 12 月更文挑战」的第1天,点击查看活动详情 此标头引入了随机数生成功能。该库允许使用生成器和分布的组合生成随机数。 生成器:生成均匀分布的数字的对象。...该函数将内部状态更改 1,根据给定的算法修改状态值: x= (a.x + c)mod m Where x= current state value a and c = respective class...该函数将内部状态更改 1,根据以下算法修改状态值: x = (a.x + c) mod m where x= current state value a ,c and m=class template...operator(): 它返回一个新的随机数。 引擎的转换算法根据需要多次调用基础引擎的 operator() 成员,以获得足够的有效位来构造随机值。...该对象在内部保留一个由 k 个生成的数字组成的缓冲区,并在请求时返回缓冲区内随机选择的数字,并将其替换为从其基本引擎获得的值。 operator(): 它返回一个新的随机数。
● 大多数Web开发人员都熟悉HTTP标头;如Content-Length、Cache-Control和Cookie之类。...它们会携带请求和响应的元数据,通常,这部分数据是消息发送者由于某种原因无法放入正文内容的信息,或者是消息接收者无需查看正文内容即可获得的信息。...因为标头需要由许多不同的客户端和服务器,代理服务和CDN处理(通常在消息的生存期内不止一次),所以大家希望它们易于处理,高效解析并且定义明确句法。...例如,他们可以说“这是一个字符串列表”,人们将知道如何使用一个现成的库来明确地解析和生成标头,而不是编写特定于头的代码。...所以,就有这样的标题: Date: Thu, 09 Apr 2020 09:06:50 GMT 可能会在适当的转译跳点上表示为: SF-Date: 1586423210 这为我们提供了一种方法,可以将所有通用消息头和额外的元信息作为结构化字段发送
SOAP发送并不限制格式、URI特征或其必须可解析,那么在这种情况下,发送一个HTTP SOAP请求时,其HTTP客户端必须使用/指明SOAPAction HTTP request header。...SOAPAction header的值为空串("")表示SOAP消息的目的地由HTTP请求的URI标识;无值则表示没有指定这条消息的目的地。...跨平台调用Web Service出现:"服务器未能识别 HTTP 标头 SOAPAction 的值"的解决办法: 症状一: Web Service + ASP.NET 应用程序部署到服务器默认目录中,在...IE中用http:////发生“服务器未能识别 HTTP 标头 SOAPAction 的值”错误。...症状二: 在通过WCF 客户端ChannelFactory 上调用.NET Web Service的服务时,出现"服务器未能识别 HTTP 标头 SOAPAction 的值"。
http-header-soapaction-value-cannot-recognized-by-server-errors 本文主要探讨跨平台调用Web Service出现:"服务器未能识别 HTTP 标头...SOAPAction 的值"的解决办法。...症状一: Web Service + ASP.NET 应用程序部署到服务器默认目录中,在IE中用http:////发生“服务器未能识别 HTTP 标头 SOAPAction...症状二: 在Java平台上调用.NET Web Service的服务时,出现"服务器未能识别 HTTP 标头 SOAPAction 的值"。...SOAP发送并不限制格式、URI特征或其必须可解析,那么在这种情况下,发送一个HTTP SOAP请求时,其HTTP客户端必须使用/指明SOAPAction HTTP request header。
如果您看到证书警告,或内容无法通过 HTTPS 显示,则意味着无法安全地获取资源。 ? 资源无法通过 HTTPS 获取。 ? 尝试通过 HTTPS 查看资源时系统发出的证书警告。...您可以通过在服务器发送的响应中添加 Content-Security-Policy 或 Content-Security-Policy-Report-Only 标头为页面启用这些功能。...浏览器在响应标头或 元素中收到的多个 CSP 标头值被合并,强制作为一个政策;报告政策也以同样的方式进行合并。...您只能获得用户已访问的页面的报告。因此,如果您有流量不太大的页面,则这些页面的报告可在您获得整个网站的报告之前获得。 如需了解 CSP 标头格式的详细信息,请参阅内容安全政策规范。...这可能会中断用户期望获得的功能和内容。 CSP 替代方案 如果您的网站由某个平台(如 Blogger)代为托管,那么,您可能没有相应权限来修改标头和添加 CSP。
HTTP标头使客户端和服务器可以通过HTTP请求或响应传递其他信息。HTTP标头由不区分大小写的名称,后跟冒号(:)和值组成。 值之前的空格将被忽略。...响应标头包含有关响应的其他信息,例如响应的位置或提供响应的服务器。 实体标头包含有关资源主体的信息,例如其内容长度或MIME类型。...端到端头 这些标头必须发送给消息的最终接收者:请求的服务器,或响应的客户端。中间代理必须重新传输未经修改的标头,并且缓存必须存储它们。...Max-Forwards 饼干 Section Cookie 包含服务器先前发送的带有头的已存储HTTP cookieSet-Cookie。...如果指定了升级头字段,那么发送者还必须发送带有指定升级选项的连接头字段。有关Connection标头字段的详细信息,请参见上述RFC的6.1节。
服务器必须在请求完成后发送最终响应。 101交换协议 为响应来自客户端的升级请求标头而发送,并指示服务器正在切换到的协议。...服务器可以返回更新后的元信息。 205 重置内容 指示客户端重置发送此请求的文档。 206部分内容 当Range从客户端发送标头以仅请求资源的一部分时使用它。...301 永久搬家 请求资源的 URL 已永久更改。新 URL 由Location响应中的标头字段给出。除非另有说明,否则此响应是可缓存的。 302 找到 请求资源的 URL 已临时更改。...4xx 状态码(客户端错误) 状态码 描述 400 错误请求 由于语法不正确,服务器无法理解该请求。客户端不应该在没有修改的情况下重复请求。 401未经授权 表示请求需要用户认证信息。...431 请求标头字段太大 服务器不愿意处理请求,因为它的头字段太大。 444无响应(Nginx) Nginx 服务器不向客户端返回任何信息并关闭连接。
Found 指示请求的信息位于 Location 标头中指定的 URI 处。 接收到此状态时的默认操作为遵循与响应关联的 Location 标头。...Moved 指示请求的信息已移到 Location 头中指定的 URI 处。 接收到此状态时的默认操作为遵循与响应关联的 Location 标头。...MovedPermanently 指示请求的信息已移到 Location 头中指定的 URI 处。 接收到此状态时的默认操作为遵循与响应关联的 Location 标头。...PreconditionFailed 指示一个条件设置为此请求失败,并且无法执行请求。 使用条件请求标头,如: If-match、 设置条件 If-None-匹配项,或如果-以未修改形式-自。...Redirect 指示请求的信息位于 Location 标头中指定的 URI 处。 接收到此状态时的默认操作为遵循与响应关联的 Location 标头。
HTTP 通用标头主要用于传达有关消息本身的信息,而不是它所携带的内容。它们提供一般信息并控制如何处理和处理消息。...即使客户端和服务器都能够支持相同的压缩算法,服务器也可能选择不压缩并返回,这种情况可能是由于这两种情况造成的: 要发送的数据已经被压缩了一次,第二次压缩并不会导致发送的数据更小 服务器过载,无法承受压缩带来的性能开销...ETag: W/"0815" Location Location 响应标头表示 URL 需要重定向页面,它仅仅与 3xx(重定向) 或 201(已创建) 状态响应一起使用。...HTTP 响应标头 Retry-After 告知客户端需要在多久之后重新发送请求,使用此标头主要有如下三种情况 当发送 503(服务不可用)响应时,这表示该服务预计无法使用多长时间。...服务器标头包含有关原始服务器用来处理请求的软件的信息。
100 的目的是允许正在发送带有请求正文的请求消息的客户端确定源服务器是否愿意接受请求(基于请求标头)在客户端发送请求正文之前。...响应返回的信息取决于请求中使用的方法 GET 在响应中发送与请求的资源相对应的实体; HEAD 与请求的资源相对应的实体头字段在响应中发送,不带任何消息正文; POST 描述或包含行动结果的实体; TRACE...-ETag和/或Content-Location(如果标头已发送) 在对同一请求的200条回复中 -如果字段值可能会过期,缓存控制和/或变化 与先前的任何回复中发送的相同 变体...---- 400 Bad Request (错误的请求) 由于语法格式错误,服务器无法理解该请求。客户不应在没有修改的情况下重复请求。...---- 417 Expectation Failed 此服务器无法满足在Expect请求标头字段(请参阅第14.20节)中给出的期望,或者,如果该服务器是代理服务器,则该服务器有明确的证据表明下一跳服务器无法满足该请求
当客户端希望阻止一个更新类型的方法(如PUT)修改自客户端上次检索后已更改的资源时,这种行为最有用。 ...Warning头通常可以应用于任何消息,但是一些特定的警告代码对于缓存来说是特殊的,并且只能应用于响应消息。在任何现有的Warning标头之后都应该添加新的警告标题。缓存不能删除它收到的任何消息头。...- 用户首选字符集中的警告优先于其他字符集中的警告,但是警告代码和警告代理是相同的。 生成多个Warning标头的系统应该根据用户代理行为对其进行排序。 ...如果实现发送的消息具有一个或多个警告标头,其版本为HTTP/1.0或更低,那么发送方必须在每个警告值中包含一个与响应中的日期匹配的警告日期。 ...如果一个实现接收到包含警告日期的警告值的消息,并且该警告日期与响应中的日期值不同,那么在存储、转发或使用消息之前,该警告值必须从消息中删除。(这可以防止警告标头字段初始缓存的不良后果。)
即便服务端驱动型内容协商机制是最常用的对资源特定表示形式进行协商的方式,它也存在如下几个缺点: 服务器对浏览器并非全知全能。即便是有了客户端示意扩展,也依然无法获取关于浏览器能力的全部信息。...由于基于配置信息的信息熵的增加,修改后的值可以用作识别用户的指纹,所以不建议对其进行修改,不过这样的话 Web 站点也就不能依赖该值来揭示用户的真实期望。...大多数用户代理会为 Accept-Language 标头提供一个默认值,该值采用的是用户界面的显示的语言。通常终端用户不能对其进行修改,或者是不知道该怎么修改,或者在他们计算机的环境中无法进行修改。...Vary 响应标头 与前面列举的 Accept-* 形式的由客户端发送的标头相反,Vary 标头是由服务器在响应中发送的。它指示了服务器在服务端驱动型内容协商阶段所使用的标头清单。...在标头很少的时候,这并不是问题,但是随着数量的增多,消息的体积会导致性能的下降。带有精确信息的标头发送的越多,信息熵就会越大,也就准许了更多 HTTP 指纹识别行为,以及与此相关的隐私问题的发生。
它的工作流程如下: 服务器端向客户端返回 401(Unauthorized,未被授权的)响应状态码,并在 WWW-Authenticate 响应标头提供如何进行验证的信息,其中至少包含有一种质询方式。...通常,客户端会向用户显示密码提示,然后发送包含正确的 Authorization 标头的请求。 上述整体的信息流程,对于大多数(并非是全部)身份验证方案都是相同的。...标头中的真实信息和编码的方式确实发生了变化。 警告: 上图使用的“Basic”身份验证方案会对凭据进行编码,但是并不会进行加密。...除非信息交换通过安全的连接(HTTPS/TLS),否则这件事极其不安全的。 代理认证 与上述同样的询问质疑和响应原理适用于代理认证。由于资源认证和代理认证可以并存,区别于独立的标头和响应状态码。...标头字段。
协议升级机制 HTTP/1.1 协议提供了一种使用Upgrade (en-US) 标头字段的特殊机制,这一机制允许将一个已建立的连接升级成新的、不相容的协议。...example/1, foo/2 根据之前的请求的协议,可能需要其他标头信息,例如:从 HTTP/1.1 升级到 WebSocket 允许配置有关 WebSocket 连接的标头详细信息,以及在连接时提供一定程度的安全性...如果服务器没有(或者不能)升级这次连接,它会忽略客户端发送的 Upgrade 标头字段,返回一个常规的响应:例如一个 200 OK)....如果客户端愿意,则添加它,服务器将在响应中包含一个自己的密钥,客户端将在向你发送升级响应之前验证该密钥。 服务器响应的 Sec-WebSocket-Accept 标头将基于指定的 key 计算的值。...响应标头 如果服务器无法使用指定版本的 Websocket 协议进行通信,它将响应一个错误(例如 426 Upgrade Required),该错误在它的标头中包含一个 Sec-WebSocket-Version
这导致 Host 头被隐式信任了,其值未进行正确的验证或转义,而攻击者可以使用工具轻松地修改 Host 。...简而言之,你需要能够修改 Host 标头,并且你的请求能够到达目标应用程序。如果是这样,则可以使用此标头来探测应用程序,并观察其对响应的影响。...例如,你可能会发现 Host 头在没有 HTML 编码的情况下反映在响应标记中,甚至直接用于脚本导入。反射的客户端漏洞(例如 XSS )由 Host 标头引起时通常无法利用。...,但是这个请求被修改了 Host 头,以指向他们控制的域。...在真正的攻击中,攻击者可能会伪造一个假的警告通知来提高受害者点击链接的概率。 即使不能控制密码重置的链接,有时也可以使用 Host 头将 HTML 注入到敏感的电子邮件中。
领取专属 10元无门槛券
手把手带您无忧上云