Skip to content
Heist/ feed
Back to feed
Medium

FacturaScripts: Unstripped Image Metadata (EXIF) Leakage via Library Module File Upload/Download

Type: advisorySources: OSV

FacturaScripts is an open source accounting and invoicing software. In versions prior to 2026, the Library module stores and serves uploaded images byte-for-byte, without stripping EXIF/XMP/IPTC metadata. Any authenticated user who downloaded an image could extract the uploader's embedded metadata, which included GPS coordinates, device information, timestamps, embedded comments/notes, thumbnail previews, and other personally identifiable information (PII) preserved in the image metadata. Of all FacturaScripts' image upload features, only the Library module combined unrestricted uploads, persistent storage, authenticated download access, and a total lack of server-side metadata sanitization. This vulnerability carries significant real-world impact: an employee uploading a photo taken at their home inadvertently discloses their precise home address to every user with Library download access. This issue has been fixed in version 2026.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-27892
Confirmed fixed CVEs
Not specified
Updated in this feed
4 Nov 2026, 15:48 UTC · Revision 1

Source evidence

FacturaScripts: Unstripped Image Metadata (EXIF) Leakage via Library Module File Upload/Download

core-osv · Original source

Published 18 May 2026, 21:51 UTC

FacturaScripts is an open source accounting and invoicing software. In versions prior to 2026, the Library module stores and serves uploaded images byte-for-byte, without stripping EXIF/XMP/IPTC metadata. Any authenticated user who downloaded an image could extract the uploader's embedded metadata, which included GPS coordinates, device information, timestamps, embedded comments/notes, thumbnail previews, and other personally identifiable information (PII) preserved in the image metadata. Of all FacturaScripts' image upload features, only the Library module combined unrestricted uploads, persistent storage, authenticated download access, and a total lack of server-side metadata sanitization. This vulnerability carries significant real-world impact: an employee uploading a photo taken at their home inadvertently discloses their precise home address to every user with Library download access. This issue has been fixed in version 2026.

osv:CVE-2026-27892
Complete source record
{
  "id": "5b0a823295e9dec69ed9484ccf89ad1321324b987678f4391b2c0644c494f081",
  "url": "https://osv.dev/vulnerability/CVE-2026-27892",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "FacturaScripts: Unstripped Image Metadata (EXIF) Leakage via Library Module File Upload/Download",
    "summary": "FacturaScripts is an open source accounting and invoicing software. In versions prior to 2026, the Library module stores and serves uploaded images byte-for-byte, without stripping EXIF/XMP/IPTC metadata. Any authenticated user who downloaded an image could extract the uploader's embedded metadata, which included GPS coordinates, device information, timestamps, embedded comments/notes, thumbnail previews, and other personally identifiable information (PII) preserved in the image metadata. Of all FacturaScripts' image upload features, only the Library module combined unrestricted uploads, persistent storage, authenticated download access, and a total lack of server-side metadata sanitization. This vulnerability carries significant real-world impact: an employee uploading a photo taken at their home inadvertently discloses their precise home address to every user with Library download access. This issue has been fixed in version 2026.",
    "evidence": "osv:CVE-2026-27892",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-27892",
      "aliases": [
        "CVE-2026-27892",
        "GHSA-q7f2-rv22-2xgr"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/neorazorx/facturascripts",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "39b58a6854b250a8ad59f51a0128f384b2cbd96f"
                },
                {
                  "fixed": "b0725147a61a9a377b7180589af33ff52b4751e2"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "2026"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "fixed": "b0725147a61a9a377b7180589af33ff52b4751e2"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v2025.81",
            "v2025.8",
            "v2025.71",
            "v2025.7",
            "v2025.43",
            "v2025.41",
            "v2025.4",
            "v2025.3",
            "v2025.2",
            "v2025.11",
            "v2025",
            "c2024.92",
            "v2024.91",
            "v2024.9",
            "v2024.8",
            "v2024.7",
            "v2024.5",
            "v2024.3",
            "v2024.2",
            "v2024.1",
            "v2024",
            "v2023.21",
            "v2023.16",
            "v2023.08",
            "v2022.51",
            "v2022.4",
            "v2022.2",
            "v2022.08",
            "v2022.06",
            "v2021.81",
            "v2021.71",
            "v2021.51",
            "v2021.4",
            "v2021.2",
            "v2021.1",
            "v2021",
            "v2020.80",
            "v2020.71",
            "v2020.61",
            "v2020.51",
            "v2020.4",
            "v2020.3",
            "v2020.2",
            "v2020.01",
            "v2018.16",
            "v2018.15",
            "v2018.14",
            "v2018.13",
            "v2018.12",
            "2018.11",
            "2018.05",
            "2018.04",
            "2018.03"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-27892.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:36.929838649Z",
      "provider": "osv",
      "references": [
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/27xxx/CVE-2026-27892.json",
        "https://github.com/NeoRazorX/facturascripts/security/advisories/GHSA-q7f2-rv22-2xgr",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-27892",
        "https://github.com/NeoRazorX/facturascripts/commit/b0725147a61a9a377b7180589af33ff52b4751e2"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-200",
          "CWE-212"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/27xxx/CVE-2026-27892.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-27892",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 504255,
  "published_at": "2026-05-18T21:51:26.139+00:00"
}