Every CVE Search/ Get API key

CVE-2022-31605

Unsafe yaml deserialization in NVFlare

9.8 CriticalFix available

NVFLARE, versions prior to 2.1.2, contains a vulnerability in its utils module, where YAML files are loaded via yaml.load() instead of yaml.safe_load(). The deserialization of Untrusted Data, may allow an unprivileged network attacker to cause Remote Code Execution, Denial Of Service, and Impact to both Confidentiality and Integrity.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

2.13%Up 1.0 points since Jul 2, 2022
90%50%10%1%

What each source reports

CVE List Score used 9.8

NVFLARE, versions prior to 2.1.2, contains a vulnerability in its utils module, where YAML files are loaded via yaml.load() instead of yaml.safe_load(). The deserialization of Untrusted Data, may allow an unprivileged network attacker to cause Remote Code Execution, Denial Of Service, and Impact to both Confidentiality and Integrity.

Record
CVE-2022-31605
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
EUVDEUVD-2022-0167 9.8

NVFLARE, versions prior to 2.1.2, contains a vulnerability in its utils module, where YAML files are loaded via yaml.load() instead of yaml.safe_load(). The deserialization of Untrusted Data, may allow an unprivileged network attacker to cause Remote Code Execution, Denial Of Service, and Impact to both Confidentiality and Integrity.

Record
EUVD-2022-0167
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-03
GitHub AdvisoriesGHSA-hrf3-622q-8366 9.8

Unsafe yaml deserialization in NVFlare

Impact

NVFLARE contains a vulnerability in its utils module, where YAML files are loaded via yaml.load() instead of yaml.safe_load(). The deserialization of Untrusted Data, may allow an unprivileged network attacker to cause Remote Code Execution, Denial Of Service, and Impact to both Confidentiality and Integrity.

All versions before 2.1.2 are affected. CVSS Score = 9.8 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Patches

The patch will be included in nvflare==2.1.2

Workarounds

Change yaml.load() to yaml.safe_load()

Additional information

Issue Found by: Oliver Sellwood (@Nintorac)

Record
GHSA-hrf3-622q-8366
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
NVD 9.8

NVFLARE, versions prior to 2.1.2, contains a vulnerability in its utils module, where YAML files are loaded via yaml.load() instead of yaml.safe_load(). The deserialization of Untrusted Data, may allow an unprivileged network attacker to cause Remote Code Execution, Denial Of Service, and Impact to both Confidentiality and Integrity.

Record
CVE-2022-31605
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.0
7.5 HighAV:N/AC:L/Au:N/C:P/I:P/A:P
Weakness
CWE-502
Updated
2026-11-02
OSV 9.8

NVFLARE, versions prior to 2.1.2, contains a vulnerability in its utils module, where YAML files are loaded via yaml.load() instead of yaml.safe_load(). The deserialization of Untrusted Data, may allow an unprivileged network attacker to cause Remote Code Execution, Denial Of Service, and Impact to both Confidentiality and Integrity.

Record
CVE-2022-31605
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
OSVGHSA-hrf3-622q-8366 9.8

Unsafe yaml deserialization in NVFlare

Impact

NVFLARE contains a vulnerability in its utils module, where YAML files are loaded via yaml.load() instead of yaml.safe_load(). The deserialization of Untrusted Data, may allow an unprivileged network attacker to cause Remote Code Execution, Denial Of Service, and Impact to both Confidentiality and Integrity.

All versions before 2.1.2 are affected. CVSS Score = 9.8 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Patches

The patch will be included in nvflare==2.1.2

Workarounds

Change yaml.load() to yaml.safe_load()

Additional information

Issue Found by: Oliver Sellwood (@Nintorac)

Record
GHSA-hrf3-622q-8366
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
OSVPYSEC-2022-232 No score

NVFLARE, versions prior to 2.1.2, contains a vulnerability in its utils module, where YAML files are loaded via yaml.load() instead of yaml.safe_load(). The deserialization of Untrusted Data, may allow an unprivileged network attacker to cause Remote Code Execution, Denial Of Service, and Impact to both Confidentiality and Integrity.

Record
PYSEC-2022-232
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
nvflare
PyPI
before 2.1.2
2.1.2
nvflare
PyPI
before 2.1.2, plus listed versions
0.1.30.9.01.0.01.0.11.0.2
Show 23 moreShow less
1.1.01.1.12.0.02.0.12.0.102.0.112.0.122.0.132.0.142.0.152.0.162.0.182.0.192.0.22.0.32.0.42.0.52.0.62.0.72.0.82.0.92.1.02.1.1
2.1.2
nvflare
PyPI
before 2.1.2, plus listed versions
0.1.30.9.01.0.01.0.11.0.2
Show 23 moreShow less
1.1.01.1.12.0.02.0.12.0.102.0.112.0.122.0.132.0.142.0.152.0.162.0.22.0.32.0.42.0.52.0.62.0.72.0.82.0.92.1.02.1.12.0.182.0.19
2.1.2

History

History
RecordedChangedSources
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2022-31605 is a critical vulnerability (CVSS 9.8) in Nvidia Nvflare, published June 22, 2022. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 2.13%, the 82nd percentile. Fixed in nvflare 2.1.2.

References

MoveEnter Open