CVE-2026-61804 in myTinyWMSinfo

Summary

by MITRE • 10/30/2026

myTinyWMS is a free, open-source warehouse management system. Prior to version 1.6.4, `Product (Artikel)` and `Category` management store the `name` parameter without adequate backend sanitization and render raw database strings through unescaped Blade output in dynamic table cells, including `article/index.blade.php` and `category/index.blade.php`. An authenticated attacker can save malicious input through product creation or category forms. When another user, including a worker or administrator, opens the corresponding product sheet, category listing or dashboard, the stored JavaScript executes in that user's browser context. This can enable cross-user script execution, session theft and administrative takeover. This issue is fixed in version 1.6.4.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Analysis

by VulDB Data Team • 10/30/2026

The vulnerability identified within myTinyWMS versions prior to 1.6.4 represents a classic instance of Stored Cross-Site Scripting, stemming from insufficient input validation on the backend combined with unsafe rendering practices in the frontend presentation layer. As an open-source warehouse management system, myTinyWMS handles sensitive operational data including product inventories and category structures. The core technical flaw resides in how the application processes user-supplied input for Product names and Category names during creation or modification operations. Specifically, the backend fails to adequately sanitize these inputs before persisting them to the database. This lack of sanitization allows an attacker to inject malicious JavaScript payloads directly into the data store rather than merely passing them through a request parameter that might be filtered at runtime.

The exploitation mechanism is further enabled by the application's use of the Blade templating engine for rendering dynamic table cells in views such as article/index.blade.php and category/index.blade.php. Instead of escaping these stored values before outputting them to the HTML context, the system renders raw database strings directly into the browser environment. This architectural decision means that any user with access rights to view product lists or category dashboards will inadvertently execute the malicious scripts embedded in those fields. The vulnerability is classified under CWE-79, which covers Improper Neutralization of Input During Web Page Generation known as Cross-site Scripting, and specifically aligns with ATT&CK technique T1059.007, indicating Command and Control via JavaScript-based payloads within a web application context.

The operational impact of this vulnerability is significant due to the authenticated nature of the attack vector. An attacker who has obtained valid credentials for any user account can persistently store malicious code in product or category names. When an administrator or another worker accesses these sections, the script executes in their browser session with full privileges associated with that role. This capability facilitates severe security breaches including complete session hijacking through cookie theft, allowing the attacker to impersonate legitimate users without needing password credentials. Furthermore, if a privileged account such as an administrator is targeted, the attacker can achieve administrative takeover of the entire warehouse management system. This could lead to unauthorized modification of inventory data, disruption of supply chain operations, or further lateral movement within the internal network depending on how the application integrates with other systems.

Mitigation strategies must address both immediate remediation and long-term defensive posture improvements. The primary resolution involves upgrading myTinyWMS to version 1.6.4 or later where this issue has been patched by implementing proper output encoding in Blade templates using appropriate escaping functions such as double curly braces which automatically escape HTML entities. For environments unable to upgrade immediately, manual code review is required to ensure all dynamic outputs are escaped before rendering. Additionally, developers should implement strict input validation on the server side for all user-supplied fields including names and descriptions, rejecting or sanitizing any characters that could form part of a script tag or event handler attribute. Implementing a Content Security Policy header can also provide an additional layer of defense by restricting the sources from which scripts are allowed to execute, thereby mitigating the impact even if stored XSS payloads are successfully injected into the database.

Responsible

GitHub M

Reservation

07/10/2026

Disclosure

10/30/2026

Moderation

accepted

EPSS

0.00000

KEV

no

Activities

low

Sources

Want to stay up to date on a daily basis?

Enable the mail alert feature now!