Skip to main content

Photoview CVE-2026-96271

| EUVDEUVD-2026-84990 HIGH
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-09-23 VulnCheck GHSA-r72q-r5vm-p79c
7.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as low-privileged Photoview user
  2. Delivery
    Enumerate sequential victim album IDs
  3. Exploit
    Call shareAlbum mutation with foreign album ID
  4. Execution
    Receive valid share token bypassing ownership check
  5. Impact
    Distribute share link to expose victim photos

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
Exploitation Conditions

Requires an authenticated low-privileged account on a multi-user Photoview instance (PR:L) - this is the primary limiting factor, so single-user/private deployments are not meaningfully at risk. Given a valid session, the attacker invokes the shareAlbum GraphQL mutation and supplies an album ID owned by another user; because AddAlbumShare (share_token_actions.go) did not scope the lookup to the caller's albums, any valid album ID yields a working share token. No user interaction, no special non-default configuration, and no elevated privileges are needed beyond ordinary login; album IDs are sequential integers making target enumeration trivial. Exposure of the leaked content additionally requires the attacker to distribute the generated share link, but token generation and control are fully attacker-driven.

Impact

This is a genuine authorization/IDOR flaw (CWE-639) with a coherent, verifiable signal chain rather than an inflated high-CVSS artifact. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N = 7.1) is well-supported: exploitation is network-reachable, low-complexity, requires only a low-privileged authenticated account, and needs no user interaction, with high confidentiality impact (exposure of arbitrary victims' photos and sub-albums) and low integrity impact (attacker-controlled share-token creation). The fix commit (20541762) confirms the root cause precisely - AddAlbumShare failed to scope the query to the requesting user's albums - so the technical claim is corroborated by source-code evidence, not just the description. No EPSS score, no CISA KEV listing, and no public weaponized exploit code were provided, so despite the moderately high CVSS this is not evidence of active exploitation. The vendor has shipped a patch and VulnCheck published an advisory, but there is no signal (KEV/EPSS/POC) that mass exploitation is occurring; realistically this is a targeted-abuse risk against exposed multi-user Photoview instances rather than an internet-wide threat. Note the input Tag 'Authentication Bypass' is imprecise: this is an authorization/access-control failure (authenticated users escalating access to others' resources), not an authentication bypass.

Exploit ScenarioDerived

An attacker registers or already holds a low-privileged account on a shared Photoview instance, then calls the shareAlbum GraphQL mutation supplying album IDs they do not own (album IDs are sequential integers, easily enumerated). The server returns a valid share token, and the attacker distributes the resulting share link to expose another user's private photos and sub-albums, retaining indefinite control over the token's settings. No public proof-of-concept exploit was identified, but the vendor's regression test in the patch demonstrates the exact non-owner exploitation path.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.4% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 23, 2026

Photoview through 2.4.0 contains an authorization bypass in the shareAlbum GraphQL mutation that lets any authenticated low-privileged user generate valid share tokens for albums owned by other users. Because album IDs are sequential integers, an attacker with a normal account can enumerate IDs and create working share links without needing any elevated privileges; distributing the resulting link exposes the victim's photos and sub-albums. Exploitation requires a multi-user deployment and an authenticated session, and no public exploit code has been identified at time of analysis, though the vendor has released an upstream fix.

RemediationAI

Apply the upstream fix by upgrading Photoview to a build that includes commit 20541762fe6d9e0ce363c3d4c55556e4ccdc57a2, which adds the missing album-ownership constraint in AddAlbumShare; no tagged release version beyond 2.4.0 is confirmed in the available data, so verify the fix is present before considering the instance patched. If upgrading is not immediately possible, restrict the Photoview instance to trusted, single-user or small-team use, because any authenticated account can exploit the bypass - this reduces exposure but removes the multi-user sharing model. Additionally, audit existing share tokens and revoke any whose creation was not initiated by the album owner, and consider disabling public share links altogether if the feature is not required, accepting the trade-off of losing a core Photoview capability. The vendor advisory and issue references are at https://www.vulncheck.com/advisories/photoview-through-2.4.0-authorization-bypass-via-sharealbum and https://github.com/photoview/photoview/issues/1494.

Affected VersionsENISA

photoview 0 ≤2.4.0

Affected Packages

euvd photoview no fix

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 flaw is a classic CWE-639 authorization bypass through user-controlled key (IDOR) in Photoview's Go-based GraphQL API. The shareAlbum mutation calls AddAlbumShare in api/graphql/models/actions/share_token_actions.go, which built its album lookup with GORM without constraining the query to albums owned by the calling user. As a result, any valid album ID supplied by an authenticated user was accepted, yielding a share token for that album. The vulnerability was addressed by adding an ownership constraint to the query, as shown in the upstream commit, along with a regression test that verifies a non-owner is rejected with auth.ErrUnauthorized. The affected product is Photoview through version 2.4.0 (CPE cpe:2.3:a:photoview:photoview:*:*:*:*:*:*:*:*), a self-hosted photo gallery application. The CVSS 4.0 vector reflects network exploitability, low privileges required, and high confidentiality impact with low integrity impact.

Know when Photoview 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 (VulnCheck) PRIMARY 7.1 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 7.1 HIGH

Network GraphQL endpoint, low complexity, and an ordinary authenticated account (PR:L) suffice; high confidentiality from exposing others' albums, low integrity from unauthorized share-token creation, no availability impact.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Photoview through 2.4.0 contains an authorization bypass vulnerability in the shareAlbum GraphQL mutation that allows authenticated users to create share links for albums owned by other users. Attackers can supply arbitrary album IDs to generate working share tokens for victim albums, exposing photos and sub-albums to anyone with the link while retaining indefinite control over token settings.

Executive ViewAI

Why It Matters

Photoview deployments running through version 2.4.0 expose private album content because a low-privileged account can generate valid share links for other users' albums, including sub-albums, in multi-user environments. This creates a privacy and data-exposure risk for affected organizations, with potential reputational and compliance consequences if sensitive photos are shared externally. No public exploit identified at time of analysis, and a vendor fix is available.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.4%
Top 67% exploitable
Prevalence
Low
niche open-source self-hosted photo gallery, self-hoster community only
Data Quality
6 sources
Confidence: High

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 HIGH
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

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

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