GO-2026-6909

Source
https://pkg.go.dev/vuln/GO-2026-6909
Import Source
https://vuln.go.dev/ID/GO-2026-6909.json
JSON Data
https://api.osv.dev/v1/vulns/GO-2026-6909
Published
2026-11-05T22:55:15Z
Modified
2026-11-05T23:15:16Z
Summary
Nil-pointer panic in validateAssertion and namespace-blind Subject.NameID in github.com/crewjam/saml
Details

github.com/crewjam/saml through v0.5.1 contains two vulnerabilities in SAML assertion processing:

  1. ServiceProvider.validateAssertion dereferences assertion.Issuer without a nil check when ExpectedIDPEntityID is non-empty. A signed SAML assertion that omits the optional saml:Issuer element causes a nil-pointer dereference panic after signature verification.

  2. Subject uses the bare XML struct tag xml:"NameID", which matches elements in any XML namespace. When a signed assertion omits saml:NameID and includes a element in a foreign namespace inside saml:Subject, encoding/xml populates Subject.NameID from the foreign element, allowing an authenticated principal to spoof Subject.NameID.Value.

Database specific
{
    "review_status": "REVIEWED",
    "url": "https://pkg.go.dev/vuln/GO-2026-6909"
}
References
Credits
    • Artur Beshkov (aibeshkov)

Affected packages

Go / github.com/crewjam/saml

Package

Name
github.com/crewjam/saml
View open source insights on deps.dev
Purl
pkg:golang/github.com/crewjam/saml

Affected ranges

Type
SEMVER
Events
Introduced
0 Unknown introduced version / All previous versions are affected

Ecosystem specific

{
    "imports": [
        {
            "path": "github.com/crewjam/saml",
            "symbols": [
                "ServiceProvider.ParseResponse",
                "ServiceProvider.ParseXMLArtifactResponse",
                "ServiceProvider.ParseXMLResponse",
                "ServiceProvider.validateAssertion"
            ]
        }
    ]
}

Database specific

source
"https://vuln.go.dev/ID/GO-2026-6909.json"