CVE-2026-25137
📋 TL;DR
The NixOS Odoo package exposes the database manager without authentication, allowing unauthorized actors to delete or download the entire database and file store. This affects NixOS-based Odoo setups from versions 21.11 to before 25.11 and 26.05.
💻 Affected Systems
- NixOS Odoo package
⚠️ Risk & Real-World Impact
Worst Case
Complete data loss and exposure of sensitive business information through database deletion and download.
Likely Case
Unauthorized access leading to data theft, potential ransomware deployment, or service disruption.
If Mitigated
Limited impact if database manager is isolated or access controls are implemented.
🎯 Exploit Status
Exploitation requires only HTTP access to the Odoo instance and knowledge of the database manager endpoint.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 25.11 and 26.05
Vendor Advisory: https://github.com/NixOS/nixpkgs/security/advisories/GHSA-cwmq-6wv5-f3px
Restart Required: Yes
Instructions:
1. Update NixOS Odoo package to version 25.11 or 26.05. 2. Restart Odoo service. 3. Verify database manager is no longer publicly accessible.
🔧 Temporary Workarounds
Block database manager endpoint
linuxUse firewall or reverse proxy to block access to /web/database endpoint.
iptables -A INPUT -p tcp --dport 8069 -m string --string '/web/database' --algo bm -j DROP
Configure Odoo behind authentication proxy
allPlace Odoo behind a reverse proxy with authentication (e.g., nginx with basic auth).
🧯 If You Can't Patch
- Isolate Odoo instance to internal network only.
- Implement strict network ACLs to limit access to trusted IPs.
🔍 How to Verify
Check if Vulnerable:
Access http://<odoo-ip>:8069/web/database. If it loads without authentication prompt, system is vulnerable.
Check Version:
nix-env -q | grep odoo
Verify Fix Applied:
After update, attempt to access /web/database endpoint; it should require authentication or be inaccessible.
📡 Detection & Monitoring
Log Indicators:
- HTTP requests to /web/database in access logs
- Database manager access attempts in Odoo logs
Network Indicators:
- Unusual outbound database connections
- Large data transfers from Odoo port 8069
SIEM Query:
source="odoo.log" AND "/web/database" OR source="web_access.log" AND "/web/database"