Miggo Logo

CVE-2019-19921: opencontainers runc contains procfs race condition with a shared volume mount

5

CVSS Score
3.1

Basic Information

EPSS Score
0.47608%
Published
5/27/2021
Updated
5/31/2024
KEV Status
No
Technology
TechnologyGo

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N/E:U/RL:U/RC:U
Package NameEcosystemVulnerable VersionsFirst Patched Version
github.com/opencontainers/runcgo< 1.0.0-rc9.0.20200122160610-2fc03cc11c771.0.0-rc9.0.20200122160610-2fc03cc11c77

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from mountToRootfs in rootfs_linux.go not checking if the mount target (like /proc) was a directory before mounting. The fix in commit 2fc03cc11c77 adds directory validation checks specifically for proc/sysfs mounts. Multiple sources (CVE description, GitHub PR #2207, and commit diff) confirm this was the entry point for the symlink-exchange attack vector.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

### Imp**t *y *r**tin* * m*li*ious root *il*syst*m (wit* `/pro*` **in* * symlink to * *ir**tory w*i** w*s insi** * volum* s**r** wit* *not**r runnin* *ont*in*r), *n *tt**k*r in *ontrol o* *ot* *ont*in*rs **n tri*k `run*` into not *orr**tly *on*i*urin

Reasoning

T** vuln*r**ility st*ms *rom `mountToRoot*s` in `root*s_linux.*o` not ****kin* i* t** mount t*r**t (lik* /pro*) w*s * *ir**tory ***or* mountin*. T** *ix in *ommit `************` ***s *ir**tory `v*li**tion` ****ks sp**i*i**lly *or `pro*/sys*s` mounts.