Lucene search

K
githubGitHub Advisory DatabaseGHSA-6QV6-Q77G-7QM6
HistoryAug 31, 2022 - 10:29 p.m.

NVFLARE unsafe deserialization due to Pickle

2022-08-3122:29:27
CWE-502
GitHub Advisory Database
github.com
6

9.8 High

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

0.003 Low

EPSS

Percentile

70.2%

Impact

NVFLARE contains a vulnerability where deserialization of Untrusted Data due to Pickle usage 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.4 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 is included in nvflare==2.1.4
This new version uses MessagePack instead of Pickle to do serialization and deserialization.

Some object serializations supported by Pickle are not supported by MessagePack. We have provided out of box support for some built-in NVFLARE objects. For object serializations unsupported by MessagePack, the user will need to convert the objects to numpy or bytes before sending over to remote machines. The list of supported object types are listed in https://github.com/NVIDIA/NVFlare/blob/2.1/nvflare/fuel/utils/fobs/README.rst

Workarounds

No workarounds available.

Additional information

Issue Found by: Oliver Sellwood (Nintorac) and Elias Hohl

Affected configurations

Vulners
Node
nvidianvflareRange<2.1.4
CPENameOperatorVersion
nvflarelt2.1.4

9.8 High

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

0.003 Low

EPSS

Percentile

70.2%