LiveActive security incident?Get immediate response
CVE Record

CVE-2020-26160: jwt-go before 4.0.0-preview1 allows attackers to bypass intended access restrictions in situations with []s...

jwt-go before 4.0.0-preview1 allows attackers to bypass intended access restrictions in situations with []string{} for m["aud"] (which is allowed by the specification). Because the type assertion fails, "" is the value of aud. This is a security problem if the JWT token is presented to a service that lacks its own audience check.

HighCVSS 7.5Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

This issue affects jwt-go versions before 4.0.0-preview1. A token audience claim represented as a string array could be mishandled, causing the audience value to become empty. If an application does not independently verify audience, access controls can be bypassed.

Executive priority

Treat as high priority for systems where JWT audience controls protect customer data, internal APIs, or multi-tenant boundaries. Risk depends on vulnerable dependency use and missing audience checks.

Technical view

jwt-go incorrectly handled valid JWT aud claims encoded as []string. The failed type assertion resulted in an empty aud value. Services relying on this library behavior, without their own audience validation, could accept tokens outside the intended audience boundary.

Likely exposure

Exposure is most likely in Go services using github.com/dgrijalva/jwt-go before 4.0.0-preview1 for JWT validation, especially where audience restrictions gate API or service access.

Exploitation context

The provided sources do not show CISA KEV listing or active exploitation. The issue is remotely reachable when vulnerable services accept JWTs over a network and lack independent audience checks.

Researcher notes

The CVE description identifies the vulnerable condition clearly, but the bundle lists affected vendor and product as n/a. Validate actual package use and application-specific audience handling before declaring exposure.

Mitigation direction

  • Inventory Go services using github.com/dgrijalva/jwt-go.
  • Upgrade jwt-go to 4.0.0-preview1 or later where supported.
  • Verify each service enforces expected audience values itself.
  • Review vendor guidance before changing authentication-critical code.
  • Prioritize internet-facing APIs and service-to-service auth paths.

Validation and detection

  • Check go.mod and go.sum for vulnerable jwt-go versions.
  • Review JWT validation code for explicit audience enforcement.
  • Add safe unit tests for array-form aud claims.
  • Confirm dependency scanning no longer flags CVE-2020-26160.
  • Regression test authorization boundaries after dependency changes.
Prepared
Confidence
medium
Sources
4

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

description · low confidence lookup

Credential and access behavior lookup

The CVE wording references authentication or credential exposure, so valid-account and credential-access review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2020-26160 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
7.5 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AC:L/AV:N/A:N/C:H/I:N/PR:N/S:U/UI:N

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
0Timeline events
0ADP providers
3Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
7.5CVSS 3.1HighCVSS:3.1/AC:L/AV:N/A:N/C:H/I:N/PR:N/S:U/UI:N3.93.6Primary CVE score

Vulnerability scoring details

Base CVSS 3.1 score

7.5High
CVSS 3.1 vector shape for CVE-2020-26160Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AC:L/AV:N/A:N/C:H/I:N/PR:N/S:U/UI:N

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Source materials

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
n/an/an/aListed
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.