LiveActive security incident?Get immediate response
CVE Record

CVE-2017-20146: Improper access control in github.com/gorilla/handlers

Usage of the CORS handler may apply improper CORS headers, allowing the requester to explicitly control the value of the Access-Control-Allow-Origin header, which bypasses the expected behavior of the Same Origin Policy.

CriticalCVSS 9.8Not KEV-listedUpdated
Glexia's TakeAutomated analysiscritical

Security readout for executives and security teams

Plain-English summary

This flaw affects Go applications using github.com/gorilla/handlers CORS handling. A requester could influence the Access-Control-Allow-Origin response header, weakening browser same-origin protections. For businesses, the urgency depends on whether affected services expose sensitive browser-accessible APIs.

Executive priority

Prioritize internet-facing Go APIs that rely on browser CORS restrictions for customer data or privileged actions. Treat as high urgency where those conditions exist; otherwise handle through normal dependency remediation.

Technical view

CVE-2017-20146 is an improper access control issue in github.com/gorilla/handlers CORS handling. The vulnerable behavior can apply improper CORS headers by allowing requester control over Access-Control-Allow-Origin. The source bundle rates it CVSS 3.1 critical, 9.8.

Likely exposure

Exposure is likely limited to Go services that import github.com/gorilla/handlers and use its CORS handler on routes where browser-origin restrictions protect sensitive data or actions.

Exploitation context

The bundle does not show active exploitation, and KEV is false. The risk is remotely reachable and unauthenticated in the CVSS vector, but practical impact depends on application CORS configuration and browser-facing attack surface.

Researcher notes

The public bundle identifies the vulnerable behavior and fix references, but does not provide affected version ranges beyond package-level data. Validate against Go vulnerability metadata and repository history before asserting exact vulnerable releases.

Mitigation direction

  • Check vendor guidance for the fixed github.com/gorilla/handlers version.
  • Update to a release containing commit 90663712d74cb411cbef281bc1e08c19d1a76145.
  • Restrict CORS allowed origins to explicit trusted origins.
  • Avoid configurations that reflect arbitrary request origins.
  • Add regression tests for allowed and disallowed origins.

Validation and detection

  • Inventory Go services importing github.com/gorilla/handlers.
  • Identify routes using the CORS handler.
  • Confirm dependency version includes the referenced fix commit.
  • Test that untrusted origins are not allowed in CORS responses.
  • Review sensitive browser-accessible APIs behind affected middleware.
Prepared
Confidence
medium
Sources
5

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.

cve · low confidence lookup

CVE-2017-20146 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
Critical
CVSS
9.8 (3.1)
Known Exploited
No
Published

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

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
4Source 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
9.8CVSS 3.1CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H3.95.9Primary CVE score

Vulnerability scoring details

Base CVSS 3.1 score

9.8Critical
CVSS 3.1 vector shape for CVE-2017-20146Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

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

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

Products and packages named in the record

VendorProductVersion / packageStatus
github.com/gorilla/handlersgithub.com/gorilla/handlersgithub.com/gorilla/handlers, 0unaffected
Weakness

CWE details

No CWE listed

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