Secure Software Development Lifecycle
A secure software development lifecycle adds security work to the way you plan, design, build, verify, release, and maintain software. It turns security requirements, reviews, tests, and vulnerability response into routine development work instead of a final check.
itOffensive security and application security | OpenSkills.info
Course pathWalk it in order
Look it upDip in anytime
Go furtherLeaves this page
Don't Panic
Secure Software Development Lifecycle: Don't Panic
A secure SDLC is what happens when security stops waiting outside the release room with a clipboard and starts joining the work that makes software. It adds security requirements, responsibilities, evidence, and feedback to planning, design, implementation, verification, release, and response. The delivery method may stay agile, formal, continuous, or held together by calendar invitations. Security work still has to change the decisions inside it.
The useful picture is a loop. A requirement points to a design control. The control points to code or configuration. Verification supplies evidence for a release decision. Vulnerability response then sends lessons back to requirements, designs, tests, or development practices. A security thread is that chain of reasons and records. Cut one link and the next decision has to guess, which is a bold operating model for a system handling real data.
The surprising bit is that a passing check is a very small sentence. It says the configured check found no blocking result in its stated scope. It does not say every requirement was tested, no vulnerability exists, or the release will remain secure forever. Static analysis, component analysis, dynamic analysis, fuzz testing, code review, design review, and manual testing each see a different surface. They are colleagues, not substitutes wearing different badges.
A threat model gives the chain somewhere sensible to start. It records assets, actors, components, data flows, trust boundaries, threats, and mitigations while the design can still change. It does not predict every attack. Its job is less supernatural and more useful: make assumptions visible, then connect important mitigations to requirements and tests.
The other easily missed boundary is the machinery that produces the software. Repositories, build runners, package sources, credentials, signing, and release services can alter what reaches a customer. Integrity evidence can show that the approved output is the one delivered. It cannot prove that its behavior is secure. This distinction is not glamorous, but it is considerably cheaper than explaining a compromised release path after the fact.
For the detailed map, read the Intro for the full lifecycle and its limits. Use the Slides when the relationships need to fit in one view. Keep the Cheatsheet nearby when defining evidence, a release gate, or a verification portfolio. Field Notes covers the operational traps that turn tidy controls into queues. The Reference tab then leads to NIST SSDF, OWASP SAMM, ASVS, and Microsoft SDL when your local process needs exact source material.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://csrc.nist.gov/pubs/sp/800/218/final
Supports
- Secure development practices integrated into any software development lifecycle
- SSDF purpose, scope, common vocabulary, and risk-based implementation
- Reduction of released vulnerabilities, mitigation of undetected vulnerabilities, and prevention of recurrence
- Reference-path rationale for the NIST SSDF publication
- https://doi.org/10.6028/NIST.SP.800-218
Supports
- Prepare the Organization, Protect the Software, Produce Well-Secured Software, and Respond to Vulnerabilities
- Requirements, roles, training, toolchains, development environment protection, and release integrity
- Threat modeling, design review, code review, security testing, third-party component review, and secure defaults
- Vulnerability intake, remediation, root-cause analysis, and process improvement
- Quiz answers and all lifecycle, evidence, tailoring, and response claims
- https://owaspsamm.org/about/
Supports
- SAMM as a measurable, actionable, risk-driven model for the complete software lifecycle
- Current-state assessment, target definition, and incremental improvement roadmap
- Tailoring maturity targets rather than requiring maximum maturity in every practice
- Reference-path rationale and maturity quiz answer
- https://owaspsamm.org/model/
Supports
- Governance, Design, Implementation, Verification, and Operations business functions
- Detailed practices, activities, maturity levels, and success metrics
- Lifecycle tailoring, exception governance, measures, and improvement claims
- Reference-path rationale for detailed SAMM practices
- https://owasp.org/www-project-application-security-verification-standard/
Supports
- ASVS 5.0.0 as the current stable release
- Technical requirements for web application design, development, testing, metrics, and procurement
- Versioned requirement identifiers and machine-readable requirement lists
- Requirement-selection guidance, glossary, quiz answer, and reference-path rationale
- https://learn.microsoft.com/en-us/compliance/assurance/assurance-microsoft-security-development-lifecycle
Supports
- Training, requirements, design, implementation, verification, release, and response activities
- Maintained security requirements and threat models
- Static, binary, secret, encryption, fuzz, configuration, component, manual, and penetration testing
- Independent review, release decisions, monitoring, and post-release response
- Introductory examples, quiz answers, and reference-path rationale
- https://www.microsoft.com/en-us/securityengineering/sdl/practices
Supports
- Security risks across design, code, build and deploy, and runtime
- Governance, proven security features, threat modeling, supply-chain security, engineering environment security, testing, operations, response, and training
- Protection of repositories and build systems
- Reference-path rationale for the current SDL practice set
- https://github.com/sindresorhus/awesome
Supports
- Discovery of the Application Security and DevSecOps awesome lists
- https://github.com/jakob-pennington/awesome-devsecops
Supports
- Curated discovery of OWASP Threat Dragon, Semgrep, OWASP Dependency-Check, ZAP, and OWASP Juice Shop
- Tool categories spanning threat modeling, static analysis, dependency analysis, dynamic analysis, and intentionally vulnerable applications
- https://owasp.org/www-project-threat-dragon/
Supports
- Threat-model diagrams, recorded threats, mitigations, and visual threat surfaces
- Web and desktop application options
- Threat-model quiz answer and Awesome Links rationale
- https://www.threatdragon.com/docs/
Supports
- Learner destination for installing, using, and working with Threat Dragon models
- Awesome Links destination and rationale
- https://docs.semgrep.dev/
Supports
- Static application security testing, software composition analysis, and secrets scans
- Code-standard enforcement with custom rules and finding triage
- Static-analysis scope quiz answer and Awesome Links rationale
- https://owasp.org/www-project-dependency-check/
Supports
- Software composition analysis that associates dependencies with publicly disclosed vulnerabilities
- Command-line, build plug-in, and continuous integration options
- Awesome Links rationale
- https://www.zaproxy.org/docs/
Supports
- ZAP guides, desktop documentation, automation, containers, authentication, and alert details
- Dynamic security testing learner destination and Awesome Links rationale
- https://owasp.org/www-project-juice-shop/
Supports
- Intentionally insecure web application for training, demonstrations, and security-tool evaluation
- Guided challenges, coding challenges, and tracked practice
- Awesome Links rationale
- https://owasp-juice.shop/
Supports
- Current learner destination for OWASP Juice Shop
- https://www.microsoft.com/en-us/securityengineering/sdl/about/
Supports
- Microsoft Trustworthy Computing in 2002, the SDL rollout, its mandatory adoption, and public publication
- Timeline milestones for 2002, 2004, and 2008
- https://owaspla.owasp.org/assets/prez/OWASPLA_prez_2024_11-1.pdf
Supports
- OpenSAMM 1.0 in 2009 and OWASP SAMM releases through version 2.0 in 2020
- Timeline milestones for SAMM
- https://www.whitehouse.gov/wp-content/uploads/2021/05/14028.pdf
Supports
- Executive Order 14028 requirements concerning secure software development practices and supplier attestations
- Timeline milestone for federal software supply-chain policy
- https://safecode.org/blog/lessons-learned-through-15-years-of-sdl-at-work/
Supports
- Practitioner lessons from long-running SDL adoption, including the importance of developer participation rather than a checklist-only program
- Field Notes cards about ownership, feedback, and operating the lifecycle as delivery work
- https://cloud.google.com/transform/how-google-does-it-applying-sre-to-cybersecurity
Supports
- Product security engineers working closely with software engineers and SREs throughout the development lifecycle
- Field Notes card about embedding security decisions in delivery work
- https://github.com/security/advanced-security
Supports
- GitHub Advanced Security coverage for code scanning, dependency monitoring, and secret protection
- Landscape entry for repository-native verification and development-environment controls
- https://docs.gitlab.com/user/application_security/
Supports
- GitLab application security testing in merge requests and CI/CD pipelines across code, dependencies, images, and running applications
- Landscape entry for pipeline-attached verification
- https://snyk.io/
Supports
- Snyk developer security platform
- Landscape entry for implementation feedback and dependency risk triage
- https://docs.checkmarx.com/en/34965-68515-general-product-information.html
Supports
- Checkmarx AppSec Platform and Checkmarx One scanner coverage
- Landscape entry for connecting application-security testing evidence to release decisions
- https://docs.semgrep.dev/
Supports
- Semgrep static analysis, software composition analysis, secrets scans, custom rules, and triage
- Landscape entry for focused verification tied to sensitive changes and requirements
