DevOpsSec by Nick Galbreath at DevOps Days Austin
#DevOpsDays Notes from Nick Galbreath’s (@ngalbreath) talk on DevOpsSec at DevOps Days Austin.
- Kicks off with “Trust but Verify” which is a saying I use regularly.
- Nick, also scopes the talk to AppSec for the audience.
- Ops and Security have commonalities, both have latent problems: Ops has failure that has yet to happen, Security has unexploited vulnerabilities.
- Also, both Ops and Security have a “say no” reputation
- Also, MTTR is for security as well as ops.
- Blending the cultures of DevOps and Security, you have to think about how fast can you deploy and build your security stuff: firewall, VPN, DB, schema changes, apps, app patches… Deploy cant be limited to just your app, it has to be everything in the environment.
- Nick also brought up deployinator and its impact at Etsy. [personal note that I need to do a full out post on this] The usage of deployinator and the culture that brings with it, leads Nick to the following:
- “Being able to deploy quickly is my #1 security feature”
- Nick got approval to hire some extra firemen (aka security guys) to sit around waiting for fires… His response was that he is more worried about the house burning down without knowing. How do we catch the fires before they get huge? Firemen are useless when the house is gone.
- Security will care about events that Ops won’t notice and Devs wont test. SQL injection is a perfect example because a couple of SQL queries will dump your schema, db, … all of it. Ops alerts wont fire and likely your dev team didnt test for it.
- This leads Nick to talk about Attack Driven Testing (Login errors, Server errors, core dumps, CSRF Failures, XSS, Password failures)
- We should use assert to positively verify and test our system/code. (Ports, processes, users, …) [My Note: I think tying with BDD (cucumber) would be sweet for this and I am doing a talk on Rugged DevOps shortly about this.]
- Another rule at Etsy is to not give your customers a virus. They use their continuous integration environment to run AV on the code using ClamAV.