© 2020 Denim Group – All Rights Reserved
Building a world where technology is trusted.
Dan Cornell | CTO
AppSec Fast And Slow
Your DevSecOps CI/CD Pipeline
Isn’t an SSA Program
August 18, 2020
© 2020 Denim Group – All Rights Reserved
1
Advisory
Services
Assessment
Services
Remediation
Services
Vulnerability Resolution
Platform
Building a world where technology is trusted
How we can help:
Denim Group is solely focused on helping build
resilient software that will withstand attacks.
• Since 2001, helping secure software
• Development background
• Tools + services model
© 2020 Denim Group – All Rights Reserved
Agenda
• Cool Kids: Moving FAST
• SSA Programs
• Fast and Slow
• OWASP SAMM Walkthrough
• Conclusions
• Questions
2
© 2020 Denim Group – All Rights Reserved
Cool Kids: Moving FAST
© 2020 Denim Group – All Rights Reserved
Security in the DevOps Pipeline
Organizations like Etsy and Netflix are doing amazing
things to secure application via their DevOps pipelines
© 2020 Denim Group – All Rights Reserved
All About the Pipeline
• Security checks in the pipeline
• Application
• Infrastructure
• Cloud
• Automation is king
5
© 2020 Denim Group – All Rights Reserved
But What Doesn’t Fit Into a Pipeline?
• Dangers of DevSecOps fundamentalism
• The Pipeline Isn’t the Program
6
© 2020 Denim Group – All Rights Reserved
SSA Programs
© 2020 Denim Group – All Rights Reserved
What is Your “Why?”
• Simon Sinek TED Talk
• (If you have seen this
before, rolling your
eyes at this point is
acceptable)
• Why -> How -> What
https://www.youtube.com
/watch?v=qp0HIF3SfI4
© 2020 Denim Group – All Rights Reserved
What is an SSA Program
• SSA = Software Security Assurance
• Set of practices and activities used to reliably create,
maintain, and deploy secure software
• “We do an annual app pen test for PCI” is not an SSA
program
• Or at least probably not a very effective one
• “Here are the security checks we figured out how to stuff into
our CI/CD pipeline” is also not an SSA program
• Danger: Don’t let the pipeline become your program
• “Shifting left” isn’t bad – it just isn’t everything
9
© 2020 Denim Group – All Rights Reserved
SSA Program References
• OWASP SAMM
• BSIMM
10
© 2020 Denim Group – All Rights Reserved
OWASP SAMM
• Originally OpenSAMM from Pravir Chandra
• OWASP’s evolution/fork
• Five Business Functions
• Three Security Practices for each
• Two Streams for each
https://owaspsamm.org/
11
© 2020 Denim Group – All Rights Reserved
OWASP SAMM
12
© 2020 Denim Group – All Rights Reserved
BSIMM
• Originally from Cigital (now Synopsys)
• Based on data collection from participating
organizations
• Four domains
• Three Practices for each
• Total of 119 Activities
https://www.bsimm.com/
13
© 2020 Denim Group – All Rights Reserved
BSIMM
14
© 2020 Denim Group – All Rights Reserved
OWASP SAMM Walkthrough
• We will use OWASP SAMM for the
purposes of this webinar
• More prescriptive
• Less vendor-centric
• If you are using BSIMM it is pretty trivial to
translate
15
© 2020 Denim Group – All Rights Reserved
If You Are Just Starting Out
• Assessing your program using either tool is less-than-ideal
• Better:
• Define your scope/mandate
• Do some testing
• Run some vulnerabilities through resolution
• Proceed from there
https://www.denimgroup.com/contact-us/
16
© 2020 Denim Group – All Rights Reserved
Fast and Slow
© 2020 Denim Group – All Rights Reserved
Thinking Fast and Slow
18
• Written by Daniel Kahneman
• System 1 (Fast): Instinctive,
emotional
• System 2 (Slow): Deliberative,
logical
• (For AppSec purposes, use
configuration/customization to minimize the
“emotional”)
https://www.amazon.com/Thinking-Fast-Slow-Daniel-
Kahneman/dp/0141033576/ref=asc_df_0141033576/
© 2020 Denim Group – All Rights Reserved
An Aside: What Horrible Names!
• System 1 and
System 2 ???
• Almost as bad as
Type I and Type II
Errors
19
https://www.simplypsychology.org/type_I_and_type_II_errors.html
© 2020 Denim Group – All Rights Reserved
Another Aside: The Undoing Project
• Michael Lewis book on the
research of and the
collaboration between Daniel
Kahneman and Amos
Tversky
https://www.amazon.com/Undoing-Project-Friendship-
Changed-Minds/dp/0393354776/ref=sr_1_2
20
© 2020 Denim Group – All Rights Reserved
Fast and Slow
In a culture like
DevSecOps that is so
focused on FAST, what
is still critical, but has to
go SLOW?
21
© 2020 Denim Group – All Rights Reserved
What Do We Mean By FAST?
Blog post: Power,
Responsibility, and
Security’s Role in
the DevOps
Pipeline
https://www.denimgroup.com/resources/blog/2019/02/powe
r-responsibility-and-securitys-role-in-the-devops-pipeline/
22
© 2020 Denim Group – All Rights Reserved
To Be DevSecOps FAST
1. Available quickly
2. High-value
3. Low (NO) false positives (no Type I errors)
• Limited time budget
• Developers have to care
• Don’t waste developers’ time
23
© 2020 Denim Group – All Rights Reserved
OWASP SAMM Walkthrough
© 2020 Denim Group – All Rights Reserved
Governance
• Strategy and Metrics
• Policy and Compliance
• Education and Guidance
25
© 2020 Denim Group – All Rights Reserved
Strategy and Metrics
• You can’t automate strategy
• SLOW
• You can use CI/CD to feed your metrics
• Kinda FAST
• Metrics in general: very automatable
26
© 2020 Denim Group – All Rights Reserved
Blog Posts on ThreadFix and Metrics
• Value of secure coding training for your organization
• https://threadfix.it/resources/applied-threadfix-fire-bullets-then-cannonballs-
appsec-edition/
• xAST scanner rollouts
• https://threadfix.it/resources/applied-threadfix-fire-bullets-then-cannonballs-part-2/
• Optimizing training investments
• https://threadfix.it/resources/applied-threadfix-getting-the-most-out-of-your-training-investment/
• Automating vulnerability exception reporting
• https://threadfix.it/resources/applied-threadfix-automated-vulnerability-exception-reporting/
27
© 2020 Denim Group – All Rights Reserved
Policy and Compliance
• You can’t automate the creation of your policies
• SLOW
• You can use CI/CD to automate some policy
checks
• CI/CD pass/fail
• Be careful of limitations – this is a helper, not
definitive
• Kinda FAST
28
© 2020 Denim Group – All Rights Reserved
CI/CD Policy Configuration
• Testing
• Synchronous
• Asynchronous
• Decision
• Reporting
29
Blog Post: Effective Application
Security Testing in DevOps Pipelines
http://www.denimgroup.com/blog/2016/12/effective-application-security-testing-in-devops-pipelines/
https://www.denimgroup.com/resources/effective-application-security-for-devops/
© 2020 Denim Group – All Rights Reserved
Automated Compliance for DoD
• Continuous Authority
to Operate (ATO) with
ThreadFix – Bringing
Commercial Insights
to the DoD
https://threadfix.it/resources/continuous-
authority-to-operate-with-threadfix/
© 2020 Denim Group – All Rights Reserved
Education and Guidance
• Instructor-led training: SLOW
• eLearning
• Monolithic: SLOW
• Targeted: Not FAST, but increasingly interesting
• Security Champions
• Common responsibility is to configure security
testing in CI/CD environments and tune scanning
• They make things FASTer
31
© 2020 Denim Group – All Rights Reserved
Security Champions
Webinar: Security
Champions: Pushing
Security Expertise to
the Edges of Your
Organization
https://www.denimgroup.com/resources/webinar/security-champions-
pushing-security-expertise-to-the-edges-of-your-organization/
32
© 2020 Denim Group – All Rights Reserved
Design
• Threat Assessment
• Security Requirements
• Security Architecture
33
© 2020 Denim Group – All Rights Reserved
Threat Assessment
• Determining your general application threat profiles
can’t be automated
• SLOW
• Threat Modeling also requires a lot of manual work
• Some new interesting automation, but nothing in CI/CD
pipelines
• Some vendors providing tooling support
• Can allow for manual incremental changes – not CI/CD, but fits
better into Agile environments
• SLOW
34
© 2020 Denim Group – All Rights Reserved
Security Requirements
• Determining your requirements is largely
manual
• Some tooling support is available
• SLOW
• Validating if they are met is largely manual,
but we will look at this later during the
Verification/Requirements-Driven Testing
activity
35
© 2020 Denim Group – All Rights Reserved
Secure Architecture
• Determining your architectural security
requirements is largely manual
• SLOW
• Validating if they are met is largely
manual, but we will look at this later during
the Verification/Architecture Assessment
activity
36
© 2020 Denim Group – All Rights Reserved
Implementation
• Secure Build
• Secure Deployment
• Defect Management
37
© 2020 Denim Group – All Rights Reserved
Secure Build
• This is really the crux of what we are discussing today
• FAST
• How can you integrate security into the build process?
• SAST/DAST/IAST
• SCA
• OWASP Dependency Check https://owasp.org/www-project-dependency-check/
• If you are even considering this you have to have a repeatable build
process
• Otherwise please log off this webinar and pick up a Jenkins for Dummies book. You
can pick this back up later.
• Software Bill of Materials (SBOM)
• OWASP Dependency Track https://dependencytrack.org/
38
© 2020 Denim Group – All Rights Reserved
Architectural Bill of Materials
Webinar: The As, Bs, and
Four Cs of Testing Cloud-
Native Applications
https://www.denimgroup.com/resources/webinar/the-as-bs-
and-four-cs-of-testing-cloud-native-applications/
39
© 2020 Denim Group – All Rights Reserved
Secure Deployment
• An extension of Secure Build
• Organizations tend to be a little less mature
• FAST
• Technologies like Puppet, Chef, Terraform
40
© 2020 Denim Group – All Rights Reserved
Defect Management
• Subsets of this can be FAST
• But you have to tune scanners or you will run into problems
• High-value, no false positives
• ThreadFix allows for automated defect creation
• In practice, it takes a while to get to this level
• Limited coverage: only works for vulnerabilities you can find
with automation in CI/CD pipelines
• We will talk more about these testing limitations in the
Verification discussions
41
© 2020 Denim Group – All Rights Reserved
Bundling Strategies
• Turning vulnerabilities into defects
• 1:1 approach?
• More time spent administering defects than fixing
issues
• Bundling
• By vulnerability type
• By severity (more mature applications)
• Other approaches
42
© 2020 Denim Group – All Rights Reserved
Metrics and Feedback Stream
• Scanner / developer provide separation of
duties
• Scanners find vulns, developers say
they fixed them, scanners confirm they
did
• Obviously only applies to
vulnerabilities identified by automation
• ThreadFix tracking mean-time-to-
remediation (MTTR)
• Good metric for Agile/DevOps teams –
how fast can you fix?
• (Better than defects per KLoC)
• Benchmark against data from
Veracode/WhiteHat
43
© 2020 Denim Group – All Rights Reserved
Verification
• Architecture Assessment
• Requirements-driven Testing
• Security Testing
44
© 2020 Denim Group – All Rights Reserved
Architecture Assessment
• This largely has to be done manually
• SLOW
• Some architectural policies may be
checked automatically
• Cloud configuration
45
© 2020 Denim Group – All Rights Reserved
ThreadFix and Irius Risk
• Pull data from ThreadFix
into Irius Risk threat
models
https://support.iriusrisk.com/hc/en-us/articles/360021522391-
Importing-Test-Results-from-External-Tools
46
© 2020 Denim Group – All Rights Reserved
ScoutSuite
• Check configuration of
cloud environments
• Checks for:
• Open S3 buckets
• IAM configuration
https://github.com/nccgroup/ScoutSuite
47
© 2020 Denim Group – All Rights Reserved
Requirements-Driven Testing
• Control verification: largely a manual process
• SLOW
• Misuse/abuse testing:
• Fuzzing can be automated, but runtimes can extend
beyond the time budget for FAST
• Abuse case and business logic testing is manual
• DoS testing does not fit in most general pipelines
• Mostly SLOW
• Some automation and integration possible
48
© 2020 Denim Group – All Rights Reserved
ThreadFix and SD Elements
Webinar: ThreadFix and SD Elements: Unifying
Security Requirements and Vulnerability
Management for Applications
https://threadfix.it/resources/threadfix-and-sd-elements-unifying-security-
requirements-and-vulnerability-management/
49
© 2020 Denim Group – All Rights Reserved
Security Testing
• THIS is really what the discussion comes
down to
• How sufficient is the security testing you can
stuff into a CI/CD pipeline?
• OWASP SAMM has two streams:
• Scalable baseline
• Deep understanding
50
© 2020 Denim Group – All Rights Reserved
OWASP and Testing
• OWASP has traditionally had a cultural focus on
the strengths (and weaknesses) of automated
testing tools
• Consultants vs scanner vendors
• Testing Guide
• https://owasp.org/www-project-web-security-testing-guide/
• ASVS
• https://owasp.org/www-project-application-security-verification-standard/
51
© 2020 Denim Group – All Rights Reserved
Scalable Baseline Stream
• Three levels of maturity
1. Use an automated tool
2. Employ application-specific automation (tuning)
3. Integrate into the build process
• This webinar presupposes the top level of
maturity
• You did remember to tune your scanner before
you put it in the build process, right?
52
© 2020 Denim Group – All Rights Reserved
Deep Understanding Stream
• This is all manual
• Manual test high-risk components
• Perform penetration testing
• Integrate testing into the development process
• Tooling can help
• Focus efforts on diffs / new or altered functionality
53
© 2020 Denim Group – All Rights Reserved
Testing in CI/CD Pipelines
54
© 2020 Denim Group – All Rights Reserved
SAST in CI/CD
• Mostly open source linting tools
• Need for speed
• Commercial-grade tools are less prevalent
• Run SAST on diffs?
• Cross-method/class data and control flow takes time
• Cut down the rules
• Shorten run times
• Limit false positives
55
© 2020 Denim Group – All Rights Reserved
DAST in CI/CD
• Concerns about run times
• Approaches for targeted DAST
• Focus on changes in the app
56
© 2020 Denim Group – All Rights Reserved
Targeting DAST Testing
Webinar: Monitoring
Application Attack
Surface and Integrating
Security into DevOps
Pipelines
https://threadfix.it/resources/monitorin
g-application-attack-surface-and-
integrating-security-into-devops-
pipelines/
57
© 2020 Denim Group – All Rights Reserved
IAST in CI/CD
• Great!
• Typically relies on generated traffic
• Use DAST testing to generate traffic
• Use integration tests to generate traffic
58
© 2020 Denim Group – All Rights Reserved
SCA in CI/CD
• Great!
• Look at run time tradeoffs vs. velocity of
new components and new vulnerabilities
59
© 2020 Denim Group – All Rights Reserved
Operations
• Incident Management
• Environmental Management
• Operational Management
60
© 2020 Denim Group – All Rights Reserved
Incident Management
• Not in a pipeline
• Use automation for detection where
possible
• Some automation frameworks available for
response
61
© 2020 Denim Group – All Rights Reserved
Application Logging for Security
Video: Top Strategies to
Capture Security
Intelligence for
Applications
https://www.denimgroup.com/resources/article/top-strategies-to-capture-
security-intelligence-for-applications-includes-educational-video/
62
© 2020 Denim Group – All Rights Reserved
Environment Management
• Servers should be cattle, not pets
• Configuration Handling stream:
• Hopefully you have this sorted given the work you have done for
Secure Deployment
• Chef, Puppet, Terraform
• ScoutSuite
• Patching and Updating stream:
• Detection: FAST
• Actual patching: SLOW
63
© 2020 Denim Group – All Rights Reserved
Operational Management
• Data Protection stream: SLOW
• Oh, wait, your DLP solution will sort this out
for you
• Decommissioning: SLOW
64
© 2020 Denim Group – All Rights Reserved
Conclusions
© 2020 Denim Group – All Rights Reserved
What Goes in a Pipeline?
• Linting SAST
• DAST if you can target it
• IAST if you can generate meaningful traffic
• SCA if you want
66
© 2020 Denim Group – All Rights Reserved
What Likely Has to be Done Outside?
• Full, commercial-grade SAST
• Full DAST
• Manual code review
• Penetration testing
• Threat modeling
67
© 2020 Denim Group – All Rights Reserved
What Has to be Done Outside?
• Most everything else
• Strategy
• Policy
• Training
• Architecture
• Security requirements
68
© 2020 Denim Group – All Rights Reserved
Shifting Left is Awesome…
• But it is only one aspect of a far more complicated
landscape
• For testing: think coverage
• Classes of vulnerabilities
• Detection approaches
• Quality of approaches
• For everything else:
• Thing programmatically
69
© 2020 Denim Group – All Rights Reserved
Questions
© 2020 Denim Group – All Rights Reserved
Building a world where technology is trusted.
Building a world where technology is trusted.
@denimgroup
www.denimgroup.com

