Description
Akaunting's shared download route (app/Http/Controllers/Common/Uploads.php::download(), reachable at uploads/{id}/download behind only generic auth middleware) fetched the requested Media record by ID with no verification that it belonged to the requesting portal customer's own company, allowing any authenticated portal customer to download any other company's uploaded files by guessing or enumerating media IDs. Fixed in commit 80ef6d3 (2026-07-12), which added an explicit ownership check comparing the media's parent record contact_id against the requesting user's own contact.
Published: 2026-08-05
Score: 6.5 Medium
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Akaunting’s shared download endpoint (app/Http/Controllers/Common/Uploads.php::download()) allows an authenticated portal customer to download any media record by specifying an ID. The handler retrieves the Media record using the supplied ID without confirming that the media belongs to the requesting user’s company. This deficiency permits an attacker to obtain confidential files from other companies without additional privileges, resulting in a data confidentiality breach. The flaw is an Insecure Direct Object Reference (CWE-639).

Affected Systems

The vulnerability affects the Akaunting application, as identified by the CNA vendor/service named akaunting:akaunting. No specific version ranges are provided in the CNA data, so any installation of Akaunting that includes the vulnerable download route is at risk until the fix is applied.

Risk and Exploitability

The CVSS score of 6.5 indicates moderate severity, and the EPSS score is not available. The vulnerability is not listed in CISA’s KEV catalog. An attacker only needs to be an authenticated portal user; no elevated privileges or remote code execution are required. The attacker can simply enumerate media IDs or guess them to download sensitive files, making the exploit straightforward though limited to authenticated sessions. Because the flaw exists in a public-facing route, the risk to customer data is tangible but mitigated by the requirement for authentication.

Generated by OpenCVE AI on August 5, 2026 at 12:50 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the official update that implements an ownership check based on the media’s parent record contact_id (commit 80ef6d3, released 2026-07-12).
  • Ensure the download endpoint is protected by proper authorization checks that verify the authenticated user’s company before serving the file.
  • Implement monitoring or rate‑limiting on download requests to detect and block repeated attempts to guess or enumerate media IDs.

Generated by OpenCVE AI on August 5, 2026 at 12:50 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

References
History

Wed, 05 Aug 2026 12:45:00 +0000

Type Values Removed Values Added
First Time appeared Akaunting
Akaunting akaunting
Vendors & Products Akaunting
Akaunting akaunting

Wed, 05 Aug 2026 11:15:00 +0000

Type Values Removed Values Added
Description Akaunting's shared download route (app/Http/Controllers/Common/Uploads.php::download(), reachable at uploads/{id}/download behind only generic auth middleware) fetched the requested Media record by ID with no verification that it belonged to the requesting portal customer's own company, allowing any authenticated portal customer to download any other company's uploaded files by guessing or enumerating media IDs. Fixed in commit 80ef6d3 (2026-07-12), which added an explicit ownership check comparing the media's parent record contact_id against the requesting user's own contact.
Title Akaunting: Cross-Company Media IDOR in Customer Portal Download Endpoint
Weaknesses CWE-639
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N'}


Subscriptions

Akaunting Akaunting
cve-icon MITRE

Status: PUBLISHED

Assigner: TuranSec

Published:

Updated: 2026-08-05T12:40:32.060Z

Reserved: 2026-08-05T10:53:53.177Z

Link: CVE-2026-71251

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-05T13:00:16Z

Weaknesses
  • CWE-639

    Authorization Bypass Through User-Controlled Key