CVE-2025-53544
📋 TL;DR
CVE-2025-53544 is a brute-force protection bypass vulnerability in Trilium Notes that allows unauthenticated attackers to guess the login password without triggering rate limiting. This affects all Trilium Notes instances below version 0.97.0, particularly those exposed to the internet. Since Trilium is a single-user application without username requirements, successful exploitation grants full access to the user's entire knowledge base.
💻 Affected Systems
- Trilium Notes
⚠️ 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.
- Review the CVE details at NVD
- Check vendor security advisories for your specific version
- Test if the vulnerability is exploitable in your environment
- Consider updating to the latest version as a precaution
⚠️ Risk & Real-World Impact
Worst Case
Complete compromise of the Trilium instance, allowing attackers to read, modify, or delete all notes and sensitive information stored in the knowledge base.
Likely Case
Unauthorized access to personal or organizational knowledge bases containing sensitive information, intellectual property, or credentials.
If Mitigated
Limited impact if instance is not internet-facing and network access is restricted to trusted users only.
🎯 Exploit Status
The vulnerability bypasses rate limiting on the initial sync seed endpoint, making brute-force attacks feasible without sophisticated tools.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 0.97.0
Vendor Advisory: https://github.com/TriliumNext/Trilium/security/advisories/GHSA-hw5p-ff75-327r
Restart Required: Yes
Instructions:
1. Backup your Trilium data. 2. Download version 0.97.0 or later from the official GitHub releases. 3. Replace the existing installation with the new version. 4. Restart the Trilium application/service.
🔧 Temporary Workarounds
Network Isolation
allRestrict network access to Trilium instance to trusted IP addresses only
# Example firewall rule (Linux iptables): iptables -A INPUT -p tcp --dport 8080 -s TRUSTED_IP -j ACCEPT
# Example firewall rule (Windows): New-NetFirewallRule -DisplayName 'Trilium Access' -Direction Inbound -LocalPort 8080 -Protocol TCP -RemoteAddress TRUSTED_IP -Action Allow
Reverse Proxy with Rate Limiting
linuxPlace Trilium behind a reverse proxy with proper rate limiting enabled
# Example nginx configuration: limit_req_zone $binary_remote_addr zone=trilium:10m rate=10r/m;
location / { limit_req zone=trilium burst=20 nodelay; proxy_pass http://localhost:8080; }
🧯 If You Can't Patch
- Implement network-level access controls to restrict Trilium access to trusted networks only
- Deploy a web application firewall (WAF) or reverse proxy with brute-force protection in front of Trilium
🔍 How to Verify
Check if Vulnerable:
Check if Trilium version is below 0.97.0 by accessing the application and checking the version in settings or about dialog
Check Version:
# Check version via API: curl -s http://localhost:8080/api/about | grep version
Verify Fix Applied:
Confirm version is 0.97.0 or higher and test that rate limiting is enforced on login attempts
📡 Detection & Monitoring
Log Indicators:
- Multiple failed login attempts from same IP without rate limiting
- Unusual volume of requests to /api/sync/seed endpoint
Network Indicators:
- High volume of POST requests to login or sync endpoints
- Pattern of sequential password guessing attempts
SIEM Query:
source='trilium.log' AND (event='login_failed' COUNT BY src_ip > 10 WITHIN 1h OR uri_path='/api/sync/seed' COUNT BY src_ip > 100 WITHIN 1h)
🔗 References
- https://github.com/TriliumNext/Trilium/pull/6243/commits/04c8f8a1234e8c9f4a87da187180375227b21223
- https://github.com/TriliumNext/Trilium/releases/tag/v0.97.0
- https://github.com/TriliumNext/Trilium/security/advisories/GHSA-hw5p-ff75-327r
- https://github.com/TriliumNext/Trilium/security/advisories/GHSA-hw5p-ff75-327r