DevOps
+
Network Security
=
DevSecOps
By Jeremiah Tillman
A Well Rounded DevOps Team
QA
Testing
Operatio
Develop
Continuous Integration (CI)
๏‚šMerging the development branches
together (master branch)
๏‚šMust successfully pass a series of tests
Continuous Delivery (CD)
๏‚šDeploying small changes more often
๏‚šAutomated delivery of updates
Deployment Pipeline
Stages Build & Automate CI Test Automation Deploy Automation
Components Visibility Feedback Continuously Deploy
DevSecOps Manifesto
๏‚š Leaning in over Always Saying โ€œNoโ€
๏‚š Data & Security Science over Fear,
Uncertainty and Doubt
๏‚š Open Contribution & Collaboration over
Security-Only Requirements
๏‚š Consumable Security Services with APIs over
Mandated Security Controls & Paperwork
๏‚š Business Driven Security Scores over Rubber
Stamp Security
๏‚š Red & Blue Team Exploit Testing over Relying
on Scans & Theoretical Vulnerabilities
๏‚š 24x7 Proactive Security Monitoring over
Reacting after being Informed of an Incident
๏‚š Shared Threat Intelligence over Keeping Info
to Ourselves
๏‚š Compliance Operations over Clipboards &
Checklists
DevSecOps Integration
๏‚š 1. Prior to code being committed
๏‚š SAST that be run locally or integrated into an IDE
๏‚š 2. During CI
๏‚š Security checks can be issued via the jobs server
๏‚š Unit testing, abuse cases, SAST, and software component analysis (supply chain hygiene)
๏‚š 3. After a successful build
๏‚š Automatically and securely configure and provision servers
๏‚š Configuration management, DAST, security smoke tests
๏‚š 4. Post deployment
๏‚š Automated runtime asserts and compliance checks
๏‚š Automated correction
๏‚š Production monitoring/feedback
Greenfield vs. Legacy
๏‚š Greenfield Environment /Applications
๏‚š Do it right from the start!
๏‚š Legacy Applications
๏‚š Start with vulnerability & risk assessment
๏‚š Apply patches to remediate all vulnerabilities that donโ€™t require major design changes
๏‚š Integrate automated security testing in future releases when possible
๏‚š Rebuilding / Sunsetting
๏‚š Consider breaking out individual components one at a time, where possible, instead of a hard cutover
๏‚š New system should be following secure architecture principles and integrate security throughout the
SDLC

DevOps

  • 1.
  • 2.
    A Well RoundedDevOps Team QA Testing Operatio Develop
  • 3.
    Continuous Integration (CI) ๏‚šMergingthe development branches together (master branch) ๏‚šMust successfully pass a series of tests
  • 4.
    Continuous Delivery (CD) ๏‚šDeployingsmall changes more often ๏‚šAutomated delivery of updates
  • 5.
    Deployment Pipeline Stages Build& Automate CI Test Automation Deploy Automation Components Visibility Feedback Continuously Deploy
  • 6.
    DevSecOps Manifesto ๏‚š Leaningin over Always Saying โ€œNoโ€ ๏‚š Data & Security Science over Fear, Uncertainty and Doubt ๏‚š Open Contribution & Collaboration over Security-Only Requirements ๏‚š Consumable Security Services with APIs over Mandated Security Controls & Paperwork ๏‚š Business Driven Security Scores over Rubber Stamp Security ๏‚š Red & Blue Team Exploit Testing over Relying on Scans & Theoretical Vulnerabilities ๏‚š 24x7 Proactive Security Monitoring over Reacting after being Informed of an Incident ๏‚š Shared Threat Intelligence over Keeping Info to Ourselves ๏‚š Compliance Operations over Clipboards & Checklists
  • 7.
    DevSecOps Integration ๏‚š 1.Prior to code being committed ๏‚š SAST that be run locally or integrated into an IDE ๏‚š 2. During CI ๏‚š Security checks can be issued via the jobs server ๏‚š Unit testing, abuse cases, SAST, and software component analysis (supply chain hygiene) ๏‚š 3. After a successful build ๏‚š Automatically and securely configure and provision servers ๏‚š Configuration management, DAST, security smoke tests ๏‚š 4. Post deployment ๏‚š Automated runtime asserts and compliance checks ๏‚š Automated correction ๏‚š Production monitoring/feedback
  • 8.
    Greenfield vs. Legacy ๏‚šGreenfield Environment /Applications ๏‚š Do it right from the start! ๏‚š Legacy Applications ๏‚š Start with vulnerability & risk assessment ๏‚š Apply patches to remediate all vulnerabilities that donโ€™t require major design changes ๏‚š Integrate automated security testing in future releases when possible ๏‚š Rebuilding / Sunsetting ๏‚š Consider breaking out individual components one at a time, where possible, instead of a hard cutover ๏‚š New system should be following secure architecture principles and integrate security throughout the SDLC