Hamburger Icon
  • Labs icon Lab
  • Security
Google Cloud Platform icon
Labs

CVE-2022-22965 Spring4Shell: Emulation and Detection

In this lab, you’ll practice attacking and defending against the Spring4Shell (CVE-2022-22965) vulnerability. When you’re finished, you’ll have a thorough understanding of how the exploit works, and how it can be detected.

Google Cloud Platform icon
Labs

Path Info

Level
Clock icon Advanced
Duration
Clock icon 1h 5m
Published
Clock icon Aug 15, 2024

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.

Table of Contents

  1. Challenge

    Getting Started in the Lab Environment

    Here are the initial instructions and explanation of the lab environment. Read this while your environment is busy creating itself from nothing. Yes, this violates physics; we know. How fun!

  2. Challenge

    Emulation

    In this challenge, you will be provided with an environment containing a web application vulnerable to CVE-2022-22965. You will walk through the steps required to identify Spring4Shell and build out a proof of concept to exploit the vulnerability in order to create and interface with a web shell.

    The learner will conceptually understand the root cause of Spring4Shell, as well as how to exploit the vulnerability and gain remote code execution on a vulnerable remote system via a web shell.

  3. Challenge

    Detection

    In this challenge, you will access and analyze the log files of the reverse proxy web application serving the Tomcat application vulnerable to CVE-2022-22965 Spring4Shell. Due to the (known) exploitation requirements of the vulnerability, Spring4Shell abuse requires the use of specific strings and inputs, which can be used to identify attempted and successful exploitation - and thereafter analyze the activities the attacker performed.

    You will understand how to identify Spring4Shell exploitation in log files, and understand how to analyze the actions the attacker performed via the web server.

  4. Challenge

    Protection

    In this challenge, you will examine and implement mechanisms to protect against CVE-2022-22965. The formal and correct solution of upgrading the vulnerable software will be discussed, and an alternative method of using a web application firewall at the ingress edge will be demonstrated (which has defense in depth merits, for example in a large organization where patching is difficult, assets are unknown, 3rd party applications are in use, or an immediate response to a new vulnerability is required).

    You will understand how to implement a web application firewall with a custom ruleset to identify and protect against new, or unknown vulnerabilities (in this specific case, CVE-2022-22965).

  5. Challenge

    The Last Challenge

    Welcome to the final challenge! This is your last chance to experiment in the environment. Clicking Finish Lab will end this little world that flittered into existence just for you.

What's a lab?

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Provided environment for hands-on practice

We will provide the credentials and environment necessary for you to practice right within your browser.

Guided walkthrough

Follow along with the author’s guided walkthrough and build something new in your provided environment!

Did you know?

On average, you retain 75% more of your learning if you get time for practice.