Coding Labs helps developers advance their secure coding skills through hands-on training with intuitive feedback. Developers can advance their secure coding skills in a one-of-a-kind fully powered in-browser IDE. When Coding Labs are added to Courses, developers are given the opportunity to practice the knowledge they have gained during the course.
- For more information on Coding Labs see Coding Labs Overview
- For more information on editing published courses see How to Edit a Course
To add a Coding Lab to a Course
Labs are available in: (additional languages in development)
- C Embedded
- C# (.Net) Core
- C# (.Net) Web API
- C++ Basic
- Java Enterprise Edition (Basic)
- Java:Enterprise Edition API
- Java Spring
- Java Spring API
- Javascript Node.js (Express)
- JavaScript React
- Python Basic
- Python Django
- TypeScript Node.js(Express)
- TypeScript React
- Terraform AWS
Coding Labs are available in the following templates for either all or some of the languages listed above:
- Introductory Course
- Introduction to OWASP Top 10 Awareness (with latest updates from the Web top 10 2021)
- In-depth OWASP Top 10 Awareness (with latest updates from the Web top 10 2021)
- PCI DSS v4.0 Recommendations
- Secure Code Warrior Recommendations
- Security Measures for "EO-Critical Software" Use Under Executive Order (EO) 14028
- Certification Programme level 1 - OWASP 1-5
- Certification Programme level 2 - OWASP 6-10
- OWASP Top 10 2017 Awareness
- Storyline OWASP TOP 10 2021
- PCI DSS v3.2.1 Recommendations
Step 1
Create a new course and add a supported language, or;
Edit an existing course that already contains a supported language, or;
Edit an existing course and add a supported language.
Step 2
Select Course Content and then select a course module that contains content related to one of the supported vulnerabilities:
- Access Control: Missing Function Level Access Control
- Access Control: Missing Object Level Access Control
- Authentication: Insufficient Anti-Automation
- Authentication: Improper Authentication
- Authentication: Insecure Password Reset Function
- Authentication: Use of Single-factor Authentication
- Authentication: Insufficiently Protected Credentials
- Business Logic: Insufficient Validation
- Business Logic: Logical Error
- Cross-Site Scripting (XSS): DOM-Based Cross-Site Scripting
- Cross-Site Scripting (XSS): Stored Cross-Site Scripting
- File Upload Vulnerability: Unrestricted File Upload
- Information Exposure: Sensitive Data Exposure
- Injection Flaws: Deserialization of Untrusted Data
- Injection Flaws: LDAP Injection
- Injection Flaws: OS Command Injection
- Injection Flaws: Path Traversal
- Injection Flaws: SQL injection
- Insecure Cryptography: Insecure Randomness
- Insecure Cryptography: Weak Algorithm Use
- Insufficient Logging and Monitoring: Insufficient Logging and Monitoring
- Insufficient Transport Layer Protection: Unprotected Transport of Sensitive Information
- Insufficient Transport Layer Protection: Weak Algorithm or Protocol Use
- Lack of Resources & Rate Limiting: Lack of Resources & Rate Limiting
- Mass Assignment: Mass Assignment
- Memory Corruption: Buffer Overflow
- Memory Corruption: Double Free
- Memory Corruption: Format String Vulnerabilities
- Memory Corruption: Integer Overflow
- Memory Corruption: Use After Free
- Memory Corruption: Type Confusion
- Security Misconfiguration: Disabled Security Features
- Security Misconfiguration: Improper or Missing HTTP Headers
- Security Misconfiguration Information Exposure
- Security Misconfiguration: Improper Permissions
- Sensitive Data Storage: Plain Text Storage of Passwords
- Sensitive Data Storage: Plain Text Storage of Sensitive Information
- Server-Side Request Forgery: Server-Side Request Forgery (SSRF)
- Unvalidated Redirects and Forwards: Unvalidated Redirects and Forwards
- Vulnerable Components: Using Components From Untrusted Source
- Vulnerable Components: Using Known Vulnerable Components
- XML External Entities (XXE): XML External Entities (XXE)
Step 3
Select the ellipsis next to the right of the module name and select Add activity
Step 4
Select Coding lab and then select the required Category and Subcategory
Step 5
Select Apply changes. The selected Coding Lab will be added to the module.
Related Links:
Comments
0 comments
Please sign in to leave a comment.