z
DevSecOps
Prashanth Bharathi Prakash
z
Its an evolution..
z
The Facts
• 159,700 total cyber incidents
• 7 billion records exposed in first 3 Qtr
• $5 billion financial impact
• 93% of breaches could have been prevented
*Online Trust Alliance report 2018
z
How we manage software security?
Source: “Managing Application Security”, Security Compass, 2017.
z
Challenges of Secure Software
Development
ď‚§ Legacy Software
ď‚§ Writing Secure code is hard
ď‚§ Lack of security skills
ď‚§ Emphasis on speed
ď‚§ Lack of risk focus, audits
and controls points
ď‚§ Unsupervised collaboration
ď‚§ Wrong automated tools
ď‚§ Best practices are
insufficient!
ď‚§ Vulnerabilities in
development pipeline
z
So we do last minute security..
z
Lets define DevSecOps
 Do we need Security? Obviously! → DevSecOps
 Do we need order in configuration? Sure! → DevSecConfOps
 And do we need to automate? Ideally yes. → DevSecConfAutoOps
 Resilient? This is so important! → DevSecConfAutoResOps
 Backups! We forgot about backups! → DevSecConfAutoResBackOps
 Monitoring :-) → DevSecConfAutoResBackMonOp
 Should I stop here? No → DevSecConfAutoResBackMonNoOp
 Pigeons ate my breakfast while I was entertaining you →
DevSecConfAutoResBackMonNoPigeonsAteMyBreakfastWhileIwasEntertaining
YouOps
z
Security becomes paramount in the new world
of connected devices and must be addressed
without breaking the rapid delivery, continuous
feedback model!
z
The Guiding Principles
 Security is everybody’s business!
ď‚§ Start with the 3 Ps:
ď‚§ People
ď‚§ Process
ď‚§ Platform
ď‚§ Establish a process to enable people to succeed in using
platform to develop secure applications
ď‚§ Build on existing people, process and tools
z
The Guiding Principles
Adopt Secure-by-Design rather than Secure-by-Test approach
Enable development teams to create secure applications
Automate as much as possible
Reuse existing technology as much as possible
Heavy collaboration between all stakeholders
z
People
ď‚§ Invest in training on security skills!
ď‚§ Make learning a fun exercise!
ď‚§ Collaborate heavily (Dev Sec Ops)
ď‚§ Secure Design Decisions
ď‚§ Secure Environment Configuration
ď‚§ Secure Deployment planning
ď‚§ Secure code review
z
Platforms
ď‚§ Automate environment
creation and provisioning
ď‚§ Maintain parity between
environments: dev, QA and
production
ď‚§ Automated infrastructure
testing
ď‚§ Be Open-Source aware!
z
Process
ď‚§ Build on existing risk assessment processes / policies
ď‚§ Check the awareness of security policies in dev & ops teams
ď‚§ Create new processes only to improve existing ones
Change is a journey.. Not a sprint !!
z
How to bring-in Operations
Monitor Key KPIs
No. of applications threat modelled / scanned for vulnerabilities
No. of applications reviewed by Architects
No. of security requirements implemented
% of open source libraries analysed
Total number of critical and high vulnerabilities
Number of penetration test vulnerabilities detected
….
Monitor, Feedback, Remediate and Improve
z
DevSecOps In Action
Source
Control
Code
Review
Build
Code
Quality
Deploy Testing A/B TestDesign
Secure
Coding
Cloud-based hosting and access to application services through Cloud Platform Release
Code Analysis
(SonarQube, Coverity and
Black Duck)
Threat Modeling
(Microsoft Threat
Modeller, Secure
Tree)
Secure Coding Practices
(Source Code Warrior, in-
house trainings)
Static Application
Security Scanning
(Fortify, Veracode, Coverity)
Dynamic App Security
Scanner
(Fortify, IBM AppScan,
Chekmarx, Veracode)
DevSecOps Enabling tools
Integrated
Development
Environment (Eclipse,
X-code)
Source Code Repository
(Git / Gerrit)
Continuous Integration
(Jenkins)
Deploy
(Chef, Docker, Kubernetes)
Test
(Selenium, Grid, Cucumber)
DevOps Enabling tools
z
Reference Services for DevSecOps
ď‚§ Governance
ď‚§ Maturity Assessment
ď‚§ Process Engineering
ď‚§ Secure-By-Design
ď‚§ Security Training Curriculum
ď‚§ Threat Modeling
ď‚§ Code scanning Tool Integration
ď‚§ SAST, DAST, OSCA
ď‚§ Penetration Testing
ď‚§ DevSecOps Operationalization
ď‚§ Monitoring and Operations
ď‚§ SEIM Integration
ď‚§ Infrastructure Security
z
Summary
ď‚§ DevSecOps is cultural change encompassing people, processes
and technologies.
 There is no “one-size fits-all“ scenario.
ď‚§ New technologies and ubiquitous access across devices /
platforms makes application security the central focal point in
software development.
DevSecOps is the new mantra in S/W Dev Methodology
z
For more information
 SEI –Carnegie Mellon University
ď‚§ DevOps Blog: https://insights.sei.cmu.edu/devops
ď‚§ Webinar : https://www.sei.cmu.edu/publications/webinars/index.cfm
ď‚§ Podcast : https://www.sei.cmu.edu/publications/podcasts/index.cfm
ď‚§ DevSecOps: http://www.devsecops.org
ď‚§ Rugged Software: https://www.ruggedsoftware.org

