CVE-2024-25738

9.1 CRITICAL

📋 TL;DR

A Server-Side Request Forgery (SSRF) vulnerability in VuFind's /Upgrade/FixConfig route allows attackers to overwrite local configuration files. This can lead to administrator panel access and remote code execution. Affected systems are VuFind 2.0 through 9.1 before 9.1.1 with the /Upgrade route exposed and allow_url_include enabled.

💻 Affected Systems

Products:
  • Open Library Foundation VuFind
Versions: 2.0 through 9.1 before 9.1.1
Operating Systems: All platforms running PHP
Default Config Vulnerable: ✅ No
Notes: Requires allow_url_include PHP setting enabled (disabled by default) and /Upgrade route exposed (enabled by default but recommended to disable).

⚠️ 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

Remote code execution with full system compromise, allowing attacker to execute arbitrary commands, access sensitive data, and maintain persistence.

🟠

Likely Case

Administrator panel access leading to configuration manipulation, data exposure, and potential privilege escalation.

🟢

If Mitigated

Limited impact if allow_url_include is disabled and /Upgrade route is restricted, potentially only information disclosure.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

Exploitation requires specific conditions but is unauthenticated once those conditions are met.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 9.1.1

Vendor Advisory: https://vufind.org/wiki/security:cve-2024-25738

Restart Required: Yes

Instructions:

1. Upgrade VuFind to version 9.1.1 or later. 2. Restart the web server. 3. Verify the /Upgrade route is properly secured.

🔧 Temporary Workarounds

Disable /Upgrade route

all

Set autoConfigure to false in config.ini to disable the vulnerable /Upgrade route.

Edit config.ini and set: autoConfigure = false

Disable allow_url_include

all

Ensure PHP's allow_url_include setting is disabled in php.ini.

Edit php.ini and set: allow_url_include = Off

🧯 If You Can't Patch

  • Apply both workarounds: disable /Upgrade route and ensure allow_url_include is off.
  • Implement network segmentation to restrict access to VuFind instance from untrusted networks.

🔍 How to Verify

Check if Vulnerable:

Check if VuFind version is between 2.0 and 9.1 (excluding 9.1.1) and if /Upgrade route is accessible.

Check Version:

Check the VUFIND_VERSION constant in web/interface/bootstrap.php or use the admin panel.

Verify Fix Applied:

Verify version is 9.1.1 or later and test that /Upgrade/FixConfig no longer accepts malicious input.

📡 Detection & Monitoring

Log Indicators:

  • Unusual requests to /Upgrade/FixConfig with external URLs
  • Configuration file modification events

Network Indicators:

  • HTTP requests to /Upgrade/FixConfig with URL parameters from untrusted sources

SIEM Query:

web_access_logs WHERE uri LIKE '%/Upgrade/FixConfig%' AND (query_string CONTAINS 'http://' OR query_string CONTAINS 'https://')

🔗 References

📤 Share & Export