Dec 16: Security - Confidentiality
This blog post is part of the FastMail 2014 Advent Calendar.
Technical level: low-medium
It's the catch phrase of everyone who wants the latest episode of their favourite show, or the latest song, and knows they can get it for free more easily and in a less encumbered format than if they were to pay for it.
It's also a fact of life on the internet. An attacker only has to find one flaw, and once they have data, it can be copied endlessly.
And that's just active attacks. If you're not paying for the service, then your data is probably being sold directly to pay for the costs of keeping it online.
Hosting Jurisdictions and Confidentiality
The headline "security risk" that everyone thinks of when talking about hosting jurisdiction and security is that the NSA or equivalent national spying agency will insert covert data taps, with or without the cooperation of the target service.
In fact, that's it. The only jurisdiction dependent risk is that the national intelligence agency of the host country wants to access data, but they don't want it enough to resort to illegal means or just making a special deal for access.
Other avenues of attack are either delivered over the internet (hacking, compromised hardware, viruses) or done by subverting/bribing/blackmailing service or data centre staff. If a determined attacker has the budget and agents to find the right person and apply the right pressure, these risks are present anywhere: any country, any data centre.
Mind you, credential theft (compromise of individual accounts rather than the entire service) happens all the time - whether through keyloggers on individual machines, viruses, password reuse from other sites which have been hacked, or just old-fashioned phishing. We find that compromised accounts are frequently used to send spam (taking advantage of our good reputation as a sender) rather than having their data stolen.
There are data centre specific risks like physical security, trustworthiness of employees, resistance to social engineering attacks - and then there's everything else.
The majority of possible attacks can be carried out over the internet, from anywhere.
Confidentiality at FastMail
The most important thing for confidentiality is that all our accounts are paid accounts. We don't offer Guest accounts any more, and we don't even offer "pay once, keep forever" Member accounts. Both these account types have a problem - they don't keep paying for themselves. That leaves us hunting for alternative sources of income. We flirted with advertisements on Guest accounts at one stage, but we were never really comfortable with them - even though they were text only and not targeted. Ads are gone, and they're not coming back.
We are very clear on where we stand. We provide a great service, and we proudly charge for it. Our loyalties are not divided. Our users pay the bills - we have no need to sell data.
We frequently blog about measures we take to improve confidentiality for our users:
- Insecure SSL 3.0
(we reacted very quickly)
- Image proxying to improve
- Content security policies to protect against scripting
(again, we were very quick)
- Mandatory SSL for LDAP and
and earlier for IMAP, POP and
You can read more about our reasoning for compulsory
and SSL rather than
- Perfect forward secrecy for SSL
There are also other things we do which don't have blog posts of their own:
- Physically separate networks for internal data and management. We
don't use VLANs in shared switch equipment, there's an actual air
gap between our networks.
- All the machines which have partitions containing user data (email,
database, backups, filestore) are only connected to the internal
production and internal management networks, and have no external IP
- All user data is encrypted at
meaning there is no risk of data being recovered from discarded hard
- Our firewall rules only allow connections to network ports for
services which are explicitly supposed to be on those machines, and
the ports are only opened after the correct service is started and
confirmed to be operating correctly.
- Our management connections are via SSH and OpenVPN, and are only
allowed from a limited set of IP addresses, reducing the our
exposure to attacks.
- We follow all the basic security practices like choosing software
with good security records, not allowing password-based login for
ssh, applying security patches quickly, and keeping on top of the
security and announcement mailing lists for our operating system and
key pieces of software.
Our goal is to make the cost of attacking our security much higher than the value of the data that could be stolen. We follow due process when dealing with law enforcement, providing individual data in response to the appropriate Australian warrant, so there is no justification to attempt wholesale surveillance of all our users.
We believe our security is as good as or better than anyone else in the same business. Of course we have had bugs, just like everyone, and we offer a generous bug bounty to encourage security researchers to test our systems. We recently had a respected independent security firm do a security audit, in which they had full access to our source code and a clone of our production systems (but not to any customer data or production security keys). They did not find any significant issues.
We are very happy with the trustworthiness and physical security at the NYI data centre where we host our data. I have visited a few times - I needed to have my name on the list at the lobby of the building to get a pass that would activate the lift, and then be escorted through two separate security doors to gain access to the racks with our servers, which are themselves locked. The staff are excellent.
Balancing Confidentiality, Integrity and Availability, I believe that hosting at NYI provides great security for our users' data. Moving elsewhere would be purely security theatre, and would discard NYI's great track record of reliability and availability for no real improvement in confidentiality.