CVE-2025-9650

5.4 MEDIUM

📋 TL;DR

This CVE describes a path traversal vulnerability in yeqifu carRental software that allows remote attackers to delete arbitrary files on the server. The vulnerability exists in the removeFileByPath function where user-supplied input isn't properly sanitized. Any system running the affected version of yeqifu carRental is potentially vulnerable.

💻 Affected Systems

Products:
  • yeqifu carRental
Versions: All versions up to commit 3fabb7eae93d209426638863980301d6f99866b3
Operating Systems: Any OS running Java (Linux, Windows, macOS)
Default Config Vulnerable: ⚠️ Yes
Notes: The product uses rolling releases, so all instances not updated beyond the vulnerable commit are affected.

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

Complete system compromise through deletion of critical system files, leading to service disruption, data loss, or operating system corruption.

🟠

Likely Case

Deletion of application files causing service disruption, potential data loss, and possible privilege escalation if system files are targeted.

🟢

If Mitigated

Limited to deletion of non-critical files within application directories if proper file permissions and input validation are implemented.

🌐 Internet-Facing: HIGH - The vulnerability can be exploited remotely without authentication, making internet-facing instances particularly vulnerable.
🏢 Internal Only: MEDIUM - Internal systems are still vulnerable but may have additional network segmentation and access controls.

🎯 Exploit Status

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

Exploit details are publicly available in GitHub repositories, making this easy to weaponize. The path traversal vulnerability is straightforward to exploit.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown - check for commits after 3fabb7eae93d209426638863980301d6f99866b3

Vendor Advisory: None found in provided references

Restart Required: Yes

Instructions:

1. Check the project repository for fixes after the vulnerable commit. 2. Update to the latest version. 3. Restart the application service. 4. Verify the fix by testing the vulnerable endpoint.

🔧 Temporary Workarounds

Input Validation Filter

all

Implement server-side validation to sanitize file path inputs and prevent directory traversal sequences.

# Add input validation in AppFileUtils.java
# Ensure carimg parameter is validated against allowed paths
# Use Path.normalize() and check for traversal sequences (../, ..\)

File Permission Restriction

all

Run the application with minimal file system permissions to limit damage scope.

# Linux: chown -R appuser:appgroup /path/to/app
# Linux: chmod 750 /path/to/app
# Windows: Configure application pool identity with restricted permissions

🧯 If You Can't Patch

  • Implement a web application firewall (WAF) with rules to block path traversal patterns
  • Restrict network access to the application using firewall rules to only trusted sources

🔍 How to Verify

Check if Vulnerable:

Check if your version is at or before commit 3fabb7eae93d209426638863980301d6f99866b3. Test the removeFileByPath endpoint with traversal payloads like '../../etc/passwd'.

Check Version:

git log --oneline | head -1  # For git-based deployments
# Or check application version in configuration files

Verify Fix Applied:

Test the vulnerable endpoint with traversal payloads and verify they are rejected. Check that the application no longer accepts relative paths outside the intended directory.

📡 Detection & Monitoring

Log Indicators:

  • Unusual file deletion patterns
  • Requests containing '../' or '..\' sequences
  • Failed file deletion attempts outside application directories

Network Indicators:

  • HTTP requests with path traversal patterns in parameters
  • Multiple rapid deletion requests

SIEM Query:

source="web_logs" AND (uri="*removeFileByPath*" AND (param="*../*" OR param="*..\\*"))

🔗 References

📤 Share & Export