DevSecOps : an Introduction

  • 1.
  • 2.
  • 3.
    z The Facts • 159,700total cyber incidents • 7 billion records exposed in first 3 Qtr • $5 billion financial impact • 93% of breaches could have been prevented *Online Trust Alliance report 2018
  • 4.
    z How we managesoftware security? Source: “Managing Application Security”, Security Compass, 2017.
  • 5.
    z Challenges of SecureSoftware Development ď‚§ Legacy Software ď‚§ Writing Secure code is hard ď‚§ Lack of security skills ď‚§ Emphasis on speed ď‚§ Lack of risk focus, audits and controls points ď‚§ Unsupervised collaboration ď‚§ Wrong automated tools ď‚§ Best practices are insufficient! ď‚§ Vulnerabilities in development pipeline
  • 6.
    z So we dolast minute security..
  • 7.
    z Lets define DevSecOps Do we need Security? Obviously! → DevSecOps  Do we need order in configuration? Sure! → DevSecConfOps  And do we need to automate? Ideally yes. → DevSecConfAutoOps  Resilient? This is so important! → DevSecConfAutoResOps  Backups! We forgot about backups! → DevSecConfAutoResBackOps  Monitoring :-) → DevSecConfAutoResBackMonOp  Should I stop here? No → DevSecConfAutoResBackMonNoOp  Pigeons ate my breakfast while I was entertaining you → DevSecConfAutoResBackMonNoPigeonsAteMyBreakfastWhileIwasEntertaining YouOps
  • 8.
    z Security becomes paramountin the new world of connected devices and must be addressed without breaking the rapid delivery, continuous feedback model!
  • 9.
    z The Guiding Principles Security is everybody’s business!  Start with the 3 Ps:  People  Process  Platform  Establish a process to enable people to succeed in using platform to develop secure applications  Build on existing people, process and tools
  • 10.
    z The Guiding Principles AdoptSecure-by-Design rather than Secure-by-Test approach Enable development teams to create secure applications Automate as much as possible Reuse existing technology as much as possible Heavy collaboration between all stakeholders
  • 11.
    z People ď‚§ Invest intraining on security skills! ď‚§ Make learning a fun exercise! ď‚§ Collaborate heavily (Dev Sec Ops) ď‚§ Secure Design Decisions ď‚§ Secure Environment Configuration ď‚§ Secure Deployment planning ď‚§ Secure code review
  • 12.
    z Platforms ď‚§ Automate environment creationand provisioning ď‚§ Maintain parity between environments: dev, QA and production ď‚§ Automated infrastructure testing ď‚§ Be Open-Source aware!
  • 13.
    z Process ď‚§ Build onexisting risk assessment processes / policies ď‚§ Check the awareness of security policies in dev & ops teams ď‚§ Create new processes only to improve existing ones Change is a journey.. Not a sprint !!
  • 14.
    z How to bring-inOperations Monitor Key KPIs No. of applications threat modelled / scanned for vulnerabilities No. of applications reviewed by Architects No. of security requirements implemented % of open source libraries analysed Total number of critical and high vulnerabilities Number of penetration test vulnerabilities detected …. Monitor, Feedback, Remediate and Improve
  • 15.
    z DevSecOps In Action Source Control Code Review Build Code Quality DeployTesting A/B TestDesign Secure Coding Cloud-based hosting and access to application services through Cloud Platform Release Code Analysis (SonarQube, Coverity and Black Duck) Threat Modeling (Microsoft Threat Modeller, Secure Tree) Secure Coding Practices (Source Code Warrior, in- house trainings) Static Application Security Scanning (Fortify, Veracode, Coverity) Dynamic App Security Scanner (Fortify, IBM AppScan, Chekmarx, Veracode) DevSecOps Enabling tools Integrated Development Environment (Eclipse, X-code) Source Code Repository (Git / Gerrit) Continuous Integration (Jenkins) Deploy (Chef, Docker, Kubernetes) Test (Selenium, Grid, Cucumber) DevOps Enabling tools
  • 16.
    z Reference Services forDevSecOps ď‚§ Governance ď‚§ Maturity Assessment ď‚§ Process Engineering ď‚§ Secure-By-Design ď‚§ Security Training Curriculum ď‚§ Threat Modeling ď‚§ Code scanning Tool Integration ď‚§ SAST, DAST, OSCA ď‚§ Penetration Testing ď‚§ DevSecOps Operationalization ď‚§ Monitoring and Operations ď‚§ SEIM Integration ď‚§ Infrastructure Security
  • 17.
    z Summary  DevSecOps iscultural change encompassing people, processes and technologies.  There is no “one-size fits-all“ scenario.  New technologies and ubiquitous access across devices / platforms makes application security the central focal point in software development. DevSecOps is the new mantra in S/W Dev Methodology
  • 18.
    z For more information SEI –Carnegie Mellon University  DevOps Blog: https://insights.sei.cmu.edu/devops  Webinar : https://www.sei.cmu.edu/publications/webinars/index.cfm  Podcast : https://www.sei.cmu.edu/publications/podcasts/index.cfm  DevSecOps: http://www.devsecops.org  Rugged Software: https://www.ruggedsoftware.org

Editor's Notes

  • #8 Placing Sec between Dev and Ops is the ideal way to show that one doesn't understand anything about sorting apples and oranges.
  • #17 DevSecOps Operationalization Monitoring and Operations SEIM Integration Infrastructure Security