Skip to content
Control Stack logo Control Stack
Annex A 8.28 ISO/IEC 27001:2022

Secure Coding Practices in Software Development

Ensure software is built securely to prevent vulnerabilities.

🏛️ Framework

ISO/IEC 27001:2022

🧭 Control effect

Preventative

🧱 ISO 27001 domain

Technological controls

🔐 Classifications

N/A

🗓️ Official last update

24 Oct 2022

✏️ Control Stack last updated

22 Feb 2026

🎯 Maturity levels

N/A

Official control statement
Secure coding principles shall be applied to software development.

Source: ISO/IEC 27001:2022

Plain language

This control is about making sure that the software your business uses or develops is built in a way that keeps it safe from hackers and glitches. If this isn’t done, your software might have weak spots that bad actors could exploit to steal your information or disrupt your operations.

Why it matters

Poor secure coding increases risk of data breaches and operational disruptions due to exploitable software vulnerabilities.

Operational notes

Maintain secure coding standards with peer reviews, SAST/DAST and dependency scanning; refresh secure patterns and train developers on OWASP risks.

Implementation tips

  • The IT manager should develop a secure coding policy that defines expected practices. This can be done by setting specific guidelines that all software developers must follow, which should cover both in-house and outsourced efforts. Reference standards from ISO 27002:2022 and comply with Australian privacy regulations.
  • Software developers need to be trained in secure coding practices. The organisation should organise training sessions and workshops on common coding vulnerabilities and how to avoid them. Use materials from recognised sources like OWASP and ensure the training is up to date with current threats.
  • Procurement teams should ensure that third-party software and open-source components align with secure coding practices. They should verify that vendors apply secure coding standards by requiring documentation or certifications. This helps to ensure that all software components used are secure and reliable.
  • Project managers should implement security throughout the software development lifecycle. This means incorporating secure design, threat modelling, and regular security reviews and testing into every project stage. Use methods like static application security testing (SAST) to find vulnerabilities early.
  • Executives should support a culture of continuous improvement in secure coding practices. This involves monitoring industry trends and incorporating lessons learned into coding standards and procedures. Encourage feedback loops from security incidents to refine and strengthen secure coding policies continually.

Audit / evidence tips

  • Ask: a copy of the organisation’s secure coding policy

  • Ask: records of developer training sessions on secure coding

  • Ask: to see recent security test reports from the software development process

  • Ask: documentation on third-party software assessments

  • Ask: to review incident response records relating to coding issues

Cross-framework mappings

How Annex A 8.28 relates to controls across ISO/IEC 27001, Essential Eight, and ASD ISM.

These mappings show relationships between controls across frameworks. They do not imply full equivalence or certification.

ASD ISM

Control Notes Details
Partially meets (16)
ISM-0938 ISM-0938 requires organisations to select user application vendors that demonstrate Secure by Design/Secure by Default, including secure ...
ISM-1241 ISM-1241 requires that output encoding is performed on all output produced by web applications to prevent injection-style client-side att...
ISM-1275 ISM-1275 requires that all software-to-database queries are filtered/validated for legitimate content and correct syntax (i.e., query inp...
ISM-1276 ISM-1276 requires software to use parameterised queries or stored procedures (rather than dynamically generated queries) for database int...
ISM-1278 ISM-1278 requires software to avoid exposing database structure details through error messages
ISM-1780 Annex A 8.28 requires that secure coding principles are applied during software development
ISM-1850 ISM-1850 requires that web application development mitigates the OWASP Top 10 security risks
ISM-2016 ISM-2016 requires validation and sanitisation to be performed on all input received over a local network by software
ISM-2030 ISM-2030 requires scanning during commits to detect and block plaintext or encoded secrets/keys from being committed to the authoritative...
ISM-2055 ISM-2055 requires developers to use available build provenance for third-party components to ensure they were built to an appropriate sta...
ISM-2057 ISM-2057 requires documented input validation rules that are implemented in code and verified through positive and negative unit or integ...
ISM-2058 ISM-2058 requires that data sources and serialised data inputs are validated before being deserialised to prevent malformed or malicious ...
ISM-2061 ISM-2061 requires developer-supported, security-focused peer reviews to be conducted on all critical and security-relevant software compo...
ISM-2064 ISM-2064 requires that web application session cookies contain only digitally signed opaque bearer tokens to prevent tampering
ISM-2066 ISM-2066 requires web application sessions to be centrally managed server side to reduce risks such as session tampering and weak client-...
ISM-2085 ISM-2085 requires organisations to prevent exposing exact AI model confidence scores in APIs and user interfaces
Partially overlaps (3)
ISM-1460 ISM-1460 requires the isolation mechanism vendor to demonstrate Secure by Design/Secure by Default practices, explicitly calling out secu...
ISM-2041 Annex A 8.28 requires secure coding principles to be applied across software development
ISM-2042 Annex A 8.28 requires applying secure coding principles to reduce software vulnerabilities
Supports (14)
ISM-0402 Annex A 8.28 requires secure coding principles to be applied to prevent vulnerabilities during software development
ISM-0971 Annex A 8.28 requires the application of secure coding principles in software development
ISM-1238 Annex A 8.28 requires secure coding principles to be applied to software development
ISM-1239 Annex A 8.28 requires secure coding principles to be applied during software development
ISM-1826 ISM-1826 requires selecting vendors for server applications who apply secure programming practices and, preferably, use memory-safe progr...
ISM-1849 Annex A 8.28 requires secure coding principles to be applied to prevent vulnerabilities in developed software
ISM-1851 Annex A 8.28 requires secure coding principles to be applied across software development
ISM-1922 Annex A 8.28 requires secure coding principles to be applied in software development
ISM-2024 ISM-2024 requires developers to use authoritative sources for software development activities, reducing the likelihood of tampered librar...
ISM-2031 ISM-2031 requires organisations to implement and use build-tool security features (e.g
ISM-2033 ISM-2033 requires software security requirements to be documented, stored securely, and maintained throughout the SDLC
ISM-2059 ISM-2059 mandates file type restriction and scanning for malicious content
ISM-2060 Annex A 8.28 requires organisations to apply secure coding principles when developing software
ISM-2062 ISM-2062 requires unit and integration testing (positive and negative cases) to validate code quality and security
Depends on (2)
ISM-1924 ISM-1924 requires organisations to build AI applications that can identify and mitigate adversarial prompt content (e.g
ISM-2037 Annex A 8.28 requires secure coding principles to be applied in software development
Related (2)
ISM-0401 ISM-0401 demands Secure by Design practices across the entire SDLC, covering stages like design, build, test, and release
ISM-2040 Annex A 8.28 requires organisations to apply secure coding principles during software development to prevent vulnerabilities

Mapping detail

Mapping

Direction

Controls