nginx mozilla_我发现Mozilla的私人浏览模式存在重大缺陷。

nginx mozilla

by Konark Modi

通过Konark Modi

我发现Mozilla的私人浏览模式存在重大缺陷。 (I found a major flaw in Mozilla’s private browsing mode.)

If left unfixed this flaw could have wreaked havoc but Mozilla’s prompt fixes saved the day.

如果不加以解决,此缺陷可能会造成严重破坏,但Mozilla的及时修复可以节省大量时间。

In this article, I’ll discuss details of a bug I discovered with Mozilla Firefox private browsing mode that made it possible for private browsing sessions to be tracked.

在本文中,我将讨论在Mozilla Firefox私有浏览模式下发现的一个错误的详细信息,该错误使得可以跟踪私有浏览会话。

Private Browsing is one of the most widely known and used features in modern browsers today. Browsers continually add many enhancements to private browsing to enhance the users’ privacy.

私人浏览是当今现代浏览器中最广泛使用的功能之一。 浏览器不断向私人浏览添加许多增强功能,以增强用户的隐私。

The features offered might differ from one browser to another, but at the very least a user using private browsing has the two most basic requirements:

所提供的功能可能因一个浏览器而异,但是至少使用私有浏览的用户具有两个最基本的要求:

1. Websites visited in private cannot save any data

1.私下访问的网站无法保存任何数据

2. Visited pages are not saved

2.访问的页面不保存

Well, I discovered that the Firefox browser Private browsing mode didn’t meet any of the above requirements.

好吧,我发现Firefox浏览器的“私有”浏览模式不满足上述任何要求。

技术细节 (Technical Details)

For a website to track a user across private browsing sessions, it needs to use some persistent storage at the browser level.

为了使网站在私人浏览会话中跟踪用户,它需要在浏览器级别使用一些持久性存储。

There are multiple ways of storing data in a browser - LocalStorage, WebSQL and IndexedDB.

在浏览器中有多种存储数据的方式-LocalStorage , WebSQL和IndexedDB 。

I recently came across IndexedDB storage.

我最近遇到了IndexedDB存储。

IndexedDB is a low-level API for client-side storage of significant amounts of structured data, including files/blobs - Mozilla Developer Network

IndexedDB是用于客户端存储大量结构化数据(包括文件/ blob)的低级API - Mozilla开发人员网络

Although, as per the documentation, IndexedDB should not be available in private browsing mode.

虽然,根据文档,IndexedDB在私有浏览模式下不可用。

If you use IndexedDB directly on the webpage, it will throw an error:

如果直接在网页上使用IndexedDB,它将引发错误:

But what happens if you combine IndexedDB with Web Workers?

但是,如果将IndexedDB与Web Workers结合使用会发生什么?

Web Workers makes it possible to run a script operation in background thread separate from the main execution thread of a web application - Mozilla Developer Network

Web Workers使得可以在与 Web应用程序的主执行线程分开的后台线程中运行脚本操作 -Mozilla开发人员网络

问题详细信息:后果 (Issue Details: The Fallout)

IndexedDB can be accessed in private browsing mode via Web Workers. Not only that, but when the browser is closed, the IndexedDB data is not cleared. This stored data will persist across multiple private browsing sessions because it is not cleared when exiting. ?

可以通过Web Workers在私有浏览模式下访问IndexedDB。 不仅如此,而且在关闭浏览器时,不会清除IndexedDB数据。 此存储的数据将在多个私有浏览会话中保留,因为退出时不会清除它。 ?

So let’s look at a few ways this issue could be abused.

因此,让我们看一下可以滥用此问题的几种方法。

网站 (Websites)

A malicious website can leverage IndexedDB and track users across private browsing sessions. For example, say you visited badsite.com, which uses Web Workers and IndexedDB in private browsing mode. Close the private browsing window, close Firefox, start Firefox again, start private browsing mode, and again visit badsite.com. The website will be able to access the data from your previous private browsing session, as the data is still stored in IndexedDB.

恶意网站可能利用IndexedDB并在私人浏览会话中跟踪用户。 例如,假设您访问了badsite.com,该网站在私有浏览模式下使用Web Workers和IndexedDB。 关闭私有浏览窗口,关闭Firefox,再次启动Firefox,启动私有浏览模式,然后再次访问badsite.com。 由于该数据仍存储在IndexedDB中,因此该网站将能够访问您之前的私人浏览会话中的数据。

第三方 (Third-parties)

Let’s assume siteA.com loads an analytics script from BadAnalyticsSite.com. Then another website, siteB.com, also loads an analytics script from the same website BadAnalyticsSite.com. Since the malicious website BadAnalyticsSite.com uses Web Workers and IndexedDB, the website BadAnalyticsSite.com can now track users of websites siteA.com and siteB.com across all their private browsing sessions.

假设siteA.comBadAnalyticsSite.com加载了分析脚本 然后,另一个网站siteB.com也从同一网站BadAnalyticsSite.com加载了分析脚本。 由于恶意网站BadAnalyticsSite.com使用Web Workers和IndexedDB,因此BadAnalyticsSite.com网站现在可以在所有私人浏览会话中跟踪网站siteA.comsiteB.com的用户。

