Interviewer: "So dude, what have you done in your career?"
Yo dev: "I built Yo."
Interviewer: "Yo got hacked. Goodbye."
And as selfishly awesome as it would be for my career if security holes became career-ending mistakes (hire me so you don't lose your job!), the only people who haven't written software with security holes are those who haven't written software.
See what you and I did there? Extremes, both sides of the argument. I know that no interviewer says that - it was done to illustrate my point.
Both of those pots of "gold" are threatening enough attack vectors.
The impact for Yo is not the degree of sensitivity of the data - that's semantic. The real impact is reputational. Trust is easily obtained, but very difficult to regain once lost.
I don't believe you. People still shop at Target, people still use Heartland payment processing systems, people still use Comodo and Verisign as digital certificate authorities. Stratfor still has customers, people still use Firefox, Internet Explorer and Chrome, and so on.
In this thread you ask people to care about security because of the harm it will bring to their reputation, but really you are the only person who considers the security reputation of a company, service, or product before using it. No-one else does. People in the world consider hackers and security problems to be a bit like tornadoes - what could you have done differently to avoid being hit by one?
And really, the track record for making secure software is very bad. Matasano is the premier application security consulting company in the world. Their blog got hacked. Microsoft is the premier software development company in the world, they invest billions comma billions of dollars in the security of their software, from paying internal red teams to giving grants to leading academics for groundbreaking research. Their software still gets hacked.
So what's your secret to making software secure? Is it more quotes from the CISSP handbook?
I know absolute security is elusive. I still try to anticipate what might happen, however. As Covey says, begin with the end in mind.
And finally, as far as Matasano goes. Yes, they have a good reputation. Thomas has a lot of technical depth for sure (certainly more than I). It interests me however, that I've never heard mention of a Needham-Schroeder implementation from them. But I may just have missed it. To be clear, I have no delusions - I imagine Matasano's crew has a lot more brain than I do. That's cool. And yet I find myself wondering why we (and they) all talk about which algorithm is good for crypto function x or y, but never about which protocol you might use to securely exchange keys (for example).
It isn't. You have an obligation to your users and the personal data they entrust you with. Build it in. Today. And know that you can't write secure code as part of an agile process. Security means sitting down and working out a threat model before you jump into code, user needs and backlogs. In other words, choose design up front, or have a contingency ready because you're going to get hacked.