Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
spring4shell_victim — Intentionally vulnerable Spring app to test CVE-2022-22965 | Kitploit
Tools/GitHubGitHub/fracturelabs/spring4shell_victim
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationLabs & Practice
GitHubfracturelabs/spring4shell_victim

spring4shell_victim

Intentionally vulnerable Spring app to test CVE-2022-22965

View Repository
22494 years agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share


spring4shell_victim

Intentionally vulnerable Spring app to test CVE-2022-22965

For more information: https://www.fracturelabs.com/posts/effective-spring4shell-scanning-exploitation/

@fracturelabs @brkr19


Usage

Build

The following code will quickly build a vulnerable Docker image using the following components:

  • JDK 11.0.14
  • Tomcat 9.0.60
  • Spring 2.6.4
  • root@kitploit:~
    git clone https://github.com/fracturelabs/spring4shell_victim.git
    cd spring4shell_victim
    docker image build -t spring4shell_victim .
    

    Run

    root@kitploit:~
    docker container run -it -p 8080:8080 --name spring4shell_victim --rm spring4shell_victim
    

    Exploit

    There are two routes defined: /spring4shell_victim and /spring4shell_victim/vulnerable. You can use this to verify any scanning tools are properly working. The default route (/) is specifically not vulnerable to get you to think about how to configure your scanning tools to find vulnerable endpoints.

    Example

    root@kitploit:~
    # This route is not vulnerable
    curl -is localhost:9000/spring4shell_victim/?class.module.classLoader.URLs%5b-1%5d
    
    # This route is vulnerable
    curl -is localhost:9000/spring4shell_victim/vulnerable?class.module.classLoader.URLs%5b-1%5d
    

    screenshot

    Verification

    You can verify your code deployed correctly by connecting to a shell on the container and looking in the /usr/local/tomcat/webapps/ directory.

    root@kitploit:~
    docker exec -it spring4shell_victim /bin/bash
    

    NOTE: The POC code above only causes a crash that you can detect (500 error). It does not actually upload any code.

    Download Tool