CVE-2020-7693
JavaScript vulnerability analysis and mitigation

Overview

SockJS before version 0.3.20 contains a Denial of Service (DoS) vulnerability identified as CVE-2020-7693. The vulnerability stems from incorrect handling of Upgrade header with the value websocket, which leads to crashing of containers hosting sockjs applications (Snyk JS, Snyk Java).

Technical details

The vulnerability occurs when processing websocket upgrade requests. The issue exists in the response handling where res.end() is called instead of res.write(), leading to an Error [ERR_STREAM_WRITE_AFTER_END] condition when attempting to write after the stream has ended. This implementation flaw causes the container to crash when receiving specific websocket upgrade requests (GitHub Issue, GitHub PR). The vulnerability has a CVSS score of 5.3 (Medium) with Network attack vector and Low attack complexity (Snyk JS).

Impact

When exploited, this vulnerability can cause denial of service by crashing containers hosting SockJS applications. The attack affects the availability of the service, where resources become either partially available or intermittently unavailable, though there is no direct impact on confidentiality or integrity of the system (Snyk JS).

Exploitability

The vulnerability is remotely exploitable without requiring any privileges or user interaction. A proof-of-concept exploit has been developed and published by Andrew Snow, demonstrating the ability to trigger the vulnerability by sending crafted websocket upgrade requests to the target application (GitHub PoC).

Mitigation and workarounds

The recommended mitigation is to upgrade SockJS to version 0.3.20 or higher, which contains the fix for this vulnerability. The fix involves changing the response handling to use res.write() instead of res.end() when processing websocket upgrade requests (GitHub PR).

Additional resources


SourceThis report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-48170CRITICAL9.1
  • JavaScript logoJavaScript
  • scim-patch
NoYesAug 07, 2026
CVE-2026-48007HIGH8.6
  • JavaScript logoJavaScript
  • @element-hq/element-call-embedded
NoYesAug 07, 2026
CVE-2026-69207MEDIUM5.3
  • JavaScript logoJavaScript
  • gemini-cli
NoYesAug 07, 2026
CVE-2026-71850MEDIUM4.8
  • JavaScript logoJavaScript
  • hono
NoYesAug 07, 2026
CVE-2026-71849LOW3.7
  • JavaScript logoJavaScript
  • hono
NoYesAug 07, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management