AppSec Fast and Slow: Your DevSecOps CI/CD Pipeline Isn’t an SSA Program

  • 1.
    © 2020 DenimGroup – All Rights Reserved Building a world where technology is trusted. Dan Cornell | CTO AppSec Fast And Slow Your DevSecOps CI/CD Pipeline Isn’t an SSA Program August 18, 2020
  • 2.
    © 2020 DenimGroup – All Rights Reserved 1 Advisory Services Assessment Services Remediation Services Vulnerability Resolution Platform Building a world where technology is trusted How we can help: Denim Group is solely focused on helping build resilient software that will withstand attacks. • Since 2001, helping secure software • Development background • Tools + services model
  • 3.
    © 2020 DenimGroup – All Rights Reserved Agenda • Cool Kids: Moving FAST • SSA Programs • Fast and Slow • OWASP SAMM Walkthrough • Conclusions • Questions 2
  • 4.
    © 2020 DenimGroup – All Rights Reserved Cool Kids: Moving FAST
  • 5.
    © 2020 DenimGroup – All Rights Reserved Security in the DevOps Pipeline Organizations like Etsy and Netflix are doing amazing things to secure application via their DevOps pipelines
  • 6.
    © 2020 DenimGroup – All Rights Reserved All About the Pipeline • Security checks in the pipeline • Application • Infrastructure • Cloud • Automation is king 5
  • 7.
    © 2020 DenimGroup – All Rights Reserved But What Doesn’t Fit Into a Pipeline? • Dangers of DevSecOps fundamentalism • The Pipeline Isn’t the Program 6
  • 8.
    © 2020 DenimGroup – All Rights Reserved SSA Programs
  • 9.
    © 2020 DenimGroup – All Rights Reserved What is Your “Why?” • Simon Sinek TED Talk • (If you have seen this before, rolling your eyes at this point is acceptable) • Why -> How -> What https://www.youtube.com /watch?v=qp0HIF3SfI4
  • 10.
    © 2020 DenimGroup – All Rights Reserved What is an SSA Program • SSA = Software Security Assurance • Set of practices and activities used to reliably create, maintain, and deploy secure software • “We do an annual app pen test for PCI” is not an SSA program • Or at least probably not a very effective one • “Here are the security checks we figured out how to stuff into our CI/CD pipeline” is also not an SSA program • Danger: Don’t let the pipeline become your program • “Shifting left” isn’t bad – it just isn’t everything 9
  • 11.
    © 2020 DenimGroup – All Rights Reserved SSA Program References • OWASP SAMM • BSIMM 10
  • 12.
    © 2020 DenimGroup – All Rights Reserved OWASP SAMM • Originally OpenSAMM from Pravir Chandra • OWASP’s evolution/fork • Five Business Functions • Three Security Practices for each • Two Streams for each https://owaspsamm.org/ 11
  • 13.
    © 2020 DenimGroup – All Rights Reserved OWASP SAMM 12
  • 14.
    © 2020 DenimGroup – All Rights Reserved BSIMM • Originally from Cigital (now Synopsys) • Based on data collection from participating organizations • Four domains • Three Practices for each • Total of 119 Activities https://www.bsimm.com/ 13
  • 15.
    © 2020 DenimGroup – All Rights Reserved BSIMM 14
  • 16.
    © 2020 DenimGroup – All Rights Reserved OWASP SAMM Walkthrough • We will use OWASP SAMM for the purposes of this webinar • More prescriptive • Less vendor-centric • If you are using BSIMM it is pretty trivial to translate 15
  • 17.
    © 2020 DenimGroup – All Rights Reserved If You Are Just Starting Out • Assessing your program using either tool is less-than-ideal • Better: • Define your scope/mandate • Do some testing • Run some vulnerabilities through resolution • Proceed from there https://www.denimgroup.com/contact-us/ 16
  • 18.
    © 2020 DenimGroup – All Rights Reserved Fast and Slow
  • 19.
    © 2020 DenimGroup – All Rights Reserved Thinking Fast and Slow 18 • Written by Daniel Kahneman • System 1 (Fast): Instinctive, emotional • System 2 (Slow): Deliberative, logical • (For AppSec purposes, use configuration/customization to minimize the “emotional”) https://www.amazon.com/Thinking-Fast-Slow-Daniel- Kahneman/dp/0141033576/ref=asc_df_0141033576/
  • 20.
    © 2020 DenimGroup – All Rights Reserved An Aside: What Horrible Names! • System 1 and System 2 ??? • Almost as bad as Type I and Type II Errors 19 https://www.simplypsychology.org/type_I_and_type_II_errors.html
  • 21.
    © 2020 DenimGroup – All Rights Reserved Another Aside: The Undoing Project • Michael Lewis book on the research of and the collaboration between Daniel Kahneman and Amos Tversky https://www.amazon.com/Undoing-Project-Friendship- Changed-Minds/dp/0393354776/ref=sr_1_2 20
  • 22.
    © 2020 DenimGroup – All Rights Reserved Fast and Slow In a culture like DevSecOps that is so focused on FAST, what is still critical, but has to go SLOW? 21
  • 23.
    © 2020 DenimGroup – All Rights Reserved What Do We Mean By FAST? Blog post: Power, Responsibility, and Security’s Role in the DevOps Pipeline https://www.denimgroup.com/resources/blog/2019/02/powe r-responsibility-and-securitys-role-in-the-devops-pipeline/ 22
  • 24.
    © 2020 DenimGroup – All Rights Reserved To Be DevSecOps FAST 1. Available quickly 2. High-value 3. Low (NO) false positives (no Type I errors) • Limited time budget • Developers have to care • Don’t waste developers’ time 23
  • 25.
    © 2020 DenimGroup – All Rights Reserved OWASP SAMM Walkthrough
  • 26.
    © 2020 DenimGroup – All Rights Reserved Governance • Strategy and Metrics • Policy and Compliance • Education and Guidance 25
  • 27.
    © 2020 DenimGroup – All Rights Reserved Strategy and Metrics • You can’t automate strategy • SLOW • You can use CI/CD to feed your metrics • Kinda FAST • Metrics in general: very automatable 26
  • 28.
    © 2020 DenimGroup – All Rights Reserved Blog Posts on ThreadFix and Metrics • Value of secure coding training for your organization • https://threadfix.it/resources/applied-threadfix-fire-bullets-then-cannonballs- appsec-edition/ • xAST scanner rollouts • https://threadfix.it/resources/applied-threadfix-fire-bullets-then-cannonballs-part-2/ • Optimizing training investments • https://threadfix.it/resources/applied-threadfix-getting-the-most-out-of-your-training-investment/ • Automating vulnerability exception reporting • https://threadfix.it/resources/applied-threadfix-automated-vulnerability-exception-reporting/ 27
  • 29.
    © 2020 DenimGroup – All Rights Reserved Policy and Compliance • You can’t automate the creation of your policies • SLOW • You can use CI/CD to automate some policy checks • CI/CD pass/fail • Be careful of limitations – this is a helper, not definitive • Kinda FAST 28
  • 30.
    © 2020 DenimGroup – All Rights Reserved CI/CD Policy Configuration • Testing • Synchronous • Asynchronous • Decision • Reporting 29 Blog Post: Effective Application Security Testing in DevOps Pipelines http://www.denimgroup.com/blog/2016/12/effective-application-security-testing-in-devops-pipelines/ https://www.denimgroup.com/resources/effective-application-security-for-devops/
  • 31.
    © 2020 DenimGroup – All Rights Reserved Automated Compliance for DoD • Continuous Authority to Operate (ATO) with ThreadFix – Bringing Commercial Insights to the DoD https://threadfix.it/resources/continuous- authority-to-operate-with-threadfix/
  • 32.
    © 2020 DenimGroup – All Rights Reserved Education and Guidance • Instructor-led training: SLOW • eLearning • Monolithic: SLOW • Targeted: Not FAST, but increasingly interesting • Security Champions • Common responsibility is to configure security testing in CI/CD environments and tune scanning • They make things FASTer 31
  • 33.
    © 2020 DenimGroup – All Rights Reserved Security Champions Webinar: Security Champions: Pushing Security Expertise to the Edges of Your Organization https://www.denimgroup.com/resources/webinar/security-champions- pushing-security-expertise-to-the-edges-of-your-organization/ 32
  • 34.
    © 2020 DenimGroup – All Rights Reserved Design • Threat Assessment • Security Requirements • Security Architecture 33
  • 35.
    © 2020 DenimGroup – All Rights Reserved Threat Assessment • Determining your general application threat profiles can’t be automated • SLOW • Threat Modeling also requires a lot of manual work • Some new interesting automation, but nothing in CI/CD pipelines • Some vendors providing tooling support • Can allow for manual incremental changes – not CI/CD, but fits better into Agile environments • SLOW 34
  • 36.
    © 2020 DenimGroup – All Rights Reserved Security Requirements • Determining your requirements is largely manual • Some tooling support is available • SLOW • Validating if they are met is largely manual, but we will look at this later during the Verification/Requirements-Driven Testing activity 35
  • 37.
    © 2020 DenimGroup – All Rights Reserved Secure Architecture • Determining your architectural security requirements is largely manual • SLOW • Validating if they are met is largely manual, but we will look at this later during the Verification/Architecture Assessment activity 36
  • 38.
    © 2020 DenimGroup – All Rights Reserved Implementation • Secure Build • Secure Deployment • Defect Management 37
  • 39.
    © 2020 DenimGroup – All Rights Reserved Secure Build • This is really the crux of what we are discussing today • FAST • How can you integrate security into the build process? • SAST/DAST/IAST • SCA • OWASP Dependency Check https://owasp.org/www-project-dependency-check/ • If you are even considering this you have to have a repeatable build process • Otherwise please log off this webinar and pick up a Jenkins for Dummies book. You can pick this back up later. • Software Bill of Materials (SBOM) • OWASP Dependency Track https://dependencytrack.org/ 38
  • 40.
    © 2020 DenimGroup – All Rights Reserved Architectural Bill of Materials Webinar: The As, Bs, and Four Cs of Testing Cloud- Native Applications https://www.denimgroup.com/resources/webinar/the-as-bs- and-four-cs-of-testing-cloud-native-applications/ 39
  • 41.
    © 2020 DenimGroup – All Rights Reserved Secure Deployment • An extension of Secure Build • Organizations tend to be a little less mature • FAST • Technologies like Puppet, Chef, Terraform 40
  • 42.
    © 2020 DenimGroup – All Rights Reserved Defect Management • Subsets of this can be FAST • But you have to tune scanners or you will run into problems • High-value, no false positives • ThreadFix allows for automated defect creation • In practice, it takes a while to get to this level • Limited coverage: only works for vulnerabilities you can find with automation in CI/CD pipelines • We will talk more about these testing limitations in the Verification discussions 41
  • 43.
    © 2020 DenimGroup – All Rights Reserved Bundling Strategies • Turning vulnerabilities into defects • 1:1 approach? • More time spent administering defects than fixing issues • Bundling • By vulnerability type • By severity (more mature applications) • Other approaches 42
  • 44.
    © 2020 DenimGroup – All Rights Reserved Metrics and Feedback Stream • Scanner / developer provide separation of duties • Scanners find vulns, developers say they fixed them, scanners confirm they did • Obviously only applies to vulnerabilities identified by automation • ThreadFix tracking mean-time-to- remediation (MTTR) • Good metric for Agile/DevOps teams – how fast can you fix? • (Better than defects per KLoC) • Benchmark against data from Veracode/WhiteHat 43
  • 45.
    © 2020 DenimGroup – All Rights Reserved Verification • Architecture Assessment • Requirements-driven Testing • Security Testing 44
  • 46.
    © 2020 DenimGroup – All Rights Reserved Architecture Assessment • This largely has to be done manually • SLOW • Some architectural policies may be checked automatically • Cloud configuration 45
  • 47.
    © 2020 DenimGroup – All Rights Reserved ThreadFix and Irius Risk • Pull data from ThreadFix into Irius Risk threat models https://support.iriusrisk.com/hc/en-us/articles/360021522391- Importing-Test-Results-from-External-Tools 46
  • 48.
    © 2020 DenimGroup – All Rights Reserved ScoutSuite • Check configuration of cloud environments • Checks for: • Open S3 buckets • IAM configuration https://github.com/nccgroup/ScoutSuite 47
  • 49.
    © 2020 DenimGroup – All Rights Reserved Requirements-Driven Testing • Control verification: largely a manual process • SLOW • Misuse/abuse testing: • Fuzzing can be automated, but runtimes can extend beyond the time budget for FAST • Abuse case and business logic testing is manual • DoS testing does not fit in most general pipelines • Mostly SLOW • Some automation and integration possible 48
  • 50.
    © 2020 DenimGroup – All Rights Reserved ThreadFix and SD Elements Webinar: ThreadFix and SD Elements: Unifying Security Requirements and Vulnerability Management for Applications https://threadfix.it/resources/threadfix-and-sd-elements-unifying-security- requirements-and-vulnerability-management/ 49
  • 51.
    © 2020 DenimGroup – All Rights Reserved Security Testing • THIS is really what the discussion comes down to • How sufficient is the security testing you can stuff into a CI/CD pipeline? • OWASP SAMM has two streams: • Scalable baseline • Deep understanding 50
  • 52.
    © 2020 DenimGroup – All Rights Reserved OWASP and Testing • OWASP has traditionally had a cultural focus on the strengths (and weaknesses) of automated testing tools • Consultants vs scanner vendors • Testing Guide • https://owasp.org/www-project-web-security-testing-guide/ • ASVS • https://owasp.org/www-project-application-security-verification-standard/ 51
  • 53.
    © 2020 DenimGroup – All Rights Reserved Scalable Baseline Stream • Three levels of maturity 1. Use an automated tool 2. Employ application-specific automation (tuning) 3. Integrate into the build process • This webinar presupposes the top level of maturity • You did remember to tune your scanner before you put it in the build process, right? 52
  • 54.
    © 2020 DenimGroup – All Rights Reserved Deep Understanding Stream • This is all manual • Manual test high-risk components • Perform penetration testing • Integrate testing into the development process • Tooling can help • Focus efforts on diffs / new or altered functionality 53
  • 55.
    © 2020 DenimGroup – All Rights Reserved Testing in CI/CD Pipelines 54
  • 56.
    © 2020 DenimGroup – All Rights Reserved SAST in CI/CD • Mostly open source linting tools • Need for speed • Commercial-grade tools are less prevalent • Run SAST on diffs? • Cross-method/class data and control flow takes time • Cut down the rules • Shorten run times • Limit false positives 55
  • 57.
    © 2020 DenimGroup – All Rights Reserved DAST in CI/CD • Concerns about run times • Approaches for targeted DAST • Focus on changes in the app 56
  • 58.
    © 2020 DenimGroup – All Rights Reserved Targeting DAST Testing Webinar: Monitoring Application Attack Surface and Integrating Security into DevOps Pipelines https://threadfix.it/resources/monitorin g-application-attack-surface-and- integrating-security-into-devops- pipelines/ 57
  • 59.
    © 2020 DenimGroup – All Rights Reserved IAST in CI/CD • Great! • Typically relies on generated traffic • Use DAST testing to generate traffic • Use integration tests to generate traffic 58
  • 60.
    © 2020 DenimGroup – All Rights Reserved SCA in CI/CD • Great! • Look at run time tradeoffs vs. velocity of new components and new vulnerabilities 59
  • 61.
    © 2020 DenimGroup – All Rights Reserved Operations • Incident Management • Environmental Management • Operational Management 60
  • 62.
    © 2020 DenimGroup – All Rights Reserved Incident Management • Not in a pipeline • Use automation for detection where possible • Some automation frameworks available for response 61
  • 63.
    © 2020 DenimGroup – All Rights Reserved Application Logging for Security Video: Top Strategies to Capture Security Intelligence for Applications https://www.denimgroup.com/resources/article/top-strategies-to-capture- security-intelligence-for-applications-includes-educational-video/ 62
  • 64.
    © 2020 DenimGroup – All Rights Reserved Environment Management • Servers should be cattle, not pets • Configuration Handling stream: • Hopefully you have this sorted given the work you have done for Secure Deployment • Chef, Puppet, Terraform • ScoutSuite • Patching and Updating stream: • Detection: FAST • Actual patching: SLOW 63
  • 65.
    © 2020 DenimGroup – All Rights Reserved Operational Management • Data Protection stream: SLOW • Oh, wait, your DLP solution will sort this out for you • Decommissioning: SLOW 64
  • 66.
    © 2020 DenimGroup – All Rights Reserved Conclusions
  • 67.
    © 2020 DenimGroup – All Rights Reserved What Goes in a Pipeline? • Linting SAST • DAST if you can target it • IAST if you can generate meaningful traffic • SCA if you want 66
  • 68.
    © 2020 DenimGroup – All Rights Reserved What Likely Has to be Done Outside? • Full, commercial-grade SAST • Full DAST • Manual code review • Penetration testing • Threat modeling 67
  • 69.
    © 2020 DenimGroup – All Rights Reserved What Has to be Done Outside? • Most everything else • Strategy • Policy • Training • Architecture • Security requirements 68
  • 70.
    © 2020 DenimGroup – All Rights Reserved Shifting Left is Awesome… • But it is only one aspect of a far more complicated landscape • For testing: think coverage • Classes of vulnerabilities • Detection approaches • Quality of approaches • For everything else: • Thing programmatically 69
  • 71.
    © 2020 DenimGroup – All Rights Reserved Questions
  • 72.
    © 2020 DenimGroup – All Rights Reserved Building a world where technology is trusted. Building a world where technology is trusted. @denimgroup www.denimgroup.com