Dockerfile
Uses maven:3.8.1-amazoncorretto-8 base image, copies the project source, builds it with mvn package, and runs the resulting JAR.
Dockerfile:1-6File viewing is interactive and short-lived. Downloads are password-protected ZIP archives using password eip.
A Dockerized Java application that uses XStream 1.4.15 to unmarshal a crafted XML payload, demonstrating a denial-of-service vulnerability (CVE-2021-21341).
README.md:1-3Dockerfile:1-6The README explicitly describes CVE-2021-21341, provides a Docker demo, and includes steps to build and run the environment to observe the vulnerability. The Java source contains a crafted XML payload designed to trigger an endless loop in XStream.
README.md:1-3README.md:7-9src/main/java/main.java:6-35Uses maven:3.8.1-amazoncorretto-8 base image, copies the project source, builds it with mvn package, and runs the resulting JAR.
Dockerfile:1-6Declares a dependency on XStream 1.4.15 and configures the maven-shade-plugin to create an executable JAR with main class 'main'.
pom.xml:10-14pom.xml:24-30Contains a main method that constructs a malicious XML string and deserializes it with a default XStream instance, triggering the CVE-2021-21341 DoS.
src/main/java/main.java:1-37Explains the vulnerability, provides Docker build/run commands, shows expected output, and suggests remediation steps.
README.md:1-69Supported by supplied evidence
The README states the vulnerability affects XStream up to 1.4.15, and the pom.xml declares version 1.4.15. The Java code uses a default XStream instance to unmarshal a crafted XML payload that manipulates a ByteArrayInputStream, matching the CVE description of an endless loop causing DoS.
README.md:7-9pom.xml:12-14src/main/java/main.java:6-35README.md:25-27Dockerfile:4README.md:25-27README.md:29-31The environment only builds and runs a Java application that triggers a DoS within the container. There are no instructions or visible behaviors that escape the container, access the host, connect to external systems, persist data, steal credentials, or perform any destructive actions. The Dockerfile does not use privileged mode or mount sensitive host paths.
Dockerfile:1-6src/main/java/main.java:1-37This review is limited to the supplied lab evidence packet. It does not assert that the environment runs, reproduces a vulnerability, or is safe to execute. Contract: eip-docker-lab-analysis-v1.