Miggo Logo

CVE-2020-35907: futures_task::noop_waker_ref can segfault due to dereferencing a NULL pointer

5.5

CVSS Score
3.1

Basic Information

EPSS Score
0.33834%
Published
5/24/2022
Updated
6/13/2023
KEV Status
No
Technology
TechnologyRust

Technical Details

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
futures-taskrust< 0.3.50.3.5

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability root cause is explicitly tied to noop_waker_ref's implementation using thread-local storage. The reproduction example demonstrates crash occurs when the waker reference crosses thread boundaries. Advisory descriptions and CVE analysis all identify this function as the source of improper thread-local storage handling. The function's design violated thread safety assumptions as Waker's Sync implementation allowed cross-thread usage.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

*****t** v*rsions o* t** *r*t* us** * Uns*****ll in t*r***-lo**l stor*** to r*turn * noop w*k*r r***r*n**, *ssumin* t**t t** r***r*n** woul* n*v*r ** r*turn** *rom *not**r t*r***. T*is r*sult** in * s**m*nt*tion **ult *r*s* i* W*k*r::w*k*_*y_r**() w

Reasoning

T** vuln*r**ility root **us* is *xpli*itly ti** to noop_w*k*r_r**'s impl*m*nt*tion usin* t*r***-lo**l stor***. T** r*pro*u*tion *x*mpl* **monstr*t*s *r*s* o**urs w**n t** w*k*r r***r*n** *ross*s t*r*** *oun**ri*s. **visory **s*riptions *n* *V* *n*lys