Cookie注入漏洞:可绕过HTTPS并窃取私人信息

简介:

近期,一个存在于主要浏览器的Web cookie中的严重漏洞被发现,它使安全的浏览方式(HTTPS)容易遭受中间人攻击。此外,大部分Web网站和流行的开源应用程序中可能都含有Cookie注入漏洞,包括:谷歌、亚马逊、eBay、苹果、美国银行、BitBucket、中国建设银行、中国银联、京东、phpMyAdmin以及MediaWiki。

Cookie注入漏洞:可绕过HTTPS并窃取私人信息

美国计算机紧急响应小组(CERT)披露(补充:中国研究者xiaofeng zheng发现了这个安全问题,美国专业安全媒体thehacknews不知何因在报道中忽略了该研究人员的名字),所有的主要浏览器厂商不恰当地实现了RFC 6265标准,也称为“浏览器Cookie”,这使得远程攻击者能够绕过安全的HTTPS协议,并能够泄露秘密的私人会话数据。

HTTPS Cookie注入漏洞

Cookie是Web网站发送到Web浏览器上的一小片数据,它包含用户识别用户身份的各种信息,或储存了与该网站相关的任何特定信息。当一个你访问过了的网站想要在你的浏览器中设置一个Cookie时,它会传递一个名为“Set-Cookie”的头、参数名称、它的值和一些选项,包括Cookie的过期时间和域名(它有效的原因)。

此外,同样重要的是要注意一点,基于HTTP的网站不以任何方式加密头信息,为了解决这个问题,网站使用带有“安全标志(secure flag)”的HTTPS Cookie,这表明Cookie必须通过一个安全的HTTPS连接发送(从浏览器到服务器)Cookie。然而,研究人员发现,一些主要的Web浏览器通过HTTPS接受Cookie,甚至没有验证HTTPS Cookie的来源(Cookie forcing),这使得在明文传输的HTTP浏览会话中,处于中间人攻击位置的攻击者将注入Cookie中,而这些Cookie将用于安全的HTTPS加密会话。

Cookie注入漏洞:可绕过HTTPS并窃取私人信息

对于一个不受保护的浏览器,攻击者可以将HTTPS Cookie伪装成另一个网站(example.com),并以这种方式覆盖真正的HTTPS Cookie,这样即使用户查看他们的Cookie名单,可能也不会意识到这是一个虚假的网站。现在,这个恶意的HTTPS Cookie由攻击者控制,因此他能够拦截和抓取私人会话信息。

影响范围

在8月份华盛顿举办的第24届USENIX安全研讨会上,该问题首次被披露。当时,研究人员xiaofeng zheng展示了他们的论文,文中提到大部分Web网站和流行的开源应用程序中可能都含有Cookie注入漏洞,包括:谷歌、亚马逊、eBay、苹果、美国银行、BitBucket、中国建设银行、中国银联、京东、phpMyAdmin以及MediaWiki。此外,受影响的主流Web浏览器包括以下浏览器的早期版本:

1、苹果的Safari

2、Mozilla的Firefox

3、谷歌的Chrome

4、微软的IE浏览器

5、微软的Edge

6、Opera

然而,好消息是,这些供应商现在已经解决了这个问题。所以,如果你想保护自己免受这种Cookie注入、中间人攻击向量,那么就将这些浏览器升级到最新版本。

CERT和研究人员xiaofeng zheng还建议站长在他们的顶级域名商部署HSTS(HTTP Strict Transport Security)。


作者:JackFree


来源:51CTO


相关文章
|
4月前
|
前端开发
解决前端ajax跨域请求不携带cookie信息JSESSIONID的问题
解决前端ajax跨域请求不携带cookie信息JSESSIONID的问题
|
4月前
|
安全 关系型数据库 MySQL
Sqlmap2021 -- Cookie注入
Sqlmap2021 -- Cookie注入
302 1
|
4月前
|
安全 数据库
17、cookie注入
17、cookie注入
43 0
|
4月前
|
数据安全/隐私保护
18、cookie注入(base64加密)
18、cookie注入(base64加密)
43 0
|
1月前
|
数据安全/隐私保护
在某网站的登录页面登录时如果选择“记住用户名”,登录成功后会跳转到一个中间层(页面代码将登录的用户名和密码存在cookie),中间页面中存在一个超链接,单击超链接可以链接到第三个页面查看信息。若选择“
该博客文章通过示例代码和运行结果截图,展示了网站登录过程中如何通过中间层页面使用cookies技术实现“记住用户名”功能,并在点击超链接后查看保存的用户名和密码信息。
在某网站的登录页面登录时如果选择“记住用户名”,登录成功后会跳转到一个中间层(页面代码将登录的用户名和密码存在cookie),中间页面中存在一个超链接,单击超链接可以链接到第三个页面查看信息。若选择“
|
24天前
|
存储 C#
【Azure APIM】APIM 策略语句如何读取请求头中所携带的Cookie信息并保存为变量
【Azure APIM】APIM 策略语句如何读取请求头中所携带的Cookie信息并保存为变量
|
1月前
|
数据安全/隐私保护
|
3月前
|
安全 Java Maven
如何使用jsoup实现网站登录,cookie保存,查询信息
【6月更文挑战第11天】如何使用jsoup实现网站登录,cookie保存,查询信息
102 1
|
3月前
|
JavaScript
vue : 无法加载文件 D:\module\npm_module\npm_modules\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.c
vue : 无法加载文件 D:\module\npm_module\npm_modules\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.c
|
4月前
|
存储 安全 Java
基于 Cookie 的信息共享机制
基于Cookie的信息共享机制用于客户端状态保持。Cookie是服务器生成并发送到浏览器的文本文件,存储用户状态和安全信息。当用户发起请求时,浏览器会将Cookie一并发送,服务器据此处理。Cookie分为内存和硬盘两种,有持久和非持久之分,但因以明文存储,存在安全隐患。JSP/Servlet中的Cookie类提供管理方法。示例代码展示了如何使用JSP设置和检查Cookie。需注意Cookie的安全问题,避免数据泄露。
52 3