Settings

Security

If you have found a way to break something here, this page tells you where to send it and what happens next. It also tells you, plainly, what we have and have not done.

Where to send it

Security@ObscuraOS.com

Tell us what you did, what happened, and what you expected instead. A short proof of concept is worth more than a long description. Screenshots are fine. We read everything.

We aim to acknowledge a report within three business days. This is one person and a small site, not a security team with a rota, so that is a target rather than a guarantee. If a week goes by with no reply, send it again to Hello@ObscuraOS.com.

The machine-readable version of this is at /.well-known/security.txt.

What the threat model actually is

There is no account system and no server that holds your documents. The tools are HTML, CSS and JavaScript, and they run in your browser on files you open from your own disk. That removes most of the categories a normal web application worries about. There is no session to steal, no database to dump, no password to reset, and no server-side view of what you were working on.

What it leaves is the browser, and that is where a real problem would live:

There is a small server side too, and it is in scope: the route that serves the paid applications’ code only to a paid key (/pro-code/), the routes that make and renew keys and send the sign-in email (/api/licence, /stripe-webhook), the seats console (/api/seats) and the waitlist. A way to get the paid code or a key without paying, to read somebody else’s seats, or to make the site email somebody who did not ask, is a report we want.

Those are the reports we want. You can check the first one yourself in about a minute: see how to verify that nothing is uploaded.

What is in place

Business and Team: seats

On Team and Business, whoever holds the key the subscription came with can give each person a key of their own on the seats page, and take it back. This is the one place the service keeps anything about people other than the buyer, so here is exactly what it is:

The terms for this data are in the data processing agreement.

What is not in place

This is the part most sites leave out, so here it is.

The argument for using this is not that it has been certified. It is that the software runs on your machine and you can watch it not talk to us.

If you are looking

Test against your own browser and your own files. Do not test against another person’s data, and do not run anything that degrades the site for other visitors: no load testing, no automated scanning at volume, no denial of service.

Give us a reasonable chance to fix something before you publish it. Ninety days is the convention and it is fine by us; if the fix lands sooner, publish sooner.

If you stay inside that, we will not pursue legal action against you or ask anyone else to. Finding problems in this is a favour, and we intend to treat it as one.


Related: verify that nothing is uploaded, incident response and breach notification, sub-processors, the CAIQ, answered, business continuity, privacy, data processing agreement, acceptable use.