Get in Touch
 Duration 21 hours

Course Outline

A01:2025 – Broken Access Control

Access control mechanisms enforce policies to ensure users cannot exceed their intended permissions. Failures in this area typically result in unauthorized disclosure, alteration, or destruction of data, or the execution of business functions beyond the user's authorized scope.

Practical Applications

  • Examination of real-world examples of broken access controls

  • Implementation of secure access controls and adherence to best practices

A02:2025 – Security Misconfiguration

Security misconfiguration occurs when systems, applications, or cloud services are improperly set up from a security standpoint, thereby creating exploitable vulnerabilities.

Practical Applications

  • Analysis of real-world misconfiguration cases

  • 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 processes of building, distributing, or updating software. These are frequently caused by vulnerabilities or malicious alterations in third-party code, tools, or other dependencies upon which the system relies.

A04:2025 – Cryptographic Failures

In general, all data in transit should be encrypted at the transport layer (OSI layer 4). Historical barriers such as CPU performance constraints and the complexity of private key/certificate management have been largely mitigated by modern CPUs featuring instructions to accelerate encryption (e.g., AES support) and by services like LetsEncrypt.org simplifying key management, alongside tightly integrated certificate management solutions provided by major cloud vendors.

Beyond securing the transport layer, it is crucial to identify data requiring encryption at rest, as well as data necessitating 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 demand enhanced protection, particularly when subject to privacy regulations like the EU's General Data Protection Regulation (GDPR) or standards such as the PCI Data Security Standard (PCI DSS).

Practical Applications

  • In-depth analysis of cryptographic failures, including weak encryption algorithms and improper key management

  • The significance of robust cryptographic mechanisms, secure protocols (SSL/TLS), and examples of modern cryptography 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 input fields, tricking the system into executing them as part of its normal operations. This can have severe consequences.

Practical Applications

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

  • Mitigation strategies utilizing prepared statements, parameterized queries, and input escaping

A06:2025 – Insecure Design

Insecure design is a broad category encompassing various weaknesses, characterized by "missing or ineffective control design."

It is distinct from the other Top Ten risk categories. It is important to differentiate between insecure design and insecure implementation; they stem from different root causes, occur at different stages of the development process, and require different remediation approaches.

A secure design may still suffer from implementation defects leading to exploitable vulnerabilities. Conversely, an insecure design cannot be rectified by perfect implementation if the necessary security controls were never originally established to defend against specific threats.

A contributing factor to insecure design is the lack of business risk profiling inherent in the software or system, leading to a failure to determine the required level of security design.

Practical Applications

  • Exploration of design flaws, such as improper input validation, that can lead to vulnerabilities

  • Study of strategies for secure architecture and secure design principles

A07:2025 – Authentication Failures

Authentication failures occur when an attacker successfully tricks a system into recognizing an invalid or incorrect user as legitimate.

Practical Applications

  • Review of common authentication issues

  • Implementation of secure authentication strategies, including multi-factor authentication and proper session handling

A08:2025 – Software or Data Integrity Failures

Software and data integrity failures involve code and infrastructure that fail to prevent invalid or untrusted code or data from being treated as trusted and valid.

An example includes an application relying on plugins, libraries, or modules from untrusted sources, repositories, or content delivery networks (CDNs).

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

Another example is a CI/CD process that retrieves code or artifacts from untrusted locations and/or fails to verify them before use (e.g., by checking signatures).

Practical Applications

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

  • Implementing safe update mechanisms and data integrity checks

A09:2025 – Security Logging and Alerting Failures

Without adequate logging and monitoring, attacks and breaches go undetected; without proper alerting, rapid and effective responses to security incidents are hindered.

Failures in logging, continuous monitoring, detection, and alerting for active responses are common occurrences.

Practical Applications

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

  • Utilizing 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, or respond to unusual and unpredictable situations, resulting in crashes, unexpected behavior, or potential vulnerabilities.

This can involve one or more of the following shortcomings:

  • The application fails to prevent an unusual situation from occurring

  • The application fails to identify the situation as it is happening

  • The application responds poorly or not at all to the situation afterwards

SAST – Static Application Security Testing

  1. Definition of static analysis and its optimal timing in the SDLC (shift-left approach)

  2. Types of vulnerabilities detectable via SAST, comparing vulnerable code with secure code

  3. Overview of SAST tools (e.g., Semgrep, SonarQube, Checkmarx, tailored to the client's tech stack)

  4. Practical exercise: executing a SAST scan on a repository with intentionally introduced vulnerabilities, interpreting results, and triaging false positives versus genuine vulnerabilities

DAST – Dynamic Application Security Testing

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

  2. The DAST scanning workflow, including crawling, fuzzing, and response analysis

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

  4. Practical exercise: conducting a DAST scan on a vulnerable test application (e.g., OWASP Juice Shop), identifying and validating findings

SCA – Software Composition Analysis

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

  2. Understanding SBOM (Software Bill of Materials): its definition and significance

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

  4. Practical exercise: running an SCA scan on a real project, identifying vulnerable dependencies, and formulating a remediation plan (updating, patching, or mitigating)

Requirements

Participants are expected to possess the following foundational knowledge:

  • A solid grasp of fundamental software development concepts
  • Basic comprehension of web applications and standard web technologies
  • Familiarity with the Software Development Lifecycle (SDLC)
  • An elementary understanding of source code structures and software dependencies
  • Basic knowledge of security concepts is advantageous, though not strictly required

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)

Upcoming Courses

Related Categories