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.
Metrics
Affected Vendors & Products
References
History
Wed, 12 Aug 2026 13:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
Wed, 12 Aug 2026 12:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Kovidgoyal
Kovidgoyal calibre |
|
| Vendors & Products |
Kovidgoyal
Kovidgoyal calibre |
Tue, 11 Aug 2026 22:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| 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. | |
| Title | calibre Content Server `/book-update-annotations` Missing Write Authorization Check Allows Unauthorized Annotation Modification | |
| Weaknesses | CWE-862 | |
| References |
| |
| Metrics |
cvssV3_1
|
Status: PUBLISHED
Assigner: GitHub_M
Published:
Updated: 2026-08-12T12:43:31.031Z
Reserved: 2026-08-11T17:18:01.597Z
Link: CVE-2026-73249
Updated: 2026-08-12T12:43:27.235Z
Status : Received
Published: 2026-08-11T22:19:05.687
Modified: 2026-08-12T13:17:26.097
Link: CVE-2026-73249
No data.
OpenCVE Enrichment
Updated: 2026-08-12T12:15:04Z