This blog post is part of the FastMail 2014 Advent Calendar.

The previous post on 15th December was about how we load the initial mailbox view quickly. The following post is about how we test our changes.

Technical level: low-medium

Information wants to be free.

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.

The Landscape

Confidentiality is about keeping data private. This includes protecting against threats like: pervasive surveillance, identify theft, targeted data theft, and activist hacking.

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.

Non-Jurisdiction-Dependent Risks

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 have spelled out in our privacy policy and public communications that we don't participate in blanket surveillance. We are an Australian company, and to participate in such programs would be in violation of Australian law.

We frequently blog about measures we take to improve confidentiality for our users:

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.