CVE-2025-48058
Executive Summary
CVE-2025-48058 is a Regular Expression Denial of Service (ReDoS) vulnerability identified in the PowSyBl (Power System Blocks) framework, specifically within its DataSource mechanism. The vulnerability allows a malicious actor to cause significant CPU consumption through regex backtracking, even with polynomial patterns. This can lead to a denial of service condition, impacting the availability of the affected system. The vulnerability is present in versions prior to 6.7.2 and has been patched in version 6.7.2 of the com.powsybl:powsybl-commons library.
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.
No signup required
Supply Chain & Package Security
This vulnerability affects the Java/Maven package com.powsybl:powsybl-commons. Organizations using PowSyBl should verify their dependency versions and update to the patched version 6.7.2 or later. The package is distributed via Maven Central, and the fix is available in the official repository.
CVSS Breakdown & Threat Level
The CVSS score for this vulnerability is currently 0.0, indicating that a full CVSS vector has not been assigned. However, based on the nature of the vulnerability (ReDoS), the following assessment is provided:
- Attack Vector (AV): Network (likely)
- Attack Complexity (AC): Low
- Privileges Required (PR): None
- User Interaction (UI): None
- Scope (S): Unchanged
- Confidentiality (C): None
- Integrity (I): None
- Availability (A): High
Threat Level: Medium. While the impact is limited to availability, the low complexity and network-based attack vector make it a viable vector for denial of service attacks.
Deep Dive & Mechanics
The vulnerability resides in the DataSource mechanism of PowSyBl. The specific regex pattern that is vulnerable has not been publicly disclosed, but the issue is a polynomial ReDoS. This means that the regex engine can be forced into catastrophic backtracking when processing a specially crafted input string. The backtracking consumes excessive CPU resources, leading to a denial of service.
The vulnerable code is in the com.powsybl:powsybl-commons library. The fix in version 6.7.2 likely involves rewriting the regex pattern to avoid backtracking or using a non-backtracking regex engine.
Vulnerable vs. Patched Code
The exact vulnerable code has not been publicly disclosed. However, the patch in version 6.7.2 addresses the regex pattern in the DataSource mechanism. The patched version likely replaces the vulnerable regex with a more efficient pattern or uses a different parsing approach.
Vulnerable Code (Conceptual):
// Vulnerable regex pattern (example)
Pattern pattern = Pattern.compile("(a+)+b");
Patched Code (Conceptual):
// Patched regex pattern (example)
Pattern pattern = Pattern.compile("a+b");
Exploitation & Lab Setup
Red Team
To exploit this vulnerability, an attacker would need to send a crafted input string to a PowSyBl DataSource endpoint. The input would trigger the vulnerable regex pattern, causing excessive CPU consumption.
Proof of Concept (Conceptual):
import requests
# Target URL
url = "http://target:port/powsybl/datasource"
# Crafted payload to trigger ReDoS
payload = "a" * 10000 + "b"
# Send request
response = requests.get(url, params={"input": payload})
print(response.status_code)
Blue Team
To detect exploitation attempts, monitor for unusual CPU spikes and network traffic patterns. Implement rate limiting and input validation on DataSource endpoints.
Detection Strategy:
- Monitor CPU usage on PowSyBl servers.
- Log and analyze all requests to DataSource endpoints.
- Implement Web Application Firewall (WAF) rules to block suspicious inputs.
Indicators of Compromise (IOCs)
- Network: Unusually high number of requests to
/powsybl/datasourceendpoints. - System: High CPU usage on PowSyBl servers without corresponding legitimate load.
- Logs: Repeated requests containing long strings of repeated characters (e.g., "aaaa...b").
Detection Engineering
YARA Rule
rule CVE_2025_48058_ReDoS {
meta:
description = "Detects potential ReDoS exploitation attempts against PowSyBl DataSource"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2025-48058"
strings:
$re1 = /(a+)+b/ nocase
$re2 = /(a+)+/ nocase
condition:
any of them
}
Sigma Rule
title: CVE-2025-48058 ReDoS Exploitation Attempt
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects potential ReDoS exploitation attempts against PowSyBl DataSource
author: Valters IT
date: 2025/04/10
references:
- https://nvd.nist.gov/vuln/detail/CVE-2025-48058
logsource:
category: webserver
product: apache
detection:
selection:
cs-method: 'GET'
cs-uri-stem: '/powsybl/datasource'
cs-uri-query|contains: 'input='
condition: selection
falsepositives:
- Legitimate long input strings
level: medium
Suricata Rule
alert http any any -> any any (msg:"CVE-2025-48058 ReDoS Exploitation Attempt"; flow:to_server; content:"/powsybl/datasource"; http_uri; content:"input="; http_uri; pcre:"/(a+)+b/"; classtype:attempted-dos; sid:1000001; rev:1;)
Remediation & Mitigation
- Immediate: Upgrade
com.powsybl:powsybl-commonsto version 6.7.2 or later. - Short-term: Implement input validation and sanitization for all DataSource endpoints.
- Long-term: Conduct a security review of all regex patterns in the codebase. Use non-backtracking regex engines where possible.
- Compensating Controls: Deploy Web Application Firewall (WAF) rules to block suspicious patterns. Implement rate limiting on DataSource endpoints.
Valters IT