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

[css-conditional-3] Security review answers #5567

Closed
svgeesus opened this issue Oct 1, 2020 · 3 comments
Closed

[css-conditional-3] Security review answers #5567

svgeesus opened this issue Oct 1, 2020 · 3 comments
Labels
css-conditional-3 security-tracker Group bringing to attention of security, or tracked by the security Group but not needing response.

Comments

@svgeesus
Copy link
Contributor

svgeesus commented Oct 1, 2020

This issue contains the answers to the Self-Review Questionnaire: Security and Privacy for CSS Conditional 3

2.1 What information might this feature expose to Web sites or other parties, and for what purposes is that exposure necessary?

It exposes what CSS features are supported by the browser in use, so that the stylesheet author can only use the ones that are supported. This produces more robust styling, with graceful degradation in older browsers.

2.2 Is this specification exposing the minimum amount of information necessary to power the feature?

Yes

2.3 How does this specification deal with personal information or personally-identifiable information or information derived thereof?

Not applicable.

2.4 How does this specification deal with sensitive information?

It does not.

2.5 Does this specification introduce new state for an origin that persists across browsing sessions?

No.

2.6 What information from the underlying platform, e.g. configuration data, is exposed by this specification to an origin?

If the platform means the OS, none. If the platform includes the browser, it exposes which parts of CSS are implemented by a browser.

2.7 Does this specification allow an origin access to sensors on a user’s device

No.

2.8 What data does this specification expose to an origin? Please also document what data is identical to data exposed by other features, in the same or different contexts.

See answer to 2.1

2.9 Does this specification enable new script execution/loading mechanisms?

No.

2.10 Does this specification allow an origin to access other devices?

No.

2.11 Does this specification allow an origin some measure of control over a user agent’s native UI?

No.

2.12 What temporary identifiers might this this specification create or expose to the web?

None.

2.13 How does this specification distinguish between behavior in first-party and third-party contexts?

No

2.14 How does this specification work in the context of a user agent’s Private Browsing or "incognito" mode?

No differently

2.15 Does this specification have a "Security Considerations" and "Privacy Considerations" section?

Yes

2.16 Does this specification allow downgrading default security characteristics?

No.

2.17 What should this questionnaire have asked?

Nothing springs to mind.

@svgeesus svgeesus added css-conditional-3 security-tracker Group bringing to attention of security, or tracked by the security Group but not needing response. labels Oct 1, 2020
@svgeesus
Copy link
Contributor Author

svgeesus commented Oct 1, 2020

@arturjanc
Copy link

I took some time to read through the spec with an eye out for any additional security considerations, but overall these features seem low-risk from a security point of view. Specifically, there's no change to the threat model due to the addition of conditional group rules, and the information revealed directly via @supports is something that was easily observable to websites via side effects even without an explicit at-rule.

Looks good to me overall.

@svgeesus
Copy link
Contributor Author

Thanks for taking the time to review this specification!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
css-conditional-3 security-tracker Group bringing to attention of security, or tracked by the security Group but not needing response.
Projects
None yet
Development

No branches or pull requests

2 participants