23
www.rallydev.co m ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

Embed Size (px)

Citation preview

Page 1: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Reduce Security Risk in Your Development

Part II: Creating an Agile SSDLC

#SecureDev

Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

Page 2: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

What We’ll Cover Today

• How is secure Agile development different?

• Creating a User Story with integrated security

• Security Tasks and Testing• Managing security Defects• Security architecture • Agile Threat Map

#SecureDev

Page 3: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Quick Recap of Session 1

• Information security overview

• What are the most common threats?

• How to protect sensitive data, both from a methodology and technology standpoint

• Standards and tools– NIST SP 800-53A, OpenSAMM, OWASP

Page 4: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

How is Secure Agile Development Different?

• Distinct security-focused project phases, often at beginning and end of project

• Security skills brought in from outside project, often disconnected from dev/test resources

• Specific security testing phase, often at end of project.

AgileTraditional / Waterfall

• Every iteration considers security, but is not limited by it.

• Every team member is responsible for security. Security skills are embedded in the team.

• Hybrid security and functionality testing, throughout project.

Security Timing

Security Resources

Security Validation

Page 5: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Secure Agile DevelopmentGuiding Principles

• Product value improves with security.

• Security is integral to the product, not an afterthought.

• Outside security resources (standards, threats, experts) provide background, not a cage.

Page 6: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Agile security myths - 1

• Myth: I’m a developer / product owner / scrum master. Security is someone else’s job.

– Reality: The complex threats facing applications today requires everyone to be thinking about security.

–Secure business logic–Secure coding practices–Secure test methods–Secure data architecture–Secure deployment environment

Page 7: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Agile security myths - 2

• Myth: Compliance with an Information Security Standard isn’t Agile

– Reality: Compliance with an Information Security Standard, such as NIST SP 800-53A, is actually easier in an Agile environment, because “baking in” security in smaller pieces allows for simple compliance test cases and less backtracking

Page 8: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Secure User Stories

• The #1 tenet of secure Agile development is to “bake” security into every user story

• Remember: Stories should be defined such that the lowest level child story can be implemented and accepted in a single iteration

– Any security component(s) of the story, therefore, must be lightweight

– What is the most basic security functionality required for the story to be compliant?

– Don’t let security define the user story. Let the user story define the security.

Page 9: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Great, Secure User Stories(from Write a Great User Story, by Ronica Roth)

Page 10: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

VIDEO DEMO 1

• VIDEO DEMO – Creating a great user story with security elements included in Acceptance Criteria and Definition of Done

Page 11: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Secure User Story DON’Ts

• DON’T change the user story template“As a <user type>, I want to <function> so that <benefit>” NOT “As a <user type>, I want to <function> so that <benefit> and <yadda yadda yadda security drivel here>”

• DON’T create “Security Epics”

• DON’T assign secure user story creation to “the security guy/gal”

• DON’T put technical security tasks in the user story itself.

Page 12: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Security Tasks

• For each user story, the Developer should create tasks necessary to meet security acceptance criteria

• Developer should also detail any security testing tasks, as part of defining all the testing tasks for the story

• Security review may also be added as a task, assigned to a security specialist

Page 13: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

VIDEO DEMO 2

• VIDEO DEMO – Adding security related tasks and testing to a user story

Page 14: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Security Defects

• Security defects may be identified– As part of iteration testing– After product deployment

• Tagging security defects makes them easier to identify and prioritize

• Once defined, security defects are managed along with other defects as part of iteration acceptance and scheduling

Page 15: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

VIDEO DEMO 3

• VIDEO DEMO – Security defect management

Page 16: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Security Architecture

From The Principles of Agile Architecture by Alex Yakyma and Dean Leffingwell, with contributions from Ryan Martens and Mauricio Zamora

Page 17: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Security Architecture

[..] in the context of secure Agile enterprise software systems, we need both: fast, local control of emergent design so that teams react appropriately to changing security requirements without excessive attempts to future risk proof the system, and global control of Intentional Architecture, the guidance needed to assure that the system as a whole has conceptual integrity and efficacy security. Achieving the right balance of emergent design and intentional architecture drives effective secure evolution of the system [..]

From The Principles of Agile Architecture by Alex Yakyma and Dean Leffingwell, with contributions from Ryan Martens and Mauricio Zamora

Page 18: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Agile Threat Mapping

• Assessment of key threats to business value, process, or data set

• Tied to real-world, known threats – not “theoretical”

• Communicated to all team members

• Completed by team, not by “security guy/gal”

Page 19: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Agile Threat Mapping Template

<Business Value>or

<Business Process>

or<Data Set>

• Confidentiality: (High, Med, Low)

• Integrity: (High, Med, Low)

• Availability: (High, Med, Low)

• A1 – Injection• A3 – Cross-site

Scripting• A6 – Sensitive Data

Exposure

<Business Value>or

<Business Process>

or<Data Set>

<Business Value>or

<Business Process>

or<Data Set>

<Business Value>or

<Business Process>

or<Data Set>

• Confidentiality: (High, Med, Low)

• Integrity: (High, Med, Low)

• Availability: (High, Med, Low)

• Confidentiality: (High, Med, Low)

• Integrity: (High, Med, Low)

• Availability: (High, Med, Low)

• Confidentiality: (High, Med, Low)

• Integrity: (High, Med, Low)

• Availability: (High, Med, Low)

• A1 – Injection• A3 – Cross-site

Scripting• A6 – Sensitive Data

Exposure

• A1 – Injection• A3 – Cross-site

Scripting• A6 – Sensitive Data

Exposure

• A1 – Injection• A3 – Cross-site

Scripting• A6 – Sensitive Data

Exposure

Page 20: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Checking Our Work

Page 21: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Questions?

Contact me:[email protected]

Twitter: @trenthein

#SecureDev

Page 22: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013#SecureDev

Up Next:Agile Secure Code Review

July 24th | 10am ET

Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

Page 23: Www.rallydev.com ©2013 Reduce Security Risk in Your Development Part II: Creating an Agile SSDLC #SecureDev Trent R. Hein, CCIE, CISSP, ISSMP, ISSAP, CSSA

www.rallydev.com ©2013

Go Agile. Go Rally.

#SecureDev