CVE-2024-25183

7.5 HIGH

📋 TL;DR

CVE-2024-25183 is a directory traversal vulnerability in givanz VvvebJs 1.7.2 that allows attackers to read arbitrary files on the server via the scan.php endpoint. This affects all systems running the vulnerable version of VvvebJs, a visual web page builder. Attackers can exploit this without authentication to access sensitive files.

💻 Affected Systems

Products:
  • givanz VvvebJs
Versions: 1.7.2
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the default installation of VvvebJs 1.7.2. No special configuration is required for exploitation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete server compromise through reading sensitive configuration files (like .env, config files) containing database credentials, API keys, or other secrets, potentially leading to data breach or further system exploitation.

🟠

Likely Case

Unauthorized access to sensitive files containing configuration data, source code, or user information, enabling reconnaissance for further attacks or data theft.

🟢

If Mitigated

Limited impact if proper file permissions restrict access to sensitive files and web server runs with minimal privileges.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

The exploit requires simple HTTP requests with directory traversal sequences. Public proof-of-concept demonstrates reading arbitrary files.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Not available

Vendor Advisory: Not available

Restart Required: No

Instructions:

No official patch available. Remove or restrict access to scan.php file. Consider upgrading to a newer version if available.

🔧 Temporary Workarounds

Remove scan.php file

linux

Delete or rename the vulnerable scan.php file to prevent exploitation

rm /path/to/vvvebjs/scan.php

Restrict access via web server configuration

all

Block access to scan.php using web server rules

# Apache: <Location "/scan.php"> Require all denied </Location>
# Nginx: location = /scan.php { deny all; }

🧯 If You Can't Patch

  • Implement strict file permissions on sensitive directories and configuration files
  • Deploy web application firewall (WAF) rules to block directory traversal patterns

🔍 How to Verify

Check if Vulnerable:

Test if accessing /scan.php?path=../../../etc/passwd returns system files. Use curl: curl -v 'http://target/scan.php?path=../../../etc/passwd'

Check Version:

Check VvvebJs version in package.json or composer.json files

Verify Fix Applied:

Verify scan.php file no longer exists or returns access denied. Test same exploit attempt returns error.

📡 Detection & Monitoring

Log Indicators:

  • HTTP requests to scan.php with ../ sequences in parameters
  • Unusual file access patterns from web server process

Network Indicators:

  • HTTP GET requests containing directory traversal sequences (../) to scan.php endpoint

SIEM Query:

source="web_access_logs" AND uri="/scan.php" AND (query="*../*" OR query="*..%2f*")

🔗 References

📤 Share & Export