CVE-2024-46612

9.8 CRITICAL

📋 TL;DR

IceCMS v3.4.7 and earlier contain a hardcoded JWT secret key, allowing attackers to forge authentication tokens and gain unauthorized access. This affects all deployments using vulnerable versions of IceCMS, potentially compromising administrative functions and user data.

💻 Affected Systems

Products:
  • IceCMS
Versions: v3.4.7 and earlier
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: All installations of affected versions are vulnerable regardless of configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers gain administrative privileges, access sensitive data, modify content, install backdoors, or take full control of the CMS instance.

🟠

Likely Case

Unauthorized users bypass authentication to access restricted areas, modify content, or escalate privileges to perform administrative actions.

🟢

If Mitigated

With proper network segmentation and monitoring, impact is limited to the IceCMS instance itself without lateral movement to other systems.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires only the hardcoded JWT key and basic JWT manipulation tools.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: v3.4.8 or later

Vendor Advisory: https://github.com/Thecosy/iceCMS

Restart Required: Yes

Instructions:

1. Backup current installation. 2. Download latest version from official repository. 3. Replace all files except configuration and upload directories. 4. Restart web server. 5. Verify JWT keys are now unique.

🔧 Temporary Workarounds

Regenerate JWT Secret

all

Manually replace hardcoded JWT secret with a strong random key

php artisan jwt:secret --force

Disable JWT Authentication

all

Temporarily disable JWT-based authentication if alternative methods exist

Edit configuration to use session-based auth instead of JWT

🧯 If You Can't Patch

  • Implement network-level controls to restrict access to IceCMS administration interfaces
  • Enable detailed logging of authentication attempts and monitor for JWT manipulation

🔍 How to Verify

Check if Vulnerable:

Check if JWT secret in configuration files matches known hardcoded value from vulnerable versions

Check Version:

Check IceCMS version in admin panel or via composer show thecosy/icecms

Verify Fix Applied:

Verify JWT secret has been changed to a unique value and test authentication with invalid tokens

📡 Detection & Monitoring

Log Indicators:

  • Multiple failed authentication attempts followed by successful login with unusual JWT
  • Administrative actions from unexpected IP addresses or user agents

Network Indicators:

  • Unusual JWT token patterns in authentication requests
  • Administrative API calls from unauthorized sources

SIEM Query:

source="icecms" AND (event="authentication" AND result="success") | stats count by src_ip, user

🔗 References

📤 Share & Export