VYPR
Unrated severityNVD Advisory· Published Aug 31, 2021· Updated Aug 4, 2024

CVE-2021-36981

CVE-2021-36981

Description

In the server in SerNet verinice before 1.22.2, insecure Java deserialization allows remote authenticated attackers to execute arbitrary code.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Affected products

2

Patches

Vulnerability mechanics

Root cause

"Unsafe deserialization of untrusted data in Spring's RemoteInvocationSerializingExporter allows remote code execution."

Attack vector

A remote attacker who is already authenticated to the Verinice.Pro server (they must have a valid JSESSIONID) sends a crafted serialized Java object to a Spring remoting endpoint. The server's `RemoteInvocationSerializingExporter` deserializes the payload using `readObject()`, which triggers a gadget chain (e.g., C3P0, FileUpload1, URLDNS) that executes arbitrary code on the server. The advisory demonstrates that the C3P0 gadget can be leveraged for full remote code execution by serving a malicious Java class via a rogue JNDI server [ref_id=1].

Affected code

The vulnerability resides in the Spring `RemoteInvocationSerializingExporter` class (within `spring-context`) used by the Verinice.Pro server. The `doReadRemoteInvocation` method calls `ois.readObject()` on attacker-controlled input without any type filtering or validation, allowing arbitrary Java objects to be deserialized.

What the fix does

The advisory does not include a patch diff, but the fix is described as upgrading to Verinice.Pro version 1.22.2. The remediation likely involves either removing the insecure Spring remoting endpoint, adding a type whitelist to the `ObjectInputStream`, or replacing the deserialization mechanism entirely to prevent arbitrary class instantiation [ref_id=1].

Preconditions

  • authAttacker must have a valid authenticated session (JSESSIONID cookie) on the Verinice.Pro server
  • configThe server must expose a Spring remoting endpoint that uses RemoteInvocationSerializingExporter
  • networkAttacker must be able to reach the server over the network
  • inputAttacker must craft a serialized payload using a compatible gadget chain (e.g., C3P0, FileUpload1)

Generated on May 30, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

3

News mentions

0

No linked articles in our index yet.