Integrating security into modern software development: A workflow

55 Slides8.16 MB

Integrating security into modern software development: A workflow study Lucas Charles Secure Software Engineer @ GitLab about.gitlab.com 1

Who am I Lucas Charles (@theoretick on the interwebs) Software Engineer @ GitLab, focused on Security Products Consultant for several Fortune 500 companies, 2

What I care about Tooling 3

What I care about Tooling Collaboration 4

What I care about Tooling Collaboration Transparency 5

Why I care about these things Results! Happiness! ᕕ( ᐛ )ᕗ 6

The Problem: A landscape overview 7

Problem: Modern Software vs Legacy App Sec Building modern software is hard DevOps/Agile and iterative/MVP Zero Trust as perimeters fade and apps become portable “Shift Left” security and the desire to scale software sec 8

Problem: Cloud requires shared security accountability Application Threat Detection Application Access App Configuration and App Patching APPS Virtualization and root access System Threat Detection System Patching and System Access HOSTS Network segmentation and Perimeter security Network Threat Detection NETWORK S FOUNDATIO N SERVICES COMPUTE Responsibili ty: STORAGE Cloud Provider DATABAS E Security Vendors NETWORK Cloud Configuration End-user 9

Problem: Cloud Native requires greater accountability Orchestration (K8s): access/authentication, runtime resources, network policies Containers: Images, Registry, East/West traffic Application Threat Detection Application Access App Configuration and App Patching APPS Virtualization and root access System Threat Detection System Patching and System Access HOSTS Network segmentation and Perimeter security Network Threat Detection NETWORK S FOUNDATION SERVICES COMPUT E Responsibilit y: STORAG E Cloud Provider DATABA SE Security Vendors NETWOR K Cloud Configuration End-user 10

Problem: Modern Software vs Legacy App Sec Reality is: Applications are a prime target of cyber attacks Code changes faster and faster, we need to test it iteratively App Sec tools are expensive and require integration of both technology and processes 11

Problem: Rapid Iteration Iterative development is incongruent with “test everything” security flows 12

Collaboration: Security and developer teams still fail to communicate Security and developer teams still fail to communicate 13

Integration: Complex Toolchains Reinforce Silos https://about.gitlab.com/sdlc/#interfaces 14

Problem: App Sec Silos Compound a Web of Integrations 15

Problem: Traditional App Sec creates a silo and friction 16

Problem: Traditional App Sec creates a silo and friction 17

Problem: Traditional App Sec creates a silo and friction 18

Problem: Traditional App Sec creates a silo and friction 19

Problem: Traditional App Sec creates a silo and friction 20

Problem: Traditional App Sec creates a silo and friction 21

Problem: Traditional App Sec creates a silo and friction 22

Problem: Traditional App Sec creates a silo and friction 23

Problem: Traditional App Sec creates a silo and friction 24

Problem: Traditional App Sec creates a silo and friction 25

Problem - Security and developer teams still fail to communicate “Despite the enterprise benefits of adopting a DevOps culture, the majority of IT leaders polled believe communication between IT security and software development teams must improve greatly to achieve success.” “Part of the challenge is believed to be — despite enthusiasm for DevOps, which has seen 81% of organisations already implement or currently work on projects — nearly half of respondents (46%) have only partially developed their DevOps strategy. IT leaders polled confirmed that enhancing IT security is more of a priority (46%) in DevOps than any other factor.” Source: Devops Online survey results from Trend Micro 2019 https://www.devopsonline.co.uk/security-and-developer-teams-still-failing-to-communicate-says-report/ 26

Solving the bigger problem 27

Shifting further left Workflows must target both teams (because shift left is a fundamental shift for companies) Security must be empowering, not blocking Dev must be engaged in security 28

Shifting further left - Workflows must target both teams Workflows must target both teams because shift left is a fundamental shift for companies; Proactive security: Security vulnerabilities reported directly to accountable developers Security teams do less tracking and triage and focus their skills. Minimal context switching for embraceable workflow. Ability to test every code change. 29

Shifting further left - Empowering security paradigm Increase Awareness Support decision makers, not replace them Augment, dont block 30

Shifting further left - Developer engagement in security Avoid warning fatigue Shift both when scans occur and who performs them The way we achieve this is by running our security scans before merge 31

Pipeline including all security scans - before the code is merged 32

Arming dev to resolve vulnerabilities and security to focus on exceptions 33

Arming dev to resolve vulnerabilities and security to focus on exceptions 34

Arming dev to resolve vulnerabilities and security to focus on exceptions 35

Arming dev to resolve vulnerabilities and security to focus on exceptions 36

Arming dev to resolve vulnerabilities and security to focus on exceptions 37

Arming dev to resolve vulnerabilities and security to focus on exceptions 38

Arming dev to resolve vulnerabilities and security to focus on exceptions 39

Arming dev to resolve vulnerabilities and security to focus on exceptions 40

Arming dev to resolve vulnerabilities and security to focus on exceptions 41

Arming dev to resolve vulnerabilities and security to focus on exceptions 42

Arming dev to resolve vulnerabilities and security to focus on exceptions 43

Arming dev to resolve vulnerabilities and security to focus on exceptions 44

Arming dev to resolve vulnerabilities and security to focus on exceptions 45

Advantage of this approach Contextual 46

Advantage of this approach Contextual Congruent with DevOps processes 47

Advantage of this approach Contextual Congruent with DevOps processes Integrated with DevOps tools 48

Advantage of this approach Contextual Congruent with DevOps processes Integrated with DevOps tools Efficient and automated 49

Security as an Outcome not a Department “Your most important security product won’t be a security product .” CISO of VMWare 50

Where can we go from here? 51

Tightening the feedback loop Security Approvals in Merge Requests: https://gitlab.com/gitlab-org/gitlab-ee/issues/9928 Show on dashboard when security tests are not ran: https://gitlab.com/gitlab-org/gitlab-ee/issues/7521 Forbid remote push if commit contains secrets: https://gitlab.com/gitlab-org/gitlab-ee/issues/8792 https://gitlab.com/groups/gitlab-org/-/epics/634 52

Roadmap https://about.gitlab.com/direction/secure/#upcoming-releases 53

Thank You Lucas Charles @theoretick - [email protected] Slides: http://bit.ly/OSCONSecWorkflow Whitepaper: http://bit.ly/OSCONSecWorkflowWhitepaper 54

Rate today ’s session Session page on conference website O’Reilly Events App

Back to top button