Miggo Logo

CVE-2022-39393: Wasmtime may have data leakage between instances in the pooling allocator

8.6

CVSS Score
3.1

Basic Information

EPSS Score
0.27573%
Published
11/10/2022
Updated
2/2/2023
KEV Status
No
Technology
TechnologyRust

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
wasmtimerust< 2.0.22.0.2

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from improper memory image handling in the pooling allocator. The patch shows critical changes in pooling.rs where memory image slot management was restructured. The original code only acquired the slot when a module had an image, leaving previous images intact for modules without one. The addition of 'drop(slot)' in the else clause and reordered slot acquisition indicates the vulnerable path was in the slot reuse logic when transitioning between image/non-image modules.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

### Imp**t T**r* is * *u* in W*smtim*'s impl*m*nt*tion o* it's poolin* inst*n** *llo**tor w**r* w**n * lin**r m*mory is r*us** *or *not**r inst*n** t** initi*l ***p sn*ps*ot o* t** prior inst*n** **n ** visi*l*, *rron*ously to t** n*xt inst*n**. T**

Reasoning

T** vuln*r**ility st*ms *rom improp*r m*mory im*** **n*lin* in t** poolin* *llo**tor. T** p*t** s*ows *riti**l ***n**s in `poolin*.rs` w**r* m*mory im*** slot m*n***m*nt w*s r*stru*tur**. T** ori*in*l *o** only **quir** t** slot w**n * mo*ul* *** *n