From: Phillip Gawlowski Date: 2011-08-09T16:03:16+09:00 Subject: Re: [ANN] 2011 Gotham Ruby Conference Videos are up On Tue, Aug 9, 2011 at 8:07 AM, Josh Cheek wrote: > > The server side are just to maintain integrity/security, if server side > blows up, I don't care about it, it's because of either a bug that should be > fixed, or an insidious user, in which case 500 is probably better than a > polite explanation of the issue that gives them more knowledge. In fact, *only* the server-side can ensure (for certain values of "ensure") security and integrity of data, since that is the only part of the equation you, as provider/developer, have any meaningful control over. TSL provides some security for the transmission of the data, but can also be subverted with MITM attacks, for example, from governments to Romanian cybercriminals, or can fall prey to insecure implementations, like on iOS 4.2.x (At least), with Mobile Safari not validating SSL certificates properly, or Debian's OpenSSL packages providing a not-so-random certificate generation limiting the possible number of certificates to 65 000-and-change (long since been fixed!), thanks to automated testing/code validation tools. As for data disclosure (AKA "Oracle Attack"[0]), a non-descript error is best, as CVE-2010-3332[1] demonstrates. The question isn't if you are paranoid. The question is if you are paranoid *enough*. [0] http://www.limited-entropy.com/padding-oracle-attacks [1] http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3332 -- Phillip Gawlowski phgaw.posterous.com | twitter.com/phgaw | gplus.to/phgaw A method of solution is perfect if we can forsee from the start, and even prove, that following that method we shall attain our aim.               -- Leibniz