# CVE-2026-125870: BookStack missing authorization in image access control

Source: https://junglewise.ai/threats/cve-2026-125870-bookstack-before-26-09-3-contains-a-missing-authorization  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-11-12. Updated: 2026-11-12  
License: CC BY 4.0 with a link back

CVE-2026-125870 · Severity: medium · CVSS 4.2 · Published 2026-11-12

BookStack is a documentation and wiki platform that enforces access controls to protect sensitive pages. A flaw in its image permission checking allows authenticated users to view and modify images attached to restricted or deleted pages, potentially exposing confidential information and enabling unauthorized data manipulation.

Technologies: [BookStack](https://junglewise.ai/threats/technologies/bookstack-bookstack). Vendors: [BookStack](https://junglewise.ai/threats/vendors/bookstack).

## Quick answers

**Is CVE-2026-125870 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-125870 being exploited in the wild.

**How severe is CVE-2026-125870?** Medium severity, with a CVSS score of 4.2, published 12 November 2026.

**Which products and versions are affected?** BookStack before 26.09.3.

**Is there a fix for CVE-2026-125870?** Yes: fixed in BookStack 26.09.3. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-125870 attacked?** It is attacked over the network, in a web application.

**Am I affected by CVE-2026-125870?** Check whether you run BookStack at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- Fixed in BookStack 26.09.3

## Technical details

The vulnerability exists in ImageController::checkImagePermission() which fails to validate access when the owning page is soft-deleted (moved to recycle bin), as Page::getPage() returns null and skips the PageView authorization check. Authenticated attackers can enumerate sequential image IDs via GET /images/edit/{id} to disclose restricted image metadata, and users with elevated permissions can rename, replace, or delete images from inaccessible content, with damage persisting even after page restoration.

## Affected products

- BookStack BookStack before 26.09.3

## Timeline

- 2026-11-12: disclosed

## References

- [https://codeberg.org/bookstack/bookstack/releases/tag/v26.09.3](https://codeberg.org/bookstack/bookstack/releases/tag/v26.09.3)
- [https://github.com/BookStackApp/BookStack/releases/tag/v26.09.3](https://github.com/BookStackApp/BookStack/releases/tag/v26.09.3)

## Related threats

- [BookStack authorization bypass in draft page images](https://junglewise.ai/threats/cve-2026-126811-bookstack-before-26-09-3-contains-an-incorrect-authorization)
- [BookStack authorization bypass in AttachmentController](https://junglewise.ai/threats/cve-2026-116020-bookstack-before-26-09-2-contains-an-incorrect-authorization)
