# CVE-2022-42889: Apache Commons Text prior to 1.10.0 allows RCE when applied to untrusted input due to insecure interpolation defaults - Exploited (CISA KEV): no - Published: 2022-10-13 - CVSS: not scored - EPSS: 99.9% (100th percentile) 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. ## Edge WAF coverage (claimed by vendors, not measured) | Vendor | Status | First rule | Days after publication | |---|---|---|---| | Cloudflare | Before feed history | — | — | | AWS | Rule published | 2022-10-20 | — | | Microsoft Azure | Rule published | — | — | | Google Cloud | Before feed history | — | — | | Fastly | Before feed history | — | — | | F5 | Rule published | 2026-01-20 | — | | Akamai | No public source | — | — | | OWASP CRS | No public claim | — | — | ### AWS - 2022-10-20 · updated > Known bad inputs managed rule group JavaDeserializationRCE_BODY JavaDeserializationRCE_URIPATH JavaDeserializationRCE_HEADER JavaDeserializationRCE_QUERYSTRING Host_localhost_HEADER: Released static version 1.17 of this rule group. Updated the Java deserialization rules to add detection for requests matching Apache CVE-2022-42889, a remote code execution (RCE) vulnerability in Apache Commons Text versions prior to 1.10.0. For more information, see NIST: National Vulnerability Database: CVE-2022… Source: https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-changelog.html ### Microsoft Azure - undated · listed · rule 932130 > Rule 932130: Critical - 5 · PL1 · Remote Command Execution: Unix Shell Expression or Confluence Vulnerability (CVE-2022-26134) or Text4Shell (CVE-2022-42889) Found Source: https://learn.microsoft.com/en-us/azure/web-application-firewall/ag/application-gateway-crs-rulegroups-rules - undated · listed · rule 941210 > Rule 941210: Critical - 5 · PL1 · XSS using obfuscated JavaScript or Text4Shell (CVE-2022-42889) Source: https://learn.microsoft.com/en-us/azure/web-application-firewall/ag/application-gateway-crs-rulegroups-rules ### F5 - 2026-01-20 · updated · rule 200104807 > Updated: signature 200104807 "Apache Commons Configuration Lookup expression (Parameter)" (Server Side Code Injection, risk High), systems: Apache, Apache Tomcat, Apache Struts. References: CVE-2022-33980, CVE-2022-42889, CVE-2025-46295. Source: https://docs.cloud.f5.com/docs-v2/platform/changelogs/security-details-changelog - 2026-01-20 · updated · rule 200104808 > Updated: signature 200104808 "Apache Commons Configuration Lookup expression (Header)" (Server Side Code Injection, risk High), systems: Apache, Apache Tomcat, Apache Struts. References: CVE-2022-33980, CVE-2022-42889, CVE-2025-46295. Source: https://docs.cloud.f5.com/docs-v2/platform/changelogs/security-details-changelog - 2026-01-20 · updated · rule 200104809 > Updated: signature 200104809 "Apache Commons Configuration Lookup expression (URI)" (Server Side Code Injection, risk High), systems: Apache, Apache Tomcat, Apache Struts. References: CVE-2022-33980, CVE-2022-42889, CVE-2025-46295. Source: https://docs.cloud.f5.com/docs-v2/platform/changelogs/security-details-changelog "No public claim" means no vendor statement names this CVE; "Before feed history" means the CVE is older than the vendor feed. In both cases generic rules may still block it. HTML: https://cve.vigilbase.com/cve/CVE-2022-42889 · JSON: https://cve.vigilbase.com/api/v1/cves/CVE-2022-42889