@@ -35,65 +35,72 @@ easily describe which CVEs affect which Erlang/OTP versions and specific OTP
3535applications. It also records which CVEs from third parties affect (or do not
3636affect) Erlang/OTP.
3737
38- Erlang/OTP releases OpenVEX statements under ` vex/otp-<version>.openvex.json ` in
39- the [ Erlang/OTP Github repository] ( https://github.com/erlang/otp ) in the ` master ` branch, where
40- ` <version> ` corresponds to the number of the Erlang/OTP release.
38+ Erlang/OTP releases OpenVEX statements for currently maintained OTP releases
39+ under [ https://erlang.org/download/vex/ ] ( https://erlang.org/download/vex/ ) .
40+ The filenames in that directory follow the pattern
41+ ` otp-<release>.openvex.json ` , where ` <release> ` corresponds to the OTP
42+ release number.
4143
4244## Erlang/OTP VEX Statements
4345
4446Erlang/OTP OpenVEX statements specify which Erlang/OTP versions are affected/fixed (e.g.,
45- ` pkg:otp/[email protected] ` ), as well as the specific Erlang/OTP application number
46- of all affected versions (e.g.,
` pkg:otp/[email protected] ` ).
47-
48- As an example, a snippet of the ` vex/otp-27.openvex.json ` contains the
49- vulnerability identified by ` CVE-2025-32433 ` , following by the status of the
50- vulnerability (` affected ` ), the affected Erlang/OTP releases, namely ` 27.3.1 `
51- and
` 27.3.2 ` , and the Erlang/OTP application that was vulnerable,
` [email protected] ` .
52- The affected versions are reported using the release version and the
53- application because it is possible to update the application independently
47+ ` pkg:github/erlang/[email protected] ` ), as well as the specific Erlang/OTP application number
48+ of all affected versions (e.g.,
` pkg:otp/[email protected] ` ).
49+
50+ As an example, a snippet of the [ https://erlang.org/download/vex/otp-28.openvex.json ] ( https://erlang.org/download/vex/otp-28.openvex.json ) contains the
51+ vulnerability identified by ` CVE-2025-48038 ` , followed by the status of the
52+ vulnerability (` affected ` ), the affected Erlang/OTP releases, namely ` 28.0 ` ,
53+ ` 28.0.1 ` , and ` 28.0.2 ` , and the Erlang/OTP application that was vulnerable
54+ 55+ Erlang/OTP reports the affected versions using the release and the
56+ application versions because it is possible to update the application independently
5457from the release.
5558In some cases, there may be an optional action statement that describes a workaround
5659to avoid the mentioned vulnerability.
5760
5861```
5962{
6063 "vulnerability": {
61- "name": "CVE-2025-32433 "
64+ "name": "CVE-2025-48038 "
6265 },
63- "timestamp": "2025-06-18T12:18:16.661272703+02:00 ",
66+ "timestamp": "2025-09-16T08:22:13.223967395Z ",
6467 "products": [
65- { "@id": "pkg:otp/[email protected] " }, 66- { "@id": "pkg:otp/[email protected] " }, 67- { "@id": "pkg:otp/[email protected] " } 68+ { "@id": "pkg:github/erlang/[email protected] " }, 69+ { "@id": "pkg:github/erlang/[email protected] " }, 70+ { "@id": "pkg:github/erlang/[email protected] " }, 71+ { "@id": "pkg:otp/[email protected] " }, 72+ { "@id": "pkg:otp/[email protected] " }, 73+ { "@id": "pkg:otp/[email protected] " } 6874 ],
6975 "status": "affected",
70- "action_statement": "A temporary workaround involves disabling the SSH server or to prevent access via firewall rules. ",
71- "action_statement_timestamp": "2025-06-18T12:18:16.661272703+02:00 "
76+ "action_statement": "Update to any of the following versions: pkg:otp/[email protected] ", 77+ "action_statement_timestamp": "2025-09-16T08:22:13.223967395Z "
7278},
7379```
7480
75- The fixed version will be reported in a similar fashion as follows, in the same document.
76- As an example, there is a new statement for ` CVE-2025-32433 ` with status ` fixed ` ,
77- that links to the versions that do not suffer from ` CVE-2025-32433 ` , namely
78- ` [email protected] .3` and
` otp/ ssh@5.2.10 ` .
81+ Erlang/OTP reports the fixed version in a similar fashion as follows, in the same document.
82+ As an example, there is a new statement for ` CVE-2025-48038 ` with status ` fixed ` ,
83+ that links to the first release that do not suffer from ` CVE-2025-48038 ` , namely
84+ OTP version ` 28.0 .3` and application ` ssh@5.3.3 ` .
7985
8086```
8187{
8288 "vulnerability": {
83- "name": "CVE-2025-32433 "
89+ "name": "CVE-2025-48038 "
8490 },
85- "timestamp": "2025-06-18T12:18:16.676540081+02:00 ",
91+ "timestamp": "2025-09-16T08:22:13.241103494Z ",
8692 "products": [
87- { "@id": "pkg:otp/[email protected] " }, 88- { "@id": "pkg:otp/[email protected] " } 89- ],
93+ { "@id": "pkg:github/erlang/[email protected] " }, 94+ { "@id": "pkg:github/erlang/[email protected] " }, 95+ { "@id": "pkg:otp/[email protected] " } 96+ ],
9097 "status": "fixed"
9198},
9299```
93100
94101## Third Party VEX Statements
95102
96- Erlang/OTP generates statements for 3rd parties from which the project depends
103+ Erlang/OTP generates statements for third parties from which the project depends
97104on. It is really important to understand the scope of the third party
98105applications, since Erlang/OTP vendors some libraries as part of the runtime.
99106
@@ -108,7 +115,7 @@ included in the Erlang/OTP release.
108115The OpenVEX statements for our third party libraries specify the affected/fixed
109116version using the commit SHA1 from their respective repository. This is simply
110117because our third party dependencies are in C/C++ and vulnerability scanners
111- such as OSV report vulnerabilities in ranges.
118+ such as OSV report vulnerabilities in SHA1 ranges.
112119
113120As an example, we mention that the OpenSSL code that Erlang/OTP vendors
114121is not susceptible for ` CVE-2023-6129 ` , as follows:
0 commit comments