Browse everything
Roadmaps, courses and hands-on labs — search or filter. All roadmaps · Lab catalogue
Filters 3
Filter results
Type
Lab difficulty
- Prerequisite 1
- Guided 6
- Advanced 9
- Expert 5
Duration
- ≤ 30 min 63
- ✓ 30–60 min 68
- 1–2 h 9
- 2 h+ 1
Topic
- Azure 149
- Blue Team 149
- Cyber Security Labs 125
- Essential IT 88
- Networking 75
- General Cyber security 71
- ✓ Programming 68
- AWS 41
- Advanced General Cyber Security 39
- Data Science 38
- Linux 25
- Hacking 24
- VMware 22
- Web hacking 22
- Google Cloud 3
Included in
68 results
Hands-on labStationX Membership
Secure Coding (Java) - Lab 1: Race ConditionsSecure Coding (Java)Duration: 1 hIn this lab, we will look at attacks on race conditions and then cover how to fix them.
Hands-on labStationX Membership
Secure Coding (Java) - Lab 2: Data ValidationSecure Coding (Java)Duration: 1 hIn this lab, we will look at vulnerabilities involving code injection due to improper handling of user input.
Hands-on labStationX Membership
Secure Coding (Java) - Lab 3: AuthenticationSecure Coding (Java)Duration: 1 hIn this lab, we will look at authentication vulnerabilities including verbose error messages, plaintext passwords, and single-factor authentication.
Hands-on labStationX Membership
Secure Coding (Java) - Lab 4: Access ControlSecure Coding (Java)Duration: 1 hIn this lab, we will look at vulnerabilities with access control - the process by which a system decides whether or not a user is allowed to make use of a resource.
Hands-on labStationX Membership
Secure Coding (Java) - Lab 5: CryptographySecure Coding (Java)Duration: 1 hThere are many issues that can arise with Cryptography, when trying to write secure code.
Hands-on labStationX Membership
Secure Coding (Java) - Lab 6: Error HandlingSecure Coding (Java)Duration: 1 hIn this lab, we will look at vulnerabilities involving overly verbose error messages and insufficient logging.
Hands-on labStationX Membership
Secure Coding (Java) - Lab 7: Static AnalysisSecure Coding (Java)Duration: 1 hIn this lab, we will be looking at a tool called CodeChecker that analyzes code for issues with both security vulnerabilities and coding conventions.
Hands-on labStationX Membership
Secure Coding (Java) - Lab 8: Insecure DeserializationSecure Coding (Java)Duration: 1 hMany languages use object serialization for communication as it can greatly ease development.
Hands-on labStationX Infrastructure Labs
Build a Real Project by Using Git WorkflowsGitHubLevel: AdvancedDuration: 45 minIn this lab, you will simulate a full development cycle on a Git project by initializing a repository, creating files and committing changes, branching, merging, and pushing the repository to GitHub.Hands-on labStationX Infrastructure Labs
Can You Access Data by Using C#?C# - Access and Process DataLevel: AdvancedDuration: 45 minIn this challenge, you will use C# to read and write data from a relational database and a non-relational database.Hands-on labStationX Infrastructure Labs
Can You Access Data by Using C#?C# - Access and Process DataLevel: ExpertDuration: 1 hIn this challenge, you will use C# to read and write data from a relational database and a non-relational database.Hands-on labStationX Infrastructure Labs
Can You Access Data by using Python?Python - Access and Process DataLevel: AdvancedDuration: 45 minIn this challenge you will use Python to read and write data from a relational database, and a non-relational database.Hands-on labStationX Infrastructure Labs
Can You Access Data by using Python?Python - Access and Process DataLevel: ExpertDuration: 1 hIn this challenge you will use Python to read and write data from a relational database, and a non-relational database.Hands-on labStationX Infrastructure Labs
Can You Build an Application in C#?Introductory C#Level: ExpertDuration: 1 hIn this lab, you will build a C# application that uses simple variables and arrays, performs looping and branching, and uses logic to display data.Hands-on labStationX Infrastructure Labs
Can You Configure Services in a Kubernetes Cluster?Kubernetes Cluster ArchitectureLevel: AdvancedDuration: 45 minIn this challenge, you will create services in a Kubernetes cluster.Hands-on labStationX Infrastructure Labs
Can You Create a C# Console Application That Uses Variables?Introductory C#Level: AdvancedDuration: 45 minIn this lab, you will create a console application that uses variables.Hands-on labStationX Infrastructure Labs
Can You Loop Through an Array in a C# Application?Introductory C#Level: AdvancedDuration: 45 minIn this lab, you will control the flow of code in an application by using looping.Hands-on labStationX Infrastructure Labs
Can You Manage Kubernetes Cluster Resources?Kubernetes Cluster ArchitectureLevel: ExpertDuration: 1 hYou need to manage resources in a Kubernetes cluster.Hands-on labStationX Infrastructure Labs
Can You Manage Kubernetes Resources?Kubernetes Cluster ArchitectureLevel: AdvancedDuration: 45 minIn this challenge, you will manage resources in a Kubernetes cluster.Hands-on labStationX Infrastructure Labs
Can You Manage Pod Scheduling in a Kubernetes Cluster?Kubernetes Cluster ArchitectureLevel: AdvancedDuration: 45 minIn this challenge, you will manage pod scheduling in a Kubernetes cluster by using nodeSelector and node affinity rules.Hands-on labStationX Infrastructure Labs
Can You Use Branching and Conditional Logic in a C# Application?Introductory C#Level: AdvancedDuration: 1 hIn this lab, you will control the flow of code in your application by using use Boolean operators, logical expressions, and branching techniques.Hands-on labStationX Infrastructure Labs
Create Branching Logic in PythonIntroductory PythonLevel: GuidedDuration: 45 minIn this lab, you will create branching logic in Python.Hands-on labStationX Infrastructure Labs
Define and Use Functions in PythonIntroductory PythonLevel: GuidedDuration: 45 minIn this lab, you will define functions in an application.Hands-on labStationX Infrastructure Labs
Handle Errors and Exceptions in PythonIntroductory PythonLevel: GuidedDuration: 45 minIn this lab, you will handle errors and exceptions in your code.Hands-on labStationX Membership
Hardening C#.NET Web Apps - Broken Access ControlHardening C#.NET Web AppsDuration: 1 hIn this lab, we will show an exploit on a user's cookie, then apply remediation measures, and then reattempt the exploit.Hands-on labStationX Membership
Hardening C#.NET Web Apps - Broken AuthenticationHardening C#.NET Web AppsDuration: 1 hThis lab teaches methods to secure the authentication methods in a web application written in C#.Hands-on labStationX Membership
Hardening C#.NET Web Apps - Cross Site ScriptingHardening C#.NET Web AppsDuration: 1 hThis lab teaches methods to secure web applications written in C# against XSS attacks.Hands-on labStationX Membership
Hardening C#.NET Web Apps - CSRFHardening C#.NET Web AppsDuration: 1 hThis lab teaches methods to secure web applications written in C# against Cross Site Request Forgery attacks.Hands-on labStationX Membership
Hardening C#.NET Web Apps - OS Command InjectionHardening C#.NET Web AppsDuration: 1 hThis lab teaches methods to secure a web application written in C# against OS Command Injection attacks.Hands-on labStationX Membership
Hardening C#.NET Web Apps - Password HashingHardening C#.NET Web AppsDuration: 1 hThis lab teaches how to properly use password hashing in a C# web application.Hands-on labStationX Membership
Hardening C#.NET Web Apps - Secure DeserializationHardening C#.NET Web AppsDuration: 1 hThis lab teaches methods to secure web applications written in C# against Insecure Deserialization attacks.Hands-on labStationX Membership
Hardening C#.NET Web Apps - SQL InjectionHardening C#.NET Web AppsDuration: 1 hThis lab teaches methods to secure a web application written in C# against SQL Injection attacks.Hands-on labStationX Membership
Hardening C#.NET Web Apps - Two Factor AuthenticationHardening C#.NET Web AppsDuration: 1 hThis lab teaches how to deploy Google Authenticator in a C# web application in order to deploy Two Factor Authentication.Hands-on labStationX Membership
Hardening C#.NET Web Apps - Web ConfigurationHardening C#.NET Web AppsDuration: 1 hThis lab teaches methods to secure the C# configuration for web applications written in C#.Hands-on labStationX Membership
Hardening C#.NET Web Apps - XXEHardening C#.NET Web AppsDuration: 1 hThis lab teaches methods to secure a web application written in C# against XXE attacks.Hands-on labStationX Infrastructure Labs
Implement Release Management and Versioning in GitHubGitHubLevel: ExpertDuration: 1 hIn this lab, you will prepare a new repository for versioning by creating an initial git tag.Hands-on labStationX Infrastructure Labs
Manipulate Strings in PythonIntroductory PythonLevel: GuidedDuration: 1 hIn this lab, you will You are a Python developer.Hands-on labStationX Infrastructure Labs
Read and Write to a File in JavaApprentice Java DeveloperLevel: GuidedDuration: 45 minIn this lab, you will create a class that will read and write files.Hands-on labStationX Membership
Secure Coding (C++) - Lab 1: Race ConditionsSecure Coding (C++)Duration: 1 hIn this lab, we will look at attacks on race conditions and then cover how to fix them.Hands-on labStationX Membership
Secure Coding (C++) - Lab 2: Data ValidationSecure Coding (C++)Duration: 1 hIn this lab, we will look at vulnerabilities involving code injection due to improper handling of user input.Hands-on labStationX Membership
Secure Coding (C++) - Lab 3: AuthenticationSecure Coding (C++)Duration: 1 hIn this lab, we will look at authentication vulnerabilities including verbose error messages, plaintext passwords, and single-factor authentication.Hands-on labStationX Membership
Secure Coding (C++) - Lab 4: Access ControlSecure Coding (C++)Duration: 1 hIn this lab, we will look at vulnerabilities with access control - the process by which a system decides whether or not a user is allowed to make use of a resource.Hands-on labStationX Membership
Secure Coding (C++) - Lab 5: CryptographySecure Coding (C++)Duration: 1 hThere are many issues that can arise with Cryptography, when trying to write secure code.Hands-on labStationX Membership
Secure Coding (C++) - Lab 6: Error HandlingSecure Coding (C++)Duration: 1 hIn this lab, we will look at vulnerabilities involving overly verbose error messages and insufficient logging.Hands-on labStationX Membership
Secure Coding (C++) - Lab 7: Static AnalysisSecure Coding (C++)Duration: 1 hIn this lab, we will be looking at a tool called CodeChecker that analyzes code for issues with both security vulnerabilities and coding conventions.Hands-on labStationX Membership
Secure Coding (C++) - Lab 8: Buffer OverflowsSecure Coding (C++)Duration: 1 hWhen too much data is placed into a buffer, it can overwrite adjacent memory values leading to remote code execution or system crashes.Hands-on labStationX Membership
Secure Coding (Python) - Lab 1: Race ConditionsSecure Coding (Python)Duration: 1 hWhenever there is concurrent access to a shared resource, there is the potential for race conditions.
Hands-on labStationX Membership
Secure Coding (Python) - Lab 2: Data ValidationSecure Coding (Python)Duration: 1 hWhenever input is taken from an end user, you need to exercise caution that the data entered will not be interpreted as anything other than data.
Hands-on labStationX Membership
Secure Coding (Python) - Lab 4: Access ControlSecure Coding (Python)Duration: 1 hAccess control is the process by which a system decides whether or not a user is allowed to make use of a resource.
Hands-on labStationX Membership
Secure Coding (Python) - Lab 6: Error HandlingSecure Coding (Python)Duration: 1 hThere are a few issues when it comes to error handling that are related to security.
Hands-on labStationX Membership
Secure Coding (Python) - Lab 7: Static AnalysisSecure Coding (Python)Duration: 1 hIn this lab, we will be looking at a tool called CodeChecker that analyzes code for issues with both security vulnerabilities and coding conventions.
Hands-on labStationX Membership
Secure Coding (Python) - Lab 8: Pickles and ImportsSecure Coding (Python)Duration: 1 hIn this lab, we will look at Python Pickles and the Python import system.
Hands-on labStationX Infrastructure Labs
Set Up Git and Connect to GitHub [Prerequisite Lab]GitHubLevel: PrerequisiteDuration: 45 minThis is a prerequisite for all related labs in this series and only to be completed once.Hands-on labStationX Infrastructure Labs
Store Data in Python Data StructuresIntroductory PythonLevel: GuidedDuration: 1 hIn this lab, you will store data by using data structures.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - Broken Access ControlHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches methods to deploy basic access control in a web application written in PHP.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - Broken AuthenticationHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches methods to secure the authentication methods in a web application written in PHP.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - Cross Site ScriptingHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches methods to secure web applications written in PHP against XSS attacks.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - CSRFHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches methods to secure web applications written in PHP against Cross Site Request Forgery attacks.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - File UploadsHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches methods to secure web applications written in PHP with respect to file upload capabilities.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - OS Command InjectionHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches methods to secure a web application written in PHP against OS Command Injection attacks.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - Password HashingHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches how to properly use password hashing in a PHP web application.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - Path Traversal and LFIHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches methods to prevent Path Traversal and Local File Inclusion in a web application written in PHP.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - PHP ConfigurationHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches methods to secure the PHP configuration for web applications written in PHP.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - Secure DeserializationHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches methods to secure web applications written in PHP against Insecure Deserialization attacks.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - Sensitive Data ExposureHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches how to prevent sensitive data exposure in a PHP web application.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - SQL InjectionHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches methods to secure a web application written in PHP against SQL Injection attacks.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - Two Factor AuthenticationHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches how to deploy Google Authenticator in a PHP web application in order to deploy Two Factor Authentication.Hands-on labStationX Membership
WEB241: Hardening PHP Web Apps - XXEHardening PHP Web Apps + 1 more blockDuration: 1 hThis lab teaches methods to secure a web application written in PHP against XXE attacks.










