Skip to content
Software development
ASD ISMISM-0401

ASD ISM 0401 Implement secure by design in software development

What it says

Secure by Design principles and practices are followed throughout the software development life cycle.

Quoted as published. Everything else on this page is written by Control Stack.

What it means

In plain English

Follow Secure by Design practices throughout software development to ensure security.

Implementing Secure by Design means thinking about security at every step of building software. It's like putting locks on doors and windows when building a house, rather than waiting for a break-in to happen. This matters because if we ignore security early on, we might end up with software that's easy for hackers to break into, causing data theft or service disruptions.

Why it matters

Without Secure by Design across the SDLC, design and code flaws persist and are exploited, causing breaches and outages.

How to implement

  1. The project manager should ensure security is included in the planning stage.

    This can be done by starting each project with a security checklist based on Australian Signals Directorate (ASD) guidelines. It helps to clearly outline who is responsible for each security aspect from the beginning.

  2. The software development team should integrate security features as they write code.

    This means using coding standards that prevent common vulnerabilities and regularly reviewing code for security issues. A simple way to start is to use tools that automatically check the code for known weaknesses during development.

  3. The IT team should conduct regular security training sessions for developers.

    These sessions can help the team stay updated on the latest security threats and practices. Providing real-world examples during training can make it relevant and engaging.

  4. The quality assurance team should test security features as part of their regular testing process.

    They should focus not just on functionality but also on how secure the software is. Running simulated attacks or using penetration testing tools can identify vulnerabilities before launch.

Keep it running

Integrate threat modelling, secure coding standards, code review and security testing into each sprint and CI/CD so controls evolve with changes.

Evidence and audit

  1. Check 1 of 4What an auditor asks for

    Ask for

    The project security plan: Request the document outlining the initial security considerations for the software project.

    Look at

    Specific security objectives written down at the start of the project.

    Good evidence

    Includes clearly defined responsible personnel and security goals.

  2. Check 2 of 4What an auditor asks for

    Look at

    Evidence that developers participated in the sessions.

    Good evidence

    Result shows regular training dates and topics that are up-to-date with current threats.

  3. Check 3 of 4What an auditor asks for

    Ask for

    The checklist of Secure by Design practices: Check the list to ensure it covers comprehensive security measures and that entries are ticked off as completed during development. A thorough checklist should cover coding practices, threat modelling, and regular reviews.

    Look at

    Documentation that shows security checks were part of the code review.

    Good evidence

    Log includes entries of what was checked, potential issues found, and how they were resolved.

  4. Check 4 of 4What an auditor asks for

    Ask for

    Them how they incorporate security testing into their testing procedures.

    Good evidence

    Includes details about using specific security testing tools and simulating attacks to probe for system weaknesses.

Mappings

Closest match in ISO/IEC 27001: A.8.25, Secure development lifecycle, which asks for the same thing.

ISO 27001

ISO/IEC 27001: 5 mappings

ISO 42001

ISO/IEC 42001: 1 mapping

Mappings show how controls relate across frameworks. They do not imply full equivalence or certification.