πStudy Focus | Domain 8: Software Development Security
Last domain — let’s finish strong with Domain 8: Software Development Security. This one is all about secure coding practices, SDLC phases, application security models, and the infamous software vulnerabilities that show up in CISSP trick questions.
π Domain 8: Software Development Security
π Flashcard Topics (AppSec, DevOps, Vulnerabilities, and SDLC Memory Traps)
π️ System Development Life Cycle (SDLC)
π SDLC Phases
-
1. Initiation → 2. Acquisition/Development → 3. Implementation → 4. Operation → 5. Disposal
π Security in SDLC
-
Security must be integrated at every phase, starting at requirements.
π¦ Secure Coding Guidelines
-
Follow standards like OWASP, CERT, and NIST 800-64.
π§± Development Models
-
Waterfall = Sequential, rigid
-
Agile = Iterative, flexible
-
DevOps = Combines development + operations
-
DevSecOps = Builds security into DevOps pipeline
π§ͺ Software Testing Types
-
Static Testing (SAST) = Code reviewed without execution
-
Dynamic Testing (DAST) = Code tested during runtime
-
Regression Testing = Ensure new code doesn’t break old features
-
Fuzz Testing = Inputs malformed/random data to crash the app
π‘️ Application Security Controls
-
Input Validation = Prevents injection attacks
-
Output Encoding = Escapes data for safe rendering
-
Parameterization = Stops SQL injection by separating code from data
-
Error Handling = Should not reveal internal details to users
π ️ Software Architecture Concepts
-
Trusted Computing Base (TCB) = Components enforcing security policy
-
Reference Monitor = Always-enforcing access checker between subject and object
-
Security Kernel = Implements the reference monitor
⚠️ Common Software Vulnerabilities
-
Buffer Overflow = Input overflows memory buffer
-
SQL Injection = Unvalidated input manipulates SQL queries
-
XSS (Cross-Site Scripting) = Inject JS into browser
-
CSRF (Cross-Site Request Forgery) = Tricks user into submitting requests
-
Race Condition = Two operations conflict in timing
-
TOCTOU (Time-of-Check to Time-of-Use) = Change between check and use causes exploit
π Access Control in Software
-
Access Control Matrix = Subjects × Objects grid of permissions
-
Bell-LaPadula / Biba = Can also apply at software architecture level
π·️ Code Reuse Risks
-
Third-Party Libraries = May include vulnerabilities
-
Open Source Components = Must be vetted for updates and known CVEs
π Change Management in Dev
-
Any code changes must be reviewed, approved, tested, and documented before deployment.
π§© Database and Storage Security
-
Normalization = Reduces redundancy and anomalies
-
Stored Procedures = Safer than raw SQL queries
-
Encryption at Rest/In Transit = Encrypt sensitive data in DB and in transport
𧬠Threat Modeling
-
STRIDE Model
Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service, Elevation of Privilege -
DREAD Model (Deprecated)
Damage, Reproducibility, Exploitability, Affected Users, Discoverability
That’s Domain 8 complete, and with it, your CISSP flashcard outline is done! π
Would you like:
-
A printable flashcard deck (PDF/Anki format)?
-
A study tracker to review high-priority topics daily?
-
A “last 72-hour” cram plan to lock in high-yield concepts?
Let me know what’s next, and we’ll finish this prep the smart way.
Comments
Post a Comment