CVE-2022-31605
Unsafe yaml deserialization in NVFlare
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
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 Critical
CVSS: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 Critical
CVSS: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 Critical
CVSS: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 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 7.5 High
AV: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 Critical
CVSS: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 Critical
CVSS: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
| Package | Affected | Fixed |
|---|---|---|
nvflarePyPI |
before 2.1.2 | 2.1.2 |
nvflarePyPI |
before 2.1.2, plus listed versions 0.1.30.9.01.0.01.0.11.0.2 Show 23 moreShow less1.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 |
nvflarePyPI |
before 2.1.2, plus listed versions 0.1.30.9.01.0.01.0.11.0.2 Show 23 moreShow less1.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
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE 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
github.com/NVIDIA/NVFlare/security/advisories/GHSA-hrf3-622q-8366
nvd.nist.gov/vuln/detail/CVE-2022-31605
github.com/pypa/advisory-database/tree/main/vulns/nvflare/PYSEC-2022-232.yaml
github.com/NVIDIA/NVFlare/commit/4de9782697ecb12f39bcae83221bd8d3498959be
github.com/advisories/GHSA-hrf3-622q-8366
github.com/CVEProject/cvelistV5/tree/main/cves/2022/31xxx/CVE-2022-31605.json
github.com/NVIDIA/NVFlare