Building a Modern Security Engineering Team zane@signalsciences.com - - PowerPoint PPT Presentation

building a modern security engineering team
SMART_READER_LITE
LIVE PREVIEW

Building a Modern Security Engineering Team zane@signalsciences.com - - PowerPoint PPT Presentation

Building a Modern Security Engineering Team zane@signalsciences.com @zanelackey Who is this guy anyway? Built and led the Etsy Security Team Spoiler alert: what this presentation is about Co-founded Signal Sciences This talk is


slide-1
SLIDE 1

Building a Modern Security Engineering Team

zane@signalsciences.com @zanelackey

slide-2
SLIDE 2

Who is this guy anyway?

  • Built and led the Etsy Security Team

– Spoiler alert: what this presentation is about

  • Co-founded Signal Sciences
slide-3
SLIDE 3

This talk is about lessons learned being at the forefront of the shift to agile/continuous deployment/DevOps

slide-4
SLIDE 4

For security teams, the world has changed in fundamental ways:

– Code deployment is now near-instantaneous

slide-5
SLIDE 5

For security teams, the world has changed in fundamental ways:

– Code deployment is now near-instantaneous – Merging of development and operations means more people with production access

slide-6
SLIDE 6

For security teams, the world has changed in fundamental ways:

– Code deployment is now near-instantaneous – Merging of development and operations means more people with production access – Cost of attack has significantly dropped

slide-7
SLIDE 7

Near-instantaneous deployment?

slide-8
SLIDE 8

An example: Etsy pushes to production 50 times a day on average

slide-9
SLIDE 9

Constant iteration in production via feature flags, ramp ups, A/B testing

slide-10
SLIDE 10

But doesn’t the rapid rate of change mean things are less secure?!

slide-11
SLIDE 11

Actually, the opposite is true

slide-12
SLIDE 12

They key to realize is vulnerabilities occur in all development methodologies …But there’s no such thing as an out-of-band patch in continuous deployment

slide-13
SLIDE 13

They key to realize is vulnerabilities occur in all development methodologies …But there’s no such thing as an out-of-band patch in continuous deployment

slide-14
SLIDE 14

Compared to: “We’ll rush that security fix. It will go out … in about 6 weeks.”

  • Former vendor at Etsy
slide-15
SLIDE 15

What makes continuous deployment safe?

slide-16
SLIDE 16

What makes continuous deployment safe? Visibility

slide-17
SLIDE 17
slide-18
SLIDE 18
slide-19
SLIDE 19
slide-20
SLIDE 20

Source: http://www.slideshare.net/mikebrittain/advanced-topics-in-continuous-deployment

slide-21
SLIDE 21

The same hard lessons are slowly shifting to security

slide-22
SLIDE 22

Ex: Which of these is a quicker way to spot an attack?

slide-23
SLIDE 23
slide-24
SLIDE 24
slide-25
SLIDE 25

Surface security info for everyone, not just the security team

slide-26
SLIDE 26
slide-27
SLIDE 27

“Don’t treat security as a binary event”

  • @ngalbreath
slide-28
SLIDE 28

Building a rad culture

*Mullets sold separately

slide-29
SLIDE 29

In the shift to continuous deployment, speed increases by removing organizational blockers

slide-30
SLIDE 30

Trying to make security a blocker means you get routed around

slide-31
SLIDE 31

Instead, the focus becomes on incentivizing teams to reach out to security

slide-32
SLIDE 32

Keys to incentivizing conversation:

– Don’t be a jerk. This should be obvious, but empathy needs to be explicitly set as a core part of your teams culture.

slide-33
SLIDE 33

Keys to incentivizing conversation:

– Don’t be a jerk. This should be obvious, but empathy needs to be explicitly set as a core part of your teams culture. – Make realistic tradeoffs. Don’t fall in to the trap

  • f thinking every issue is critical.
  • Ex: Letting low risk issues ship with a reasonable

remediation window buys you credibility for when things actually do need to be addressed immediately.

slide-34
SLIDE 34

Keys to incentivizing conversation:

