CVE-2024-45298

4.3 MEDIUM

📋 TL;DR

Wiki.js versions 2.5.303 and earlier contain an authentication bypass vulnerability where disabled users can regain access by using the password reset function. This allows users who should be locked out to bypass account restrictions and access the wiki. All Wiki.js deployments using account restrictions with disabled users are affected.

💻 Affected Systems

Products:
  • Wiki.js
Versions: 2.5.303 and earlier
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects deployments using account restrictions where users have been disabled. Wikis without disabled users are not vulnerable.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Disabled malicious users regain access to sensitive wiki content, potentially modifying or exfiltrating confidential information.

🟠

Likely Case

Disabled legitimate users accidentally or intentionally regain access to content they should no longer have permissions to view.

🟢

If Mitigated

If proper access controls and monitoring are in place, unauthorized access can be detected and contained quickly.

🌐 Internet-Facing: MEDIUM - While exploitation requires a valid user account, internet-facing wikis are accessible to attackers who have previously obtained credentials.
🏢 Internal Only: LOW - Internal wikis have reduced attack surface, but still vulnerable to insider threats or compromised accounts.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires a valid user account that has been disabled. The attack is simple: request password reset for disabled account, follow reset link, set new password, and gain access.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.5.304

Vendor Advisory: https://github.com/requarks/wiki/security/advisories/GHSA-vwww-c5vg-xgfc

Restart Required: Yes

Instructions:

1. Backup your wiki data. 2. Stop the Wiki.js service. 3. Update to version 2.5.304 using your deployment method (npm, Docker, etc.). 4. Restart the Wiki.js service. 5. Verify the update was successful.

🔧 Temporary Workarounds

No workarounds available

all

The vendor advisory states there are no known workarounds for this vulnerability.

🧯 If You Can't Patch

  • Monitor authentication logs for password reset attempts on disabled accounts
  • Temporarily disable password reset functionality if business requirements allow

🔍 How to Verify

Check if Vulnerable:

Check your Wiki.js version in the admin panel or via the API endpoint /api/version. If version is 2.5.303 or earlier, you are vulnerable.

Check Version:

curl -s http://your-wiki-url/api/version | grep version

Verify Fix Applied:

After updating, verify the version shows 2.5.304 or later. Test by attempting password reset on a disabled test account - it should fail.

📡 Detection & Monitoring

Log Indicators:

  • Password reset requests for disabled user accounts
  • Successful authentication events from previously disabled accounts

Network Indicators:

  • HTTP POST requests to /api/auth/reset-password endpoints for disabled users

SIEM Query:

source="wiki.js" AND (event="password_reset_request" OR event="login") AND user_status="disabled"

🔗 References

📤 Share & Export