Many have this idea that Firefox should be able to take support/health data and "self heal." e.g. we take the set of installed addons, compare it against a blacklist (or possibly a graylist of not-quite-banned-but-discouraged e.g. performance-sucking) and automatically take action.

The current approach to these types of features results in a number of one-offs. e.g. we have a blocklist ping, about:support, about:healthreport, etc.

One idea is to leverage the fact that about:healthreport is an iframe to web-hosted content and to offload the decision making for "self healing" outside of the packaged app and into hosted content. This way, the logic for improving the browser experience could largely be decoupled from the release process and be rolled out to users quicker. I would like to engage the security group about the implications of this.

The proposal is Firefox would expose a "support API" via about:healthreport (or similar) to remote content hosted in a content-privileged iframe. The API would consist of event listeners so the chrome and iframe could communicate. This API would have methods like "get Health Report payload," "disable add-on X," "prompt user to upgrade," "get hardware information," etc. Please note that these APIs would be chrome privileged and could modify the browser (or at least prompt the user to modify the browser - although I believe UX/Product would like Firefox to do as much automatically as possible).

This is largely how about:healthreport works today: a Mozilla-hosted content-privileged iframe requests the FHR payload from chrome and does something with it [1]. The difference is we'd be offering a much richer API to the remote-hosted content. And that much richer API offers many more avenues for abuse. Hence the security concerns.

Is this proposal something the security team could support? What are the concerns? If the proposal is not acceptable, what do you propose as an alternative to facilitate browser "self healing?"

[1] https://hg.mozilla.org/mozilla-central/file/89294cd501d9/browser/base/content/abouthealthreport/abouthealth.js
_______________________________________________
dev-security mailing list
dev-security@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-security

Reply via email to