– Coherently explain impact. “This would allow all

  • ur user data to be compromised if the attacker did

X & Y” paints a clear picture, where “The input validation in this function is weak” does not.

slide-35
SLIDE 35

Keys to incentivizing conversation:

– Coherently explain impact. “This would allow all

  • ur user data to be compromised if the attacker did

X & Y” paints a clear picture, where “The input validation in this function is weak” does not. – Reward communication with security team. T- Shirts, gift cards, and high fives all work (shockingly) well.

slide-36
SLIDE 36

Keys to incentivizing conversation:

– Take the false positive hit yourself. Don’t send unverified issues to dev and ops teams. When issues come in, have the secteam verify and make first attempt at patch. – Scale via team leads. Build relationships with technical leads from other teams so they make security part of their teams culture.

slide-37
SLIDE 37

Keys to incentivizing conversation:

– Take the false positive hit yourself. Don’t send unverified issues to dev and ops teams. When issues come in, have the secteam verify and make first attempt at patch. – Scale via team leads. Build relationships with technical leads from other teams so they make security part of their teams culture.

slide-38
SLIDE 38

Access restrictions

slide-39
SLIDE 39

Startups begin with a simple access control policy: Everyone can access everything

slide-40
SLIDE 40

As organization grow there will be more pressure to institute access policies

slide-41
SLIDE 41

The key to remember is don’t take away capabilities

slide-42
SLIDE 42

Methodology:

  • 1. Figure out what capability is needed
  • 2. Build an alternate way to perform the needed

function in a safe way

  • 3. Transition the organization over to the safe

way

  • 4. Alert on any usage of the old unsafe way
slide-43
SLIDE 43

Methodology:

  • 1. Figure out what capability is needed
  • 2. Build an alternate way to perform the needed

function in a safe way

  • 3. Transition the organization over to the safe

way

  • 4. Alert on any usage of the old unsafe way
slide-44
SLIDE 44

Methodology:

  • 1. Figure out what capability is needed
  • 2. Build an alternate way to perform the needed

function in a safe way

  • 3. Transition the organization over to the safe

way

  • 4. Alert on any usage of the old unsafe way
slide-45
SLIDE 45

Methodology:

  • 1. Figure out what capability is needed
  • 2. Build an alternate way to perform the needed

function in a safe way

  • 3. Transition the organization over to the safe

way

  • 4. Alert on any usage of the old unsafe way
slide-46
SLIDE 46

EX: SSH access to production systems

slide-47
SLIDE 47

Security policy goal: Eliminate unneeded access to production systems

– Why do developers do it? Ex: To view error logs – Build alternate approach: Send the logs to central logging service (ex: elasticsearch, splunk, etc) – Publicize the new tooling to the organization – After majority of transition, alert on any logins to production systems by non-sysops

slide-48
SLIDE 48

Security policy goal: Eliminate unneeded access to production systems

– Why do developers do it? Ex: To view error logs – Build alternate approach: Send the logs to central logging service (ex: logstash, splunk, etc) – Publicize the new tooling to the organization – After majority of transition, alert on any logins to production systems by non-sysops

slide-49
SLIDE 49

Security policy goal: Eliminate unneeded access to production systems

– Why do developers do it? Ex: To view error logs – Build alternate approach: Send the logs to central logging service (ex: logstash, splunk, etc) – Publicize the new tooling to the organization – After majority of transition, alert on any logins to production systems by non-sysops

slide-50
SLIDE 50

Security policy goal: Eliminate unneeded access to production systems

– Why do developers do it? Ex: To view error logs – Build alternate approach: Send the logs to central logging service (ex: logstash, splunk, etc) – Publicize the new tooling to the organization – After majority of transition, alert on any logins to production systems by non-sysops

slide-51
SLIDE 51

Increasing attacker cost

slide-52
SLIDE 52

Bug bounties/disclosure programs are tremendously useful. If you’re not working towards launching one, strongly consider it.

slide-53
SLIDE 53

Common concerns about launching a bounty:

  • 1. Budgetary concerns. Money is almost never the