磁盘泄漏 (Disk leaks)

IndexedDB adheres to a same-origin policy, which means that every database has a name that identifies it within an origin. Because domain name is used as part of the file name, this can result in serious issues when used in private mode.

IndexedDB遵循同源策略 ,这意味着每个数据库都有一个在源内标识该数据库的名称。 由于域名用作文件名的一部分,因此在专用模式下使用时可能会导致严重的问题。

For example, if a user visits a test webpage (demo) which uses Web Workers + IndexedDB hosted on cdn.cliqz.com, and loads a resource from konarkmodi.github.io, the following two entries are created on disk.

例如,如果用户访问使用cdn.cliqz.com托管的Web Workers + IndexedDB的测试网页 (demo),并从konarkmodi.github.io加载资源, konarkmodi.github.io在磁盘上创建以下两个条目。

Because of the above flaw, a website/tracker could effectively generate a fingerprint and save it. Even if a user were to clear the website history or select the option “forget about this site,” the IndexDB storage is not removed. This can create a permanent storage for a website or a tracker that can be leveraged forever.

由于上述缺陷,网站/跟踪器可以有效地生成指纹并将其保存。 即使用户要清除网站历史记录或选择“忘记该网站”选项,也不会删除IndexDB存储。 这可以为可以永久利用的网站或跟踪器创建永久存储。

报告和修复 (Report and Fixes)

Mozilla encourages security research for their products. In their own words:

Mozilla鼓励对其产品进行安全性研究。 用他们自己的话说:

The Mozilla Client Security Bug Bounty Program is designed to encourage security research in Mozilla software and to reward those who help us create the safest Internet software in existence.
Mozilla客户端安全漏洞赏金计划旨在鼓励Mozilla软件进行安全性研究,并奖励那些帮助我们创建现有最安全的Internet软件的人。

I reported this issue in October 2017 via their Bug Bounty Program, and the issue was fixed in November 2017. They were prompt to identify and fix the issues.

我于2017年10月通过其Bug赏金计划 ( Bug Bounty Program)报告了此问题,并于2017年11月修复了该问题。他们会Swift发现并修复问题。

For more details, you can read the complete bug report at Mozilla’s Bugzilla.

有关更多详细信息,您可以在Mozilla的Bugzilla上阅读完整的错误报告。

I really appreciate Mozilla’s efforts and actions in fixing issues with the highest priority when it comes to the privacy of its users.

我真的很感谢Mozilla在解决用户隐私方面的工作和行动,将其放在了最高优先级。

Happy Hacking!

快乐黑客!

You can follow me on Twitter at Konark Modi

您可以在Konark Modi的 Twitter上关注我

Thanks for reading and sharing ! :)

感谢您的阅读和分享! :)

If you liked this story, feel free to ??? a few times (Up to 50 times. Seriously).

如果您喜欢这个故事,请随时??? 几次(最多50次。严重)。

Credits: Special thanks to Remi and Pallavi for reviewing this post :)

鸣谢:特别感谢Remi和Pallavi审阅了这篇文章:)

翻译自: https://www.freecodecamp.org/news/breaking-bad-to-make-good-firefox-cve-2017-7843-219034357496/

nginx mozilla

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/394369.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

4月8日随笔

周一满课,晚上唱红歌,写概率论。。 转载于:https://www.cnblogs.com/wxy2000/p/10686058.html

linux开机出现一下错误Give root password for maintenance (or type Control-D to continue):

linux开机出现一下错误Give root password for maintenance (or type Control-D to continue):第一种错误的情况:由于错误的编辑/etc/fstab文件 而引起的不能正常进入系统。假如你将某一个分区或者磁盘最后一个参数设置为1或2时,系统默认会在开机过程中检…

[阅读笔记]Zhang Y. 3D Information Extraction Based on GPU.2010.

1.立体视觉基础 深度定义为物体间的距离 视差定义为同一点在左图(reference image) 和右图( target image) 中的x坐标差。 根据左图中每个点的视差得到的灰度图称为视差图。 那么根据三角几何关系可以由视差(xR - xT ) 计算出深度.bcamera基线距离,f焦距。 离相机越…

r语言 小树转化百分数_“小树”机器人1.0新品发布会

产品初衷伴随着AI的落地,从最开始的刷脸支付,再到自动驾驶,还是现在互联网的5G时代,AI无疑都是产业变革的核心动力。那么作为一家科技创新的企业,小树机器人从建立之初就在不断的创新,我们致力于从智能出发…

mac安装python虚拟环境_详解Mac配置虚拟环境Virtualenv,安装Python科学计算包

最近正在自学Python做科学计算,当然在很多书籍和公开课里最先做的就是安装Numpy, Scipy, Matplotlib等包,不过每次安装单独的包时,都会有各种问题导致安装失败或者调用失败。比如,遇到 Exception 和 Error:明明已经提示…

破解系统设计访谈:Twitter软件工程师的提示

