40 50 60 70 80 90 100 Jan FebMarAprMayJun Jul AugSep OctNovDec Jan FebMarAprMayJun Jul AugSep OctNovDec Jan FebMarAprMayJun Jul AugSep OctNovDec SECURITY LEVEL - CURRENT Security Level - Current Audit coming up ! Audit coming up ! THE CLASSIC “SECURITY” MODEL
80 90 100 Jan FebMarAprMayJun Jul AugSep OctNovDec Jan FebMarAprMayJun Jul AugSep OctNovDec Jan FebMarAprMayJun Jul AugSep OctNovDec SECURITY LEVEL - CURRENT Security Level - Current Audit coming up ! Audit coming up ! THE CLASSIC “SECURITY” MODEL ISO 27001 COBIT SOX PCI AUTHORITIES ETC.
and social well-being, and not merely the absence of disease or infirmity.” World Health Organization, 1948 #RUGGED-1 @RENEVO THIS WAS ALL VERY SECURE! Unbreachable walls Indestructible Machines Watchful security guards
GETTING IN…ACCEPT THAT. NUMBER ONE, YOU'RE IN THE FIGHT, WHETHER YOU THOUGHT YOU WERE OR NOT. NUMBER TWO, YOU ALMOST CERTAINLY ARE PENETRATED. WE NEED TO SHIFT FROM PREVENT TO ASSUME BREACH! ” Michael Hayden Former Director of NSA & CIA BETTER CHEAPER FASTER
80 90 100 Jan FebMarAprMayJun Jul AugSep OctNovDec Jan FebMarAprMayJun Jul AugSep OctNovDec Jan FebMarAprMayJun Jul AugSep OctNovDec SECURITY LEVEL - CURRENT Security Level - Current Audit coming up ! Audit coming up ! WE NEED TO MOVE FROM MANUAL…. 0 10 20 30 40 50 60 70 80 90 100 Jan FebMarAprMayJun Jul AugSep OctNovDec Jan FebMarAprMayJun Jul AugSep OctNovDec Jan FebMarAprMayJun Jul AugSep OctNovDec Security Level - Current Desired Audit coming up ! Audit coming up ! ….TO CODE
AND COMPLIANT ALL THE WAY Identity & Access Servers & Containers Firewalls & Network Passwords & Secrets Libraries & Licenses Application Code Build & Delivery Pipelines WHAT NEEDS TO BE SECURE?
transforms into code” CODING PHASE - IDENTIFY • Bad coding practices resulting in Technical Debt • Non Deployable code • Untested code and therefore unintended consequences • Passwords/Secrets etc. exposed in code
“your” code “our” code and ensure it is safe” STORING PHASE - IDENTIFY • Everything from Coding phase ! • Unknown committers to Git Repository • Suspicious code is committed to the code repository • Code is deployed without 4-eyes principle • Code contains secrets/passwords etc.
to ensure “pusher” is known • Use Pull Requests and protect the master branch • Run Continuous Integration Builds • Enforce 4-eyes on every code change • Enforce CI checks on every code change • Static Code Analysis • CredScans • Compiling Syntax Checking • Unit Tests BUILD PHASE “In the build phase we transform the product from code and script into an immutable and versioned package”
unintentionally modified • Code can contain vulnerabilities / Technical Debt • Code can contain secrets • Code is untested/unstable • Unauthorized modification of build process • Code can use unsecure libraries • Code can use unlicensed / wrongly licensed libraries REMEMBER HEARTBLEED?
change in the release steps • Target environment accessible by multiple process • Deployed application has obvious vulnerabilities • Deployed application has unexpected consequences on availability etc. • Secrets are exposed during deployment process DEPLOY / RELEASE PHASE - PREVENT • Run Dynamic Security Tests on Infrastructure • Run Tests that require a deployed application • Monitor key metrics after deployment • Set up secure Endpoints to target environment • Secret Management in the pipeline • Build in a mechanism to separate functional from technical release • Enforce 4 eyes-principle on the release pipeline
real-world attacks Identify gaps in security story Demonstrable impact Blue Team Exercises ability to detect & respond Enhances situational awareness Measures readiness & impact AND COMPLIANCY?