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.pswp.cn/news/394369.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/394369.shtml
英文地址,請注明出處:http://en.pswp.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;缺點二是萬一中途發生…