# CVE-2026-113391: DrayTek Vigor2960 command injection in upload endpoints

Source: https://junglewise.ai/threats/cve-2026-113391-a-vulnerability-has-been-found-in-draytek-vigor2960-1-5-1-6  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-20. Updated: 2026-10-20  
License: CC BY 4.0 with a link back

CVE-2026-113391 · Severity: critical · CVSS 9.9 · Published 2026-10-20

The DrayTek Vigor2960 is a business-class network router used to manage corporate and branch-office internet traffic. An authenticated administrator can upload a specially crafted file that executes arbitrary commands on the device, potentially allowing full network compromise and bypass of firewall controls. This vulnerability affects older, unsupported firmware versions.

Technologies: [DrayTek Vigor2960](https://junglewise.ai/threats/technologies/vigor2960). Vendors: [DrayTek](https://junglewise.ai/threats/vendors/draytek).

## Quick answers

**Is CVE-2026-113391 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-113391 being exploited in the wild.

**How severe is CVE-2026-113391?** Critical severity, with a CVSS score of 9.9, published 20 October 2026.

**Which products and versions are affected?** DrayTek Vigor2960 1.5.1.6 Revision 8218.

**Is there a fix for CVE-2026-113391?** Yes: fixed in Vigor2960 1.5.1.7. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-113391 attacked?** It is attacked over the network, in a network appliance.

**Am I affected by CVE-2026-113391?** Check whether you run DrayTek Vigor2960 at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- Fixed in Vigor2960 1.5.1.7

## Technical details

The vulnerability is a command injection flaw in multiple authenticated file upload handlers (/uploadlangs, /certificaterequestupload, /userkeyupload, /usercertificateupload, /trustcaupload) in /cgi-bin/mainfunction.cgi. The handlers insufficiently sanitize the uploaded filename before passing it to shell commands (unquoted mv or single-quoted /sbin/import_* commands), allowing an attacker with administrator credentials to break out of quoting and inject arbitrary shell commands. Authentication is required as a prerequisite.

## Affected products

- DrayTek Vigor2960 1.5.1.6 Revision 8218

## Timeline

- 2026-10-20: disclosed

## References

- [https://fw.draytek.com.tw/Vigor2960/Firmware/v1.5.1.7/Vigor2960_v1.5.1.7.zip](https://fw.draytek.com.tw/Vigor2960/Firmware/v1.5.1.7/Vigor2960_v1.5.1.7.zip)
- [https://github.com/yikesoftware/DrayTek_Vigor2960_Security_Analysis/tree/main/cases/DRV2960-0008-authenticated-upload-filename-command-injection](https://github.com/yikesoftware/DrayTek_Vigor2960_Security_Analysis/tree/main/cases/DRV2960-0008-authenticated-upload-filename-command-injection)

## Related threats

- [DrayTek Vigor2960 command injection in IPsec handler](https://junglewise.ai/threats/cve-2026-113397-a-security-vulnerability-has-been-detected-in-draytek-vigor2960)
- [DrayTek Vigor2960 command injection in rename table handler](https://junglewise.ai/threats/cve-2026-113396-a-weakness-has-been-identified-in-draytek-vigor2960-1-5-1-6)
- [DrayTek Vigor2960 path traversal in swmconfigupload](https://junglewise.ai/threats/cve-2026-113395-a-security-flaw-has-been-discovered-in-draytek-vigor2960-1-5-1-6)
- [DrayTek Vigor2960 path traversal and command injection in setSWMProfile](https://junglewise.ai/threats/cve-2026-113394-a-vulnerability-was-identified-in-draytek-vigor2960-1-5-1-6)
- [DrayTek Vigor2960 arbitrary file write in commonupload](https://junglewise.ai/threats/cve-2026-113393-a-vulnerability-was-determined-in-draytek-vigor2960-1-5-1-6)
