CVE Vulnerabilities

CVE-2024-43383

Deserialization of Untrusted Data

Published: Oct 31, 2024 | Modified: Feb 11, 2025
CVSS 3.x
8.1
HIGH
Source:
NVD
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.x
RedHat/V2
RedHat/V3
Ubuntu
root.io logo minimus.io logo echo.ai logo

Deserialization of Untrusted Data vulnerability in Apache Lucene.Net.Replicator.

This issue affects Apache Lucene.NETs Replicator library: from 4.8.0-beta00005 through 4.8.0-beta00016.

An attacker that can intercept traffic between a replication client and server, or control the target replication node URL, can provide a specially-crafted JSON response that is deserialized as an attacker-provided exception type. This can result in remote code execution or other potential unauthorized access.

Users are recommended to upgrade to version 4.8.0-beta00017, which fixes the issue.

Weakness

The product deserializes untrusted data without sufficiently ensuring that the resulting data will be valid.

Affected Software

NameVendorStart VersionEnd Version
Lucene.netApache4.8.0-beta00005 (including)4.8.0-beta00005 (including)
Lucene.netApache4.8.0-beta00006 (including)4.8.0-beta00006 (including)
Lucene.netApache4.8.0-beta00007 (including)4.8.0-beta00007 (including)
Lucene.netApache4.8.0-beta00008 (including)4.8.0-beta00008 (including)
Lucene.netApache4.8.0-beta00009 (including)4.8.0-beta00009 (including)
Lucene.netApache4.8.0-beta00010 (including)4.8.0-beta00010 (including)
Lucene.netApache4.8.0-beta00011 (including)4.8.0-beta00011 (including)
Lucene.netApache4.8.0-beta00012 (including)4.8.0-beta00012 (including)
Lucene.netApache4.8.0-beta00013 (including)4.8.0-beta00013 (including)
Lucene.netApache4.8.0-beta00014 (including)4.8.0-beta00014 (including)
Lucene.netApache4.8.0-beta00015 (including)4.8.0-beta00015 (including)
Lucene.netApache4.8.0-beta00016 (including)4.8.0-beta00016 (including)

Potential Mitigations

  • Make fields transient to protect them from deserialization.
  • An attempt to serialize and then deserialize a class containing transient fields will result in NULLs where the transient data should be. This is an excellent way to prevent time, environment-based, or sensitive variables from being carried over and used improperly.

References