Back to Course Catalog

All Courses

Course Title Course # Course Duration
API 210 – Mitigating APIs Lack of Resources & Rate Limiting API 210 15 minutes
API 211 – Mitigating APIs Broken Object Level Authorization API 211 15 minutes
API 213 – Mitigating APIs Mass Assignment API 213 15 minutes
API 214 – Mitigating APIs Improper Asset Management API 214 15 minutes
API 250 – Controlling Access to the Kubernetes API API 250 20 minutes
API 251 – Implementing Web Application and API Protection (WAAP) API 251 35 minutes
API 351 – Securing Kubernetes in the Build and Release Stages API 351 25 minutes
ATK 201 – Using the MITRE ATT&CK Framework ATK 201 15 minutes
AWA 101 – Fundamentals of Application Security AWA 101 20 minutes
AWA 102 – Secure Software Concepts AWA 102 20 minutes
COD 102 – Challenges in Application Security COD 102 10 minutes
COD 103 – Creating Software Security Requirements COD 103 10 minutes
COD 104 – Designing Secure Software COD 104 15 minutes
COD 105 – Secure Software Development COD 105 20 minutes
COD 106 – The Importance of Software Integration and Testing COD 106 15 minutes
COD 107 – Secure Software Deployment COD 107 10 minutes
COD 108 – Software Operations and Maintenance COD 108 10 minutes
COD 110 – Fundamentals of Secure Mobile Development COD 110 45 minutes
COD 141 – Fundamentals of Database Security COD 141 30 minutes
COD 152 – Fundamentals of Secure Cloud Development COD 152 20 minutes
COD 160 – Fundamentals of Secure Embedded Software Development COD 160 45 minutes
COD 170 – Identifying Threats to Mainframe COBOL Applications & Data COD 170 20 minutes
COD 201 – Secure C Encrypted Network Communications COD 201 15 minutes
COD 202 – Secure C Run-Time Protection COD 202 15 minutes
COD 206 – Creating Secure C++ Code COD 206 15 minutes
COD 207 – Communication Security in C++ COD 207 15 minutes
COD 214 – Creating Secure GO Applications COD 214 30 minutes
COD 215 – Mitigating .NET Application Vulnerabilities COD 215 25 minutes
COD 219 – Creating Secure Code: SAP ABAP Foundations COD 219 90 minutes
COD 241 – Creating Secure Oracle DB Applications COD 241 45 minutes
COD 242 – Creating Secure SQL Server & Azure SQL DB Applications COD 242 40 minutes
COD 246 – PCI DSS Requirement 3: Protecting Stored Cardholder Data COD 246 20 minutes
COD 247 – PCI DSS Requirement 4: Encrypting Transmission of Cardholder Data COD 247 15 minutes
COD 248 – PCI DSS Requirement 6: Develop and Maintain Secure Systems and Applications COD 248 15 minutes
COD 249 – PCI DSS Requirement 11: Regularly Test Security Systems and Processes COD 249 15 minutes
COD 251 – Defending AJAX-Enabled Web Applications COD 251 25 minutes
COD 252 – Securing Google Platform Applications & Data COD 252 25 minutes
COD 253 – Creating Secure AWS Cloud Applications COD 253 45 minutes
COD 254 – Creating Secure Azure Applications COD 254 45 minutes
COD 255 – Creating Secure Code: Web API Foundations COD 255 20 minutes
COD 256 – Creating Secure Ruby on Rails Foundations COD 256 45 minutes
COD 257 – Creating Secure Python Web Applications COD 257 45 minutes
COD 258 – Creating Secure PHP Web Applications COD 258 30 minutes
COD 259 – Node.js Threats & Vulnerabilities COD 259 30 minutes
COD 261 – Threats to Scripts COD 261 30 minutes
COD 262 – Fundamentals of Shell and Interpreted Language Security COD 262 30 minutes
COD 263 – Secure Bash Scripting COD 263 15 minutes
COD 264 – Secure Perl Scripting COD 264 15 minutes
COD 265 – Secure Python Scripting COD 265 15 minutes
COD 266 – Secure Ruby Scripting COD 266 15 minutes
COD 267 – Securing Python Microservices COD 267 30 minutes
COD 268 – Mitigating TypeScript Application Vulnerabilities COD 268 30 minutes
COD 270 – Creating Secure COBOL & Mainframe Applications COD 270 25 minutes
COD 283 – Java Cryptography (UPDATED) COD 283 30 minutes
COD 284 – Secure Java Coding COD 284 30 minutes
COD 285 – Developing Secure Angular Applications COD 285 30 minutes
COD 286 – Creating Secure React User Interfaces COD 286 10 minutes
COD 287 – Java Application Server Hardening COD 287 20 minutes
COD 288 – Java Public Key Cryptography COD 288 20 minutes
COD 301 – Secure C Buffer Overflow Mitigations COD 301 45 minutes
COD 302 – Secure C Memory Management (UPDATED) COD 302 20 minutes
COD 303 – Mitigating C Code Vulnerabilities COD 303 20 minutes
COD 304 – Principles of C++ Memory Safety COD 304 25 minutes
COD 305 – C++ Secure Memory Management COD 305 30 minutes
COD 306 – C++ Memory Safety: Debugging Tools and Techniques COD 306 20 minutes
COD 307 – Protecting Data in C++ COD 307 25 minutes
COD 308 – Common ASP.NET MVC Vulnerabilities and Attacks COD 308 45 minutes
COD 309 – Securing ASP.NET MVC Applications COD 309 20 minutes
COD 310 – Securing ASP.NET Core Applications (NEW) COD 310 20 minutes
COD 315 – Preventing Vulnerabilities in iOS Code in Swift COD 315 20 minutes
COD 316 – Creating Secure iOS Code in Objective C COD 316 30 minutes
COD 317 – Protecting Data on iOS in Swift COD 317 20 minutes
COD 318 – Protecting Data on Android in Java COD 318 30 minutes
COD 319 – Preventing Vulnerabilities in Android Code in Java COD 319 30 minutes
COD 321 – Protecting C# from Integer Overflows & Canonicalization COD 321 30 minutes
COD 322 – Protecting C# from SQL Injection COD 322 8 minutes
COD 323 – Using Encryption with C# COD 323 20 minutes
COD 324 – Protecting C# from XML Injection COD 324 8 minutes
COD 325 – Protecting Data in C# for .NET Core (NEW) COD 325 30 minutes
COD 352 – Creating Secure JavaScript and jQuery Code COD 352 45 minutes
COD 361 – HTML5 Secure Threats COD 361 15 minutes
COD 362 – HTML5 Built in Security Features COD 362 20 minutes
COD 363 – Securing HTML5 Data COD 363 20 minutes
COD 364 – Securing HTML5 Connectivity COD 364 20 minutes
COD 366 – Creating Secure Kotlin Applications COD 366 20 minutes
COD 380 – Preventing SQL Injection in Java COD 380 8 minutes
COD 381 – Preventing Path Traversal Attacks in Java COD 381 8 minutes
COD 382 – Protecting Data in Java COD 382 30 minutes
COD 383 – Protecting Java Backend Services COD 383 30 minutes
COD 384 – Protecting Java from Information Disclosure COD 384 8 minutes
COD 385 – Preventing Race Conditions in Java Code COD 385 8 minutes
COD 386 – Preventing Integer Overflows in Java Code COD 386 8 minutes
CYB 210 – Cybersecurity Incident Response CYB 210 12 minutes
CYB 211 – Identifying and Protecting Assets Against Ransomware CYB 211 12 minutes
CYB 212 – Fundamentals of Security Information & Event Management (SIEM) CYB 212 15 minutes
CYB 213 – Generative AI Privacy & Cybersecurity Risk CYB 213 30 minutes
CYB 250 – Cyber Threat Hunting: Tactics, Techniques, and Procedures (TTP) CYB 250 20 minutes
CYB 301 – Fundamentals of Ethical Hacking CYB 301 15 minutes
CYB 310 – Using Cyber Supply Chain Risk Management (C-SCRM) to Mitigate Threats to IT/OT CYB 310 40 minutes
CYB 311 – Threat Analysis with AI CYB 311 20 minutes
DES 101 – Fundamentals of Secure Architecture DES 101 20 minutes
DES 151 – Fundamentals of the PCI Secure SLC Standard DES 151 25 minutes
DES 202 – Cryptographic Suite Services: Encoding, Encrypting & Hashing DES 202 45 minutes
DES 203 – Cryptographic Components: Randomness, Algorithms, and Key Management DES 203 15 minutes
DES 204 – Role of Cryptography in Application Development DES 204 15 minutes
DES 205 – Message Integrity Cryptographic Functions DES 205 45 minutes
DES 206 – Meeting Cloud Governance and Compliance Requirements DES 206 15 minutes
DES 207 – Mitigating OWASP API Security Top 10 DES 207 15 minutes
DES 208 – Defending Against the CSA Top 11 Threats to Cloud Computing DES 208 15 minutes
DES 209 – Authentication and Lifecycle Management DES 209 15 minutes
DES 210 – Hardening Linux/Unix Systems DES 210 30 minutes
DES 212 – Architecture Risk Analysis & Remediation DES 212 30 minutes
DES 214 – Securing Infrastructure Architecture DES 214 30 minutes
DES 215 – Defending Infrastructure DES 215 30 minutes
DES 216 – Protecting Cloud Infrastructure DES 216 40 minutes
DES 217 – Securing Terraform Infrastructure and Resources DES 217 20 minutes
DES 218 – Protecting Microservices, Containers, and Orchestration DES 218 30 minutes
DES 219 – Securing Google’s Firebase Platform DES 219 60 minutes
DES 232 – Mitigating OWASP 2021 Injection DES 232 12 minutes
DES 233 – Mitigating OWASP 2021 Identification and Authentication Failures DES 233 12 minutes
DES 234 – Mitigating OWASP 2021 Cryptographic Failures DES 234 12 minutes
DES 235 – Mitigating OWASP 2021 Insecure Design DES 235 12 minutes
DES 236 – Mitigating OWASP 2021 Broken Access Control DES 236 12 minutes
DES 237 – Mitigating OWASP 2021 Security Misconfiguration DES 237 12 minutes
DES 238 – Mitigating OWASP 2021 Server-Side Request Forgery (SSRF) DES 238 12 minutes
DES 239 – Mitigating OWASP 2021 Software and Data Integrity Failures DES 239 12 minutes
DES 240 – Mitigating OWASP 2021 Vulnerable and Outdated Components DES 240 12 minutes
DES 241 – Mitigating OWASP 2021 Security Logging and Monitoring Failures DES 241 12 minutes
DES 250 – Secure Software Acceptance and Deployment DES 250 25 minutes
DES 255 – Securing the IoT Update Process DES 255 30 minutes
DES 260 – Fundamentals of IoT Architecture & Design DES 260 30 minutes
DES 261 – Securing Serverless Environments DES 261 20 minutes
DES 262 – Securing Enterprise Low-Code Applications Platforms DES 262 20 minutes
DES 270 – Mitigating OWASP Mobile Top 10 Risks (NEW) DES 270 30 minutes
DES 281 – OWASP IoT1: Mitigating Weak, Guessable or Hardcoded Passwords DES 281 12 minutes
DES 282 – OWASP IoT2: Mitigating Insecure Network Services DES 282 12 minutes
DES 283 – OWASP IoT3: Mitigating Insecure Ecosystem Interfaces DES 283 12 minutes
DES 284 – OWASP IoT4: Mitigating Lack of Secure Update Mechanism DES 284 12 minutes
DES 285 – OWASP IoT5: Mitigating Use of Insecure or Outdated Components DES 285 12 minutes
DES 286 – OWASP IoT6: Mitigating Insufficient Privacy Protection DES 286 12 minutes
DES 287 – OWASP IoT7: Mitigating Insecure Data Transfer and Storage DES 287 12 minutes
DES 288 – OWASP IoT8: Mitigating Lack of Device Management DES 288 12 minutes
DES 289 – OWASP IoT9: Mitigating Insecure Default Settings DES 289 12 minutes
DES 290 – OWASP IoT10 Mitigating Lack of Physical Hardening DES 290 12 minutes
DES 305 – Protecting Existing Blockchain Assets DES 305 20 minutes
DES 306 – Creating a Secure Blockchain Network DES 306 20 minutes
DES 311 – Creating Secure Application Architecture DES 311 45 minutes
DES 312 – Protecting Cardholder Data DES 312 20 minutes
DES 313 – Hardening a Kubernetes Cluster DES 313 20 minutes
DES 314 – Hardening the Docker Engine DES 314 15 minutes
DES 361 – Mitigating LCNC (Low-Code/No-Code) Account Impersonation DES 361 20 minutes
DES 362 – Mitigating LCNC (Low-Code/No-Code) Authorization Misuse DES 362 20 minutes
DES 364 – Mitigating Low-Code/No-Code Authentication and Secure Communication Failures DES 364 20 minutes
DSO 201 – Fundamentals of Secure DevOps DSO 201 30 minutes
DSO 205 – Securing the COTS Supply Chain DSO 205 15 minutes
DSO 206 – Securing the Open Source Supply Chain DSO 206 15 minutes
DSO 211 – Identifying Threats to Containers in a DevSecOps Framework DSO 211 20 minutes
DSO 212 – Fundamentals of Zero Trust Security DSO 212 15 minutes
DSO 253 – DevSecOps in the AWS Cloud DSO 253 20 minutes
DSO 254 – DevSecOps in the Azure Cloud DSO 254 20 minutes
DSO 256 – DevSecOps in the Google Cloud Platform DSO 256 20 minutes
DSO 301 – Orchestrating Secure System and Service Configuration DSO 301 20 minutes
DSO 302 – Automated Security Testing DSO 302 20 minutes
DSO 303 – Automating Security Updates DSO 303 20 minutes
DSO 304 – Securing API Gateways in a DevSecOps Framework DSO 304 20 minutes
DSO 305 – Automating CI/CD Pipeline Compliance DSO 305 20 minutes
DSO 306 – Implementing Infrastructure as Code DSO 306 20 minutes
DSO 307 – Secure Secrets Management DSO 307 20 minutes
ENG 110 – Essential Account Management Security ENG 110 15 minutes
ENG 111 – Essential Session Management Security ENG 111 15 minutes
ENG 112 – Essential Access Control for Mobile Devices ENG 112 15 minutes
ENG 113 – Essential Secure Configuration Management ENG 113 15 minutes
ENG 114 – Essential Risk Assessment ENG 114 15 minutes
ENG 115 – Essential System & Information Integrity ENG 115 15 minutes
ENG 116 – Essential Security Planning Policy & Procedures ENG 116 15 minutes
ENG 117 – Essential Information Security Program Planning ENG 117 15 minutes
ENG 118 – Essential Incident Response ENG 118 15 minutes
ENG 119 – Essential Security Audit & Accountability ENG 119 15 minutes
ENG 120 – Essential Security Assessment & Authorization ENG 120 15 minutes
ENG 121 – Essential Identification & Authentication ENG 121 15 minutes
ENG 122 – Essential Physical & Environmental Protection ENG 122 15 minutes
ENG 123 – Essential Security Engineering Principles ENG 123 15 minutes
ENG 124 – Essential Application Protection ENG 124 15 minutes
ENG 125 – Essential Data Protection ENG 125 15 minutes
ENG 126 – Essential Security Maintenance Policies ENG 126 15 minutes
ENG 127 – Essential Media Protection ENG 127 15 minutes
ENG 150 – Meeting Confidentiality, Integrity, and Availability ENG 150 30 minutes
ENG 151 – Fundamentals of Privacy Protection ENG 151 10 minutes
ENG 191 – Introduction to the Microsoft SDL ENG 191 25 minutes
ENG 192 – Implementing the Agile Microsoft SDL ENG 192 20 minutes
ENG 193 – Implementing the Microsoft SDL Optimization Model ENG 193 12 minutes
ENG 194 – Implementing Microsoft SDL Line of Business ENG 194 20 minutes
ENG 195 – Implementing the Microsoft SDL Threat Modeling Tool ENG 195 20 minutes
ENG 205 – Fundamentals of Threat Modeling ENG 205 45 minutes
ENG 211 – How to Create Application Security Design Requirements ENG 211 15 minutes
ENG 212 – Implementing Secure Software Operations ENG 212 20 minutes
ENG 251 – Risk Management Foundations ENG 251 20 minutes
ENG 311 – Attack Surface Analysis & Reduction ENG 311 25 minutes
ENG 312 – How to Perform a Security Code Review ENG 312 30 minutes
ENG 320 – Using Software Composition Analysis (SCA) to Secure Open-Source Components ENG 320 20 minutes
ENG 351 – Preparing the Risk Management Framework ENG 351 20 minutes
ENG 352 – Categorizing Systems and Information within the RMF ENG 352 10 minutes
ENG 353 – Selecting, Implementing and Assessing Controls within the RMF ENG 353 20 minutes
ENG 354 – Authorizing and Monitoring System Controls within the RMF ENG 354 20 minutes
ICS 210 – ICS/SCADA Security Essentials ICS 210 12 minutes
ICS 310 – Protecting Information and System Integrity in Industrial Control System Environments ICS 310 15 minutes
LAB 111 – Identifying Server-Side Request Forgery LAB 111 5 minutes
LAB 113 – Identifying Cryptographic Failures LAB 113 5 minutes
LAB 114 – Identifying Cookie Tampering Lab 114 5 minutes
LAB 115 – Identifying Reflective XSS LAB 115 5 minutes
LAB 116 – Identifying Forceful Browsing LAB 116 5 minutes
LAB 117 – Identifying Hidden Form Field LAB 117 5 minutes
LAB 118 – Identifying Weak File Upload Validation LAB 118 5 minutes
LAB 119 – Identifying Persistent XSS LAB 119 5 minutes
LAB 120 – Identifying XML Injection LAB 120 5 minutes
LAB 121 – Identifying Vulnerable and Outdate Components LAB 121 5 minutes
LAB 122 – Identifying Insecure APIs LAB 122 5 minutes
LAB 123 – Identifying Vertical Privilege Escalation LAB 123 5 minutes
LAB 124 – Identifying Horizontal Privilege Escalation LAB 124 5 minutes
LAB 125 – Identifying Buffer Overflow LAB 125 5 minutes
LAB 126 – Identifying Information Leakage LAB 126 5 minutes
LAB 127 – Identifying Security Logging and Monitoring Failures LAB 127 5 minutes
LAB 128 – Identifying Unverified Password Change LAB 128 5 minutes
LAB 129 – Identifying Error Message Containing Sensitive Information LAB 129 5 minutes
LAB 130 – Identifying Generation of Predictable Numbers or Identifiers LAB 130 5 minutes
LAB 131 – Identifying Improper Restriction of XML External Entity Reference LAB 131 5 minutes
LAB 132 – Identifying Exposed Services LAB 132 5 minutes
LAB 133 – Identifying Exposure of Sensitive Information Through Environmental Variables LAB 133 5 minutes
LAB 134 – Identifying Plaintext Storage of a Password LAB 134 5 minutes
LAB 135 – Identifying URL Redirection to Untrusted Site LAB 135 5 minutes
LAB 136 – Identifying Improper Neutralization of Script in Attributes in a Web Page LAB 136 5 minutes
LAB 137 – Identifying Improper Authorization LAB 137 5 minutes
LAB 138 – Identifying Authorization Bypass Through User-Controlled Key LAB 138 5 minutes
LAB 139 – Identifying Use of a Key Past its Expiration Date LAB 139 5 minutes
LAB 201 – Defending Java Applications Against Canonicalization LAB 201 5 minutes
LAB 202 – Defending Python Applications Against Canonicalization LAB 202 5 minutes
LAB 203 – Defending C# Applications Against Canonicalization LAB 203 5 minutes
LAB 204 – Defending Node.js Applications Against Canonicalization LAB 204 5 minutes
LAB 205 – Defending Java Applications Against XPath Injection LAB 205 5 minutes
LAB 206 – Defending Python Applications Against XPath Injection LAB 206 5 minutes
LAB 207 – Defending Node.js Applications Against XPath Injection LAB 207 5 minutes
LAB 208 – Defending C# Applications Against XPath Injection LAB 208 5 minutes
LAB 211 – Defending Java Applications Against Credentials in Code Medium LAB 211 10 minutes
LAB 212 – Defending Python Applications Against Credentials in Code Medium LAB 212 10 minutes
LAB 213 – Defending Node.js Applications Against Credentials in Code Medium LAB 213 10 minutes
LAB 214 – Defending C# Applications Against Credentials in Code Medium LAB 214 10 minutes
LAB 215 – Defending Java Applications Against Business Logic Error for Input Validation LAB 215 10 minutes
LAB 216 – Defending Python Applications Against Business Logic Error for Input Validation LAB 216 10 minutes
LAB 217 – Defending Node.js Applications Against Business Logic Error for Input Validation LAB 217 10 minutes
LAB 218 – Defending C# Applications Against Business Logic Error for Input Validation LAB 218 10 minutes
LAB 220 – Defending Against Hard-Coded Secrets LAB 220 5 minutes
LAB 221 – Defending C# Applications Against SQL Injection LAB 221 10 minutes
LAB 222 – Defending Python Applications Against SQL Injection LAB 222 10 minutes
LAB 223 – Defending Node.js Applications Against SQL Injection LAB 223 10 minutes
LAB 224 – Defending Java Applications Against Forceful Browsing LAB 224 10 minutes
LAB 225 – Defending Python Applications Against Forceful Browsing LAB 225 10 minutes
LAB 226 – Defending Node.js Applications Against Forceful Browsing LAB 226 10 minutes
LAB 227 – Defending C# Applications Against Forceful Browsing LAB 227 10 minutes
LAB 228 – Defending Java Applications Against Weak AES ECB Mode Encryption LAB 228 10 minutes
LAB 229 – Defending Java Applications Against Weak PRNG LAB 229 10 minutes
LAB 230 – Defending Java Applications Against XSS LAB 230 15 minutes
LAB 231 – Defending Python Applications Against XSS LAB 231 15 minutes
LAB 232 – Defending C# Applications Against XSS LAB 232 15 minutes
LAB 233 – Defending Node.js Applications Against XSS LAB 233 15 minutes
LAB 234 – Defending Java Applications Against Parameter Tampering LAB 234 10 minutes
LAB 235 – Defending Java Applications Against Plaintext Password Storage LAB 235 10 minutes
LAB 236 – Defending Java Applications Against Sensitive Information in Error Messages LAB 236 10 minutes
LAB 237 – Defending Java Applications Against SQL Injection LAB 237 20 minutes
LAB 238 – Defending C# Applications Against Weak AES ECB Mode Encryption LAB 238 10 minutes
LAB 239 – Defending C# Applications Against Weak PRNG LAB 239 10 minutes
LAB 240 – Defending Java Applications Against eXternal XML Entity (XXE) Vulnerabilities LAB 240 10 minutes
LAB 241 – Defending C# Applications Against eXternal XML Entity (XXE) Vulnerabilities LAB 241 10 minutes
LAB 242 – Defending Node.js Applications Against eXternal XML Entity (XXE) Vulnerabilities LAB 242 10 minutes
LAB 243 – Defending Python Applications Against eXternal XML Entity (XXE) Vulnerabilities LAB 243 10 minutes
LAB 244 – Defending Java Applications Against Security Misconfiguration LAB 244 12 minutes
LAB 245 – Defending Node.js Applications Against Plaintext Password Storage LAB 245 10 minutes
LAB 246 – Defending Node.js Applications Against Weak AES ECB Mode Encryption LAB 246 10 minutes
LAB 247 – Defending Node.js Applications Against Weak PRNG LAB 247 10 minutes
LAB 248 – Defending Node.js Applications Against Parameter Tampering LAB 248 10 minutes
LAB 249 – Defending Python Applications Against Plaintext Password Storage LAB 249 10 minutes
LAB 250 – Defending C# Applications Against Parameter Tampering LAB 250 10 minutes
LAB 251 – Defending C# Applications Against Plaintext Password Storage LAB 251 10 minutes
LAB 252 – Defending Python Applications Against Weak AES ECB Mode Encryption LAB 252 10 minutes
LAB 253 – Defending Python Applications Against Weak PRNG LAB 253 10 minutes
LAB 254 – Defending Python Applications Against Parameter Tampering LAB 254 10 minutes
LAB 260 – Defending C# Applications Against Sensitive Information in Error Messages LAB 260 10 minutes
LAB 261 – Defending Python Applications Against Sensitive Information in Error Messages LAB 261 10 minutes
LAB 262 – Defending Node.js Applications Against Sensitive Information in Error Messages LAB 262 10 minutes
LAB 263 – Defending Java Applications Against Sensitive Information in Log Files LAB 263 10 minutes
LAB 264 – Defending Python Applications Against Sensitive Information in Log Files LAB 264 10 minutes
LAB 265 – Defending Node.js Applications Against Sensitive Information in Log Files LAB 265 10 minutes
LAB 266 – Defending C# Applications Against Sensitive Information in Log Files LAB 266 10 minutes
LAB 267 – Defending Java Applications Against Deserialization of Untrusted Data LAB 267 10 minutes
LAB 268 – Defending Python Applications Against Deserialization of Untrusted Data LAB 268 10 minutes
LAB 269 – Defending Node.js Applications Against Deserialization of Untrusted Data LAB 269 10 minutes
LAB 270 – Defending C# Applications Against Deserialization of Untrusted Data LAB 270 10 minutes
LAB 271 – Defending Java Applications Against SSRF LAB 271 10 minutes
LAB 272 – Defending Python Applications Against SSRF LAB 272 10 minutes
LAB 273 – Defending Node.js Applications Against SSRF LAB 273 10 minutes
LAB 274 – Defending C# Applications Against SSRF LAB 274 10 minutes
LAB 275 – Defending Java Applications Against Command Injection LAB 275 10 minutes
LAB 276 – Defending Python Applications Against Command Injection LAB 276 10 minutes
LAB 277 – Defending Node.js Applications Against Command Injection LAB 277 10 minutes
LAB 278 – Defending C# Applications Against Command Injection LAB 278 10 minutes
LAB 279 – Defending Java Applications Against Dangerous File Upload LAB 279 10 minutes
LAB 280 – Defending Python Applications Against Dangerous File Upload LAB 280 10 minutes
LAB 281 – Defending Node.js Applications Against Dangerous File Upload LAB 281 10 minutes
LAB 282 – Defending C# Applications Against Dangerous File Upload LAB 282 10 minutes
LAB 283 – Defending Java Applications Against RegEx DoS LAB 283 10 minutes
LAB 284 – Defending Python Applications Against RegEx DoS LAB 284 10 minutes
LAB 285 – Defending Node.js Applications Against RegEx DoS LAB 285 10 minutes
LAB 286 – Defending C# Applications Against RegEx DoS LAB 286 10 minutes
LAB 287 – Defending Java Applications Against Null Pointer Dereference LAB 287 10 minutes
LAB 288 – Defending C# Applications Against Null Pointer Dereference LAB 288 10 minutes
LAB 289 – Defending Java Applications Against Path Traversal LAB 289 10 minutes
LAB 290 – Defending Python Applications Against Path Traversal LAB 290 10 minutes
LAB 291 – Defending Node.js Applications Against Path Traversal LAB 291 10 minutes
LAB 292 – Defending C# Applications Against Path Traversal LAB 292 10 minutes
LAB 293 – Defending Java Applications Against Integer Overflow LAB 293 10 minutes
LAB 294 – Defending C# Applications Against Integer Overflow LAB 294 10 minutes
LAB 301 – Defending Java Applications Against Open Redirect LAB 301 5 minutes
LAB 302 – Defending Python Applications Against Open Redirect LAB 302 5 minutes
LAB 303 – Defending C# Applications Against Open Redirect LAB 303 5 minutes
LAB 304 – Defending Node.js Applications Against Open Redirect LAB 304 5 minutes
LAB 305 – Defending Java Applications Against Weak Password Reset LAB 305 5 minutes
LAB 306 – Defending Python Applications Against Weak Password Reset LAB 306 5 minutes
LAB 307 – Defending C# Applications Against Weak Password Reset LAB 307 5 minutes
LAB 308 – Defending Node.js Applications Against Weak Password Reset LAB 308 5 minutes
LAB 309 – Defending TypeScript Applications Against Unrestricted Upload of File with Dangerous Type LAB 309 5 minutes
LAB 314 – Defending TypeScript Applications Against SSRF LAB 314 5 minutes
LAB 316 – Defending TypeScript Applications Against Hard-coded Credentials LAB 316 5 minutes
LAB 320 – Defending TypeScript Applications Against Code Injection LAB 320 5 minutes
LAB 325 – Defending TypeScript Applications Against CSRF LAB 325 5 minutes
LAB 326 – Defending TypeScript Applications Against Path Traversal LAB 326 5 minutes
LAB 327 – Defending C Applications Against Path Traversal LAB 327 5 minutes
LAB 328 – Defending C++ Applications Against Path Traversal LAB 328 5 minutes
LAB 329 – Defending Go Applications Against SSRF LAB 329 15 minutes
LAB 333 – Defending Go Applications Against Hard-coded Credentials LAB 333 15 minutes
LAB 338 – Defending Go Applications Against CSRF LAB 338 15 minutes
LAB 339 – Defending Go Applications Against Path Traversal LAB 339 15 minutes
LAB 340 – Defending C Applications Against Use After Free LAB 340 15 minutes
LAB 341 – Defending C++ Applications Against Use After Free LAB 341 15 minutes
LAB 342 – Defending TypeScript Applications Against Command Injection LAB 342 15 minutes
LAB 343 – Defending Go Applications Against Command Injection LAB 343 15 minutes
LAB 344 – Defending TypeScript Applications Against Incorrect Authorization LAB 344 15 minutes
LAB 345 – Defending Go Applications Against Incorrect Authorization LAB 345 15 minutes
LAB 346 – Defending TypeScript Applications Against Deserialization of Untrusted LAB 346 15 minutes
LAB 347 – Defending C Applications Against Null Pointer Dereference LAB 347 15 minutes
LAB 348 – Defending C++ Applications Against Null Pointer Dereference (NEW) LAB 348 15 minutes
LAB 349 – Defending TypeScript Applications Against SQL Injection (NEW) LAB 349 15 minutes
LAB 350 – Defending Go Applications Against SQL Injection (NEW) LAB 350 15 minutes
LAB 351 – Defending TypeScript Applications Against Cross-Site Scripting (NEW) LAB 351 15 minutes
LAB 352 – Defending Go Applications Against Cross-Site Scripting (NEW) LAB 352 15 minutes
LAB 353 – Defending TypeScript Applications Against Improper Authentication (NEW) LAB 353 15 minutes
LAB 354 – Defending Go Applications Against Improper Authentication (NEW) LAB 354 15 minutes
LAB 355 – Defending C Applications Against Stack-based Buffer Overflow (NEW) LAB 355 15 minutes
LAB 610 – ATT&CK: File and Directory Permissions Modification LAB 610 12 minutes
LAB 611 – ATT&CK: File and Directory Discovery LAB 611 12 minutes
LAB 612 – ATT&CK: Testing for Network Services Identification LAB 612 12 minutes
LAB 613 – ATT&CK: Testing for Vulnerability Identification Using Vulnerability Databases LAB 613 12 minutes
LAB 615 – ATT&CK: Updating Vulnerable Java Web Application Server Software LAB 615 12 minutes
LAB 616 – ATT&CK: Host Vulnerability Scanning LAB 616 15 minutes
LAB 617 – ATT&CK: Testing for Plaintext Secrets in Files LAB 617 12 minutes
LAB 618 – ATT&CK: Log Analysis LAB 618 12 minutes
LAB 619 – ATT&CK: Exfiltration Over C2 Channel LAB 619 30 minutes
LAB 620 – ATT&CK: Advanced Exploit of Remote Services LAB 620 30 minutes
LAB 621 – ATT&CK: Password Cracking LAB 621 5 minutes
LAB 622 – ATT&CK: Exploiting Windows File Sharing Server with External Remote Services LAB 622 20 minutes
LAB 623 – ATT&CK: Exploiting Vulnerable Java Web Application Server Software LAB 623 12 minutes
LAB 624 – ATT&CK: Exploiting Java Web Application Server Misconfiguration LAB 624 12 minutes
LAB 625 – ATT&CK: Advanced Exploit of Public-Facing Application LAB 625 30 minutes
LAB 626 – Using an Exploit Framework for SQL Injection LAB 626 30 minutes
LAB 627 – Using an Exploit Framework for Port Scanning LAB 627 15 minutes
LAB 628 – Using an Exploit Framework for SMB Version Scanning LAB 628 15 minutes
LAB 629 – Using an Exploit Framework for SNMP Scanning LAB 629 15 minutes
LAB 630 – ATT&CK: Exploiting Java SQL Injection to Extract Password Hashes LAB 630 15 minutes
LAB 631 – ATT&CK: Network Service Discovery LAB 631 12 minutes
LAB 632 – ATT&CK: Network Share Discovery LAB 632 12 minutes
LAB 633 – Using an Exploit Framework for Web Application Scanning (NEW) LAB 633 30 minutes
LAB 634 – ATT&CK: Create Account LAB 634 12 minutes
LAB 635 – ATT&CK: Unsecured Credentials LAB 635 12 minutes
LAB 636 – ATT&CK: Data from Local System LAB 636 12 minutes
LAB 637 – ATT&CK: Valid Accounts LAB 637 12 minutes
LAB 638 – Using Mimikatz (NEW) LAB 638 15 minutes
LAB 639 – Using an Exploit Framework via Command Line Interface (NEW) LAB 639 15 minutes
SDT 301 – Testing for Injection SDT 301 10 minutes
SDT 302 – Testing for Identification and Authentication Failures SDT 302 10 minutes
SDT 303 – Testing for Cryptographic Failures SDT 303 10 minutes
SDT 304 – Testing for Insecure Design SDT 304 10 minutes
SDT 305 – Testing for Broken Access Control SDT 305 10 minutes
SDT 306 – Testing for Security Misconfiguration SDT 306 10 minutes
SDT 307 – Testing for Server-Side Request Forgery (SSRF) SDT 307 10 minutes
SDT 308 – Testing for Software and Data Integrity Failures SDT 308 10 minutes
SDT 309 – Testing for Vulnerable and Outdated Components SDT 309 10 minutes
SDT 310 – Testing for Security Logging and Monitoring Failures SDT 310 10 minutes
SDT 311 – Testing for Integer Overflow or Wraparound SDT 311 15 minutes
SDT 312 – Testing for (Path Traversal) Improper Limitation of a Pathname to a Restricted Directory SDT 312 15 minutes
SDT 313 – Testing for (CSRF) Cross Site Request Forgery SDT 313 15 minutes
SDT 314 – Testing for Unrestricted Upload of File with Dangerous Type SDT 314 15 minutes
SDT 315 – Testing for Incorrect Permission Assignment for Critical Resource SDT 315 15 minutes
SDT 316 – Testing for Use of Hard-Coded Credentials SDT 316 15 minutes
SDT 317 – Testing for Improper Control of Generation of Code SDT 317 10 minutes
SDT 318 – Testing for Insufficiently Protected Credentials SDT 318 10 minutes
SDT 319 – Testing for Out-of-bounds Read SDT 319 10 minutes
SDT 320 – Testing for Out-of-bounds Write SDT 320 10 minutes
SDT 321 – Testing for Uncontrolled Resource Consumption SDT 321 10 minutes
SDT 322 – Testing for Improper Privilege Management SDT 322 10 minutes
SDT 323 – Testing for Improper Input Validation SDT 323 10 minutes
SDT 324 – Testing for Improper Restriction of Operations within the Bounds of a Memory Buffer SDT 324 10 minutes
SDT 325 – Testing for NULL Pointer Dereference SDT 325 10 minutes
SDT 326 – Testing for Use After Free SDT 326 10 minutes
TST 101 – Fundamentals of Security Testing TST 101 20 minutes
TST 202 – Penetration Testing Fundamentals TST 202 25 minutes
TST 205 – Performing Vulnerability Scans TST 205 45 minutes
TST 206 – ASVS Requirements for Developers TST 206 20 minutes
TST 301 – Infrastructure Penetration Testing TST 301 45 minutes
TST 302 – Application Penetration Testing TST 302 45 minutes
TST 303 – Penetration Testing for Google Cloud Platform TST 303 20 minutes
TST 304 – Penetration Testing for AWS Cloud TST 304 20 minutes
TST 305 – Penetration Testing for Azure Cloud TST 305 20 minutes
TST 351 – Penetration Testing for TLS Vulnerabilities TST 351 12 minutes
TST 352 – Penetration Testing for Injection Vulnerabilities TST 352 12 minutes
TST 353 – Penetration Testing for SQL Injection TST 353 12 minutes
TST 354 – Penetration Testing for Memory Corruption Vulnerabilities TST 354 12 minutes
TST 355 – Penetration Testing for Authorization Vulnerabilities TST 355 12 minutes
TST 356 – Penetration Testing for Cross-Site Scripting (XSS) TST 356 12 minutes
TST 357 – Penetration Testing for Hardcoded Secrets TST 357 12 minutes
TST 358 – Penetration Testing Wireless Networks TST 358 12 minutes
TST 359 – Penetration Testing Network Infrastructure TST 359 12 minutes
TST 360 – Penetration Testing for Authentication Vulnerabilities TST 360 12 minutes