CVE-2017-12196 is a medium-severity (CVSS 5.9) Improper Authentication vulnerability in io.undertow:undertow-core. A fix is available for io.undertow:undertow-core — see the affected versions and patch details below.
Incorrect Authorization in Undertow
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
How urgent is this, really
Where this sits among everything scored
Real-World Exposure
io.undertow:undertow-core☕io.undertow:undertow-coreReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects Maven packages — download data is not available via public APIs for these ecosystems.
Description
Undertow before versions 1.4.18.SP1 (not findable in Maven), 2.0.2.Final, and 1.4.24.Final was found vulnerable when using Digest authentication, the server does not ensure that the value of URI in the Authorization header matches the URI in HTTP request line. This allows the attacker to cause a MITM attack and access the desired content on the server.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| ☕Maven | io.undertow:undertow-core | ≥ 2.0.0.Alpha1&&< 2.0.2.FInal | 2.0.2.FInalio.undertow:undertow-core:2.0.2.FInal |
| ☕Maven | io.undertow:undertow-core | all versions | 1.4.24.Finalio.undertow:undertow-core:1.4.24.Final |
Affected Products
jboss enterprise application platformredhatjboss fuseredhatundertowredhatvirtualizationredhatDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for io.undertow:undertow-core, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update io.undertow:undertow-core to 2.0.2.FInal or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2017-12196 is resolved across your whole dependency graph.
Workarounds
Put an independent control in front of the weakness: restrict the affected endpoint or interface to trusted networks, require an additional authentication factor or proxy-level check, and invalidate existing sessions and credentials in case the flaw has already been used.
Fixing This On Your OS
If you run this on a Linux distribution, patch through your package manager against the distro's own security advisory below — it tracks the exact backported fix for your release, which can ship on a different timeline (and sometimes a different severity) than the upstream project.
| Product | Fixed in | Advisory |
|---|---|---|
| Red Hat Fuse 7.2 | see advisory | RHSA-2018:3768 |
| Red Hat Fuse Intergration Services 2.0 based on Fuse 6.3 R7 | undertow | RHSA-2018:2405 |
| Red Hat JBoss EAP 7.1 | undertow | RHSA-2018:0478 |
| Red Hat JBoss Enterprise Application Platform 7.1 for RHEL 6 | eap7-activemq-artemis-0:1.5.5.009-1.redhat_1.1.ep7.el6 | RHSA-2018:0479 |
| Red Hat JBoss Enterprise Application Platform 7.1 for RHEL 6 | eap7-jboss-ec2-eap-0:7.1.1-3.1.GA_redhat_3.ep7.el6 | RHSA-2018:0481 |
| Red Hat JBoss Enterprise Application Platform 7.1 for RHEL 7 | eap7-activemq-artemis-0:1.5.5.009-1.redhat_1.1.ep7.el7 | RHSA-2018:0480 |
| Red Hat JBoss Enterprise Application Platform Continuous Delivery | undertow | RHSA-2020:2561 |
| Red Hat JBoss Enterprise Application Platform Continuous Delivery | see advisory | RHSA-2020:2562 |
Frequently Asked Questions
Is CVE-2017-12196 in your dependencies?
Find it across Maven, including transitive dependencies.