| { |
| "id": "GO-2020-0019", |
| "published": "2021-04-14T20:04:52Z", |
| "modified": "0001-01-01T00:00:00Z", |
| "aliases": [ |
| "CVE-2020-27813", |
| "GHSA-3xh2-74w9-5vxm" |
| ], |
| "details": "An attacker can craft malicious WebSocket frames that cause an integer\noverflow in a variable which tracks the number of bytes remaining. This\nmay cause the server or client to get stuck attempting to read frames\nin a loop, which can be used as a denial of service vector.\n", |
| "affected": [ |
| { |
| "package": { |
| "name": "github.com/gorilla/websocket", |
| "ecosystem": "Go" |
| }, |
| "ranges": [ |
| { |
| "type": "SEMVER", |
| "events": [ |
| { |
| "introduced": "0" |
| }, |
| { |
| "fixed": "1.4.1" |
| } |
| ] |
| } |
| ], |
| "database_specific": { |
| "url": "https://pkg.go.dev/vuln/GO-2020-0019" |
| }, |
| "ecosystem_specific": { |
| "imports": [ |
| { |
| "path": "github.com/gorilla/websocket", |
| "symbols": [ |
| "Conn.Close", |
| "Conn.NextReader", |
| "Conn.ReadJSON", |
| "Conn.ReadMessage", |
| "Conn.WriteJSON", |
| "Conn.WritePreparedMessage", |
| "Conn.advanceFrame", |
| "Dialer.Dial", |
| "Dialer.DialContext", |
| "NewClient", |
| "NewPreparedMessage", |
| "ReadJSON", |
| "Subprotocols", |
| "Upgrade", |
| "Upgrader.Upgrade", |
| "WriteJSON", |
| "httpProxyDialer.Dial", |
| "messageReader.Read", |
| "netDialerFunc.Dial", |
| "proxy_direct.Dial", |
| "proxy_envOnce.Get", |
| "proxy_socks5.Dial" |
| ] |
| } |
| ] |
| } |
| } |
| ], |
| "references": [ |
| { |
| "type": "FIX", |
| "url": "https://github.com/gorilla/websocket/pull/537" |
| }, |
| { |
| "type": "FIX", |
| "url": "https://github.com/gorilla/websocket/commit/5b740c29263eb386f33f265561c8262522f19d37" |
| } |
| ] |
| } |