CVE-2009-0217: Xmlsec Authentication Bypass Vulnerability

MODERATE
Advisory Identifier: GHSA-8hfm-837h-hjg5
Published
Advisory Summary

CVE-2009-0217 is a MODERATE authentication bypass vulnerability (General Security Weakness) affecting Xmlsec libraries in the Maven ecosystem. The issue involves apache xml security for java vulnerable to authentication bypass by hmac truncation. Remediation is available by upgrading affected packages to version 1.4.3.

CVE-2009-0217 at a Glance

CVE Identifier CVE-2009-0217
GHSA Identifier GHSA-8hfm-837h-hjg5
Severity MODERATE
CVSS v3.1 Base Score N/A
CWE Classification General Security Weakness
Affected Product Xmlsec
Package Ecosystem Maven
Published Date
Last Updated

How to Fix CVE-2009-0217

To remediate this vulnerability, upgrade all affected Xmlsec dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

org.apache.santuario:xmlsec fixed: 1.4.3
<dependency>
    <groupId>org.apache.santuario</groupId>
    <artifactId>xmlsec</artifactId>
    <version>1.4.3</version>
</dependency>
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

mvn dependency:tree -Dincludes=org.apache.santuario

How to Check if You Are Affected

To determine whether your Java application is affected by CVE-2009-0217, inspect your build dependencies using the Maven Dependency Plugin:

mvn dependency:tree -Dincludes=org.apache.santuario

Analyze the terminal output to locate any version of Xmlsec in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 1.4.3), your application is affected.

Note: The mvn dependency:tree -Dincludes=org.apache.santuario command inspects the resolved dependency graph declared in your project's POM files; it does not perform automated security scanning or inspect runtime dynamic classpaths. Always verify runtime container classpaths and shaded JARs.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under General Security Weakness. In Xmlsec, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

The design of the W3C XML Signature Syntax and Processing (XMLDsig) recommendation, as implemented in multiple products. The Apache XML Security (Java) is affected by the vulnerability published in US-Cert VU #466161. See: http://www.kb.cert.org/vuls/id/466161 for more information. This bug can allow an attacker to bypass authentication by inserting/modifying a small HMAC truncation length parameter in the XML Signature HMAC based SignatureMethod algorithms. An inexhaustive list of additional affected products includes: 1. the Oracle Security Developer Tools component in Oracle Application Server 10.1.2.3, 10.1.3.4, and 10.1.4.3IM; 2. the WebLogic Server component in BEA Product Suite 10.3, 10.0 MP1, 9.2 MP3, 9.1, 9.0, and 8.1 SP6; 3. Mono before 2.4.2.2; 4. XML Security Library before 1.2.12; 5. IBM WebSphere Application Server Versions 6.0 through 6.0.2.33, 6.1 through 6.1.0.23, and 7.0 through 7.0.0.1; 6. Sun JDK and JRE Update 14 and earlier; 7. Microsoft .NET Framework 3.0 through 3.0 SP2, 3.5, and 4.0; and other products uses a parameter that defines an HMAC truncation length (HMACOutputLength) but does not require a minimum for this length, which allows attackers to spoof HMAC-based signatures and bypass authentication by specifying a truncation length with a small number of bits.

CVE-2009-0217 Affected Xmlsec Versions

1 component(s)
Fixed Versions:
1.4.3
Product / Package Ecosystem Affected Versions Fixed Version
org.apache.santuario:xmlsec
Maven
≥ 1.4.0
< 1.4.3
1.4.3

References

