| { |
| "schema_version": "1.3.1", |
| "id": "GO-2022-0236", |
| "modified": "0001-01-01T00:00:00Z", |
| "published": "2022-07-15T23:04:18Z", |
| "aliases": [ |
| "CVE-2021-31525", |
| "GHSA-h86h-8ppg-mxmh" |
| ], |
| "summary": "Panic due to large headers in net/http and golang.org/x/net/http/httpguts", |
| "details": "A malicious HTTP server or client can cause the net/http client or server to panic.\n\nReadRequest and ReadResponse can hit an unrecoverable panic when reading a very large header (over 7MB on 64-bit architectures, or over 4MB on 32-bit ones). Transport and Client are vulnerable and the program can be made to crash by a malicious server. Server is not vulnerable by default, but can be if the default max header of 1MB is overridden by setting Server.MaxHeaderBytes to a higher value, in which case the program can be made to crash by a malicious client.\n\nThis also affects golang.org/x/net/http2/h2c and HeaderValuesContainsToken in golang.org/x/net/http/httpguts.", |
| "affected": [ |
| { |
| "package": { |
| "name": "stdlib", |
| "ecosystem": "Go" |
| }, |
| "ranges": [ |
| { |
| "type": "SEMVER", |
| "events": [ |
| { |
| "introduced": "0" |
| }, |
| { |
| "fixed": "1.15.12" |
| }, |
| { |
| "introduced": "1.16.0-0" |
| }, |
| { |
| "fixed": "1.16.4" |
| } |
| ] |
| } |
| ], |
| "ecosystem_specific": { |
| "imports": [ |
| { |
| "path": "net/http", |
| "symbols": [ |
| "http2clientStream.writeRequest", |
| "http2isConnectionCloseRequest", |
| "isProtocolSwitchHeader", |
| "shouldClose" |
| ] |
| } |
| ] |
| } |
| }, |
| { |
| "package": { |
| "name": "golang.org/x/net", |
| "ecosystem": "Go" |
| }, |
| "ranges": [ |
| { |
| "type": "SEMVER", |
| "events": [ |
| { |
| "introduced": "0" |
| }, |
| { |
| "fixed": "0.0.0-20210428140749-89ef3d95e781" |
| } |
| ] |
| } |
| ], |
| "ecosystem_specific": { |
| "imports": [ |
| { |
| "path": "golang.org/x/net/http/httpguts", |
| "symbols": [ |
| "HeaderValuesContainsToken", |
| "headerValueContainsToken" |
| ] |
| } |
| ] |
| } |
| } |
| ], |
| "references": [ |
| { |
| "type": "FIX", |
| "url": "https://go.dev/cl/313069" |
| }, |
| { |
| "type": "FIX", |
| "url": "https://go.googlesource.com/net/+/89ef3d95e781148a0951956029c92a211477f7f9" |
| }, |
| { |
| "type": "REPORT", |
| "url": "https://go.dev/issue/45710" |
| }, |
| { |
| "type": "WEB", |
| "url": "https://groups.google.com/g/golang-announce/c/cu9SP4eSXMc" |
| } |
| ], |
| "credits": [ |
| { |
| "name": "Guido Vranken" |
| } |
| ], |
| "database_specific": { |
| "url": "https://pkg.go.dev/vuln/GO-2022-0236", |
| "review_status": "REVIEWED" |
| } |
| } |