CVE-2022-42889
apache-commons-text: variable interpolation RCE
Severity by source
Trivy's own label is CRITICAL. Rated critical by NVD, GHSA, Red Hat. Rated lower by Ubuntu (medium).
Description
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.
Affected packages and fixed versions
| Source | Package | Fixed in |
|---|---|---|
| maven::GitHub Security Advisory Maven | com.guicedee.services:commons-text, org.apache.commons:commons-text | 1.10.0 |
| Red Hat | candlepin, candlepin-selinux, jenkins-2-plugins | no fix listed |
| debian 11 | commons-text | no fix listed |
| debian 12 | commons-text | 1.10.0-1 |
| debian 13 | commons-text | 1.10.0-1 |
| debian 14 | commons-text | 1.10.0-1 |
| echo | commons-text | 1.10.0-1 |
| seal Red Hat 7 | python-jinja2, seal-python-jinja2 | 2.7.2-4.el7+sp999 |
| seal Red Hat 8 | libsolv, seal-libsolv | 0.7.20-6.el8+sp999 |
| ubuntu 20.04-ESM | commons-text | no fix listed |
| ubuntu 22.04 | commons-text | no fix listed |
Show all 16 entries from 11 sources
| Source | Package | Fixed in |
|---|---|---|
| maven::GitHub Security Advisory Maven | com.guicedee.services:commons-text | no fix listed |
| maven::GitHub Security Advisory Maven | org.apache.commons:commons-text | 1.10.0 |
| Red Hat | candlepin | no fix listed |
| Red Hat | candlepin-selinux | no fix listed |
| Red Hat | jenkins-2-plugins | no fix listed |
| debian 11 | commons-text | no fix listed |
| debian 12 | commons-text | 1.10.0-1 |
| debian 13 | commons-text | 1.10.0-1 |
| debian 14 | commons-text | 1.10.0-1 |
| echo | commons-text | 1.10.0-1 |
| seal Red Hat 7 | python-jinja2 | 2.7.2-4.el7+sp999 |
| seal Red Hat 7 | seal-python-jinja2 | 2.7.2-4.el7+sp999 |
| seal Red Hat 8 | libsolv | 0.7.20-6.el8+sp999 |
| seal Red Hat 8 | seal-libsolv | 0.7.20-6.el8+sp999 |
| ubuntu 20.04-ESM | commons-text | no fix listed |
| ubuntu 22.04 | commons-text | no fix listed |
References
- http://packetstormsecurity.com/files/171003/OX-App-Suite-Cross-Site-Scripting-Server-Side-Request-Forgery.html
- http://packetstormsecurity.com/files/176650/Apache-Commons-Text-1.9-Remote-Code-Execution.html
- http://seclists.org/fulldisclosure/2023/Feb/3
- http://www.openwall.com/lists/oss-security/2022/10/13/4
- http://www.openwall.com/lists/oss-security/2022/10/18/1
- https://access.redhat.com/security/cve/CVE-2022-42889
- https://arxiv.org/pdf/2306.05534
- https://blogs.apache.org/security/entry/cve-2022-42889
All 18 references
- https://github.com/apache/commons-text
- https://lists.apache.org/thread/n2bd4vdsgkqh2tm14l1wyc3jyol7s1om
- https://nvd.nist.gov/vuln/detail/CVE-2022-42889
- https://psirt.global.sonicwall.com/vuln-detail/SNWLID-2022-0022
- https://seclists.org/oss-sec/2022/q4/22
- https://security.gentoo.org/glsa/202301-05
- https://security.netapp.com/advisory/ntap-20221020-0004
- https://security.netapp.com/advisory/ntap-20221020-0004/
- https://securitylab.github.com/advisories/GHSL-2022-018_Apache_Commons_Text
- https://www.cve.org/CVERecord?id=CVE-2022-42889