main motivation for researchers, you can launch a bounty with just a hall of fame and still get great submissions.

  • 1. Risk of inviting attacks. You’re already getting

attacked continuously, you’re just not getting the results.

slide-54
SLIDE 54

Common concerns about launching a bounty:

  • 1. Budgetary concerns. Money is rarely the main

motivation for participants, you can launch a bounty with just a hall of fame and still get great submissions.

  • 1. Risk of inviting attacks. You’re already getting

attacked continuously, you’re just not getting the results.

slide-55
SLIDE 55

Common concerns about launching a bounty:

  • 1. Budgetary concerns. Money is rarely the main

motivation for participants, you can launch a bounty with just a hall of fame and still get great submissions.

  • 1. Risk of inviting attacks. It’s the Internet. You’re

already getting pentested continuously, you’re just not receiving the report.

slide-56
SLIDE 56

The ultimate goals of a bug bounty are threefold:

  • 1. Incentivize people to report issues to you in the

first place

  • 2. Drive up cost of vulnerability discovery and

exploitation for attackers

  • 3. Provide an external validation of if your security

program is working (or not)

slide-57
SLIDE 57

The ultimate goals of a bug bounty are threefold:

  • 1. Incentivize people to report issues to you in the

first place

  • 2. Drive up cost of vulnerability discovery and

exploitation for attackers

  • 3. Provide an external validation of if your security

program is working (or not)

slide-58
SLIDE 58

The ultimate goals of a bug bounty are threefold:

  • 1. Incentivize people to report issues to you in the

first place

  • 2. Drive up cost of vulnerability discovery and

exploitation for attackers

  • 3. Provide an external validation of where your

security program is working (and where it’s not)

slide-59
SLIDE 59

Before you launch, record what vulnerability classes you expect to see and what you don’t. Compare this against the issues actually reported.

slide-60
SLIDE 60

Before you launch, record what vulnerability classes you expect to see and what you don’t. Compare this against the issues actually reported.

slide-61
SLIDE 61

Keep metrics on:

– Number of bugs reported and severities – Time to remediation of reported issues You want both of these metrics to trend down over time

slide-62
SLIDE 62

Practical considerations:

– Inform all teams before bounty launch, especially non-engineering teams

  • Ex: Customer Support

– Attacks will start almost immediately For Etsy bug bounty launch, time from announcement to first attack: 13min

slide-63
SLIDE 63

Practical considerations:

– Inform all teams before bounty launch, especially non-engineering teams

  • Ex: Customer Support

– Attacks will start almost immediately For Etsy bug bounty launch, time from announcement to first attack: 13min

slide-64
SLIDE 64

Practical considerations:

– Your first 2-3 weeks will be intense. Have as many people as you can dedicated to triage and response

slide-65
SLIDE 65

Practical considerations:

– Operationally review any helper systems for scaling problems beforehand

  • When 10-100x traffic hits helper systems your security

team uses, what falls over?

– Money almost never the overriding factor, hall of fame is – Researchers are generally great to interact with

slide-66
SLIDE 66

Practical considerations:

– Operationally review any helper systems for scaling problems beforehand

  • When 10-100x traffic hits helper systems your security

team uses, what falls over?

– Money is almost never the main motivation for bounty participants, hall of fame credit is – Researchers are generally great to interact with

slide-67
SLIDE 67

Practical considerations:

– Operationally review any helper systems for scaling problems beforehand.

  • When 10-100x traffic hits helper systems your security

team uses, what falls over?

– Money is almost never the main motivation for bounty participants, hall of fame credit is – Key to great researcher interaction is frequent and transparent communication

slide-68
SLIDE 68

TL;DR

(The section formerly known as “Conclusions”)

slide-69
SLIDE 69
  • Adapt security team culture to DevOps and

continuous deployment by:

– Surfacing security monitoring and metrics – Incentivize discussions with the security team – When creating policy, don’t take away capabilities

  • Drive up attacker cost through bug bounty

programs, countering phishing, and running realistic attack simulations

slide-70
SLIDE 70

Thanks!

zane@signalsciences.com @zanelackey