Skip to main content

InvoicePlane CVE-2026-39372

| EUVDEUVD-2026-87122 MEDIUM
Exposure of Private Personal Information to an Unauthorized Actor (CWE-359)
2026-09-25 GitHub_M
4.9
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as recipient user
  2. Delivery
    Admin uploads image attachment with EXIF intact
  3. Exploit
    Application stores/serves image unstripped
  4. Execution
    Recipient downloads shared attachment
  5. Impact
    Extract embedded GPS/timestamp/device metadata

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection PII protection
Exploitation Conditions

Requires that an administrator (or other uploader) actually uploads an image containing EXIF metadata - GPS coordinates, timestamps, or device info - through the invoice attachment, quote attachment, or another attachment feature, AND that the image is shared with a separate recipient user who is authenticated to view it. Exploitation is limited to whatever sensitive metadata happens to be embedded in the uploaded files; images without EXIF (e.g., screenshots, scanned PDFs) expose nothing. Critically, even after upgrading to 1.7.2 the protection remains INEFFECTIVE unless the operator manually enables SEC_STRIP_EXIF_FROM_IMAGES in ipconfig.php, since the mitigation ships disabled by default.

Impact

This is a low-priority, high-conditionality privacy disclosure, not an exploitable code-execution or takeover flaw. All signals point the same direction: NVD CVSS is only 4.9 (Medium), there is no EPSS score provided, no CISA KEV listing, and no public POC - matching the 'no public exploit identified' status. The CVSS vector CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N is internally consistent with an info-only leak (I:N/A:N) but the C:H rating is arguably overstated: the leaked data is EXIF metadata (GPS, timestamps, device model) embedded in images an administrator chose to upload, not credentials, database contents, or full-file disclosure - a C:L rating better reflects the limited, indirect nature of the exposure. Notably the vendor's own fix ships EXIF stripping DISABLED BY DEFAULT (SEC_STRIP_EXIF_FROM_IMAGES=false in ipconfig.php), meaning even patched 1.7.2 installs remain vulnerable unless an operator explicitly enables the setting - a significant caveat security teams must know. The 'Information Disclosure' tag is accurate here (genuine CWE-359), unlike many mislabeled entries. Net: real but minor, targeted rather than mass-exploitable.

Exploit ScenarioDerived

An administrator uploads a smartphone photo (e.g., a receipt, site photo, or client document containing EXIF GPS and device data) as an invoice or quote attachment and shares it with another InvoicePlane user. That recipient downloads the served image and reads the intact EXIF block, learning the admin's physical location coordinates, capture timestamps, and camera/device model. No public exploit code exists; extraction requires only a standard EXIF reader.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 25, 2026

InvoicePlane releases prior to 1.7.2 store and serve image attachments (invoice, quote, and other attachment uploads) without stripping EXIF metadata, so any authenticated recipient with whom a picture is shared can recover embedded GPS coordinates, capture timestamps, camera/device identifiers, and similar details that the uploader never intended to disclose. The assessed vector requires an authenticated low-privileged user (PR:L) on the network to view the shared image, and exploitation is entirely contingent on the uploader having attached a photo that actually carries EXIF data - screenshots, re-encoded images, and scanned documents expose nothing, which keeps the practical impact low and conditional. Exploitation yields only whatever metadata happens to be present in the file, so this is a privacy leak rather than a code-execution or account-takeover flaw; no public exploit code has been identified and the issue is not listed on CISA KEV, though note that the 1.7.2 mitigation ships disabled by default and must be explicitly enabled to be effective.

RemediationAI

