Every CVESearch/Get API key

GHSA-3x5x-fw77-g54c

dmlc/dgl Vulnerable to Remote Code Execution by Pickle Deserialization via rpc.recv_request()

8.9 High

GHSA-3x5x-fw77-g54c is a high vulnerability (CVSS 8.9) in dgl, published March 5, 2025. No source lists public exploit code. No source names a fixed version.

What does this mean?
Severity
8.9 HighCVSS 4.0, GitHub Advisories
Exploit chance
UnscoredNo EPSS score yet
Exploitation
None knownNot on CISA’s or ENISA’s lists
Fixed in
No fix listedNo source names one

Description

Impact

Dgl implements rpc server (start_server() in rpc_server.py) for supporting the RPC communications among different remote users over networks. It relies on pickle serialize and deserialize to pack and unpack network messages. The is a known risk in pickle deserialization functionality that can be used for remote code execution.

Patches

TBD.

Workarounds

When running DGL distributed training and inference (DistDGL) make sure you do not assign public IPs to any instance in the cluster.

References

Issue #7874

Reported by

Pinji Chen (cpj24@mails.tsinghua.edu.cn) from NISL lab (https://netsec.ccert.edu.cn/about) at Tsinghua University

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

Affected packages

Affected packages
PackageAffectedFixed
dgl
PyPI
through 2.4.0None known
dgl
PyPI
through 2.4.0, plus listed versions
0.0.10.1.00.1.20.1.30.2
Show 45 moreShow less
0.30.3.10.40.4.10.4.20.4.30.4.3.post10.4.3.post20.4rc1908190.4rc1908210.4rc1908220.4rc1908230.4rc1908240.4rc1908260.4rc1909020.4rc1909030.4rc1909040.4rc1909050.4rc1909060.4rc1909080.4rc1909090.4rc1909100.4rc1909110.4rc1909120.4rc1909150.4rc1909160.4rc1909170.4rc1909180.4rc1909200.4rc1909210.4rc1909230.4rc1909240.4rc1909270.4rc1909280.4rc1909290.4rc1910010.4rc1910030.4rc1910040.4rc1910050.5.00.5.10.5.20.5.30.6.00.6.0.post1
None known

What each source reports

GitHub Advisories Score used8.9

dmlc/dgl Vulnerable to Remote Code Execution by Pickle Deserialization via rpc.recv_request()

Impact

Dgl implements rpc server (start_server() in rpc_server.py) for supporting the RPC communications among different remote users over networks. It relies on pickle serialize and deserialize to pack and unpack network messages. The is a known risk in pickle deserialization functionality that can be used for remote code execution.

Patches

TBD.

Workarounds

When running DGL distributed training and inference (DistDGL) make sure you do not assign public IPs to any instance in the cluster.

References

Issue #7874

Reported by

Pinji Chen (cpj24@mails.tsinghua.edu.cn) from NISL lab (https://netsec.ccert.edu.cn/about) at Tsinghua University

Record
GHSA-3x5x-fw77-g54c
CVSS 4.0
8.9 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P
Weakness
CWE-502
Updated
2026-11-02
OSV8.9

dmlc/dgl Vulnerable to Remote Code Execution by Pickle Deserialization via rpc.recv_request()

Impact

Dgl implements rpc server (start_server() in rpc_server.py) for supporting the RPC communications among different remote users over networks. It relies on pickle serialize and deserialize to pack and unpack network messages. The is a known risk in pickle deserialization functionality that can be used for remote code execution.

Patches

TBD.

Workarounds

When running DGL distributed training and inference (DistDGL) make sure you do not assign public IPs to any instance in the cluster.

References

Issue #7874

Reported by

Pinji Chen (cpj24@mails.tsinghua.edu.cn) from NISL lab (https://netsec.ccert.edu.cn/about) at Tsinghua University

Record
GHSA-3x5x-fw77-g54c
CVSS 4.0
8.9 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P
Weakness
CWE-502
Updated
2026-11-02

History

History
RecordedChangedSources
first indexedGitHub Advisories, OSV

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

References

This page doesn't list everything

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

MoveEnter Open