NVD — CVE-2009-0217 NVD
https://nvd.nist.gov/vuln/detail/CVE-2009-0217
www.w3.org/qa/2009/07/hmac_tru... WEB
https://www.w3.org/QA/2009/07/hmac_truncation_in_xml_signatu.html
www.w3.org/2008/06/xmldsigcore... WEB
https://www.w3.org/2008/06/xmldsigcore-errata.html#e03
www.us-cert.gov/cas/techalerts/ta09... WEB
https://www.us-cert.gov/cas/techalerts/TA09-294A.html
www.ubuntu.com/usn/usn-903-1 WEB
https://www.ubuntu.com/usn/USN-903-1
www.redhat.com/support/errata/rhsa... WEB
https://www.redhat.com/support/errata/RHSA-2009-1694.html
www.redhat.com/archives/fedora-pac... WEB
https://www.redhat.com/archives/fedora-package-announce/2009-August/msg00505.html
www.redhat.com/archives/fedora-pac... WEB
https://www.redhat.com/archives/fedora-package-announce/2009-August/msg00494.html
www.redhat.com/archives/fedora-pac... WEB
https://www.redhat.com/archives/fedora-package-announce/2009-August/msg00325.html
www.redhat.com/archives/fedora-pac... WEB
https://www.redhat.com/archives/fedora-package-announce/2009-August/msg00310.html
Xmlsec Security Information SECURITY
https://www.mandriva.com/security/advisories?name=MDVSA-2009:209
www.kb.cert.org/vuls/id/wdon-7ty529 WEB
https://www.kb.cert.org/vuls/id/WDON-7TY529
www.kb.cert.org/vuls/id/mapg-7tskxq WEB
https://www.kb.cert.org/vuls/id/MAPG-7TSKXQ
www.kb.cert.org/vuls/id/466161 WEB
https://www.kb.cert.org/vuls/id/466161
Xmlsec Security Information SECURITY
https://www.gentoo.org/security/en/glsa/glsa-201408-19.xml
Xmlsec Security Information SECURITY
https://www.debian.org/security/2010/dsa-1995
svn.apache.org/viewvc WEB
https://svn.apache.org/viewvc?revision=794013&view=revision
rhn.redhat.com/errata/rhsa-2009-14... WEB
https://rhn.redhat.com/errata/RHSA-2009-1428.html
marc.info/ WEB
https://marc.info/?l=bugtraq&m=125787273209737&w=2
Xmlsec Security Information SECURITY
https://lists.opensuse.org/opensuse-security-announce/2010-03/msg00005.html
Xmlsec Security Information SECURITY
https://lists.opensuse.org/opensuse-security-announce/2009-11/msg00002.html
Xmlsec Security Information SECURITY
https://lists.apple.com/archives/security-announce/2009/Sep/msg00000.html
issues.apache.org/bugzilla/show_bug.c... WEB
https://issues.apache.org/bugzilla/show_bug.cgi?id=47527
issues.apache.org/bugzilla/show_bug.c... WEB
https://issues.apache.org/bugzilla/show_bug.cgi?id=47526
gitlab.gnome.org/archive/xmlsec/-/co... WEB
https://gitlab.gnome.org/Archive/xmlsec/-/commit/34b349675af9f72eb822837a8772cc1ead7115c7
Xmlsec Security Information SECURITY
https://docs.microsoft.com/en-us/security-updates/securitybulletins/2010/ms10-041
bugzilla.redhat.com/show_bug.cgi WEB
https://bugzilla.redhat.com/show_bug.cgi?id=511915
www.us-cert.gov/cas/techalerts/ta10... WEB
http://www.us-cert.gov/cas/techalerts/TA10-159B.html

Frequently Asked Questions

