BaseWeb JSite 10, Cross-Site Scripting (XSS), CVE-2025-3788 (Medium)

Listen to this Post

How CVE-2025-3788 Works

The vulnerability in BaseWeb JSite 1.0 arises from improper input sanitization in the `/a/sys/user/save` endpoint. An attacker can inject malicious JavaScript payloads via the `Name` parameter, which is then rendered unsanitized in the user’s browser. This stored XSS attack persists across sessions, enabling session hijacking, defacement, or malware distribution. The flaw is exploitable remotely with low privileges (PR:L) but requires user interaction (UI:P). CVSS 4.0 rates it 5.1 (Medium) due to limited impact scope (VC:N/VA:N).

DailyCVE Form

Platform: BaseWeb JSite
Version: 1.0
Vulnerability: Stored XSS
Severity: Medium
Date: 04/23/2025

What Undercode Say:

Exploitation

1. Craft a malicious payload:

<script>alert(document.cookie)</script>

2. Send via POST request:

curl -X POST -d "Name=<script>alert(1)</script>" http://target.com/a/sys/user/save

3. Victims trigger the payload when viewing the compromised profile.

Detection

Scan for unsanitized inputs:

console.log(document.querySelectorAll("input[name='Name']")[bash].outerHTML);

Mitigation

1. Patch by sanitizing `Name` input:

$name = htmlspecialchars($_POST['Name'], ENT_QUOTES, 'UTF-8');

2. Implement CSP headers:

add_header Content-Security-Policy "default-src 'self'";

3. WAF rule to block XSS patterns:

/<script.?>.?<\/script>/gi

Analytics

  • Attack Surface: Web forms with user-controlled inputs.
  • Payload Prevalence: 78% of XSS attacks use `
    Scroll to Top