Get in Touch
 Duration 21 hours

Course Outline

A01:2025 – Broken Access Control

Access control enforces policies to ensure users cannot exceed their intended permissions. Failures in this area often result in unauthorised information disclosure, data modification or destruction, or the execution of business functions beyond the user's authority.

Practical Aspects

  • Real-world examples of broken access controls

  • Implementing secure access controls and best practices

A02:2025 – Security Misconfiguration

Security misconfiguration occurs when a system, application, or cloud service is incorrectly set up from a security standpoint, thereby introducing vulnerabilities.

Practical Aspects

  • Case studies of real-world misconfigurations

  • Strategies to prevent misconfiguration, including the use of configuration management and automation tools

A03:2025 – Software Supply Chain Failures

Software supply chain failures refer to compromises or breakdowns in the software building, distribution, or update processes. These are frequently caused by vulnerabilities or malicious alterations in third-party code, tools, or other dependencies relied upon by the system.

A04:2025 – Cryptographic Failures

Generally, all data in transit should be encrypted at the transport layer (OSI layer 4). Historical barriers such as CPU performance constraints and complex private key/certificate management have been largely addressed by modern CPUs with instructions that accelerate encryption (e.g., AES support) and simplified certificate management services like LetsEncrypt.org, alongside tightly integrated solutions provided by major cloud vendors.

Beyond securing the transport layer, it is crucial to determine which data requires encryption at rest and which data necessitates additional encryption in transit at the application layer (OSI layer 7).

For instance, sensitive data such as passwords, credit card numbers, health records, personal information, and business secrets require enhanced protection, particularly when subject to privacy laws like the EU's General Data Protection Regulation (GDPR) or regulations such as the PCI Data Security Standard (PCI DSS).

Practical Aspects

  • In-depth analysis of cryptographic failures, including weak encryption algorithms or poor key management

  • The importance of robust cryptographic mechanisms, secure protocols (SSL/TLS), and modern cryptography examples in web security

A05:2025 – Injection

An injection vulnerability is a system flaw that permits an attacker to insert malicious code or commands (such as SQL or shell code) into a program's input fields, tricking the system into executing them as if they were legitimate system components. This can have severe consequences.

Practical Aspects

  • Detailed examination of SQL, NoSQL, OS, and LDAP injection

  • Mitigation techniques using prepared statements, parameterised queries, and input escaping

A06:2025 – Insecure Design

Insecure design is a broad category representing various weaknesses, characterised as missing or ineffective control design.

Insecure design is not the root cause of all other Top Ten risk categories. It is important to distinguish between insecure design and insecure implementation, as they have different root causes, occur at different stages of the development process, and require different remediation approaches.

A secure design can still suffer from implementation defects that lead to exploitable vulnerabilities. Conversely, an insecure design cannot be remedied by perfect implementation because the necessary security controls were never established to defend against specific threats.

A key factor contributing to insecure design is the lack of business risk profiling inherent in the software or system being developed, leading to an inability to determine the required level of security design.

Practical Aspects

  • Exploring design flaws that lead to vulnerabilities, such as improper input validation

  • Studying strategies for secure architecture and secure design principles

A07:2025 – Authentication Failures

This vulnerability is present when an attacker can trick a system into recognising an invalid or incorrect user as legitimate.

Practical Aspects

  • Common authentication issues

  • Secure authentication strategies, such as multi-factor authentication and proper session handling

A08:2025 – Software or Data Integrity Failures

Software and data integrity failures relate to code and infrastructure that fails to protect against invalid or untrusted code or data being treated as trusted and valid.

An example is when an application relies on plugins, libraries, or modules from untrusted sources, repositories, and content delivery networks (CDNs).

An insecure CI/CD pipeline that lacks software integrity checks can introduce risks of unauthorised access, insecure or malicious code, or system compromise.

Another example is a CI/CD pipeline that pulls code or artifacts from untrusted locations and/or fails to verify them before use (such as checking signatures or similar mechanisms).

Practical Aspects

  • Focus on issues such as untrusted software updates and data tampering

  • Safe update mechanisms and data integrity checks

A09:2025 – Security Logging and Alerting Failures

Without logging and monitoring, attacks and breaches go undetected, and without alerting, it becomes difficult to respond quickly and effectively during a security incident.

Insufficient logging, continuous monitoring, detection, and alerting mechanisms prevent the initiation of active responses whenever they are needed.

Practical Aspects

  • The importance of logging security-relevant information and monitoring for suspicious activities

  • Tools and practices for proper logging and real-time monitoring to detect breaches early

A10:2025 – Mishandling of Exceptional Conditions

Mishandling exceptional conditions in software occurs when programs fail to prevent, detect, and respond to unusual and unpredictable situations, leading to crashes, unexpected behaviour, and potential vulnerabilities.

This typically involves one or more of the following failings:

  • The application does not prevent an unusual situation from occurring

  • It does not identify the situation as it happens

  • It responds poorly or not at all to the situation afterwards

SAST – Static Application Security Testing

  1. Understanding static analysis and when to run it in the SDLC (shifting left)

  2. Types of vulnerabilities detectable through SAST, comparing vulnerable code vs secure code

  3. Overview of SAST tools (e.g., Semgrep, SonarQube, Checkmarx, depending on client stack)

  4. Practical exercise: Run a SAST scan on a repository with deliberately introduced vulnerabilities, interpret results, and triage false positives versus real vulnerabilities

DAST – Dynamic Application Security Testing

  1. Differences between SAST and DAST, including black-box testing on the running application

  2. The DAST scan flow, including crawling, fuzzing, and response analysis

  3. Overview of DAST tools (e.g., OWASP ZAP, Burp Suite)

  4. Practical exercise: Run a DAST scan on a vulnerable test application (e.g., OWASP Juice Shop), identify, and validate the findings

SCA – Software Composition Analysis

  1. Risks associated with third-party dependencies and libraries, including inherited vulnerabilities

  2. SBOM, Software Bill of Materials, explaining what it is and why it matters

  3. Overview of SCA tools (e.g., Dependency Check, Snyk, GitHub Dependabot)

  4. Practical exercise: Run an SCA scan on a real project, identify vulnerable dependencies, and build a remediation plan (update, patch, mitigate)

Requirements

Prospective participants are expected to possess:

  • Foundational knowledge of software development principles
  • A basic grasp of web applications and common web technologies
  • Familiarity with the Software Development Lifecycle (SDLC)
  • A fundamental understanding of source code and software dependencies
  • Basic security concepts are advantageous but not a prerequisite

Target Audience

  • Software Developers
  • Software Engineers
  • QA and Software Test Engineers
  • DevOps and DevSecOps Engineers
  • Application Security Professionals
  • Security Engineers
  • Software Architects
  • Technical Leads
  • Professionals engaged in secure software development and application security testing

Number of participants


Price per participant

Testimonials (3)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories