continuous security testing - devseccon

21
LONDON 2015 Join the conversation #devseccon Continuous Security Testing Stephen de Vries

Upload: stephen-de-vries

Post on 14-Apr-2017

1.493 views

Category:

Software


3 download

TRANSCRIPT

Page 1: Continuous Security Testing - DevSecCon

LONDON 2015Join the conversation #devseccon

Continuous Security Testing

Stephen de Vries

Page 2: Continuous Security Testing - DevSecCon

About Me

Founder and CTO Continuum Security 70% Developer / 20% Security Analyst Involved in OWASP since 2004 Created BDD-Security framework @stephendv

Page 3: Continuous Security Testing - DevSecCon

Security Testing

• Performed after build • Outsourced to external experts • Process is opaque to dev/ops

Unit/Integration/Acceptance Testing

• Performed during build • Owned by dev/test • Tests visible to the team

Page 4: Continuous Security Testing - DevSecCon

Design Build Unit Tests

Integration Tests

Acceptance Tests Deploy

Development Pre-prod Production

Agile

• Short iterative cycles • Extensive automated testing • Low/zero cost to test • Tests can replace documentation

Page 5: Continuous Security Testing - DevSecCon

Design Build Unit Tests

Integration Tests

Acceptance Tests Deploy

Development Pre-prod Production

Continuous Delivery

Automated acceptance tests

Page 6: Continuous Security Testing - DevSecCon

Design Build Unit Tests

Integration Tests

Acceptance Tests Deploy

Development Pre-prod Production

Continuous Delivery into Production

• Etsy: 50+ deploys per day • Gov.uk: 10+ deploys per day • Amazon: 300+ per hour

Security Tests?

Page 7: Continuous Security Testing - DevSecCon

• Everyone is responsible for

• Move testing closer to the code

• Continuous automated testing

quality

quality

security

securitysecurity

^

Page 8: Continuous Security Testing - DevSecCon

BDD: Behaviour Driven Development

Page 9: Continuous Security Testing - DevSecCon

BDD: Behaviour Driven Development

Page 10: Continuous Security Testing - DevSecCon

https://github.com/continuumsecurity/bdd-security

JBehave +

OWASP ZAP + Nessus + Internal security tools + Pre-written baseline security specifications

Selenium/WebDriver +

Page 11: Continuous Security Testing - DevSecCon
Page 12: Continuous Security Testing - DevSecCon

HTTP/S Proxy

Manual Application Security Testing with OWASP ZAP

Page 13: Continuous Security Testing - DevSecCon

HTTP/S Proxy

Manual Application Security Testing with OWASP ZAPAutomated

^

BDD-Security

Page 14: Continuous Security Testing - DevSecCon
Page 15: Continuous Security Testing - DevSecCon

Demo https://vimeo.com/89848072

Page 16: Continuous Security Testing - DevSecCon

Who owns the security tests?

Option 1: Security Team

• Low cost test runs • Slower feedback to dev • Poor collaboration • Lack of ownership by DevOps

Page 17: Continuous Security Testing - DevSecCon

Design Build Integration TestsUnit Tests

Acceptance Tests

Deploy

Development Pre-prod Production

Semi-SecDevOps: Parallel tests

Manual Security Tests

Auto. Security Tests

Page 18: Continuous Security Testing - DevSecCon

Who owns the security tests?

Option 2: DevOps team with oversight by Security

• Better collaboration • Sense of ownership of security • Good stepping stone to…

SecDev

Ops

Option 3: Sec+Dev+Ops in a cross-functional team

• Security testing is our problem • We have the tools and skills to manage

it

Page 19: Continuous Security Testing - DevSecCon

DesignAuto. Security Tests

BuildIntegration TestsUnit

TestsAcceptance

TestsDeploy

Development Pre-prod Production

SecDevOps: Inline blocking tests

Manual Security Tests

Page 20: Continuous Security Testing - DevSecCon

Related Tools

• Mittn (Python + Burp Intruder) https://github.com/F-Secure/mittn

• ZAP-JUnit (Java) https://github.com/continuumsecurity/zap-webdriver

• Guantlet (Ruby) http://gauntlt.org/

• OWASP ZAP Jenkins plugin https://wiki.jenkins-ci.org/display/JENKINS/Zapper+Plugin

Page 21: Continuous Security Testing - DevSecCon

LONDON 2015Join the conversation #devseccon

Thank you!

www.continuumsecurity.net

@continuumsecure @stephendv