CVE-2025-9107

4.3 MEDIUM

📋 TL;DR

This vulnerability allows attackers to inject malicious scripts into the Portabilis i-Diario web application through the search_autocomplete endpoint. When exploited, it enables cross-site scripting attacks that can steal user sessions, redirect users, or deface the application. All users of i-Diario versions up to 1.5.0 are affected.

💻 Affected Systems

Products:
  • Portabilis i-Diario
Versions: up to 1.5.0
Operating Systems: Any
Default Config Vulnerable: ⚠️ Yes
Notes: All installations with the vulnerable endpoint accessible are affected.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers steal administrator credentials, gain full control of the application, and compromise sensitive student data.

🟠

Likely Case

Attackers steal user session cookies to impersonate legitimate users and access their data.

🟢

If Mitigated

Script execution is blocked by Content Security Policy or input validation, limiting impact to minor UI disruption.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploit requires no authentication and proof-of-concept is publicly available.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: None available

Restart Required: No

Instructions:

No official patch available. Vendor did not respond to disclosure. Consider upgrading to latest version if available or implementing workarounds.

🔧 Temporary Workarounds

Input Validation Filter

all

Implement server-side input validation to sanitize the 'q' parameter in /alunos/search_autocomplete endpoint

Implement HTML entity encoding for user input
Use framework-specific XSS protection libraries

Web Application Firewall Rule

all

Deploy WAF rules to block XSS payloads in the search_autocomplete endpoint

Add WAF rule: Detect and block scripts in 'q' parameter
Configure regex pattern: /<script.*?>.*?<\/script>/i

🧯 If You Can't Patch

  • Implement Content Security Policy headers to restrict script execution
  • Restrict access to /alunos/search_autocomplete endpoint to authenticated users only

🔍 How to Verify

Check if Vulnerable:

Test the /alunos/search_autocomplete endpoint with XSS payload in 'q' parameter and check if script executes

Check Version:

Check application version in admin panel or configuration files

Verify Fix Applied:

Test with same XSS payloads and verify scripts are properly sanitized or blocked

📡 Detection & Monitoring

Log Indicators:

  • Unusual requests to /alunos/search_autocomplete with script tags
  • Multiple failed login attempts following XSS payload requests

Network Indicators:

  • HTTP requests containing <script> tags in query parameters
  • Unusual outbound connections from application to external domains

SIEM Query:

source="web_logs" AND uri_path="/alunos/search_autocomplete" AND (query="*<script*" OR query="*javascript:*")

🔗 References

📤 Share & Export