Certified Secure Software Lifecycle Professional
Bij de ontwikkeling van software applicaties wordt tijdens het ontwikkelproces vaak weinig rekening gehouden met security. Pas vlak voor de oplevering (of helemaal niet) wordt er met behulp van een vulnerability scan of penetratietest gekeken naar de veiligheid van een applicatie waarbij tijdsdruk en kosten een stempel drukken op de benodigde aanpassingen. In de CSSLP training leert u security implementeren in elke fase van het software ontwikkelproces zodat de beveiliging daarin aantoonbaar geborgd wordt richting uw klanten of organisatie. Ook gaan we in op de selectie, het opstellen van requirements, de aanschaf en het onderhoud van software die u niet in eigen huis ontwikkelt maar elders inkoopt. De CSSLP certificering valideert software professionals die aantoonbare expertise hebben in het opnemen van security practices - bijvoorbeeld op het gebied van authenticatie, autorisatie en auditing - in elke fase van de SDLC (software development lifecycle), van software-ontwerp en implementatie tot het testen en uitrollen. CSSLPs hebben bewezen vaardigheid in: Ontwikkelen van een applicatie programma voor de beveiliging van hun organisatie Verlaging van de productiekoste
Voor wie
Software Architect
Software Engineer
Software Developer
Application Security Specialist
Software Program Manager
Quality Assurance Tester
Penetration Tester
Software Procurement Analyst
Project Manager
Security Manager
IT Director/Manager
Programma
Deze training omvat de acht CSSLP domeinen:
1. Secure Software Concepts
- Core concepts
- Security design principles
2. Secure Software Requirements
- Define software security requirements
- Identify and Analyze Compliance Requirements
- Identify and Analyze Data Classification Requirements
- Identify and Analyze Privacy Requirements
- Develop Misuse and Abuse Cases
- Develop Security Requirement Traceability Matrix (STRM)
- Ensure Security Requirements Flow Down to Suppliers/Providers
3. Secure Software Architecture and Design
- Perform threat modeling
- Define the security architecture
- Performing Secure Interface Design
- Performing Architectural Risk Assessment
- Model (Non-Functional) Security Properties and Constraints
- Model and Classify Data
- Evaluate and Select Reusable Secure Design
- Perform Security Architecture and Design Review
- Define Secure Operational Architecture (e.g., deployment topology, operational interfaces)
- Use Secure Architecture and Design Principles, Patterns, and Tools
4. Secure Software Implementation
- Adhere to Relevant Secure Coding Practices (e.g., standards, guidelines and regulations)
- Analyze Code for Security Risks
- Implement Security Controls (e.g., watchdogs, File Integrity Monitoring (FIM), anti-malware)
- Address Security Risks (e.g. remediation, mitigation, transfer, accept)
- Securely Reuse Third-Party Code or Libraries (e.g., Software Composition Analysis (SCA))
- Securely Integrate Components
- Apply Security During the Build Process
5. Secure Software Testing
- Develop Security Test Cases
- Develop Security Testing Strategy and Plan
- Verify and Validate Documentation (e.g., installation and setup instructions, error messages, user guides, release notes)
- Identify Undocumented Functionality
- Analyze Security Implications of Test Results (e.g., impact on product management, prioritization, break build criteria)
- Classify and Track Security Errors
- Secure Test Data
- Perform Verification and Validation Testing
6. Secure Software Lifecycle Management
- Secure Configuration and Version Control (e.g., hardware, software, documentation, interfaces, patching)
- Define Strategy and Roadmap
- Manage Security Within a Software Development Methodology
- Identify Security Standards and Frameworks
- Define and Develop Security Documentation
- Develop Security Metrics (e.g., defects per line of code, criticality level, average remediation time, complexity)
- Decommission Software
- Report Security Status (e.g., reports, dashboards, feedback loops)
- Incorporate Integrated Risk Management (IRM)
- Promote Security Culture in Software Development
- Implement Continuous Improvement (e.g., retrospective, lessons learned)
7. Secure Software Deployment, Operations, and Maintenance
- Perform Operational Risk Analysis
- Release Software Securely
- Securely Store and Manage Security Data
- Ensure Secure Installation
- Perform Post-Deployment Security Testing
- Obtain Security Approval to Operate (e.g., risk acceptance, sign-off at appropriate level)
- Perform Information Security Continuous Monitoring (ISCM)
- Support Incident Response
- Perform Patch Management (e.g. secure release, testing)
- Perform Vulnerability Management (e.g., scanning, tracking, triaging)
- Runtime Protection (e.g., Runtime Application Self-Protection (RASP), Web Application Firewall (WAF), Address Space Layout Randomization (ASLR))
- Support Continuity of Operations
- Integrate Service Level Objectives (SLO) and Service Level Agreements (SLA) (e.g., maintenance, performance, availability, qualified personnel)
8. Secure Software Supply Chain
- Implement Software Supply Chain Risk Management
- Analyze Security of Third-Party Software
- Verify Pedigree and Provenance
- Ensure Supplier Security Requirements in the Acquisition Process
- Support contractual requirements (e.g., Intellectual Property (IP) ownership, code escrow, liability, warranty, End-User License Agreement (EULA), Service Level Agreements (SLA))
Voorkennis
De Certified Secure Software Lifecycle Professional (CSSLP) training is bestemd voor iedereen die betrokken is bij de SDLC met minstens 4 jaar full-time werkervaring in 1 of meer van de 8 domeinen van de CSSLP CBK. CSSLPs houden vaak posities, zoals de volgende: Software Architect Software Engineer Software Developer Application Security Specialist Software Program Manager Quality Assurance Tester Penetration Tester Software Procurement Analyst Project Manager Security Manager IT Director/Manager