agile security manifesto - isc)2 · •security experts are valuable, and bring specific...

17
Nick Murison February 9, 2017 Applying Agile Principles to Software Security Agile Security Manifesto

Upload: others

Post on 23-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

Nick MurisonFebruary 9, 2017

Applying Agile Principles to Software Security

Agile Security Manifesto

Page 2: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2017 Synopsys, Inc. 2 All Rights Reserved

About Me

• Consultant ~12 years– Penetration testing– Incident response – Training– Software security: code, design, risk– Company-level initiatives to improve software security

• BSc in Computer Science• MSc in Information Security

Page 3: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2017 Synopsys, Inc. 3 All Rights Reserved

The Challenge

• Idea à Prototype à Reality

When do we put security into the design?

Page 4: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2017 Synopsys, Inc. 4 All Rights Reserved

In the old days… waterfall

Requirements Gathering

Architecture and Design

Code and Development

Testing

Deployment

SecurityGate

SecurityGate

SecurityGate

SecurityGate

Page 5: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2017 Synopsys, Inc. 5 All Rights Reserved

ModernSoftwareDevelopment

The Agile Manifesto is a set of principles, not a rigid methodology. There are many agile method-ologies, including scrum and Kanban

Page 6: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2016 Synopsys, Inc. 6 All Rights Reserved

“Agile Security Manifesto”

Page 7: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2017 Synopsys, Inc. 7 All Rights Reserved

Cigital’s “Agile Security Manifesto”

• Four principles, inspired by the original Agile Manifesto

• Goal: guide the development of new activities and make adjustments to existing activities to make it natural and efficient to build security into an agile process

Rely on good developers and testers

Implement secure features

Continuously improve security

Focus on fixing software

Over

Relying on security experts

Implementing security features

Completely changing processes

Finding bugs

Page 8: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2017 Synopsys, Inc. 8 All Rights Reserved

Security and Agile: “Culture Clash”?

• Security has traditionally been about controls

• Agile is about creating a culture of collaboration and cultivation

• Things that don’t often work:– Imposing strict controls in an Agile culture– Applying Agile principles in a strict control culture

• We need to evolve security to better align with the culture, e.g.– “Controls” can become “activities”– Automation (e.g. CI/CD) can help introduce more security activities; seize on this!– Collaborate and enable developers to achieve their objectives

Page 9: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2017 Synopsys, Inc. 9 All Rights Reserved

Rely on good developers and testers over security specialists• Security experts are valuable, and bring specific skills/experience

• But most agile teams don’t have an embedded security expert– Costly, and far between

• It’s easier to teach developers about security than teaching a security expert how to code

• Empower your agile teams to own security through:– Training– Automation (CI/CD)– Defining security user stories– Providing access to SMEs

Page 10: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2017 Synopsys, Inc. 10 All Rights Reserved

Implement secure features over adding security features

• Focus on business value and achieving the software’s mission– Don’t force your developers to solve hard security problems when they’re trying to implement

functionality

• Use SMEs to develop security features – E.g. authentication, authorization, data validation, crypto, etc.– Make these available and easy to use for development teams

• Enable your developers to write high quality secure components– Have them leverage secure-by-default frameworks– Make it easy for them to leverage the available security features

Page 11: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2017 Synopsys, Inc. 11 All Rights Reserved

Continuously improve security over completely changing processes• If an agile team is working well and producing good software, it probably needs very little change to produce

secure software

• If the existing process is not producing good software, then adding security activities will not fix that

• Make the security experts use the same tools and paradigms as developers to allow information to flow– Security requirements should be communicated like user (security) stories– Security defects should go in the developer backlog tools– Security tests should integrate in the developers’ existing testing pipeline

• Focus on making incremental changes to how you approach software security, e.g.:– Add a small set of security rules to SonarQube, configured to not “break build” in your CI/CD pipeline– Wait a few sprints before adding more– Keep adding until you’ve covered your list of “Top N Bugs We Don’t Want To Have”– Start breaking builds for the ”worst” type of bug– Add breaking builds for the “second worst” type of bug– Etc...

Page 12: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2017 Synopsys, Inc. 12 All Rights Reserved

Focus on fixing software over finding bugs

• Penetration testing, secure code review etc. find issues, but they don’t magically fix them for you

• Automated security tools are great at findings issues…– … even if the issue doesn’t exist!– And they don’t fix the issues for you

• Apply a risk-based approach to focus development effort on the issues that matter and that cannot be handled through other means– E.g. business process, contracts, monitoring, etc.

• Use the development backlog to communicate and prioritise issues that need to be remediated

Page 13: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2016 Synopsys, Inc. 13 All Rights Reserved

Modern Software Development

Page 14: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2016 Synopsys, Inc. 14 All Rights Reserved

Security User Stories

Secure Code

Review

Security Testing

Penetration TestingSecure

Design Review

Modern Software Development with Security

Page 15: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2017 Synopsys, Inc. 15 All Rights Reserved

Next Steps

• Measure what activities you have– E.g. BSIMM

• Identify what activities are reasonable for your organisation to add / update

• Implement activities incrementally

• Measure and re-measure

Page 16: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

© 2016 Synopsys, Inc. 16 All Rights Reserved

The best time to plant an oak tree was twenty years ago.

The next best time is now.—Ancient Proverb

Nick [email protected]

@nickmurison

Page 17: Agile Security Manifesto - ISC)2 · •Security experts are valuable, and bring specific skills/experience •But most agile teams don’t have an embedded security expert –Costly,

Thank You