Snyk has a proof-of-concept or detailed explanation of how to exploit this vulnerability.
The probability is the direct output of the EPSS model, and conveys an overall sense of the threat of exploitation in the wild. The percentile measures the EPSS probability relative to all known EPSS scores. Note: This data is updated daily, relying on the latest available EPSS model version. Check out the EPSS documentation for more details.
In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.
Test your applicationsUpgrade bandit to version 1.14.0 or higher.
bandit is a HTTP server for Plug and WebSock apps.
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling via unbounded accumulation of fragmented WebSocket continuation frames in Bandit.WebSocket.Connection. An unauthenticated attacker can open a single WebSocket connection, send a non-final text frame followed by a large number of non-final continuation frames with small payloads, and cause the server to accumulate memory far exceeding the total bytes transmitted - approximately 150 times the eventual max_fragmented_message_size limit - crashing or exhausting the BEAM VM's available memory.
1. Run Bandit with default settings and a WebSock that accepts every connection.
2. Complete the WebSocket upgrade and send a non-final text frame with a 1-byte payload.
3. Send 500,000 masked non-final continuation frames with 1-byte payloads, 3.5 MB in all.
4. Send a Ping. The server answers with a Pong, and BEAM memory has grown by about 82 MB while the message is still far below the 8 MB cap.
Note: The PoC states Bandit running with default settings and a WebSock that accepts every connection, with no specific version or OS mentioned.