---
id: "CVE-2020-15415"
kind: "vulnerability"
aliases: ["CVE-2020-15415"]
title: "On DrayTek Vigor3900, Vigor2960, and Vigor300B devices before 1.5.1, cgi-bin/mainfunction.cgi/cvmcfgupload allows\u2026"
severity: "critical"
cvss: 9.8
epss: null
exploited: true
status: "open"
category: "infrastructure"
products: [{"name": "DrayTek Multiple Vigor Routers", "fixed": [], "affected": "", "ecosystem": "vendor"}, {"name": "draytek vigor3900 firmware", "fixed": ["1.5.1"], "affected": "< 1.5.1", "ecosystem": "vendor"}, {"name": "draytek vigor2960 firmware", "fixed": ["1.5.1"], "affected": "< 1.5.1", "ecosystem": "vendor"}, {"name": "draytek vigor300b firmware", "fixed": ["1.5.1"], "affected": "< 1.5.1", "ecosystem": "vendor"}]
ecosystems: ["vendor"]
tags: ["draytek", "exploited", "infrastructure", "self-hosted", "vigor2960", "vigor300b", "vigor3900"]
not_affected_if: ["no-web-admin-exposure", "other-draytek-models"]
published_at: "2020-06-30T14:15:11+00:00"
first_seen_at: "2026-10-23T19:11:51+00:00"
updated_at: "2026-10-23T22:29:05+00:00"
sources: [{"source": "kev", "url": "https://www.cisa.gov/known-exploited-vulnerabilities-catalog?search_api_fulltext=CVE-2020-15415", "first_seen_at": "2026-10-23T19:11:51+00:00"}, {"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2020-15415", "first_seen_at": "2026-10-23T22:29:05+00:00"}]
---

# On DrayTek Vigor3900, Vigor2960, and Vigor300B devices before 1.5.1, cgi-bin/mainfunction.cgi/cvmcfgupload allows…

DrayTek Vigor3900, Vigor2960 and Vigor300B routers have an OS command injection flaw in the cgi-bin/mainfunction.cgi/cvmcfgupload endpoint. An attacker can run commands on the router by sending shell metacharacters in a filename with the text/x-python-script content type.

_Summary, check and fix written by a model from the sources; labelled as such._

## Affected

- vendor:DrayTek Multiple Vigor Routers affected ? fixed ?
- vendor:draytek vigor3900 firmware affected < 1.5.1 fixed 1.5.1
- vendor:draytek vigor2960 firmware affected < 1.5.1 fixed 1.5.1
- vendor:draytek vigor300b firmware affected < 1.5.1 fixed 1.5.1

## Fix

Apply the vendor mitigation per DrayTek instructions, or stop using the affected device if no mitigation exists (CISA required action).

## Timeline

- 2026-10-23T19:11:51+00:00 kev https://www.cisa.gov/known-exploited-vulnerabilities-catalog?search_api_fulltext=CVE-2020-15415
- 2026-10-23T22:29:05+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2020-15415

## From the sources

DrayTek Vigor3900, Vigor2960, and Vigor300B devices contain an OS command injection vulnerability in cgi-bin/mainfunction.cgi/cvmcfgupload that allows for remote code execution via shell metacharacters in a filename when the text/x-python-script content type is used.

CISA required action: Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
