8.1 Security in the SDLC
8.1 Security in the Software Development Life Cycle
Secure software is not created by writing an application first and performing a security test immediately before release.
Security should influence: what is required, how the software is designed, how it is developed, how changes are tested, how it is deployed and how it is maintained after release.
This is the central idea behind integrating security into the Software Development Life Cycle - SDLC.
Whether an organisation uses Waterfall, Agile, DevOps, DevSecOps or a scaled development model, security should exist throughout the lifecycle rather than appearing as a final obstacle before production.
Build Security In
Define security requirements and design security before the software is complete.
START EARLYIntegrate Security
Make security part of development, testing, deployment and change.
SECURITY THROUGHOUTImprove Continuously
Learn from vulnerabilities, incidents, operational feedback and measurement.
KEEP IMPROVINGUnderstand and Integrate Security in the Software Development Life Cycle
The current CISSP Exam Outline explicitly includes five areas.
Security responsibilities continue after software reaches production.
Software changes should be controlled, assessed, tested and traceable.
Different disciplines collaborate throughout product development.
Official 8.1 Topics
Where 8.1 Fits
Integrate security throughout software development.
WHEN?
Secure languages, libraries, toolchains, repositories and CI/CD.
WHERE?
Assess whether software-security activities are working.
DOES IT WORK?
Assess security implications of externally sourced software.
WHO BUILT IT?
Apply secure coding standards and practices.
HOW SHOULD CODE BE WRITTEN?
What Is the SDLC?
The Software Development Life Cycle is the structured or informal process used to:
There is no single universal SDLC sequence used by every organisation. Waterfall, Agile and DevOps organise development differently.
CISSP is interested in the principle that security must be integrated into whichever lifecycle is used.
Security Throughout the Lifecycle
Secure SDLC Memory Aid
Security Requirements
Security requirements describe what protection the software must provide or satisfy.
How will users, systems or services prove identity?
Which users may perform which actions?
Which information requires encryption or other safeguards?
Which security-relevant events must be recorded?
What resilience and recovery capability is required?
How should personal information be collected, used and protected?
Functional vs Security Requirements
"Customers shall be able to transfer money between accounts."
๐ญ Think About Misuse Too Do not design only for the happy path
Customer enters: correct credentials and accesses their account.
Secure Design
Shift Left
Development lifecycles are commonly pictured from left to right.
Shift left means moving security activities earlier in that lifecycle.
Penetration test discovers: architecture does not adequately separate customer tenants.
Application is: two weeks from launch.
Threat modeling identifies: tenant isolation requirement during design.
โ๏ธ Shift Left Does Not Mean Stop on the Left Production still needs security
Security should begin early, but software still changes after release.
Security Gate vs Security Throughout
Problems discovered late may require expensive redesign or create pressure to accept risk.
Waterfall
Waterfall development moves through relatively distinct stages in sequence.
Waterfall
Security in Waterfall
| Phase | Security Activity |
|---|---|
| Requirements | Define security and compliance requirements |
| Design | Threat modeling and architecture review |
| Development | Secure implementation and review |
| Testing | Verify controls and identify weaknesses |
| Deployment | Validate secure release configuration |
| Operations | Monitor, maintain and remediate |
๐ Waterfall Security Risk Late discovery can create expensive rework
Requirements: 6 months.
Design and build: 12 months.
First significant security review: month 18.
Review discovers: a fundamental insecure trust model.
Agile
Agile development works iteratively and incrementally rather than waiting for one large final release.
Agile
Security in Agile
Security work can become part of the normal Agile workflow.
Security requirements appear in the backlog.
A feature is not complete unless required security conditions are satisfied.
Revisit threats as architecture and features evolve.
Include security verification within normal development cycles.
Track and prioritise vulnerabilities alongside other defects.
Security knowledge can be embedded within development teams.
๐ Security Acceptance Criteria Make secure behaviour part of being done
As a customer, I want to reset my password so I can regain access to my account.
Agile Does Not Mean...
Agile changes the planning approach. It does not eliminate planning.
Agile values working software highly but does not prohibit useful documentation.
Architecture and security design still matter.
Security should occur repeatedly rather than disappear.
DevOps
DevOps brings development and operations closer together and uses collaboration, automation and rapid feedback to improve software delivery.
DevOps
DevSecOps
DevSecOps extends the DevOps philosophy by integrating security throughout development and operations rather than assigning it to a separate final stage.
DevSecOps
DevOps vs DevSecOps
Integrates: development + operations.
Focuses strongly on collaboration, automation and delivery flow.
Explicitly integrates: development + security + operations.
Security becomes part of the same delivery lifecycle.
๐ค Shared Security Responsibility Security is not only the security team's job
Understands business requirement and risk.
Implements secure functionality.
Provides expertise, standards and assurance.
Operates and monitors the service securely.
Automation Helps Security Scale
Modern development may produce: dozens or hundreds of changes every day.
Waiting for a security specialist to manually inspect every change may not scale.
Appropriate security checks can therefore be integrated into automated development workflows.
๐ค Automating a Bad Process Makes the Bad Process Faster Automation โ security
Automatically deploys every code change to production within: five minutes.
Security verification: none.
Scaled Agile Framework - SAFe
SAFe applies Agile and Lean concepts across larger organisations where many teams need to coordinate delivery of larger products and systems.
From a CISSP perspective, the important idea is:
scaling Agile does not remove the requirement to integrate security.
Security requirements and practices are incorporated into development work.
Security dependencies spanning multiple teams must be coordinated.
Shared architecture and security requirements affect multiple teams.
Security remains part of build, integration, deployment and operation.
SAFe
Development Methodologies at a Glance
| Method | Think... | Security Approach |
|---|---|---|
| Waterfall | Sequential phases | Integrate security into each stage |
| Agile | Iterative increments | Security repeatedly in backlog and iterations |
| DevOps | Development + operations | Security must fit rapid delivery flow |
| DevSecOps | Development + security + operations | Security continuously integrated |
| SAFe | Agile at organisational scale | Security coordinated across teams and delivery |
NIST Secure Software Development Framework - SSDF
NIST's Secure Software Development Framework provides high-level secure development practices that can be integrated into different SDLC models.
The current final SSDF groups its practices into four areas.
Ensure people, processes and technology are prepared for secure software development.
Protect software components from tampering and unauthorised access.
Build software with minimal security vulnerabilities.
Identify and address residual vulnerabilities and prevent recurrence.
NIST SSDF
๐ Current SSDF Version Note Final vs draft
As of this lesson:
Software Development Maturity Models
A maturity model helps an organisation evaluate:
Capability Maturity Model - CMM
The classic Software CMM describes an evolutionary path from unpredictable processes toward disciplined and continuously improving processes.
| Level | Classic CMM Name | Think... |
|---|---|---|
| 1 | Initial | Ad hoc / unpredictable |
| 2 | Repeatable | Basic processes can be repeated |
| 3 | Defined | Organisation has standardised processes |
| 4 | Managed | Processes are measured and controlled |
| 5 | Optimizing | Continuous process improvement |
Classic CMM Levels
๐ CMM vs Modern CMMI Do not confuse historical and current terminology
CISSP explicitly gives Capability Maturity Model - CMM as an example.
Modern CMMI evolved from this maturity-model family and uses updated terminology.
For CISSP, the important concept is the progression from:
"It Depends Which Developer You Ask"
Team has: no standard security development process.
One developer performs threat modeling.
Another performs manual code review.
A third performs no security activity.
OWASP Software Assurance Maturity Model - SAMM
SAMM focuses specifically on improving software-security practices.
SAMM organises its model around five business functions.
Strategy, policy, compliance, education and guidance.
Threat assessment, security requirements and secure architecture.
Secure build, deployment and defect management.
Architecture assessment, requirements-driven testing and security testing.
Incident, environment and operational management.
SAMM
SAMM Measures Improvement
SAMM provides progressively more mature activities for its security practices.
CMM vs SAMM
Broad software-process maturity model.
Think: HOW MATURE IS OUR DEVELOPMENT PROCESS?
Software-assurance and security maturity model.
Think: HOW MATURE ARE OUR SOFTWARE-SECURITY PRACTICES?
Operation & Maintenance
Reaching production is not the end of the software security lifecycle.
Observe application behaviour and security events.
Identify and remediate newly discovered weaknesses.
Maintain software and dependencies as vulnerabilities are corrected.
Maintain an approved secure operating state.
Respond when software is attacked or compromised.
Maintain backup, recovery and resilience capability.
Monitor externally sourced components and services.
Maintain credentials, keys and certificates throughout operation.
Release Is Not the Finish Line
The Secure Application From 2024
Application passed: every security test before release.
Two years later:
๐ Operations Should Feed Development The lifecycle is a loop
Change Management
Software rarely remains unchanged after release.
Changes may introduce: new functionality and new security risk.
Security Impact Analysis
A change that looks small from a functional perspective may have a large security impact.
"Allow customers to upload profile photographs."
Security questions include:
๐ 7.9 vs 8.1 Change Management Same principle, different context
Operational change-management process across information systems and security operations.
Integrating controlled change into the continuing software development lifecycle.
Emergency Changes
Actively exploited.
Normal change process: takes seven days.
An emergency process may allow: accelerated change.
It should not mean: no control at all.
Know What Changed
Integrated Product Team - IPT
An Integrated Product Team brings together multiple disciplines that are required to successfully deliver and operate a product.
Defines business outcomes and priorities.
Designs and implements software.
Provides security requirements and expertise.
Maintains technical design and integration.
Verifies software behaviour and quality.
Runs and supports production systems.
Provides applicable legal and policy requirements.
Contribute specialist knowledge as required.
Integrated Product Team
Build the product together - do not throw it over the wall.
The Security Review Two Days Before Launch
Developers spend: 18 months building an application.
Security team first sees it: two days before production.
Security discovers: fundamental authentication architecture weaknesses.
Security Champions
Development teams may designate people with additional security interest or training to act as a bridge between:
They can help:
Security specialists remain necessary for areas requiring deeper expertise or independent assurance.
Verification vs Validation
Did we build the product according to the specified requirements?
DID WE BUILD IT RIGHT?
Does the resulting product satisfy its intended need and use?
DID WE BUILD THE RIGHT THING?
โ You Can Correctly Implement a Bad Requirement Verification alone is not enough
"Passwords must contain at least four characters."
Development implements: exactly four-character minimum passwords.
Verification: passes.
Security Testing Should Occur at Appropriate Points
Different security problems are best detected at different stages.
| Stage | Example Security Focus |
|---|---|
| Requirements | Missing security requirements |
| Design | Threats and architectural weaknesses |
| Development | Implementation weaknesses |
| Integration | Component and interface weaknesses |
| Pre-Release | End-to-end application security |
| Production | Operational vulnerabilities and attack activity |
Detailed application-security testing methods such as SAST, DAST, SCA and IAST belong primarily in the next lesson.
Do Not Only Fix the Vulnerability - Fix the Cause
SQL injection discovered: in five separate applications.
The organisation should not only fix: five individual vulnerabilities.
It should also ask:
Security Debt
Organisations can accumulate security debt when security work is repeatedly postponed.
"We Launch Tomorrow"
Security assessment identifies: a serious exploitable vulnerability.
Project manager says:
"The release date has already been announced. Security can fix it next month."
Secure SDLC Should Be Risk-Based
Not every application requires identical security activities.
May require a lighter assurance approach.
Requires significantly stronger security engineering and assurance.
Failure may create consequences far beyond ordinary information loss.
Trace Security Requirements
The Vulnerability Only Appears Under Production Load
Application passes: all pre-production testing.
In production, unusual concurrency causes: a security-sensitive race condition.
The Pipeline Finds a Critical Problem
Developer commits: a change.
Automated security check identifies: a critical policy violation.
Pipeline prevents: deployment.
โ ๏ธ Security Gates Need Tuning Too much noise can damage the process
Blocks: 80% of builds.
Most findings: false positives.
Developers begin: seeking ways to bypass the scanner.
Security and Speed Are Not Automatically Opposites
Major problems appear shortly before release and create expensive rework.
Problems are identified closer to the point at which they are introduced.
Security Questions by Lifecycle Stage
๐ CISSP Scenarios Recognise the SDLC concept being tested
Security is first involved immediately before production.
Primary weakness?
Security was not integrated throughout the SDLC.
Security requirements are defined while business requirements are being gathered.
Which principle?
Early security integration / shift left.
A vulnerability caused by architecture is discovered during design rather than penetration testing.
Primary benefit?
Earlier remediation with more design options and less rework.
Does shift left mean production security monitoring is unnecessary?
Answer?
No.
Project completes requirements before design, design before coding and coding before testing.
Which methodology?
Waterfall.
Does Waterfall require security to be performed only during testing?
Answer?
No. Security should be integrated into each relevant phase.
Team produces small increments and continuously refines its backlog.
Which methodology?
Agile.
A security requirement is added directly to a user story's acceptance criteria.
Which concept?
Integrating security into Agile development.
Does Agile mean documentation should never be created?
Answer?
No.
Development and operations teams share responsibility for rapidly delivering and running applications.
Which concept?
DevOps.
Security is continuously integrated into development and operational delivery.
Which concept?
DevSecOps.
Organisation creates a separate security department that reviews DevOps releases only after deployment.
Is this mature DevSecOps?
No. Security should be integrated into the delivery lifecycle.
Security checks automatically run whenever code changes.
Primary benefit?
Repeatable security feedback that can scale with development activity.
An automated pipeline deploys insecure software very quickly.
Primary lesson?
Automation does not guarantee security.
Hundreds of developers work across coordinated Agile teams on one enterprise platform.
Which ISC2 development-method example may apply?
Scaled Agile Framework - SAFe.
Organisation wants to understand how disciplined and repeatable its software processes are.
Which concept?
Process maturity model.
Software development process is unpredictable and heavily dependent on individual heroics.
Classic CMM level?
Level 1 - Initial.
Organisation can repeat previously successful basic software processes.
Classic CMM level?
Level 2 - Repeatable.
Organisation-wide standard software processes have been defined.
Classic CMM level?
Level 3 - Defined.
Software processes are quantitatively observed and controlled.
Classic CMM level?
Level 4 - Managed.
Organisation continually improves mature software processes.
Classic CMM level?
Level 5 - Optimizing.
Organisation specifically wants to measure and improve software-security practices.
Which ISC2 maturity-model example?
OWASP SAMM.
Which five high-level functions appear in SAMM?
Answer?
Governance, Design, Implementation, Verification and Operations.
An application was secure when released but now contains outdated vulnerable dependencies.
Which 8.1 topic is important?
Operation and maintenance.
Does successful security testing at release prove an application will remain secure forever?
Answer?
No.
A new feature changes how customer files are uploaded.
What should occur before release?
Security impact assessment as part of change management.
An emergency vulnerability fix bypasses every approval, test and record.
Primary problem?
Emergency change was treated as uncontrolled change.
Who requested, approved and deployed a production change cannot be determined.
Which property is weak?
Change traceability and accountability.
Business, developers, security, operations and testing work together throughout the project.
Which ISC2 concept?
Integrated Product Team.
Security reviews a design only after developers have already implemented it.
What would improve the process?
Earlier security participation within the product team.
A developer acts as the security contact within an Agile team and helps interpret security standards.
Which concept?
Security champion.
Does a security champion eliminate the need for specialist security expertise?
Answer?
No.
A product conforms exactly to its specified security requirements.
Which assurance idea?
Verification - did we build it right?
The team asks whether the specified security requirements actually satisfy the business need.
Which assurance idea?
Validation - did we build the right thing?
A weak security requirement is implemented perfectly.
Is the resulting security necessarily adequate?
No.
The same injection vulnerability appears repeatedly across many products.
Best mature response?
Fix the vulnerabilities and address the systemic root cause in the development process.
A vulnerability fix is indefinitely postponed to meet release deadlines.
What may accumulate?
Security debt.
An automated scanner blocks nearly every build because of false positives.
Primary operational risk?
Developers may begin bypassing or distrusting the control.
A security requirement can be traced to design, implementation and a successful test.
Which concept?
Requirements traceability.
A production incident causes a new secure coding standard to be introduced.
Which principle?
Operational feedback improving the development lifecycle.
A security defect is found immediately after the developer introduces it rather than six months later.
Primary benefit?
Faster feedback and reduced remediation effort.
An organisation applies identical heavy security processes to every application regardless of risk.
Better approach?
Tailor secure-development activities based on risk and context.
What are the four groups in current final NIST SSDF 1.1?
Answer?
Prepare the Organization, Protect the Software, Produce Well-Secured Software and Respond to Vulnerabilities.
What is the most important principle shared by Waterfall, Agile and DevSecOps?
Answer?
Security should be integrated throughout the chosen software lifecycle.
Management asks for the central purpose of 8.1.
Best answer?
Integrate security requirements, engineering, assurance, operational maintenance and controlled change throughout the software development lifecycle using processes appropriate to the organisation's development methodology and risk.
Recognise the Clue Words
Security From Beginning
Earlier integration.
Shift LeftSequential Phases
Development model.
WaterfallIterations / Backlog
Adaptive delivery.
AgileDevelopment + Operations
Collaboration.
DevOpsSecurity Throughout Delivery
Integrated.
DevSecOpsMany Agile Teams
Enterprise scale.
SAFeAd Hoc Process
Classic maturity.
CMM Level 1Repeatable Process
Classic maturity.
CMM Level 2Organisation Standard
Classic maturity.
CMM Level 3Measured Process
Classic maturity.
CMM Level 4Continuous Improvement
Classic maturity.
CMM Level 5Software Security Maturity
Assurance model.
SAMMAfter Production
Lifecycle continues.
Operation & MaintenanceNew Feature
Assess new risk.
Change ManagementEmergency Fix
Faster process.
Controlled Emergency ChangeBusiness + Dev + Security + Ops
Multidisciplinary.
Integrated Product TeamDeveloper Security Contact
Team enablement.
Security ChampionDid We Build It Right?
Against specification.
VerificationDid We Build the Right Thing?
Intended need.
ValidationSame Vulnerability Repeated
Systemic issue.
Root Cause Improvementโ ๏ธ Common CISSP Mistakes Security should be part of development, not attached afterwards
Security should influence requirements, design, development, deployment and operation too.
Production operation and maintenance still require security.
Security can be integrated throughout a Waterfall lifecycle.
Agile plans iteratively.
Useful security documentation still matters.
Rapid iteration does not eliminate secure design.
Faster development and deployment can also move vulnerabilities faster.
Security should be integrated into shared development and operational processes.
Automated insecure processes remain insecure.
Tools support people and processes.
Champions improve integration but specialist expertise may still be required.
CMM evaluates process maturity.
SAMM assesses and improves organisational software-security practices.
Software continues through operation and maintenance.
Threats, vulnerabilities and dependencies change.
Assess changes based on security impact rather than code size alone.
Emergency processes accelerate appropriate controls rather than eliminate them entirely.
Product-team responsibilities should still be defined.
Verification asks whether requirements were implemented correctly. Validation asks whether the right requirements and product were produced.
Repeated weaknesses may require systemic process improvement.
Repeated deferral can create security debt.
NIST SSDF 1.1 is the current final publication. Version 1.2 is presently a draft.
8.1 focuses on lifecycle integration. 8.2 focuses on the software-development ecosystem and its controls.
8.1 addresses the lifecycle. 8.5 addresses secure coding guidelines and standards.
Quick Reference
| If you see... | Think... |
|---|---|
| Security earlier in development | Shift Left |
| Sequential development phases | Waterfall |
| Iterations, backlog, incremental delivery | Agile |
| Development + operations | DevOps |
| Security throughout development + operations | DevSecOps |
| Agile coordinated across many teams | SAFe |
| Ad hoc process | CMM Level 1 |
| Repeatable process | CMM Level 2 |
| Defined organisational process | CMM Level 3 |
| Measured process | CMM Level 4 |
| Continuous process improvement | CMM Level 5 |
| Software assurance maturity | SAMM |
| Prepare / Protect / Produce / Respond | NIST SSDF |
| Production security after launch | Operation & Maintenance |
| New feature changes security risk | Change Management |
| Urgent production fix | Emergency Change |
| Business + Dev + Security + Ops | Integrated Product Team |
| Did we build it right? | Verification |
| Did we build the right thing? | Validation |
| Same defect appears repeatedly | Root Cause / Process Improvement |
Methodology Memory Aid
Maturity Memory Aid
8.1 Master Memory Aid
Security is part of the lifecycle - not a phase at the end.
The Secure Development Leader's Questions
Key Takeaways
CISSP 8.1 is: Understand and integrate security in the Software Development Life Cycle.
The current ISC2 outline explicitly includes development methodologies, maturity models, operation and maintenance, change management and Integrated Product Teams.
The central principle is: security should be integrated throughout software development.
Security should influence requirements, design, development, testing, deployment, operation and change.
Security should not first appear immediately before production.
Secure development begins with understanding the protection needs of the business and translating those needs into security requirements.
Security requirements may address authentication, authorization, confidentiality, logging, privacy, resilience and other required behaviours.
Functional requirements describe what software should do.
Security requirements help describe the conditions under which it should do those things safely.
Secure design considers threats before implementation.
Threat modeling, trust boundaries, least privilege, secure defaults and attack-surface analysis can therefore occur before significant code exists.
Fix architecture before architecture becomes thousands of lines of code.
Shift left means performing security activities earlier in development.
Earlier identification of security weaknesses can reduce rework and technical debt.
Shift left โ security only on the left.
Production security, monitoring, vulnerability management and incident response remain necessary.
Waterfall develops software through relatively distinct sequential phases.
Security can and should be integrated into requirements, design, development, testing, deployment and maintenance within Waterfall.
Waterfall โ security only at final testing.
Agile uses iterative and incremental development.
Security can be incorporated into Agile backlogs, user stories, acceptance criteria and each development iteration.
Agile does not mean no planning, no documentation or no architecture.
DevOps brings development and operations closer together.
It emphasises shared responsibility, automation, rapid delivery and operational feedback.
DevSecOps explicitly integrates security within that delivery approach.
DevOps = Development + Operations. DevSecOps = Development + Security + Operations.
DevSecOps should not create another security silo.
Security becomes part of the same workflow used to develop, test, deploy and operate software.
Automation can make security checks repeatable and scalable.
But: automation โ guaranteed security.
An insecure automated process simply produces insecure outcomes more consistently and potentially more quickly.
Automated controls also require appropriate tuning.
Excessive false positives can cause developers to distrust or bypass security controls.
SAFe applies Agile concepts across larger coordinated development organisations.
The CISSP principle remains unchanged: security must remain integrated when Agile is scaled.
Maturity models help organisations assess and improve the consistency and capability of their processes.
The classic Capability Maturity Model progresses through five levels:
Initial โ Repeatable โ Defined โ Managed โ Optimizing.
Initial processes are relatively ad hoc and unpredictable.
Repeatable processes establish basic repeatability.
Defined processes use organisation-wide standards.
Managed processes are measured and controlled.
Optimizing organisations focus on continuous improvement.
Modern CMMI evolved from this maturity-model family and uses updated terminology.
CISSP explicitly includes CMM as the example in objective 8.1, so understanding the maturity concept is more important than treating every maturity model as identical.
OWASP SAMM focuses specifically on software security and assurance.
SAMM contains five high-level business functions:
Governance โ Design โ Implementation โ Verification โ Operations.
SAMM can help an organisation understand its current software-security maturity, define a target and create an improvement roadmap.
CMM = broad development-process maturity. SAMM = software-security maturity.
NIST's Secure Software Development Framework provides another useful modern model for secure development.
The current final SSDF 1.1 contains four groups:
Prepare the Organization โ Protect the Software โ Produce Well-Secured Software โ Respond to Vulnerabilities.
The SSDF can be integrated into different SDLC methodologies rather than requiring one particular development model.
Operation and maintenance are explicitly included in CISSP 8.1.
A software release is therefore not the end of security responsibility.
Production software must continue to be monitored, patched, maintained and updated.
Dependencies, certificates, credentials, configurations and operating environments also change over time.
Secure at release โ secure forever.
Operational incidents should feed information back into development.
If an incident exposes a recurring development weakness, the mature response is not merely to repair one application.
The organisation should consider how the development process can prevent recurrence.
Change management is also explicitly included in objective 8.1.
Software changes should be evaluated for security impact.
A small functional change can create a large security impact.
Controlled change normally includes assessment, authorisation, testing, deployment, monitoring and traceability.
Emergency changes may use an expedited process.
Emergency change โ uncontrolled change.
Appropriate documentation and post-implementation review may still be necessary.
Integrated Product Teams bring multiple disciplines together.
Product owners, developers, security specialists, architects, testers, operations personnel and other relevant stakeholders can participate before decisions become expensive to change.
Security should participate in building the product rather than only judging the finished product.
Security champions can help integrate security knowledge into development teams.
They do not automatically replace specialist security teams.
Verification and validation are related but different.
Verification asks: did we build it right?
Validation asks: did we build the right thing?
Correctly implementing a weak security requirement does not make the resulting security strong.
Security requirements should therefore themselves be appropriate to business risk.
Security activities should be risk-based.
An Internet banking service and a low-risk internal utility do not necessarily require identical levels of assurance.
Requirements should be traceable where appropriate from risk through design, implementation and testing.
This helps demonstrate that identified security needs were actually addressed.
Repeated vulnerabilities may indicate a development-process problem.
Mature organisations therefore examine root causes.
Fix the vulnerability. Then ask why the development process allowed it.
Repeatedly postponing necessary security work can accumulate security debt.
Security and development speed are not necessarily opposing goals.
Earlier security feedback can reduce late rework and unexpected release delays.
The current final NIST SSDF remains version 1.1.
NIST has published version 1.2 as a draft, so it should not currently be described as the final SSDF.
The central CISSP principle for 8.1 is:
security is not one stage of software development. Security is a requirement and engineering responsibility that should follow the software from its earliest business need through design, implementation, verification, deployment, operation, change and continuous improvement.
๐ Sources & Further Reading Current secure software-development references
- ISC2 - CISSP Certification Exam Outline
View the current CISSP Exam Outline - NIST SP 800-218 - Secure Software Development Framework (SSDF) Version 1.1
View current final NIST SSDF - NIST SP 800-218 Rev. 1 - SSDF Version 1.2 - Initial Public Draft
View current SSDF revision draft - NIST SP 800-160 Vol. 1 Rev. 1 - Engineering Trustworthy Secure Systems
View NIST systems security engineering guidance - NIST SP 800-204D - Strategies for the Integration of Software Supply Chain Security in DevSecOps CI/CD Pipelines
View NIST DevSecOps supply-chain guidance - OWASP Software Assurance Maturity Model - SAMM
View the OWASP SAMM model - Carnegie Mellon SEI - Capability Maturity Model for Software Version 1.1
View the classic Software CMM - CMMI Institute - Maturity Levels
View modern CMMI maturity guidance - Manifesto for Agile Software Development
View the Agile Manifesto - Scaled Agile Framework - Essential SAFe
View SAFe guidance
