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

Security issues when used in combination with other APIs #193

Closed
tobie opened this issue May 4, 2017 · 13 comments
Closed

Security issues when used in combination with other APIs #193

tobie opened this issue May 4, 2017 · 13 comments
Labels
privacy-tracker Group bringing to attention of Privacy, or tracked by the Privacy Group but not needing response. security-tracker Group bringing to attention of security, or tracked by the security Group but not needing response.
Milestone

Comments

@tobie
Copy link
Member

tobie commented May 4, 2017

For example:

  • wake-lock and ALS,
  • motion sensors and input fields,
  • etc. …
@tobie tobie added privacy-tracker Group bringing to attention of Privacy, or tracked by the Privacy Group but not needing response. security-tracker Group bringing to attention of security, or tracked by the security Group but not needing response. labels May 4, 2017
@tobie tobie added this to the Level 1 milestone May 4, 2017
@lknik
Copy link
Contributor

lknik commented May 8, 2017

This looks like sensor-specific bug, any reason to have it open in the Generic Sensor?

I listed some ALS-related things here.

@tobie
Copy link
Member Author

tobie commented May 8, 2017

This looks like sensor-specific bug, any reason to have it open in the Generic Sensor?

It's not. The idea that risk can increase because of a specific combination of APIs is generic.

@lknik
Copy link
Contributor

lknik commented May 11, 2017

Oh, rightly so. Sorry I am actually signalling the issue for a while now. Happy we're taking it here. So short thing: probably difficult to make an exhaustive list :)

@tobie
Copy link
Member Author

tobie commented May 11, 2017

We shouldn't be making that list (as it'll evolve over time). Just describing the threat.

@pozdnyakov
Copy link

wake-lock and ALS

this case is addressed in a dedicated ALS issue

motion sensors and input fields

this case is addressed with Loosing Focus mitigation strategy

This issue looks too generic to handle it: the list of possible combinations with other APIs is endless.
Let's close it and make separate issues for every new known case when sensors security risks increase because of simultaneous using of some other API.

@anssiko
Copy link
Member

anssiko commented Sep 8, 2017

I agree. The known attack vectors have now been documented and mitigated, so I'd be fine closing this issue (this issue was opened as a response to my verbal feedback at the WG teleconference).

If we are made aware of new combinations of APIs that could be used for malicious purposes we should open a new topic-specific issue.

@lknik
Copy link
Contributor

lknik commented Sep 12, 2017

I would only add that it's difficult to comply such a list. Maybe include something "general" in the generic sensors API text?

Would it make sense to include a "data exfiltration" point there?

@anssiko
Copy link
Member

anssiko commented Sep 13, 2017

@lknik, concrete suggestions welcome.

@lknik
Copy link
Contributor

lknik commented Sep 14, 2017

Something along these:

Data exfiltration and leaks across origins or devices can become a risk when devices could communicate via out-of-band channels, or a device would be able to emit a signal and subsequently detect it via a specific sensor

Note, there are a number of sensors that could come to mind here.

@anssiko
Copy link
Member

anssiko commented Sep 19, 2017

I feel that is too generic to be useful for implementers. In my opinion, a better approach is to be specific, and define the concrete threats in concrete sensor specifications similarly to the Ambient Light Sensor: https://w3c.github.io/ambient-light/#security-and-privacy

I'd be inclined to close this issue with a note that we should document concrete attacks in applicable concrete specs.

@dontcallmedom
Copy link
Member

dontcallmedom commented Sep 19, 2017

I think that @lknik 's warning is probably worth putting in the generic sensor spec - after all, a key security challenge posed by sensors is that they expose a new communication channel not protected by the SOP, so calling that out both to implementors and concrete-sensor spec writers seem relevant.

@anssiko
Copy link
Member

anssiko commented Sep 19, 2017

I feel we should make https://w3c.github.io/sensors/#security-and-privacy as concise and actionable as possible to make it useful for implementers. Said differently, I'd like to avoid turning that section into an elaborate and ambiguous kitchen sink of unknowns. The risk of SOP violations is indeed a key concrete thing to flag out there.

Re the proposed text. The S&P section contains the following text already:

A combination of selected sensors can potentially be used to form an out of band communication channel between devices.

Sensors can potentially be used in cross-device linking and tracking of a user.

There's redundancy with the proposed text, so it would need some rewording to better fit the overall flow.

The SOP violations should be caught latest in https://w3ctag.github.io/security-questionnaire/#sop-violations, but since authors should consider this up front adding some links to https://w3c.github.io/sensors/#security would be a good thing to make concrete spec authors aware of threats, mitigations they inherit from the Generic Sensor API, and mitigations they need to consider on a case by case basis.

@lknik
Copy link
Contributor

lknik commented Sep 19, 2017

Wouldn't it be actionable if you'd include that point and link to ALS spec as an "example"? ;) (but then it would end up in a cyclical reference;) )

anssiko added a commit that referenced this issue Sep 20, 2017
Fix #193: Define extension spec Security & Privacy expectations
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
privacy-tracker Group bringing to attention of Privacy, or tracked by the Privacy Group but not needing response. 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

5 participants