Secrets of Google’s Information Security Team

By Daniel Miessler on April 29th, 2008: Tagged as Google | Security

4 Comments »

  1. This is not completely true. Everyone on the team that works in that function is/was a developer but not everyone in the umbrella of information security is.

    Comment by dale — 4/30/2008 @ 12:45 am

  2. If you mandate that everyone on your security team needs to be a programmer, you’re not going to end up with an elite security team, you’re going to end up with a team of developers who know something about security. Now, security people (especially application security people) must be able to code, but this isn’t the same thing as them needing to be programmers. Security researchers are security researchers because they want to attack stuff, not because they want to code, if they wanted to code they’d be programmers already.

    Also, writing all your own security libraries is not inherently a good idea because you lose the benefit of the fact that many eyes can look at and review the code to help improve it, of course so can bad guys, and google is a pretty attractive target, but it’s a trade-off not something inherently good about Google’s policy.

    Furthermore, while peer review is good, it should also be reviewed by the security team because that’s why you have them; because you know developers probably don’t know as much about security as the security team. OF course they have less security people than developers, so getting devs to review code makes sense.

    Also, throwing all the attacks they’ve ever seen against their code is a stupid idea, let me explain why: - You need to be able to differentiate between what an attack is and what isn’t. The fact that IDS’ and IPS’ suck so much illustrates how hard of a problem this itself is. And if someone’s got an attack that’s interesting enough that the security team can learn from it, they’ve probably got a bunch of ways to evade the IDS that Google is using. And the best case is that you can find known attack variants, all of which the google security team should already know about, and they should keep a database of those, rather than the junk they get sent. - Throwing stuff blindly at apps is what a fuzzer does, and we already know that fuzzers don’t find all the bugs, and on top of that with many non-memory corruption issues it is much more difficult to determine whether an attack was successful or not because there is no crash to notice and debug.

    So in conclusion while I’m sure Google’s security team is good, what you’ve described here doesn’t necessarily make it so, though I guess it probably does make them unique.

    Comment by kuza55 — 5/3/2008 @ 11:20 pm

  3. They’re writing their own authentication and authorization libraries, not their own encryption algorithms. Do you know of a place where a company is supposed to go to copy and paste these types of libraries? Are you suggesting that everyone who’s doing it is doing it the same? This isn’t encryption; it’s not the same.

    Comment by Daniel Miessler — 5/3/2008 @ 11:24 pm

  4. I don’t know of them (I audit code, I try to avoid writing it), but my point was merely that it’s not inherently a good idea; if there is nowhere that these kind of libraries exist, then the discussion of the fact is irrelevant because they have no other choice, but if there is then it’s merely a trade-off rather than something to be held up as something people should be doing.

    Comment by kuza55 — 5/4/2008 @ 7:39 pm

RSS Feed For This Post...
This Post's TrackBack URI

Leave a Comment...