CVE-2025-3966

4.3 MEDIUM

📋 TL;DR

This vulnerability in paicoding 1.0.3 allows unauthorized users to view other users' browsing history through the /user/home endpoint. Attackers can remotely exploit this information disclosure vulnerability to access sensitive user activity data. All systems running the affected version are vulnerable.

💻 Affected Systems

Products:
  • itwanger paicoding
Versions: 1.0.3
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability affects the Browsing History Handler component specifically through the /user/home endpoint with userId and homeSelectType parameters.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could systematically harvest browsing history of all users, potentially revealing sensitive personal information, search patterns, or internal system usage that could be used for social engineering or further attacks.

🟠

Likely Case

Attackers will access browsing history of random or targeted users, potentially exposing personal preferences, frequently visited content, or other non-critical but private user activity data.

🟢

If Mitigated

With proper access controls and input validation, the vulnerability would be prevented, limiting access to only authorized users' own browsing history.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploit details are publicly available on GitHub, showing simple parameter manipulation to access other users' browsing history.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: None known

Restart Required: No

Instructions:

No official patch available. Check GitHub repository for updates or implement workarounds.

🔧 Temporary Workarounds

Implement Access Control

all

Add server-side validation to ensure users can only access their own browsing history by verifying userId parameter matches authenticated user.

Input Validation

all

Implement proper input validation and sanitization for userId parameter to prevent unauthorized access.

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block requests with suspicious userId parameter patterns
  • Restrict access to the /user/home endpoint using network segmentation or authentication requirements

🔍 How to Verify

Check if Vulnerable:

Test by accessing /user/home?userId=1&homeSelectType=read and attempting to view browsing history of different user IDs than your authenticated session.

Check Version:

Check application version in configuration files or about page

Verify Fix Applied:

After implementing fixes, verify that users can only access their own browsing history and attempts to access other users' data are properly blocked.

📡 Detection & Monitoring

Log Indicators:

  • Multiple failed access attempts to /user/home with different userId parameters
  • Unauthorized access patterns to browsing history endpoints

Network Indicators:

  • Unusual parameter manipulation in /user/home requests
  • Multiple userId values being tested in short timeframes

SIEM Query:

source="web_logs" AND uri_path="/user/home" AND (userId != authenticated_user_id OR multiple_userId_values)

🔗 References

📤 Share & Export