Every CVE Search/ Get API key

CVE-2023-23930

vantage6's Pickle serialization is insecure

5.5 MediumFix available

CVE-2023-23930 is a medium vulnerability (CVSS 5.5) in Vantage6, published October 11, 2023. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.11%, the 65th percentile. Fixed in vantage6 4.0.2.

vantage6 is privacy preserving federated learning infrastructure. Versions prior to 4.0.0 use pickle, which has known security issue, as a default serialization module but that has known security issues. All users of vantage6 that post tasks with the default serialization are affected. Version 4.0.0 contains a patch. Users may specify JSON serialization as a workaround.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
High
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
Low
Availability
None

Exploit likelihood

1.11%Up 1.1 points since Oct 12, 2023
90%50%10%1%

What each source reports

CVE List Score used 5.5

vantage6's Pickle serialization is insecure

vantage6 is privacy preserving federated learning infrastructure. Versions prior to 4.0.0 use pickle, which has known security issue, as a default serialization module but that has known security issues. All users of vantage6 that post tasks with the default serialization are affected. Version 4.0.0 contains a patch. Users may specify JSON serialization as a workaround.

Record
CVE-2023-23930
CVSS 3.1
5.5 MediumCVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:L/A:N
Weakness
CWE-502
Updated
2026-11-02
EUVDEUVD-2023-0257 5.5

vantage6 is privacy preserving federated learning infrastructure. Versions prior to 4.0.0 use pickle, which has known security issue, as a default serialization module but that has known security issues. All users of vantage6 that post tasks with the default serialization are affected. Version 4.0.0 contains a patch. Users may specify JSON serialization as a workaround.

Record
EUVD-2023-0257
CVSS 3.1
5.5 MediumCVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:L/A:N
Updated
2026-11-03
GitHub AdvisoriesGHSA-5m22-cfq9-86x6 8.6

Pickle serialization vulnerable to Deserialization of Untrusted Data

What

We are using pickle as default serialization module but that has known security issues (see e.g. https://medium.com/ochrona/python-pickle-is-notoriously-insecure-d6651f1974c9).

In summary, it is not advisable to open Pickles that you create yourself locally. In vantage6, algorithms use pickles to send aggregated data around and to pack algorithm input or output. All of the Python algorithms that use the wrappers with default serialization are therefore vulnerable to this issue.

Solution: we should use JSON instead

Impact

All users of vantage6 that post tasks with algorithms that use the default serialization. The default serialization is used by default with all algorithm wrappers.

Patches

Not yet

Workarounds

Specify JSON serialization

Record
GHSA-5m22-cfq9-86x6
CVSS 4.0
8.6 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
CVSS 3.1
7.2 HighCVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
NVD 5.5

vantage6 is privacy preserving federated learning infrastructure. Versions prior to 4.0.0 use pickle, which has known security issue, as a default serialization module but that has known security issues. All users of vantage6 that post tasks with the default serialization are affected. Version 4.0.0 contains a patch. Users may specify JSON serialization as a workaround.

Record
CVE-2023-23930
CVSS 3.1
5.5 MediumCVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:L/A:N
CVSS 3.1
7.2 HighCVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
OSV 5.5

vantage6's Pickle serialization is insecure

vantage6 is privacy preserving federated learning infrastructure. Versions prior to 4.0.0 use pickle, which has known security issue, as a default serialization module but that has known security issues. All users of vantage6 that post tasks with the default serialization are affected. Version 4.0.0 contains a patch. Users may specify JSON serialization as a workaround.

Record
CVE-2023-23930
CVSS 3.1
5.5 MediumCVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:L/A:N
Weakness
CWE-502
Updated
2026-11-02
OSVGHSA-5m22-cfq9-86x6 8.6

Pickle serialization vulnerable to Deserialization of Untrusted Data

What

We are using pickle as default serialization module but that has known security issues (see e.g. https://medium.com/ochrona/python-pickle-is-notoriously-insecure-d6651f1974c9).

In summary, it is not advisable to open Pickles that you create yourself locally. In vantage6, algorithms use pickles to send aggregated data around and to pack algorithm input or output. All of the Python algorithms that use the wrappers with default serialization are therefore vulnerable to this issue.

Solution: we should use JSON instead

Impact

All users of vantage6 that post tasks with algorithms that use the default serialization. The default serialization is used by default with all algorithm wrappers.

Patches

Not yet

Workarounds

Specify JSON serialization

Record
GHSA-5m22-cfq9-86x6
CVSS 4.0
8.6 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
CVSS 3.1
7.2 HighCVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
OSVPYSEC-2023-196 7.2

vantage6 is privacy preserving federated learning infrastructure. Versions prior to 4.0.0 use pickle, which has known security issue, as a default serialization module but that has known security issues. All users of vantage6 that post tasks with the default serialization are affected. Version 4.0.0 contains a patch. Users may specify JSON serialization as a workaround.

Record
PYSEC-2023-196
CVSS 3.1
7.2 HighCVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
vantage6
PyPI
before 4.0.2
4.0.2
vantage6
PyPI
before 4.0.2, plus listed versions
0.0.00.0.0b00.0.0b10.0.0b31.0.0
Show 45 moreShow less
1.0.0a11.0.0a21.0.0b101.0.0b111.0.0b121.0.0b131.0.0b141.0.0b21.0.0b31.0.0b41.0.0b51.0.0b61.0.0b71.0.0b81.0.0b91.1.01.1.0rc11.1.0rc21.2.01.2.11.2.21.2.31.2.3.post22.0.02.0.0.post12.0.0a12.0.0a22.0.0a32.0.1rc12.0.1rc22.1.02.1.0rc12.1.12.2.02.2.0b12.2.0b22.2.0b32.2.0b42.2.12.2.102.2.112.2.122.2.22.2.32.2.4
4.0.2

History

History
WhenChangedSources
2026-11-03aliases, publishedEUVD
2026-11-02createdCVE List, GitHub Advisories, NVD, OSV

References

This page doesn't list everything

Left out here: 139 versions. The JSON record has them.

MoveEnter Open