☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 5.3 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L 🐛 CWE-835
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2025-1695

CVE-2025-1695 Denial of Service in Nginx
📅 PUBLISHED: 2025-03-04 00:54 UTC 🔄 UPDATED: 2026-08-13 10:06 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.27%
👁️
0.27% probability
6.9× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1499
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 5.3
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: N User Interaction None
S: U Scope Unchanged
C: N Confidentiality None
I: N Integrity None
A: L Availability Low
5.3
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-1695 is a denial-of-service (DoS) vulnerability affecting NGINX Unit when the Java Language Module is in use. An attacker can send undisclosed, specially crafted requests that cause an infinite loop within the Java module, leading to excessive CPU consumption and a limited denial-of-service condition. This is a data-plane-only issue, meaning the control plane (management API) is not exposed to the attack. The vulnerability has a CVSS score of 5.3 (Medium) and an EPSS score of 0.0%, indicating low exploitation likelihood at this time. No public proof-of-concept (PoC) or exploit code is available. The patch is available in NGINX Unit version 1.34.2.

⚡ 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 a package registry (NPM, PyPI, Go, Ruby). It affects the NGINX Unit application server, which is typically distributed via official package repositories or compiled from source. Organizations should verify the integrity of their NGINX Unit binaries and ensure they are sourced from trusted channels.

CVSS Breakdown & Threat Level

  • CVSS Score: 5.3 (Medium)
  • Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
  • Attack Vector (AV): Network – The vulnerability can be exploited remotely over the network.
  • Attack Complexity (AC): Low – No special conditions are required for exploitation.
  • Privileges Required (PR): None – No authentication is needed.
  • User Interaction (UI): None – No user action is required.
  • Scope (S): Unchanged – The vulnerable component is the only one affected.
  • Confidentiality (C): None – No data is exposed.
  • Integrity (I): None – No data is modified.
  • Availability (A): Low – The attack causes a degradation of service (CPU exhaustion) but not a complete outage.
  • Threat Level: Medium – The vulnerability is remotely exploitable with low complexity, but the impact is limited to availability degradation. No public exploit exists.

Deep Dive & Mechanics

The vulnerability resides in the Java Language Module of NGINX Unit. When NGINX Unit processes a request that is routed to a Java application, the module enters a specific code path that, under certain undisclosed conditions, fails to terminate correctly. This leads to an infinite loop, consuming CPU resources indefinitely.

The root cause is likely a missing or incorrect termination condition in a loop that processes request data or handles a specific state within the Java module. The exact trigger is not publicly documented, but it involves sending a crafted request that causes the module to enter a state where it repeatedly attempts to process the same data without making progress.

Because the control plane (the API used to configure NGINX Unit) is separate from the data plane (the request processing), the attack cannot affect the management interface. The impact is limited to the worker processes handling the malicious requests, which will consume 100% CPU until the process is killed or the service is restarted.

Vulnerable vs. Patched Code

The patch in version 1.34.2 addresses the infinite loop by adding a proper exit condition or by validating the request data before entering the loop. The exact code change is not publicly available, but the fix likely involves:

  • Adding a counter or timeout to break out of the loop after a certain number of iterations.
  • Validating the request structure to prevent the loop from being entered with malformed data.
  • Correcting the logic that determines when the loop should terminate.

Vulnerable Code (Conceptual):

while (hasMoreData()) {
    processNextChunk();
    // Missing: check for loop termination condition
}

Patched Code (Conceptual):

int maxIterations = 10000;
int iteration = 0;
while (hasMoreData() && iteration < maxIterations) {
    processNextChunk();
    iteration++;
}
if (iteration >= maxIterations) {
    // Log error and break out
}

Exploitation & Lab Setup

Red Team

No public exploit code is available. To simulate the attack in a lab environment:

  1. Setup: Deploy NGINX Unit version 1.34.1 or earlier with the Java module enabled and a simple Java application.
  2. Craft Request: Based on the undisclosed trigger, an attacker would need to reverse-engineer the vulnerability or wait for a PoC. For lab testing, you can attempt to send malformed HTTP requests (e.g., with unusual headers, chunked encoding, or specific URI patterns) to the Java application endpoint.
  3. Monitor: Use top or htop to observe CPU usage on the NGINX Unit worker processes.
  4. Impact: A successful attack will cause one or more worker processes to consume 100% CPU, degrading service performance.

Blue Team

To detect and mitigate this vulnerability:

  1. Patch: Immediately upgrade to NGINX Unit version 1.34.2 or later.
  2. Monitor: Set up alerts for high CPU usage on NGINX Unit worker processes.
  3. Rate Limiting: Implement rate limiting on the data plane to reduce the impact of repeated malicious requests.
  4. WAF: Use a Web Application Firewall (WAF) to filter requests with unusual patterns (e.g., excessive chunked encoding, malformed headers).
  5. Logging: Enable detailed request logging for the Java module and monitor for repeated requests from the same source.

Indicators of Compromise (IOCs)

  • Network: Repeated requests from a single IP address to a Java application endpoint on NGINX Unit.
  • System: High CPU usage (near 100%) on NGINX Unit worker processes.
  • Logs: No specific log entries are documented, but the worker process may log errors related to timeouts or resource exhaustion.
  • File: No files are created or modified by the exploit.

Detection Engineering

YARA Rule

rule CVE_2025_1695_NGINX_Unit_Java_DoS {
    meta:
        description = "Detects NGINX Unit Java module infinite loop behavior"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-1695"
    strings:
        $cpu_spike = "CPU usage" ascii wide nocase
        $unit_worker = "unit: main" ascii wide nocase
        $java_thread = "java" ascii wide nocase
    condition:
        $cpu_spike and $unit_worker and $java_thread
}

Sigma Rule

title: CVE-2025-1695 NGINX Unit Java Module DoS
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects high CPU usage from NGINX Unit worker processes, indicating potential exploitation of CVE-2025-1695.
author: Valters IT
date: 2025-04-10
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2025-1695
logsource:
    category: process_creation
    product: linux
detection:
    selection:
        Image|endswith: '/unitd'
        CommandLine|contains: 'unit: main'
    condition: selection
falsepositives:
    - Legitimate high load on the server
level: medium

Suricata Rule

alert http any any -> any any (msg:"CVE-2025-1695 NGINX Unit Java Module DoS Attempt"; flow:to_server; content:"POST"; http_method; content:"/java"; http_uri; pcre:"/^[a-zA-Z0-9\/]{100,}$/"; classtype:attempted-dos; sid:1000001; rev:1;)

Remediation & Mitigation

  1. Immediate Patch: Upgrade NGINX Unit to version 1.34.2 or later. This is the only definitive fix.
  2. Workaround: If patching is not immediately possible, consider disabling the Java Language Module if it is not required.
  3. Network Controls: Use a WAF or reverse proxy to filter requests to Java endpoints. Implement rate limiting to reduce the impact of repeated attacks.
  4. Monitoring: Set up alerts for abnormal CPU usage on NGINX Unit worker processes.
  5. Incident Response: If exploitation is suspected, isolate the affected server, collect logs, and restart the NGINX Unit service.

Valters IT
DevSecOps & Cyber Threat Intelligence

👁️ 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.

product:"NGINX Unit"
http.title:"Unit"
NGINX Unit Java module
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-1695/ · 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.