blob: 377b80b0c27e3ec2726e2830220651a64f88642d [file] [log] [blame]
{
"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"
}
]
}