Skip to content

CVE-2022-42889: Text4Shell

Code Injection: Is CVE-2022-42889 real, exploitable, or a false positive? Here's the community verdict.

signals

public sources

Exploited in wild
Not listed
CISA KEV
Public exploit
Metasploit +2
Metasploit/EDB/PoC
Base severity
9.8 Critical
CVSS
Exploitation prob.
100%
FIRST EPSS
Weakness
CWE-94 · Code Injection
CWE

High severity and high exploitation probability. Prioritise remediation.

public exploits

links to sources — we don’t host code

A working exploit is publicly available from a maintained source. Treat this as higher urgency and verify your exposure.

baseline read

auto · not a community verdict

Likely real & worth prioritising

High base severity and a high real-world exploitation probability both point to a genuine, actively targeted issue.

Based on CVSS · FIRST EPSS

Confirm or dispute →

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Apache Commons Text performs variable interpolation, allowing properties to be dynamically evaluated and expanded. The standard format for interpolation is "${prefix:name}", where "prefix" is used to locate an instance of org.apache.commons.text.lookup.StringLookup that performs the interpolation. Starting with version 1.5 and continuing through 1.9, the set of default Lookup instances included interpolators that could result in arbitrary code execution or contact with remote servers. These lookups are: - "script" - execute expressions using the JVM script execution engine (javax.script) - "dns" - resolve dns records - "url" - load values from urls, including from remote servers Applications using the interpolation defaults in the affected versions may be vulnerable to remote code execution or unintentional contact with remote servers if untrusted configuration values are used. Users are recommended to upgrade to Apache Commons Text 1.10.0, which disables the problematic interpolators by default.

Published

Embed this verdict
TruePositive verdict for CVE-2022-42889
Markdown
[![TruePositive verdict](https://www.truepositive.app/cve/CVE-2022-42889/badge.svg)](https://www.truepositive.app/cve/CVE-2022-42889)
HTML
<a href="https://www.truepositive.app/cve/CVE-2022-42889"><img src="https://www.truepositive.app/cve/CVE-2022-42889/badge.svg" alt="TruePositive verdict for CVE-2022-42889"></a>

Live badge that updates automatically as the community verdict changes.

Community ground truth

Be the first practitioner to weigh in

So far this is only TruePositive's editorial baseline from public sources. Add your real-world verdict below — it becomes the signal the next person triaging this relies on.

🥇 The first 50 practitioners to contribute earn a Founding Contributor badge.

In your experience, is this finding real and exploitable?

awaiting field verdicts
Real, but not a risk here
Not a real issue

Curated baseline: TruePositive's read from public sources is Real, needs specific conditions — a starting point, not a community verdict.

No account needed. Anonymous verdicts post as an unverified signal. Log in to make yours verified and earn reputation.

Field notes & remediation

Verdicts are the quick signal. Notes are the evidence and fixes behind them.

  • 0
    Field note · TruePositive EditorialCurated

    The name made this sound like the next Log4Shell, but it is not. It is only exploitable if your application passes untrusted input into Apache Commons Text's StringSubstitutor with the default interpolators, using Commons Text 1.5 to 1.9. That pattern is rare in real applications, because that method is meant for interpolation and developers do not usually feed attacker-controlled data into it. So for most teams this is a scanner finding, not an incident.

    Who is affected: apps using Commons Text 1.5 to 1.9 that actually run the string interpolation on untrusted input.

    How to check: search your code for StringSubstitutor and createInterpolator used on untrusted input. Most codebases have none.

    Commonly flagged by: Trivy, Snyk, Dependabot, Grype.

  • 0
    Remediation · TruePositive EditorialCurated

    Upgrade Apache Commons Text to 1.10.0, where the risky interpolators are off by default. Before treating it as urgent, confirm whether your code actually interpolates untrusted input. If it does not, this is low-priority hygiene, not an emergency.

Add a field note or remediationoptional
Note type

What are you adding?

Markdown supported · minimum 20 characters.

Same weakness: CWE-94 · Code Injection.