Topics in this domain

Application Security and the Secure SDLC

Controls · 2 min read

Built in, not bolted on

Most breaches of web applications exploit flaws that could have been prevented during design or coding. The security manager’s role is to make the secure way the normal way of building and buying software, through requirements, tools, training and release gates. This is part of the CISM task to integrate information security requirements into organisational processes.

The secure SDLC

Requirements, design, build, test, release and run with security activities at each stage.
StageSecurity activities
RequirementsSecurity and privacy requirements; application risk rating
DesignThreat modelling; standard secure patterns
BuildSecure coding standards; peer code review; static analysis (SAST); dependency scanning
TestDynamic testing (DAST); penetration testing for high-risk applications
Release and runSecurity sign-off; web application firewall; monitoring; patching

Fixing a flaw in design costs a fraction of fixing it after release.

Shift left in DevSecOps

Security checks moved earlier in the pipeline: threat modelling, SAST, dependency scanning, DAST, pen testing.

In DevOps, code moves to production many times a day. DevSecOps automates security checks in the delivery pipeline, so every change is scanned without slowing teams down. “Shift left” means adding checks earlier; it doesn’t mean dropping the later ones.

The software supply chain

  • A software bill of materials (SBOM) lists every component in an application.
  • Dependency scanning finds known vulnerabilities in open-source libraries.
  • Trusted sources: approved repositories and signed packages.
  • Purchased software: security requirements in contracts and evidence of the vendor’s testing.

Example. A critical vulnerability is announced in a widely used logging library. With an SBOM for each application, the security team identifies the 14 affected systems in an hour. Without one, a peer company takes three weeks.

Program-level controls

  • a secure coding standard and developer training
  • security requirements built into project templates
  • automated security tests that can block releases
  • risk-based penetration testing of high-risk applications
  • metrics: open critical flaws, time to fix, scanning coverage

How the exam asks about it

If the question asks…The answer is usually…
When to address security in developmentFrom requirements onward
Most cost-effective time to fix a flawDesign
Testing source code for flawsStatic analysis (SAST)
Inventory of software componentsA software bill of materials (SBOM)
Role of a web application firewallA compensating layer, not a replacement for secure code

In short

  • Security is integrated into each stage of the software development life cycle (SDLC), from requirements to operation.
  • Fixing a flaw in design costs a fraction of fixing it after release.
  • Key practices: security requirements, threat modelling, secure coding standards, code review, SAST, DAST, dependency scanning and penetration testing.
  • In DevOps, security checks are automated in the pipeline (DevSecOps), and 'shift left' adds them earlier without removing later ones.
  • Third-party and open-source components need inventory (SBOM) and vulnerability tracking.
  • Purchased software also needs security requirements in contracts and testing before use.

Exam traps

  • A web application firewall is a compensating layer, not a substitute for secure code.
  • Shift left means testing earlier, not skipping testing later.
  • Developers shouldn't approve and deploy their own code to production without review.
  • Ignoring open-source dependencies leaves known vulnerabilities in production.

Slides

Click the slide and use the arrow keys. F toggles full screen.

CISM · Domain 3 · Controls

Application Security and the Secure SDLC

How the security manager builds security into how software is built and bought: requirements, threat modelling, secure coding, testing, release gates and the supply chain of code.

1 / 9