Upgrade InvoicePlane to 1.7.2 or later (https://github.com/InvoicePlane/InvoicePlane/releases/tag/v1.7.2), which contains the EXIF-stripping code introduced via PR https://github.com/InvoicePlane/InvoicePlane/pull/1507 and commit https://github.com/InvoicePlane/InvoicePlane/commit/90381b49d9ff3a817cf25d12d7dc118eb070aa3a. The upgrade alone is NOT sufficient: the mitigation ships disabled, so operators must also set SEC_STRIP_EXIF_FROM_IMAGES=true in ipconfig.php - leaving it at the default 'false' means uploads continue to retain GPS, timestamp, and device metadata and the CVE remains unmitigated on a patched install. Confirm the PHP GD extension is loaded, because strip_exif_metadata() logs 'gd_not_available' and silently skips processing without GD; the re-encode step also rewrites JPEG at quality 90 and PNG at compression level 6, which introduces minor generational quality/compatibility differences for some images. Where patching or the GD dependency cannot be met, compensating controls include stripping EXIF client-side before upload (e.g., exiftool -all= or a mobile sharing option that removes location data), downscaling or re-saving photographs through an image editor prior to attaching them, tightening which roles may upload and view attachments to reduce the recipient pool, and placing the InvoicePlane attachment directory behind stricter access controls - each of these reduces but does not eliminate exposure because previously stored images retain their original metadata and must be re-processed or purged separately; the vendor advisory is at https://github.com/InvoicePlane/InvoicePlane/security/advisories/GHSA-7j67-2v6p-275v.

Affected VersionsENISA

InvoicePlane < 1.7.2

Affected Packages

euvd invoiceplane fix: 1.7.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The root cause is CWE-359 (Exposure of Private Personal Information to an Unauthorized Actor): InvoicePlane's upload pipeline accepts image files and serves them back byte-for-byte without sanitizing embedded EXIF segments. EXIF is a structured metadata block commonly found in JPEG, and to a lesser extent PNG, GIF, and WEBP files produced by cameras and phones; it can contain GPS latitude/longitude, capture date/time, camera make/model, serial numbers, and software strings. Because the application never rewrites the image, the original metadata travels intact through storage and delivery to every other user who can view the attachment. The upstream fix (PR #1507, commit 90381b49) adds a strip_exif_metadata() routine to application/helpers/file_security_helper.php that reloads JPEG/PNG/GIF/WEBP images through the PHP GD extension (imagecreatefromjpeg/png/gif/webp) and re-saves them (imagejpeg at quality 90, imagepng at compression 6, imagegif, imagewebp at quality 90), which inherently discards EXIF segments. Critically, the function is gated by env_bool('SEC_STRIP_EXIF_FROM_IMAGES', 'false'), so it returns early with 'skipped' unless the operator sets the flag in ipconfig.php; it also fails gracefully when the GD extension is not loaded, logging 'gd_not_available'. The CPE cpe:2.3:a:invoiceplane:invoiceplane:*:*:*:*:*:*:*:* designates the self-hosted InvoicePlane PHP application across all versions before the release tag v1.7.2.

Know when Invoiceplane gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 4.9 MEDIUM
AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N
vuln.today AI 4.3 MEDIUM

Recipient is a low-privilege authenticated user (PR:L) retrieving over the web (AV:N/AC:L); leaked EXIF metadata is limited confidentiality only (C:L), no integrity or availability impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

1
Patch available
Sep 25, 2026 - 17:04 EUVD

DescriptionCVE.org

InvoicePlane is a self-hosted open source application for managing invoices, clients, and payments. Prior to 1.7.2, InvoicePlane stores and serves uploaded image attachments without stripping EXIF metadata. When an administrator uploads an image through invoice attachments, quote attachments, or another attachment feature and shares it with another user, the recipient can retrieve embedded GPS coordinates, timestamps, and device information. The preserved metadata can disclose private location and device details across users. This vulnerability is fixed in 1.7.2.

Threat Intelligence Overview

EPSS Score
0.3%
Top 82% exploitable
Prevalence
Low
niche self-hosted open-source invoicing app, limited enterprise footprint
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

24
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +24
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2025-67084 CRITICAL POC
9.9 Jan 15

InvoicePlane through 1.6.3 allows authenticated users to upload PHP files as attachments that can be executed remotely.

CVE-2026-25548 CRITICAL POC
9.1 Feb 18

Remote Code Execution in InvoicePlane self-hosted invoicing application through code injection. PoC and patch available.

CVE-2017-1000238 HIGH POC
8.8 Nov 17

InvoicePlane version 1.4.10 is vulnerable to a Arbitrary File Upload resulting in an authenticated user can upload a mal

CVE-2021-29024 HIGH POC
7.5 May 17

In InvoicePlane 1.5.11 a misconfigured web server allows unauthenticated directory listing and file download. Rated high

CVE-2026-23491 HIGH POC
7.5 Feb 18

Unauthenticated attackers can read arbitrary files from InvoicePlane servers through path traversal in the Guest control

CVE-2025-67082 MEDIUM POC
6.5 Jan 15

An SQL injection vulnerability in InvoicePlane through 1.6.3 has been identified in "maxQuantity" and "minQuantity" para

CVE-2024-56975 CRITICAL
9.8 Mar 28

InvoicePlane (all versions tested as of December 2024) v.1.6.11 and before contains a remote code execution vulnerabilit

CVE-2023-23011 MEDIUM POC
6.1 Feb 07

Cross Site Scripting (XSS) vulnerability in InvoicePlane 1.6 via filter_product input to file modal_product_lookups.php.

CVE-2018-12255 MEDIUM POC
6.1 Jul 03

An XSS issue was discovered in InvoicePlane 1.5.10 via the "Quote PDF Password(Optional)" field. Rated medium severity (

CVE-2026-24745 MEDIUM POC
5.7 Feb 18

Stored XSS via SVG file upload in InvoicePlane 1.7.0 Login Logo functionality allows authenticated administrators to inj

CVE-2026-24744 MEDIUM POC
5.7 Feb 18

Stored XSS in InvoicePlane 1.7.0's invoice editing function fails to sanitize the invoice_number parameter, allowing aut

CVE-2026-24743 MEDIUM POC
5.7 Feb 18

Stored XSS in InvoicePlane 1.7.0 via malicious SVG file upload in the Invoice Logo function allows authenticated adminis

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy