Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add HTTP header to opt out of "interest cohort" training #3159

Closed
dmarti opened this issue Mar 8, 2021 · 9 comments
Closed

Add HTTP header to opt out of "interest cohort" training #3159

dmarti opened this issue Mar 8, 2021 · 9 comments
Labels
🧑‍🤝‍🧑 community contributions by our wonderful community 🐌 idle Issues and PRs without recent activity. Flagged for maintainer follow-up. 🚉 platform keeping the platform healthy

Comments

@dmarti
Copy link

dmarti commented Mar 8, 2021

At least one commonly used web browser is planning to deploy a system in which users are classified into "interest cohorts" based on web history. (Federated Learning of Cohorts, or FLoC). This is widely considered a risk to user privacy. Background information is available from

If MDN visits are used to classify users into a "web developer" cohort, then unpredictable and possibly adverse effects will ensue. Some MDN users might be classified as web developers, and therefore good possible tenants, by landlords. Others might be classified by their current employers as people seeking new jobs as web developers, and suffer consequences at work. Still other users might be classified as web people and placed at risk for "spear phishing" attacks against web sites.

Because the training of cohorts has not been independently evaluated for privacy or security, and because cohort training is currently opt-out rather than opt-in, please add the opt-out HTTP header to MDN.

Permissions-Policy: interest-cohort=()

More info on opting out: https://github.com/WICG/floc#opting-out-of-computation

@peterbe
Copy link
Contributor

peterbe commented Mar 9, 2021

Hi Don! Thanks for filing.

@escattone @chrisdavidmills @fiji-flo This one's non-trivial. I haven't had a chance to read those lengthy articles yet.
Technically it would be as simple as add the Cache-Control header to the Deployer, but it would be nice to get some buy-in from other privacy experts within Mozilla to back up Don's claims (i.e. that MDN should opt-out). Know anybody good to call in for advice?

@chrisdavidmills
Copy link
Contributor

Hi Don! Thanks for filing.

@escattone @chrisdavidmills @fiji-flo This one's non-trivial. I haven't had a chance to read those lengthy articles yet.
Technically it would be as simple as add the Cache-Control header to the Deployer, but it would be nice to get some buy-in from other privacy experts within Mozilla to back up Don's claims (i.e. that MDN should opt-out). Know anybody good to call in for advice?

@englehardt is very knowlegeable in this area. Hi Steven! We are looking for expert advice on MDN opting out of "interest cohort" training. Do you have a little time to share your knowledge and ideas here?

@dmarti
Copy link
Author

dmarti commented Mar 10, 2021

Thank you for looking into this. @arthuredelstein is also knowledgeable about browser privacy and may be able to help advise.

@englehardt
Copy link

Since FLoC is only going through origin trials in Chrome, I think it's premature to add a header that interacts with the feature to our web properties. We should definitely revisit this if Chrome decides to move FLoC beyond an experiment.

@dmarti
Copy link
Author

dmarti commented Mar 22, 2021

The FLoC origin trial in Google Chrome has started. Only sites that are enrolled in the origin trial will be able to call the FLoC API.

All sites that are detected to have "ad-related resources" (items that would be blocked by EasyList) will be included in the training, unless explicitly opted out.

If MDN does not have any third-party resource that would be blocked by EasyList, it should not be included in training during the origin trial. However, if it turns out that an ad injected into a page by a (malicious) Chrome extension can result in the page being detected as an "ad-related" page, those ads might also expose users to FLoC training on MDN.

@schalkneethling
Copy link

@englehardt @dmarti Has this gone beyond origin trials? Should we revisit this issue and possibly implement the permission policy header? Thank you

@dmarti
Copy link
Author

dmarti commented Nov 4, 2021

@schalkneethling The first origin trial in Google Chrome has come to an end. There may be a second trial coming soon, but so far we don't know much about how FLoC will be changed. It is likely that FLoC training will only happen on pages on which the FLoC API is called, which might make the opt-out header unnecessary, but I still don't know how a script injected into a page by a browser extension might affect this. ( WICG/floc#33 (comment) )

More info: https://digiday.com/marketing/google-switch-floc-cookie-replacement-fingerprinting-potential/

@schalkneethling
Copy link

Thank you for the feedback @dmarti, much appreciated.

@github-actions github-actions bot added the 🐌 idle Issues and PRs without recent activity. Flagged for maintainer follow-up. label Dec 12, 2021
@schalkneethling schalkneethling added the 🧑‍🤝‍🧑 community contributions by our wonderful community label Apr 15, 2022
Repository owner moved this from Backlog to Done in Yari Platform Engineering May 27, 2022
@caugner
Copy link
Contributor

caugner commented Nov 30, 2022

FLoC seems to have been replaced by the Topics API, but I don't think it makes sense to keep tracking this here in an open yari issue.

Once this becomes significantly more prominent and therefore relevant again, we should discuss this.

@caugner caugner closed this as not planned Won't fix, can't repro, duplicate, stale Nov 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🧑‍🤝‍🧑 community contributions by our wonderful community 🐌 idle Issues and PRs without recent activity. Flagged for maintainer follow-up. 🚉 platform keeping the platform healthy
Projects
Development

No branches or pull requests

6 participants