CVE-2025-59949

5.3 MEDIUM

📋 TL;DR

FreshRSS versions before 1.27.1 have a cross-site request forgery (CSRF) vulnerability in the logout functionality that can be exploited via <track src> elements. This allows attackers to force logged-in users to log out unexpectedly, causing denial of service by disrupting their RSS feed access. All users running vulnerable FreshRSS instances are affected.

💻 Affected Systems

Products:
  • FreshRSS
Versions: All versions prior to 1.27.1
Operating Systems: All operating systems where FreshRSS runs
Default Config Vulnerable: ⚠️ Yes
Notes: All FreshRSS installations with web interface accessible are vulnerable unless patched.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could force all users of a FreshRSS instance to log out simultaneously, disrupting RSS feed access and requiring manual re-authentication for all users.

🟠

Likely Case

Targeted users experience unexpected logout, requiring them to log back in to access their RSS feeds, causing temporary service disruption.

🟢

If Mitigated

With proper CSRF protections or patched versions, logout requests require proper authentication tokens, preventing unauthorized logout attempts.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires the attacker to trick an authenticated user into visiting a malicious page containing the <track src> element targeting the logout endpoint.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.27.1

Vendor Advisory: https://github.com/FreshRSS/FreshRSS/security/advisories/GHSA-w7f5-8vf9-f966

Restart Required: No

Instructions:

1. Backup your FreshRSS installation and database. 2. Update FreshRSS to version 1.27.1 or later via git pull or manual download. 3. Clear browser cache if experiencing issues.

🔧 Temporary Workarounds

Implement CSRF tokens manually

all

Add CSRF protection to logout endpoint if unable to patch immediately

Requires code modification - not recommended as temporary workaround

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block suspicious logout requests
  • Monitor for unusual logout patterns and alert on mass logout events

🔍 How to Verify

Check if Vulnerable:

Check FreshRSS version in admin interface or by examining the source code version file

Check Version:

Check /data/config.php for version or view admin panel version information

Verify Fix Applied:

Confirm version is 1.27.1 or later in admin interface or version file

📡 Detection & Monitoring

Log Indicators:

  • Multiple logout events from same IP in short timeframe
  • Logout requests without corresponding authentication events

Network Indicators:

  • HTTP POST requests to logout endpoint without proper referrer headers
  • Requests containing <track src> elements targeting logout URL

SIEM Query:

source="freshrss.log" AND (event="logout" AND count() > 10 within 5min)

🔗 References

📤 Share & Export