What is CVE-2009-0217?
CVE-2009-0217 is a security vulnerability in Xmlsec involving Apache XML Security For Java vulnerable to authentication bypass by HMAC truncation under General Security Weakness.
Which Xmlsec versions are affected?
Affected versions include releases prior to 1.4.3 across affected packages: org.apache.santuario:xmlsec.
What version fixes CVE-2009-0217?
Upgrading to 1.4.3 (or the latest patched release for your respective branch) resolves the vulnerability.
Is xmlsec affected?
Yes, org.apache.santuario:xmlsec is affected in releases prior to 1.4.3. Upgrade your dependency to 1.4.3 or later.
What CWE is associated with CVE-2009-0217?
CVE-2009-0217 is classified under General Security Weakness.
How can I check Maven dependencies for CVE-2009-0217?
Run the dependency tree command: 'mvn dependency:tree -Dincludes=org.apache.santuario'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-8hfm-837h-hjg5",
  "modified" : "2022-11-08T14:55:27Z",
  "published" : "2022-05-02T03:13:38Z",
  "aliases" : [ "CVE-2009-0217" ],
  "summary" : "Apache XML Security For Java vulnerable to authentication bypass by HMAC truncation",
  "details" : "The design of the W3C XML Signature Syntax and Processing (XMLDsig) recommendation, as implemented in multiple products.\n\nThe Apache XML Security (Java) is affected by the vulnerability published in US-Cert VU #466161. See: http://www.kb.cert.org/vuls/id/466161 for more information. This bug can allow an attacker to bypass authentication by inserting/modifying a small HMAC truncation length parameter in the XML Signature HMAC based SignatureMethod algorithms.\n\nAn inexhaustive list of additional affected products includes:  \n1. the Oracle Security Developer Tools component in Oracle Application Server 10.1.2.3, 10.1.3.4, and 10.1.4.3IM; \n2. the WebLogic Server component in BEA Product Suite 10.3, 10.0 MP1, 9.2 MP3, 9.1, 9.0, and 8.1 SP6; \n3. Mono before 2.4.2.2; \n4. XML Security Library before 1.2.12; \n5. IBM WebSphere Application Server Versions 6.0 through 6.0.2.33, 6.1 through 6.1.0.23, and 7.0 through 7.0.0.1; \n6. Sun JDK and JRE Update 14 and earlier; \n7. Microsoft .NET Framework 3.0 through 3.0 SP2, 3.5, and 4.0; and other products uses a parameter that defines an HMAC truncation length (HMACOutputLength) but does not require a minimum for this length, which allows attackers to spoof HMAC-based signatures and bypass authentication by specifying a truncation length with a small number of bits.",
  "severity" : [ ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.santuario:xmlsec"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "1.4.0"
      }, {
        "fixed" : "1.4.3"
      } ]
    } ]
  } ],
  "references" : [ {
    "type" : "ADVISORY",
    "url" : "https://nvd.nist.gov/vuln/detail/CVE-2009-0217"
  }, {
    "type" : "WEB",
    "url" : "https://www.w3.org/QA/2009/07/hmac_truncation_in_xml_signatu.html"
  }, {
    "type" : "WEB",
    "url" : "https://www.w3.org/2008/06/xmldsigcore-errata.html#e03"
  }, {
    "type" : "WEB",
    "url" : "https://www.us-cert.gov/cas/techalerts/TA09-294A.html"
  }, {
    "type" : "WEB",
    "url" : "https://www.ubuntu.com/usn/USN-903-1"
  }, {
    "type" : "WEB",
    "url" : "https://www.redhat.com/support/errata/RHSA-2009-1694.html"
  }, {
    "type" : "WEB",
    "url" : "https://www.redhat.com/archives/fedora-package-announce/2009-August/msg00505.html"
  }, {
    "type" : "WEB",
    "url" : "https://www.redhat.com/archives/fedora-package-announce/2009-August/msg00494.html"
  }, {
    "type" : "WEB",
    "url" : "https://www.redhat.com/archives/fedora-package-announce/2009-August/msg00325.html"
  }, {
    "type" : "WEB",
    "url" : "https://www.redhat.com/archives/fedora-package-announce/2009-August/msg00310.html"
  }, {
    "type" : "WEB",
    "url" : "https://www.mandriva.com/security/advisories?name=MDVSA-2009:209"
  }, {
    "type" : "WEB",
    "url" : "https://www.kb.cert.org/vuls/id/WDON-7TY529"
  }, {
    "type" : "WEB",
    "url" : "https://www.kb.cert.org/vuls/id/MAPG-7TSKXQ"
  }, {
    "type" : "WEB",
    "url" : "https://www.kb.cert.org/vuls/id/466161"
  }, {
    "type" : "WEB",
    "url" : "https://www.gentoo.org/security/en/glsa/glsa-201408-19.xml"
  }, {
    "type" : "WEB",
    "url" : "https://www.debian.org/security/2010/dsa-1995"
  }, {
    "type" : "WEB",
    "url" : "https://svn.apache.org/viewvc?revision=794013&view=revision"
  }, {
    "type" : "WEB",
    "url" : "https://rhn.redhat.com/errata/RHSA-2009-1428.html"
  }, {
    "type" : "WEB",
    "url" : "https://marc.info/?l=bugtraq&m=125787273209737&w=2"
  }, {
    "type" : "WEB",
    "url" : "https://lists.opensuse.org/opensuse-security-announce/2010-03/msg00005.html"
  }, {
    "type" : "WEB",
    "url" : "https://lists.opensuse.org/opensuse-security-announce/2009-11/msg00002.html"
  }, {
    "type" : "WEB",
    "url" : "https://lists.apple.com/archives/security-announce/2009/Sep/msg00000.html"
  }, {
    "type" : "WEB",
    "url" : "https://issues.apache.org/bugzilla/show_bug.cgi?id=47527"
  }, {
    "type" : "WEB",
    "url" : "https://issues.apache.org/bugzilla/show_bug.cgi?id=47526"
  }, {
    "type" : "WEB",
    "url" : "https://gitlab.gnome.org/Archive/xmlsec/-/commit/34b349675af9f72eb822837a8772cc1ead7115c7"
  }, {
    "type" : "WEB",
    "url" : "https://docs.microsoft.com/en-us/security-updates/securitybulletins/2010/ms10-041"
  }, {
    "type" : "WEB",
    "url" : "https://bugzilla.redhat.com/show_bug.cgi?id=511915"
  }, {
    "type" : "WEB",
    "url" : "http://www.us-cert.gov/cas/techalerts/TA10-159B.html"
  } ],
  "database_specific" : {
    "cwe_ids" : [ ],
    "severity" : "MODERATE",
    "github_reviewed" : true,
    "github_reviewed_at" : "2022-11-08T14:55:27Z",
    "nvd_published_at" : "2009-07-14T23:30:00Z"
  }
}