ZeroHour

CVE-2026-61639

moderate

ZipSlip path traversal in Wallos subscription tracker allows webshell write

CVSS 4.0
8.5 high
EPSS
<1%p28
Published
()
Modified
AI analysis

Wallos, an open-source self-hostable personal subscription tracker, contains a zip path traversal flaw (CWE-22) in its database restore endpoint, POST /endpoints/db/restore.php, in versions prior to 4.9.6. The endpoint calls ZipArchive::extractTo() without validating archive entry names for ../ sequences, so an administrator who uploads a crafted backup zip containing an entry such as logos/../../endpoints/shell.php causes files to be written outside the intended extraction directory and into the webroot; the file-extension filter only applies to a later logo-copy step, so it does not prevent this. By landing a webshell in the webroot, the attacker achieves remote code execution on the web server hosting the instance. Only operators of self-hosted Wallos instances running versions before 4.9.6 are affected, and exploitation requires high privileges (an authenticated administrator), limiting risk to scenarios where an admin account is compromised, an admin is less than fully trusted, or a malicious backup archive is supplied. No public proof-of-concept, CISA KEV listing, or confirmed in-the-wild exploitation is known; EPSS estimates only about a 0.3% probability of exploitation within 30 days.

What to do: Upgrade Wallos to version 4.9.6 or later, which validates zip entry names during restore. If an immediate upgrade is not possible, restrict access to /endpoints/db/restore.php to trusted administrators and inspect uploaded backup archives for entry names containing ../ sequences before restoring. Administrators should also check the webroot, including the endpoints and logos directories, for unexpected PHP files that would indicate a planted webshell.

Affected
Wallos project (open source) Wallosall versions prior to 4.9.6 (< 4.9.6)
Estimated exposure
moderatelikely on the order of thousands to low tens of thousands of self-hosted instances (estimate; no published install counts) — No deployment telemetry is published for this self-hosted personal-use application, so the estimate is based on its profile as a niche open-source project with community adoption typical of self-hosted trackers, of which only…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

Wallos is an open-source, self-hostable personal subscription tracker. Prior to version 4.9.6, POST /endpoints/db/restore.php calls ZipArchive::extractTo() without validating entry names for ../ sequences. Admin uploads crafted zip with entry logos/../../endpoints/shell.php to write webshell to webroot. Extension filter only applies to post-extraction logo copy step. This issue has been patched in version 4.9.6.

Weakness
CWE-22
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.