vigor3910_firmware: Stack-based Buffer Overflow
CVE-2024-41592 is a high-severity stack-based buffer overflow vulnerability in vigor3910_firmware from DrayTek, with a CVSS 3.1 base score of 8.0 out of 10. It can be exploited from the same local network by an attacker with a low-privileged account, without any action from a user. Affected vigor3910_firmware versions: 4.3.2.6 and earlier. The record does not name a fixed version, so check the vendor advisory. There is no confirmed exploitation so far. EPSS estimates a 1.4% chance of exploitation within 30 days, higher than 73% of scored CVEs.
High severity with no evidence of exploitation so far.
What to do
- Update Vigor2952 Firmware to 3.9.8.2 or a later version.
- Update Vigor2620 Firmware to 3.9.8.9 or a later version.
- Update Vigor2915 Firmware to 4.4.5.3 or a later version.
Affected products and versions
| Vendor | Product | Affected versions | Fixed in |
|---|---|---|---|
| Draytek | vigor3910_firmware | 4.3.2.6 and earlier | Not stated |
| Draytek | Vigor2952 Firmware | before 3.9.8.2 | 3.9.8.2 |
| Draytek | Vigor2620 Firmware | before 3.9.8.9 | 3.9.8.9 |
| Draytek | Vigor2915 Firmware | before 4.4.5.3 | 4.4.5.3 |
| Draytek | Vigor2866 Firmware | before 4.4.5.2 | 4.4.5.2 |
| Draytek | Vigor2766 Firmware | before 4.4.5.3 | 4.4.5.3 |
| Draytek | Vigor2865 Firmware | before 4.4.5.2 | 4.4.5.2 |
| Draytek | Vigor2765 Firmware | before 4.4.5.3 | 4.4.5.3 |
| Draytek | Vigor2763 Firmware | before 4.4.5.3 | 4.4.5.3 |
| Draytek | Vigor2135 Firmware | before 4.4.5.3 | 4.4.5.3 |
| Draytek | Vigor166 Firmware | before 4.2.7 | 4.2.7 |
| Draytek | Vigor3912 Firmware | before 4.3.6.1 | 4.3.6.1 |
| Draytek | Vigor1000b Firmware | before 4.3.2.8; 4.4.0.0 up to, but not including, 4.4.3.1 | 4.3.2.8, 4.4.3.1 |
| Draytek | Vigor165 Firmware | before 4.2.7 | 4.2.7 |
| Draytek | Vigor2962 Firmware | before 4.3.2.8; 4.4.0.0 up to, but not including, 4.4.3.1 | 4.3.2.8, 4.4.3.1 |
| Draytek | Vigorlte200 Firmware | before 3.9.8.9 | 3.9.8.9 |
| Draytek | Vigor2133 Firmware | before 3.9.9 | 3.9.9 |
| Draytek | Vigor2762 Firmware | before 3.9.9 | 3.9.9 |
| Draytek | Vigor2832 Firmware | before 3.9.9 | 3.9.9 |
| Draytek | Vigor2860 Firmware | before 3.9.8 | 3.9.8 |
| Draytek | Vigor2862 Firmware | before 3.9.9.5 | 3.9.9.5 |
| Draytek | Vigor2925 Firmware | before 3.9.8 | 3.9.8 |
| Draytek | Vigor2926 Firmware | before 3.9.9.5 | 3.9.9.5 |
| Draytek | Vigor3220 Firmware | before 3.9.8.2 | 3.9.8.2 |
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
- AdjacentThe attacker must be on the same local network segment.
- 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:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H. Scored by CISA (ADP).
Official description
DrayTek Vigor3910 devices through 4.3.2.6 have a stack-based overflow when processing query string parameters because GetCGI mishandles extraneous ampersand characters and long key-value pairs.
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: Stack-based Buffer Overflow
The product writes past the end of a buffer that was allocated on the stack.
How developers prevent this class of flaw
- Use automatic buffer overflow detection mechanisms that are offered by certain compilers or compiler extensions. Examples include: the Microsoft Visual Studio /GS flag, Fedora/Red Hat FORTIFY_SOURCE GCC flag, StackGuard, and ProPolice, which provide various mechanisms including canary-based detection and range/index checking. D3-SFCV (Stack Frame Canary Validation) from D3FEND discusses canary-based detection in detail.
- Use an abstraction library to abstract away risky APIs. Not a complete solution.
- Implement and perform bounds checking on input.
Timeline
- CVE record published.
- CISA published its SSVC assessment (exploitation: poc, automatable: no, technical impact: total).
- Record last changed materially (score, affected products, status or references).
References
Patches and release notes
- forescout.com/resources/draybreak-draytek-research/Exploit, Mitigation, Third Party Advisory
Other vulnerabilities in vigor3910_firmware
- 9.8 Critical severity
- 9.8 Critical severity
- 8.4 High severity
- 8.8 High severity
- 7.5 High severity
- 8.8 High severity
Recent Stack-based Buffer Overflow vulnerabilities
- 8.0 High severity
- 8.0 High severity
- 8.8 High severity
- 8.8 High severity
- 9.8 Critical severity
- 9.8 Critical severity
Spotted an error? Tell us.