Web Notification API in Fenix shares private mode cookie with normal mode
Categories
(Fenix :: General, defect)
Tracking
(firefox79 verified, firefox80 verified)
People
(Reporter: sdna.muneaki.nishimura, Assigned: royang)
References
()
Details
(Keywords: csectype-disclosure, reporter-external, sec-moderate, Whiteboard: [reporter-external] [client-bounty-form] [verif?])
Attachments
(4 files)
1.48 MB,
image/gif
|
Details | |
2.59 KB,
patch
|
Details | Diff | Splinter Review | |
902 bytes,
patch
|
snorp
:
review+
|
Details | Diff | Splinter Review |
1.66 KB,
patch
|
snorp
:
review+
|
Details | Diff | Splinter Review |
Similar to Bug 1657251, icon
request of Web Notification API in Fenix shares private browsing mode cookie with normal browsing mode. Also the cookie value is kept after restart even when Delete browsing data on quit
is enabled.
The reason is that icon
request is sent from native code and that shares cookie store between private and normal mode. Also, it that cookie store is not in scoped of Delete browsing data on quit
feature.
https://github.com/mozilla-mobile/android-components/blob/master/components/feature/webnotifications/src/main/java/mozilla/components/feature/webnotifications/NativeNotificationBridge.kt#L74
That allows website to track his/her users even when they use private browsing mode.
Here is the reproduction way (see attached image for the demo).
- Launch https://csrf.jp/2020/notification in normal browsing mode
- Set the name 'public' to form and submit
- Tap "Enable Notification" button and allow for the domain
- Launch https://csrf.jp/2020/notification in private browsing mode
- Set the name 'private' to form and submit
- Tap "Enable Notification" button again and allow for the domain
- Tap "Show Notification" button (in private mode tab)
- Fenix tries to retrieve
icon
to tracker.php and then tracking cookieuser=private
is set by the response - Open the normal browsing mode tab 1)
- Tap "Show Notification" button (in normal mode tab)
- Fenix sends
icon
request to tracker.php withuser=private
in cookie that is set by 8)
Updated•4 years ago
|
Assignee | ||
Comment 1•4 years ago
|
||
As suggested, all web notification icon request will be set to private so we don't send cookies in the request.
Assignee | ||
Comment 3•4 years ago
|
||
(In reply to James Willcox (:snorp) (jwillcox@mozilla.com) (he/him) from comment #2)
I think you probably just want to set this to
OMIT
all the time.
I see. I've attached a new patch. Thanks
Assignee | ||
Comment 4•4 years ago
|
||
Comment 5•4 years ago
|
||
Comment 6•4 years ago
|
||
(In reply to James Willcox (:snorp) (jwillcox@mozilla.com) (he/him) from comment #2)
I think you probably just want to set this to
OMIT
all the time.
In bug 1657251 we patched it to be conditional?
Assignee | ||
Comment 7•4 years ago
|
||
Updated to work with latest master
Updated•4 years ago
|
Comment 8•4 years ago
|
||
Verified as fixed on both RC 79.0.5 & Beta 80.0.1 builds: the private cookie is not shown in normal browsing mode.
Updated•4 years ago
|
Updated•4 years ago
|
Comment 9•4 years ago
|
||
Given the user interaction requirements (users rarely grant notification permission -- single digit percentages, and lots of users block requests for all domains) we're not sure this strictly qualifies for the bounty, but we are appreciative of being able to fix this privacy issue.
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•2 years ago
|
Updated•6 months ago
|
Description
•