Skip to content
OpenAdvisories
High · 7.5 CVE-2026-73249 EUVD-2026-57015

calibre Content Server `/book-update-annotations` Missing Write Authorization Check Allows Unauthorized Annotation Modification

Published Aug 11, 2026 · Updated Aug 12, 2026 · Assigned by GitHub_M

Description

calibre is an e-book manager. Prior to 9.12.0, the calibre Content Server endpoint POST /book-update-annotations/{library_id}/{book_id}/{fmt} in src/calibre/srv/books.py omits needs_db_write=True, causing Router.dispatch() to skip ctx.check_for_write_access() before update_annotations() passes attacker-controlled JSON to db.merge_annotations_for_book(), which allows a readonly user or an anonymous user on an unauthenticated deployment to persist unauthorized book annotation changes. This issue is fixed in version 9.12.0.

Affected products

VendorProductAffectedFixed
kovidgoyal calibre < 9.12.0 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 calibre 9.12.0+ds+~0.10.6-1 —
Debian 13 calibre No fix yet —
Debian 12 calibre No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 calibre No fix yet —
Ubuntu 26.04 LTS calibre No fix yet —
Ubuntu 24.04 LTS calibre No fix yet —
Ubuntu 22.04 LTS calibre No fix yet —
Ubuntu 20.04 LTS calibre No fix yet —
Show 2 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 18.04 LTS calibre No fix yet —
Ubuntu 16.04 LTS calibre No fix yet —

References