by Zhia Hwa Chong志华化 破解系统设计访谈:Twitter软件工程师的提示 (Crack the System Design interview: tips from a Twitter software engineer) I recently wrote about how I landed offers from multiple top-tier tech companies. During my interview pr…

leetcode474. 一和零(动态规划)

在计算机界中,我们总是追求用有限的资源获取最大的收益。 现在,假设你分别支配着 m 个 0 和 n 个 1。另外,还有一个仅包含 0 和 1 字符串的数组。 你的任务是使用给定的 m 个 0 和 n 个 1 ,找到能拼出存在于数组中的字符串的最大…

jQuery对象与DOM对象的相互转换

一、检测方式上的区别 检测DOM对象: if (Object.nodeType) 检测jQery对象: if (Object.jquery) 二、转换方式 jQuery对象转DOM对象: var DOMObject jQueryObject.get([index]); // 或者 var DOMObject jQueryObject[index]; DOM对象转jQuer…

ProcessExplore 最新版

http://files.cnblogs.com/files/zhangdongsheng/ProcessExplorer.zip转载于:https://www.cnblogs.com/zhangdongsheng/p/6195743.html

javascript对象包含哪些要素_让人迷糊的JavaScript对象(Object一)

对于很多初学的小伙伴听到JavaScript内置对象、BOM、DOM、WEB API等关键词基本上都是迷糊,不是很明白他们之间的关系,以及他们是如果建立联系的。虽然我们现在小伙伴在学VUE,React等框架能简化我们的操作,但是遇到一些基础的问题还…

被吐嘈的NodeJS的异常处理

被吐嘈的NodeJS的异常处理 许多人都有这样一种映像,NodeJS比较快; 但是因为其是单线程,所以它不稳定,有点不安全,不适合处理复杂业务; 它比较适合对并发要求比较高,而且简单的业务场景。 在Expr…

javascript关键字_让我们揭开JavaScript的“ new”关键字的神秘面纱

javascript关键字by Cynthia Lee辛西娅李(Cynthia Lee) 让我们揭开JavaScript的“ new”关键字的神秘面纱 (Let’s demystify JavaScript’s ‘new’ keyword) Over the weekend, I completed Will Sentance’s JavaScript: The Hard Parts. It might not sound like the most…

查看 rabbitmq 启动websocket 提示404_RabbitMQ在windows下安装(笔记)

先保证Java开发环境一切正常,【jdk,maven】,然后下载两个文件,1,下载OTPhttps://www.rabbitmq.com/download.html 下载地址下载RabbitMQ Downloading and Installing RabbitMQ:地址安装没有别的操作,一直下一步就好;2&…

[Leetcode] Longest Valid Parentheses

找出字串裡最長的合法括號組 簡單說&#xff0c;一樣stack搜尋合法parenth&#xff0c;把不合法的 ( & ) index 紀錄下來&#xff0c;最後算index間的差值取最大就是最長的 public class Solution{/// <summary>/// 把不合法的( )的index記下來&#xff0c;取最長的差…

leetcode35. 搜索插入位置(二分搜索)

给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。 你可以假设数组中无重复元素。 示例 1: 输入: [1,3,5,6], 5 输出: 2 代码 class Solution {public int sear…

[deviceone开发]-do_Album的简单示例

一、简介do_Album用来打开手机系统提供的相册&#xff0c;能选择一张或多张图片返回给开发者&#xff0c;通常相册的图片比较大&#xff0c;要经过缩放。有的时候用户也需要把别的地方获取到到图片收藏到系统相册。这个示例简单展示这个组件的2个基本功能。二、效果图三、相关下…

公办低分二本_这六所公办二本高校的计算机类相关专业值得低分段考生选择

邯郸学院——计算机科学与技术近年来&#xff0c;邯郸学院着力强化“以本为本”理念,坚持“学生中心”“产出导向”原则&#xff0c;加强学科专业建设&#xff0c;获批国家级特色专业1个&#xff0c;省级重点发展学科3个&#xff0c;省级一流专业7个&#xff0c;英语等3个专业入…

用户体验改善案例_用户体验案例研究:建立更好的体验(重新设计“和平航空”网站)...

用户体验改善案例by Peace Ojemeh (Perrie)由Peace Ojemeh(Perrie) 用户体验案例研究&#xff1a;建立更好的体验(重新设计“和平航空”网站) (A UX case study: Building a better experience (Re-designing the Air Peace Airline website)) Traveling by air is always an …

[转]FFMPEG调节音频的音量大小,混音

链接&#xff1a;https://blog.csdn.net/nil_lu/article/details/52078488 转载于:https://www.cnblogs.com/zifeiy/p/10675734.html

局域网即时通讯软件_无线局域网中,安卓手机和电脑的资源如何实现互传互访?...

安卓手机和电脑之间的资源共享&#xff0c;可实现的方案有很多&#xff0c;例如&#xff1a;方案一是各种官方或第三方出品的“XX手机助手”软件。优点是直连的传输速率最高&#xff1b;缺点一是手机和电脑必须连在一起&#xff0c;相当不方便&#xff0c;缺点二是万一中途发生…