The Insecure Software Development Lifecycle
How to find, fix, and manage deficiencies within an existing methodology #InsecureSDLC April C. Wright
@AprilWright
Development Lifecycle How to find, fix, and manage deficiencies - - PowerPoint PPT Presentation
@AprilWright The Insecure Software Development Lifecycle How to find, fix, and manage deficiencies within an existing methodology #InsecureSDLC April C. Wright The Status Quo of Software Development Lifecycles Concern with Speed and
The Insecure Software Development Lifecycle
How to find, fix, and manage deficiencies within an existing methodology #InsecureSDLC April C. Wright
@AprilWright
The Status Quo of Software Development Lifecycles
issues
creation/integration are not fully understood
etc) are not knowledgeable about security methods of attack and defense
Stakeholders
“A stakeholder is any person or group that affects or is affected by a particular project. Along the path to completing your project, stakeholders can be partners, resources, or roadblocks—and potentially all three rolled into one. Stakeholder buy-in, the cooperation or positive participation of a stakeholder, is the preferred condition for any successful project.”
http://bit.ly/2K59RB0
Understanding Stakeholders and Existing Processes
elicit successful change
change
Relevant Stakeholders
http://bit.ly/2K59RB0
Stakeholders have differing points of view
Security's goals: Create it securely Maintain it properly Prove it’s protected Documentation Builder's goals: Time to market Profit Correctness Minimal defects Optimization * * (Chuck Norris writes code that optimizes itself)
Project Managers are great assets
things done
in/Garbage out
QA and DevOps
automation for testing security
requirements are met
you’ve provided requirements!?
Legal
very similar to Security’s!
Customers/End-Users
loss of trust
trust
3rd Parties
has links to other parts of chain
its weakest link
needs vary
Analyzing existing processes
motivators, drivers, blockers
complete process start-to-finish
you track?
what could be improved
prioritization
Gap Analysis
program?
set/met?
Document the gap analysis
process for those new to it
within the process timeline (for now)
How does security affect the stakeholder?
physical pain in the brain
based, individual, team-based
How does security affect the process?
undocumented processes
provide input?
be a checkpoint?
stakeholders
Preparing for rebuilding the program
YOU NEED A PLAN! The secure end-state must feel necessary to the org How are you going to achieve the goal?
Key program metrics
SANS “Using Metrics to Manage Your Application Security Program” http://bit.ly/2qMf9Jl
Metrics
reported!
train worst)
DEcreases in cost
management
SANS “Using Metrics to Manage Your Application Security Program” http://bit.ly/2qMf9Jl
For software security to be a priority, CxO’s need to understand (from SANS):
risk
Important metrics
Phased goals
must be changed before anything else
addressed until you address the Phase 1 gaps
resources
Goal phases
change
resources more effectively, active support and participation
not necessarily “last” phase, ‘where the program is going’
to Management
Gaining management support
Management helps set expectations with
when there is reluctance to cooperate 1. Gap assessment 2. Phased goals 3. Prioritized and ranked gaps/goals All = Long Term Plan
Gaining management support
influential
Planning requirements
done
involved
shifts necessary
important
Active stakeholder participation
environment in which people have a choice whether to be motivated and contribute
the Plan
what is expected of them, and how their contributions are valuable
http://bit.ly/2J9CE67Working as a unified team (but not much for the business)
Working as a unified team
Purple Team / Red Team without defensive building:
vulnerabilities?
performed.
identification of a vulnerability
weaknesses in unpatched systems
The importance of collaborating as one team
successful
Discussions, not just bug submissions
Positive interactions
who caused it
ability
provide constructive criticism, then close with another positive comment
Rotating work assignments and embedded liaisons
team”
frequently
initially, more secure / higher quality over time
Setting expectations for stakeholders
timelines
be taken if you want those steps to be taken
Using organizational policy to create a need
stakeholder
responsibilities
Using compliance to create a need
Knowledgeable humans
throughout the enterprise?
The development style guide and standard libraries:
functions, and define:
spaces)
Style guides
achieving consistency of logos and imaging
consistency/quality across projects/teams
Automated code scanning vs Manual code reviews
bugs)
Checklists set and monitor expectations
backwards
behave?
what does it not do?
updates/upgrades
Conclusion
#ORANGETEAM #DEFCAMP ArchitectSecurity.org @aprilwright
The Insecure Software Development Lifecycle
enjoy the con
#InsecureSDLC
@aprilwright
ArchitectSecurity.or g