CVE-2025-48488

5.4 MEDIUM

📋 TL;DR

CVE-2025-48488 is a Cross-Site Scripting vulnerability in FreeScout help desk software where deleting the .htaccess file allows attackers to upload malicious HTML files containing JavaScript. This affects all FreeScout instances prior to version 1.8.180. Attackers can execute arbitrary JavaScript in victims' browsers when they access the uploaded file.

💻 Affected Systems

Products:
  • FreeScout
Versions: All versions prior to 1.8.180
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires .htaccess file to be deleted or missing, which may occur during misconfigurations or manual file management.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal session cookies, perform actions as authenticated users, redirect to malicious sites, or deploy additional malware payloads.

🟠

Likely Case

Session hijacking, credential theft, or defacement of the help desk interface through malicious scripts.

🟢

If Mitigated

Limited impact with proper file upload restrictions and Content Security Policy headers in place.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires ability to delete .htaccess file and upload HTML files, which typically requires some level of access or misconfiguration.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.8.180

Vendor Advisory: https://github.com/freescout-help-desk/freescout/security/advisories/GHSA-2m76-538h-7hf9

Restart Required: No

Instructions:

1. Backup your FreeScout installation and database. 2. Download version 1.8.180 from the official repository. 3. Replace existing files with new version. 4. Verify .htaccess file exists and contains proper restrictions.

🔧 Temporary Workarounds

Restrict HTML file uploads

all

Configure web server to block HTML file uploads or execution in upload directories

# Add to .htaccess in upload directory:
<FilesMatch "\.(html|htm)$">
  Order Allow,Deny
  Deny from all
</FilesMatch>

Ensure .htaccess file exists

linux

Verify and restore .htaccess file with proper security restrictions

# Check if .htaccess exists:
ls -la /path/to/freescout/.htaccess

# Restore from backup or download from official repository

🧯 If You Can't Patch

  • Implement strict file upload validation to reject HTML files
  • Deploy Web Application Firewall (WAF) rules to detect and block XSS payloads

🔍 How to Verify

Check if Vulnerable:

Check if FreeScout version is below 1.8.180 and verify .htaccess file exists in the root directory with proper file restrictions.

Check Version:

Check app/version.php or look for version information in the FreeScout admin interface

Verify Fix Applied:

Confirm version is 1.8.180 or higher and test that HTML file uploads are properly blocked or sanitized.

📡 Detection & Monitoring

Log Indicators:

  • Unusual file uploads with .html extension
  • Missing .htaccess file warnings
  • Access to uploaded HTML files

Network Indicators:

  • HTTP requests to uploaded HTML files with suspicious parameters
  • Outbound connections to external domains from help desk pages

SIEM Query:

source="webserver" AND (uri="*.html" OR uri="*.htm") AND status=200

🔗 References

📤 Share & Export