我正在做一个web应用程序的测试,并发现有多个x帧选项头条目的一些漏洞。哪些浏览器容易受到多个x帧选项的攻击?
对多个x帧选项头条目的攻击可能是什么?ClickJacking似乎是一种很难的方法,因为这在新的浏览器中是不可能的。
发布于 2017-05-24 05:00:39
根据RFC7034 1,允许设置多个具有相同名称的消息头。当出现这样的消息头时,它们通常被连在一起(Firefox),并且一个消息头由浏览器(客户端)形成,因为RFC允许这样做。
具有相同字段名的多个消息头字段可能存在于消息中,当且仅当该标头字段的整个字段值被定义为逗号分隔的列表,即#(值)。必须能够将多个标题字段组合成一个“字段名:字段值”对,而不需要更改消息的语义,方法是将每个后续字段值附加到第一个字段中,每个字段都用逗号分隔。
对于消息头X帧选项,只有这3个值被识别为有效;"DENY“、"SAMEORIGIN”和"ALLOW FROM“。这些值是相互排斥的,这意味着只有这些值应该存在,而且只有其中一个值可以出现在标头中。
假设服务器设置了2个相同名称的消息头。
HTTP/1.1 200正常
服务器: nginx/1.11.3
日期:2017年5月24日,星期三04:31:29
内容-类型: text/html;charset=UTF-8
内容长度: 5870
连接:保持连接
X帧选项:拒绝
X-内容-类型-选项:嗅探
X-XSS-保护: 1;mode=block
Set-Cookie: JSESSIONID=9F18D25951F107BE4C528CD787A3FE2F;Path=/;Secure;HttpOnly
最后修改:清华,2017年2月2日22:41:36格林尼治时间
ETag: W/"5870-1486075296000“
可变:接受-编码
X-框架-选项: SAMEORIGIN
严格-传输-安全性:最大年龄=31536000;includeSubDomains
X-内容-类型-选项:嗅探
X-XSS-保护: 1;mode=block
请注意,服务器使用两个X-FRAME-OPTIONS消息头进行响应。
X帧选项:拒绝
X-帧-选项:SAMEORIGIN
在火狐(不仅仅是火狐),这将被解释为X帧选项:“否认,SAMEORIGIN"浏览器引擎。由于这些标头值是互斥的,尽管RFC允许连接,浏览器试图将DENY、SAMEORIGIN解释为一个sngle元素,并导致反单击措施失败。
这里有一个不错的博客2,它进一步解释了这一点,3谈到了一个类似的问题。
希望你能找到有用的信息。:)
干杯,
米琳达。
https://stackoverflow.com/questions/44137501
复制相似问题