根据网络检查报告,我们的网站属于隐私违规行为:违规行为。 推荐的修复方法是:
禁用HTTP压缩
确保用户输入和密码不包含在同一响应内容中
随机化秘密
我们应用#1禁用来自IIS的HTTP压缩=>压缩=>取消选中静态和动态。哪个适用于我们的DEV,但是当我们尝试使用PRODUCTION服务器时,它不起作用。 *响应标头仍显示c ontent-encoding:gzip 。即使HTTP压缩关闭
以下是PROD服务器的示例响应标头。
Cache-Control
private
Connection
Keep-Alive
Content-Encoding
gzip
Content-Length
71447
Content-Type
text/plain; charset=utf-8
Date
Thu, 24 May 2018 16:57:04 GMT
Server
Microsoft-IIS/7.5
Strict-Transport-Security
max-age=31536000; includeSubDomains
Vary
Accept-Encoding
X-AspNet-Version
4.0.30319
X-Content-Type-Options
nosniff
X-Frame-Options
SAMEORIGIN
X-XSS-Protection
1; mode=block
--- Request Header
Accept
*/*
Accept-Encoding
gzip, deflate, br
Accept-Language
en-US,en;q=0.5
Cache-Control
no-cache
Connection
keep-alive
Content-Length
92398
Content-Type
application/x-www-form-urlencoded; charset=utf-8
Cookie
.ASPXANONYMOUS=fMbt3RErereq1AEkAAA…onId=00y51efaerreuc3pw0erereyehwc2wzxk
Host
example.org
Pragma
no-cache
Referer
https://example.org/dsearch.aspx
User-Agent
Mozilla/5.0 (Windows NT 6.1; W…) Gecko/20100101 Firefox/60.0
X-MicrosoftAjax
Delta=true
X-Requested-With
XMLHttpRequest
另外,如何应用2和3中的修复。 该报告显示问题:
TSM_HiddenField_ = ctl00_ContentPlaceHolder1_ToolkitScriptManager1_HiddenField&安培; _TSM_CombinedScripts _ =%3B% 3bAjaxControlToolkit%2C +版%3d3.5.7.123%2C +文化%3dneutral%2C +公钥的令牌 和
ctl00_ContentPlaceHolder1_ToolkitScriptManager1_HiddenField =安培; __ EVENTTARGET =安培; __ EVENTARGUMENT =安培; __ LASTFOCUS = PRexdxaxbhgeccgjdchdfcgcdefRP (已在响应正文中修改)
答案 0 :(得分:0)
您可以在此处阅读有关BREACH攻击的所有内容:http://breachattack.com/
他们通过缓解来讨论什么样的压缩会受到影响。
他们按照有效性排列的缓解措施清单如下:
攻击取决于压缩压缩,因此禁用可有效减轻攻击。
如何为asp.net禁用压缩的说明:(在IIS中禁用它)。
How to prevent BREACH attack in ASP.NET MVC Core?
如果仍有压缩,则可能无法正确配置IIS。尝试从IIS服务器打开页面,然后检查标题。如果此时未进行压缩,则可能是另一个代理或负载均衡器正在另一跳中添加压缩。
如果您无法在您的环境中解压缩,则下一步是将秘密与用户输入分开。
看着他们退出的路线,它实际上对我来说并不是一个秘密。如果它不是秘密(即,如果攻击者发现了价值,他们将无法使用它),那么您实际上并未受到违规攻击。