ISO 27001 Annex A 8.25 Audit Checklist

The ultimate audit guide to ISO 27001 Annex A 8.25 Secure Development Life Cycle

1. Verify the Secure Coding Policy

Verification Criteria: A documented policy exists defining the mandatory security principles for software development, including minimum security baselines for coding and architectural design.

Required Evidence: Approved “Secure Development Policy” or “Secure Coding Standard” with explicit version control and management sign-off.

Pass/Fail Test: If the organisation cannot produce a formalised document specifying the security requirements for development activities, mark as Non-Compliant.

2. Confirm Security Requirements Integration in Design

Verification Criteria: Security requirements are identified and documented during the specification and design phases of every software development project.

Required Evidence: Project specification documents or Jira tickets containing explicit “Security Requirements” or “Non-Functional Requirements” sections.

Pass/Fail Test: If a sampled project lacks documented security specifications prior to the commencement of coding, mark as Non-Compliant.

3. Validate Vulnerability Mitigation in Software Components

Verification Criteria: Technical controls are in place to identify and remediate vulnerabilities in third-party libraries and open-source components (Software Composition Analysis).

Required Evidence: SCA tool reports (e.g. Snyk, GitHub Dependabot, or SonarQube) showing zero “Critical” or “High” vulnerabilities in production code.

Pass/Fail Test: If production code contains unpatched third-party libraries with known “High” severity vulnerabilities and no documented mitigation, mark as Non-Compliant.

ISO 27001 Toolkit Business Edition

4. Evidence Secure Coding Practices Implementation

Verification Criteria: Developers utilise secure coding techniques (e.g. input validation, output encoding, and secure session management) to prevent common exploits like SQLi and XSS.

Required Evidence: Static Application Security Testing (SAST) reports or peer code review logs explicitly flagging security-related code checks.

Pass/Fail Test: If a manual spot-check or SAST report identifies plain-text sensitive data storage or lack of input sanitisation in the codebase, mark as Non-Compliant.

5. Verify Development and Production Environment Segregation

Verification Criteria: Development, testing, and production environments are strictly segregated both logically and, where possible, physically to prevent unauthorised access to production data.

Required Evidence: Network topology diagrams or cloud VPC configuration logs showing isolation between Dev/Test and Production environments.

Pass/Fail Test: If a developer has standing “Write” access to the production environment using their standard development credentials, mark as Non-Compliant.

6. Ensure Secure Handling of Sensitive Data in Development

Verification Criteria: Production data, specifically PII or financial records, is not used in development or testing environments unless it has been appropriately masked or anonymised.

Required Evidence: Data masking logs or screenshots from the testing database demonstrating the use of synthetic or obfuscated data.

Pass/Fail Test: If unmasked production PII is found residing in a developer’s local database or a shared testing environment, mark as Non-Compliant.

7. Check Version Control and Change Authorisation

Verification Criteria: All source code is managed via a secure version control system (VCS) with mandatory peer review and approval for all production-bound commits.

Required Evidence: VCS settings (e.g. GitHub/GitLab) showing branch protection rules and a history of approved Pull Requests (PRs).

Pass/Fail Test: If a developer can unilaterally push code directly to the production branch without a second-party technical review, mark as Non-Compliant.

8. Review Automated Security Testing in CI/CD Pipeline

Verification Criteria: Security testing (SAST/DAST) is integrated into the automated Build/Deployment pipeline, with “fail-build” triggers for high-risk findings.

Required Evidence: CI/CD pipeline configuration files (e.g. Jenkinsfile, GitLab CI YAML) showing security scan stages and pass/fail thresholds.

Pass/Fail Test: If the deployment pipeline proceeds to production despite the presence of “Critical” security vulnerabilities identified during scanning, mark as Non-Compliant.

9. Ensure Secure Decommissioning of Development Assets

Verification Criteria: Development repositories, API keys, and temporary environments are securely decommissioned or rotated once a project is completed or terminated.

Required Evidence: Decommissioning logs or secret management records (e.g. AWS Secrets Manager/Vault) showing rotation or revocation of project-specific keys.

Pass/Fail Test: If active, unrotated API keys for a completed project are found in the codebase or an unmanaged environment, mark as Non-Compliant.

10. Evidence that Management Oversight of Developer Competency is Recorded

Verification Criteria: Developers receive regular training on secure coding standards and emerging security threats relevant to their specific technology stack.

Required Evidence: Training completion records for all development staff cross-referenced against the OWASP Top 10 or similar industry benchmarks.

Pass/Fail Test: If the organisation cannot provide evidence of secure development training for its core engineering team in the last 12 months, mark as Non-Compliant.

About the author

Stuart Barker
🎓 MSc Security 🛡️ Lead Auditor 30+ Years Exp 🏢 Ex-GE Leader

Stuart Barker

ISO 27001 Ninja

Stuart Barker is a veteran practitioner with over 30 years of experience in systems security and risk management. Holding an MSc in Software and Systems Security, he combines academic rigor with extensive operational experience, including a decade leading Data Governance for General Electric (GE).

As a qualified ISO 27001 Lead Auditor, Stuart possesses distinct insight into the specific evidence standards required by certification bodies. His toolkits represent an auditor-verified methodology designed to minimise operational friction while guaranteeing compliance.

Shopping Basket
Scroll to Top