The vulnerability is a stored Cross-Site Scripting (XSS) issue within the REST API of ExpressGateway, affecting the user and application management endpoints. The root cause is a failure to properly sanitize user-controlled input from the request body before it is persisted to the database. Specifically, the POST and PUT routes in lib/rest/routes/users.js and lib/rest/routes/apps.js pass the req.body object directly to service-layer functions (insert and update). An attacker can craft a request containing malicious JavaScript in fields such as firstname for users or name for applications. This payload is then stored in the database. When an administrator or another user views the compromised user or application through the gateway's interface, the malicious script executes in their browser. This can lead to session hijacking, data theft, or unauthorized actions performed on behalf of the victim. The issue is exacerbated by the fact that no patch is available, and the project is no longer actively maintained, leaving existing deployments vulnerable.