Vulnerability Details CVE-2022-39063
When Open5GS UPF receives a PFCP Session Establishment Request, it stores related values for building the PFCP Session Establishment Response. Once UPF receives a request, it gets the f_teid_len from incoming message, and then uses it to copy data from incoming message to struct f_teid without checking the maximum length. If the pdi.local_f_teid.len exceeds the maximum length of the struct of f_teid, the memcpy() overwrites the fields (e.g., f_teid_len) after f_teid in the pdr struct. After parsing the request, the UPF starts to build a response. The f_teid_len with its overwritten value is used as a length for memcpy(). A segmentation fault occurs, as a result of a memcpy(), if this overwritten value is large enough.
Exploit prediction scoring system (EPSS) score
EPSS Score 0.003
EPSS Ranking 51.2%
CVSS Severity
CVSS v3 Score 7.5
Products affected by CVE-2022-39063
-
cpe:2.3:a:open5gs:open5gs:-
-
cpe:2.3:a:open5gs:open5gs:0.1.0
-
cpe:2.3:a:open5gs:open5gs:0.1.1
-
cpe:2.3:a:open5gs:open5gs:0.2.0
-
cpe:2.3:a:open5gs:open5gs:0.3.0
-
cpe:2.3:a:open5gs:open5gs:0.3.1
-
cpe:2.3:a:open5gs:open5gs:0.3.10
-
cpe:2.3:a:open5gs:open5gs:0.3.11
-
cpe:2.3:a:open5gs:open5gs:0.3.2
-
cpe:2.3:a:open5gs:open5gs:0.3.3
-
cpe:2.3:a:open5gs:open5gs:0.3.4
-
cpe:2.3:a:open5gs:open5gs:0.3.5
-
cpe:2.3:a:open5gs:open5gs:0.3.6
-
cpe:2.3:a:open5gs:open5gs:0.3.7
-
cpe:2.3:a:open5gs:open5gs:0.3.8
-
cpe:2.3:a:open5gs:open5gs:0.3.9
-
cpe:2.3:a:open5gs:open5gs:0.4.0
-
cpe:2.3:a:open5gs:open5gs:0.4.1
-
cpe:2.3:a:open5gs:open5gs:0.4.2
-
cpe:2.3:a:open5gs:open5gs:0.4.3
-
cpe:2.3:a:open5gs:open5gs:0.4.4
-
cpe:2.3:a:open5gs:open5gs:0.5.0
-
cpe:2.3:a:open5gs:open5gs:0.5.1
-
cpe:2.3:a:open5gs:open5gs:0.5.2
-
cpe:2.3:a:open5gs:open5gs:1.0.0
-
cpe:2.3:a:open5gs:open5gs:1.1.0
-
cpe:2.3:a:open5gs:open5gs:1.2.0
-
cpe:2.3:a:open5gs:open5gs:1.2.1
-
cpe:2.3:a:open5gs:open5gs:1.2.2
-
cpe:2.3:a:open5gs:open5gs:1.2.3
-
cpe:2.3:a:open5gs:open5gs:1.2.4
-
cpe:2.3:a:open5gs:open5gs:1.3.0
-
cpe:2.3:a:open5gs:open5gs:2.0.0
-
cpe:2.3:a:open5gs:open5gs:2.0.18
-
cpe:2.3:a:open5gs:open5gs:2.0.20
-
cpe:2.3:a:open5gs:open5gs:2.0.21
-
cpe:2.3:a:open5gs:open5gs:2.0.22
-
cpe:2.3:a:open5gs:open5gs:2.1.0
-
cpe:2.3:a:open5gs:open5gs:2.1.1
-
cpe:2.3:a:open5gs:open5gs:2.1.3
-
cpe:2.3:a:open5gs:open5gs:2.1.4
-
cpe:2.3:a:open5gs:open5gs:2.1.5
-
cpe:2.3:a:open5gs:open5gs:2.1.7
-
cpe:2.3:a:open5gs:open5gs:2.2.0
-
cpe:2.3:a:open5gs:open5gs:2.2.1
-
cpe:2.3:a:open5gs:open5gs:2.2.2
-
cpe:2.3:a:open5gs:open5gs:2.2.3
-
cpe:2.3:a:open5gs:open5gs:2.2.4
-
cpe:2.3:a:open5gs:open5gs:2.2.5
-
cpe:2.3:a:open5gs:open5gs:2.2.6
-
cpe:2.3:a:open5gs:open5gs:2.2.7
-
cpe:2.3:a:open5gs:open5gs:2.2.8
-
cpe:2.3:a:open5gs:open5gs:2.2.9
-
cpe:2.3:a:open5gs:open5gs:2.3.0
-
cpe:2.3:a:open5gs:open5gs:2.3.1
-
cpe:2.3:a:open5gs:open5gs:2.3.2
-
cpe:2.3:a:open5gs:open5gs:2.3.3
-
cpe:2.3:a:open5gs:open5gs:2.3.4
-
cpe:2.3:a:open5gs:open5gs:2.3.6
-
cpe:2.3:a:open5gs:open5gs:2.4.0
-
cpe:2.3:a:open5gs:open5gs:2.4.1
-
cpe:2.3:a:open5gs:open5gs:2.4.2
-
cpe:2.3:a:open5gs:open5gs:2.4.3
-
cpe:2.3:a:open5gs:open5gs:2.4.4
-
cpe:2.3:a:open5gs:open5gs:2.4.5
-
cpe:2.3:a:open5gs:open5gs:2.4.6
-
cpe:2.3:a:open5gs:open5gs:2.4.7
-
cpe:2.3:a:open5gs:open5gs:2.4.8
-
cpe:2.3:a:open5gs:open5gs:2.4.9