OpenVPN: Privilege Chaining
CVE-2024-4877 is a high-severity privilege chaining vulnerability in OpenVPN, with a CVSS 3.1 base score of 8.8 out of 10. It can be exploited remotely over the network by an attacker with a low-privileged account, without any action from a user. Affected OpenVPN versions: 2.4.0 through 2.6.11. The record does not name a fixed version, so check the vendor advisory. There is no confirmed exploitation so far. EPSS estimates a 0.44% chance of exploitation within 30 days, which is low compared with other CVEs.
High severity with no evidence of exploitation so far.
What to do
- Check which version of OpenVPN you run against the affected versions below, and install the vendor's latest release.
Affected products and versions
Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.
How the severity score breaks down
- Attack vector
- NetworkCan be exploited remotely over a network, including the internet.
- Attack complexity
- LowNo special conditions are needed; the attack works reliably.
- Privileges required
- LowA basic user account is enough.
- User interaction
- NoneNo action by a victim is required.
- Scope
- UnchangedImpact stays within the vulnerable component.
- Confidentiality
- HighAll data handled by the component can be read.
- Integrity
- HighData or code can be modified at will.
- Availability
- HighThe component can be taken down completely.
Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H. Scored by CISA (ADP).
Official description
OpenVPN version 2.4.0 through 2.6.10 on Windows allows an external, lesser privileged process to create a named pipe which the OpenVPN GUI component would connect to allowing it to escalate its privileges
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: Privilege Chaining
Two distinct privileges, roles, capabilities, or rights can be combined in a way that allows an entity to perform unsafe actions that would not be allowed without that combination.
How developers prevent this class of flaw
- Consider following the principle of separation of privilege. Require multiple conditions to be met before permitting access to a system resource.
- Very carefully manage the setting, management, and handling of privileges. Explicitly manage trust zones in the software.
- Run your code using the lowest privileges that are required to accomplish the necessary tasks. If possible, create isolated accounts with limited privileges that are only used for a single task. That way, a successful attack will not immediately give the attacker access to the rest of the software or its environment. For example, database applications rarely need to run as the database administrator, especially in day-to-day operations.
Timeline
- CVE record published.
- CISA published its SSVC assessment (exploitation: none, automatable: no, technical impact: total).
- Record last changed materially (score, affected products, status or references).
References
Patches and release notes
- mail-archive.com/[email protected]/msg07634.htmlMailing List, Release Notes
Other references
- community.openvpn.net/openvpn/wiki/CVE-2024-4877Permissions Required
Other vulnerabilities in OpenVPN
- 7.2 High severity
- 7.1 High severity
- 8.7 High severity
- 7.7 High severity
- 8.5 High severity
- 9.1 Critical severity
Recent Privilege Chaining vulnerabilities
- 7.8 High severity
- 7.8 High severity
- 8.1 High severity
Spotted an error? Tell us.