CVE-2026-88892
Last modified
CVE-2026-88892 is a medium-severity vulnerability rated 5/10 on the CVSS scale. In OpenPanel through 2.3.0, the data importer fetches a caller-supplied URL with plain fetch instead of the project's existing SSRF guard (apps/api/src/utils/safe-fetch.ts). In packages/importer/src/providers/umami.ts, parseRemoteFile calls fetch() on config.fileUrl, which is validated only by z.string().url(), so values such as http://127.0.0.1:9911/ or http://169.254.169.254/latest/meta-data/ are accepted; the shared createFileImportConfig factory gives the plausible provider the same field. EPSS estimates a 0.28% chance of exploitation in the next 30 days.
Description
In OpenPanel through 2.3.0, the data importer fetches a caller-supplied URL with plain fetch instead of the project's existing SSRF guard (apps/api/src/utils/safe-fetch.ts). In packages/importer/src/providers/umami.ts, parseRemoteFile calls fetch() on config.fileUrl, which is validated only by z.string().url(), so values such as http://127.0.0.1:9911/ or http://169.254.169.254/latest/meta-data/ are accepted; the shared createFileImportConfig factory gives the plausible provider the same field. An authenticated organization member — including a default 'member' with no project_access rows, for whom the intended access-level check is skipped because getProjectAccess returns boolean true rather than a level object — can therefore make the server connect to any address reachable from it. The resulting HTTP status and status text are persisted as Import.errorMessage and returned by import.get to the same user, providing a scanning oracle for internal hosts, ports and paths; if an internal response parses as Umami CSV, its rows are ingested as events and become readable in the attacker's analytics views.
Metrics
Weakness Enumeration
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| Openpanel-dev | openpanel | <= worker |
References
Timeline
- Published
- Last Modified
- Status
- Deferred
Frequently Asked Questions
What is CVE-2026-88892?
How severe is CVE-2026-88892?
How do I fix CVE-2026-88892?
How Strix Helps
- One Click Account Takeover in GranolaHow a notification link broke out of Electron and led to a one-click account takeover.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-88887Renovate is a dependency update automation tool. When listin…8.6
- CVE-2026-88888Renovate before 44.14.7 contains a command injection vulnera…7
- CVE-2026-88889Renovate before 44.14.7 contains a command injection vulnera…7.8
- CVE-2026-8889Version 3.0.7 of the Securly Chrome Extension uses deprecate…7.5
- CVE-2026-88890OpenPanel through 2.3.0 contains an SQL injection vulnerabil…8.5
- CVE-2026-88891OpenPanel through 2.3.0 fails to enforce read-only project a…8.3
- CVE-2026-88893OpenPanel through 2.3.0 share lookup procedures fail to vali…7.5
- CVE-2026-88894Snipe-IT's predefined kit checkout path does not enforce Ful…5.4
- CVE-2026-88895CyberPanel before 3.0.5 fails to enforce two-factor authenti…7.2
- CVE-2026-88896EspoCRM before 10.0.4 is vulnerable to server-side request f…5.3
- CVE-2026-88897Flextype CMS through 1.0.0-alpha.3 accepts API authenticatio…5.9
- CVE-2026-88898AppFlowy-Cloud versions 0.7.2 through 0.9.64 fail to authori…6.5
Are you affected by CVE-2026-88892?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
