Miggo Logo

CVE-2020-36218:
Improper synchronization in buttplug

5.9

CVSS Score

Basic Information

EPSS Score
-
Published
8/25/2021
Updated
1/11/2023
KEV Status
No
Technology
TechnologyRust

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
buttplugrust< 1.0.41.0.4

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from manual implementations of Send/Sync traits for ButtplugFutureStateShared<T> that didn't respect T's thread-safety traits. This allowed the struct to be considered thread-safe even when containing !Send/!Sync types, enabling data races. The RustSec advisory explicitly states the fix involved removing these manual implementations to rely on auto trait derivation, confirming these trait implementations were the root cause. While specific file paths aren't provided, the structural analysis of trait implementations matches the vulnerability description with high confidence.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

*n issu* w*s *is*ov*r** in t** *uttplu* *r*t* ***or* *.*.* *or Rust. *uttplu**utur*St*t*S**r** *o*s not prop*rly *onsi**r (!S*n*|!Syn*) o*j**ts, l***in* to * **t* r***.

Reasoning

T** vuln*r**ility st*ms *rom m*nu*l impl*m*nt*tions o* S*n*/Syn* tr*its *or *uttplu**utur*St*t*S**r**<T> t**t *i*n't r*sp**t T's t*r***-s***ty tr*its. T*is *llow** t** stru*t to ** *onsi**r** t*r***-s*** *v*n w**n *ont*inin* !S*n*/!Syn* typ*s, *n**li