• v26.05.3 e1cd322996

    BookStack v26.05.3
    All checks were successful
    update-snyk / update (push) Successful in 20s
    lint-js / build (push) Successful in 14s
    test-js / build (push) Successful in 1m31s
    analyse-php / build (push) Successful in 2m52s
    lint-php / build (push) Successful in 2m40s
    test-migrations / build (8.2) (push) Successful in 1m40s
    test-migrations / build (8.4) (push) Successful in 1m34s
    test-migrations / build (8.3) (push) Successful in 1m54s
    test-migrations / build (8.5) (push) Successful in 3m14s
    test-php / build (8.2) (push) Successful in 7m39s
    test-php / build (8.4) (push) Successful in 6m53s
    test-php / build (8.3) (push) Successful in 7m30s
    test-php / build (8.5) (push) Successful in 7m53s
    Stable

    danb released this 2026-07-29 11:20:36 +02:00 | -484 commits to development since this release

    Signed by danb
    GPG key ID: 116094FE15AE65C0

    Security Release

    This is a security release to address a range of vulnerabilities:

    • External Authentication Use (OIDC/SAML2/LDAP) could potentially mismatch external authentication system users to BookStack users upon login, where unique IDs are very similar (same ID text but different casing, or accented characters).
    • The login form could be abused to use timing to gain information about if a user exists in the system. This was already limited by request rate-limits, but could still have assisted targeted scenarios.
    • Certain editor content could be used to load interactive content over file links when exported, which could then pose a risk after being exported in Windows environments which use NTLM.
    • API errors could include debug details by default, and therefore potentially expose some system details like file paths.
    • With our default PDF rendering option, certain content could be used to access/check for files on the BookStack host beyond the scope of what we'd expect.

    Upgrading is generally advised, but more so for instances using OIDC, SAML2 or LDAP authentication.

    Thanks to Tanner Marks (GitHub), Gurmandeep Deol (LinkedIn) and whale120 (Blog, X, Working with DEVCORE Internship Program) for responsibly reporting issues addressed in this release.

    Full List of Changes

    • Updated PHP package versions.
    • Updated translations with the latest Crowdin changes.
    • Updated login with fake hash and random delay on failed login.
    • Updated allow list content filter to force the use of schemes.
    • Updated allow list content filter with smarter srcset attribute parsing.
    • Updated user external authentication ID queries, and database column collation, to ensure an exact match.
    • Updated API exception handler to follow a more controlled error message approach.
    • Fixed image delete API endpoint to avoid an error scenario.
    Downloads
  • v26.05.2 fcb2d40606

    BookStack v26.05.2
    All checks were successful
    update-snyk / update (push) Successful in 22s
    lint-js / build (push) Successful in 19s
    test-js / build (push) Successful in 36s
    lint-php / build (push) Successful in 1m10s
    analyse-php / build (push) Successful in 2m36s
    test-migrations / build (8.3) (push) Successful in 1m14s
    test-migrations / build (8.2) (push) Successful in 1m24s
    test-migrations / build (8.4) (push) Successful in 2m42s
    test-migrations / build (8.5) (push) Successful in 3m6s
    test-php / build (8.3) (push) Successful in 6m22s
    test-php / build (8.2) (push) Successful in 7m49s
    test-php / build (8.4) (push) Successful in 7m19s
    test-php / build (8.5) (push) Successful in 7m51s
    Stable

    danb released this 2026-07-02 11:39:56 +02:00 | -470 commits to development since this release

    Signed by danb
    GPG key ID: 116094FE15AE65C0

    Security Release

    This is a security release to address some edge case vulnerabilities related to URL filtering, redirect handling, and permission checking, while also updating dependencies to help prevent known potential vulnerabilities in those being exploited.

    Upgrading is advised for instances with public access enabled, or for instances where untrusted users are able to edit content.

    Thanks to Gurmandeep Deol (LinkedIn) and MFK25 for responsibly reporting issues addressed in this release.

    Full List of Changes

    • Added Serbian language to language_select array. Thanks to @PolarniMeda. (#6153)
    • Updated PHP package versions.
    • Updated translations with the latest crowdin changes.
    • Updated content allow-filtering to consider protocols used in srcset attributes.
    • Updated URL filtering with a more thorough centralized utility class.
    • Updated comment delete action to also check comment visibility permissions.
    • Updated referring URL use with stronger source validation.
    • Updated translations with latest crowdin changes. (#6166)
    Downloads
  • v26.05.1 f63a592fbe

    BookStack v26.05.1
    Some checks failed
    analyse-php / build (push) Has been cancelled
    lint-js / build (push) Successful in 19s
    test-js / build (push) Successful in 38s
    test-migrations / build (8.3) (push) Has been cancelled
    test-migrations / build (8.4) (push) Has been cancelled
    test-migrations / build (8.5) (push) Has been cancelled
    test-migrations / build (8.2) (push) Has been cancelled
    lint-php / build (push) Successful in 2m40s
    test-php / build (8.2) (push) Successful in 9m55s
    test-php / build (8.4) (push) Successful in 9m26s
    test-php / build (8.3) (push) Successful in 9m34s
    test-php / build (8.5) (push) Failing after 27s
    Stable

    danb released this 2026-06-09 14:07:57 +02:00 | -454 commits to development since this release

    Signed by danb
    GPG key ID: 116094FE15AE65C0

    Security Release

    This is a security release to address the following vulnerabilities:

    • Attachment requests could be manipulated to leak details/links/metadata (not content) of attachments which the user did not have permission to view.
    • The file:// protocol could be abused in some Windows-specific scenarios to auto-run requests with credential information when viewing exports.
      • This protocol is now filtered from interactive content.
    • The search system could be abused to cause errors and fill logs.

    Upgrade is advised for instances with public viewing enabled, or where untrusted users have authenticated access.

    Thanks to Stephen O. / Sakusen (Codeberg, Website), Gurmandeep Deol (LinkedIn), Rafael Castilho (X account) and Gabriel Duarte Guerra (GitHub) for responsibly reporting these issues.

    Full List of Changes

    • Updated PHP package versions.
    • Updated translations with the latest Crowdin changes.
    • Updated content allow-filtering to only allow the file:// protocol on anchor hrefs, instead of in all dynamic content.
    • Updated attachment update handling to validate permissions before request content.
    • Fixed numeric handling issue in tag search when using non-standard numbers.
    Downloads
  • v26.05 4aa629a354

    BookStack v26.05
    All checks were successful
    lint-js / build (push) Successful in 15s
    analyse-php / build (push) Successful in 2m51s
    test-js / build (push) Successful in 39s
    lint-php / build (push) Successful in 2m37s
    test-migrations / build (8.2) (push) Successful in 4m21s
    test-migrations / build (8.3) (push) Successful in 5m55s
    test-migrations / build (8.4) (push) Successful in 6m33s
    test-migrations / build (8.5) (push) Successful in 6m36s
    test-php / build (8.2) (push) Successful in 11m28s
    test-php / build (8.3) (push) Successful in 10m55s
    test-php / build (8.4) (push) Successful in 10m2s
    test-php / build (8.5) (push) Successful in 9m36s
    Stable

    danb released this 2026-05-28 13:34:34 +02:00 | 41 commits to release since this release

    Signed by danb
    GPG key ID: 116094FE15AE65C0

    Upgrade Notices

    • Folder Permissions - Due to some changes in how fonts are used for exports, after updating you may need to ensure that the storage/fonts folder (and all folders within that) are accessible & writable by the web-server. If you start seeing errors on PDF export after updating, it's likely this issue. See this page for guidance on setting permissions.
    • Revision Access - Revision access & visibility is now controlled separately to pages. In some cases, after upgrading, users may no longer be able to access revisions by default (for example, where users had access to view page content but had no role-level view permissions).

    Full List of Changes

    • Added page contents view to page editor. (#6131, #4218)
    • Added API endpoints for browsing tags. (#6095, #5835)
    • Added custom font load handling for default PDF renderer. (#6109, #148, #719, #5770)
    • Added in-UI option to reset user multi-factor authentication methods. Thanks to @clauvaldez. (#6056)
    • Added hints to sort rule selection alongside empty lists. (#5967)
    • Added specific permission for revision viewing. (#6108, #4526)
    • Added new image and CSS CSP controls. Thanks to @Zhey-on. (#6071, #6033)
    • Added Thai language support. (#6105)
    • Updated codebase to meet PHPStan Level 4. (#6085)
    • Updated comment/description WYSIWYG editor to support inline code. (#6100, #6003)
    • Updated HTML to plain text conversion handling. (#6083)
    • Updated image upload handling to validate referenced page. (#6126)
    • Updated JavaScript packages. (#6090)
    • Updated module install command with usability improvements. (#6094, #6066)
    • Updated new WYSIWYG editor with a range of fixes. (#6119, #5631)
    • Updated translations with latest Crowdin changes. (#6084)
    • Fixed misaligned link attachment validation rules. (#6093)
    • Fixed non-ascii character issues in headers on PDF exports. Thanks to @alexwoo-awso. (#6069, #6107)
    Downloads
  • v26.03.5 cfeb035548

    BookStack v26.03.5
    Some checks failed
    analyse-php / build (push) Failing after 1s
    lint-js / build (push) Successful in 12s
    lint-php / build (push) Failing after 1s
    test-migrations / build (8.3) (push) Failing after 2s
    test-migrations / build (8.2) (push) Failing after 2s
    test-js / build (push) Failing after 15s
    test-php / build (8.3) (push) Failing after 1s
    test-migrations / build (8.4) (push) Failing after 3s
    test-migrations / build (8.5) (push) Failing after 2s
    test-php / build (8.2) (push) Failing after 2s
    test-php / build (8.4) (push) Failing after 4s
    test-php / build (8.5) (push) Failing after 2s
    Stable

    danb released this 2026-05-21 14:57:05 +02:00 | -354 commits to development since this release

    Signed by danb
    GPG key ID: 116094FE15AE65C0

    Security Release

    This is a security release to address a brute-force based vulnerability related to multi-factor authentication, and to update project libraries to help avoid potential vulnerabilities that have been reported in those.

    Upgrade is generally advised, but strongly so where multi-factor authentication is used & considered as a critical layer of defense.

    Thanks to Stephen O. / Sakusen (Codeberg, Website) for responsibly reporting these issues.

    Full List of Changes

    • Updated PHP package versions.
    • Updated MFA verification routes with rate limiting.
    Downloads
  • v26.03.4 d1bde2fc78

    BookStack v26.03.4
    Some checks failed
    analyse-php / build (push) Failing after 3s
    lint-js / build (push) Successful in 13s
    lint-php / build (push) Failing after 4s
    test-js / build (push) Failing after 17s
    test-migrations / build (8.5) (push) Failing after 2s
    test-migrations / build (8.2) (push) Failing after 2s
    test-migrations / build (8.3) (push) Failing after 3s
    test-migrations / build (8.4) (push) Failing after 3s
    test-php / build (8.5) (push) Failing after 2s
    test-php / build (8.4) (push) Failing after 2s
    test-php / build (8.2) (push) Failing after 4s
    test-php / build (8.3) (push) Failing after 4s
    Stable

    danb released this 2026-04-30 12:38:53 +02:00 | -350 commits to development since this release

    Signed by danb
    GPG key ID: 116094FE15AE65C0

    Security Release

    This is a security release to improve attachment related permission checks, and URL validation for webhooks.

    Upgrade is advised if you allow untrusted users to delete attachments, or if untrusted users have permission to create webhooks on instances which make use of the ALLOWED_SSR_HOSTS BookStack env file option.

    Thanks to 404_pkj (GitHub) and naruhodoowl (GitHub) for responsibly reporting these issues.

    Full List of Changes

    • Updated PHP package versions.
    • Updated attachment actions to align page access check.
    • Updated URL validation in webhooks to help prevent escaping workarounds.
    • Fixed issue where exact search term negation would lead to no results. (#6121)
    Downloads
  • v26.03.3 82ef7356f3

    ssddanbrown released this 2026-04-05 23:44:33 +02:00 | -344 commits to development since this release

    Signed by danb
    GPG key ID: 116094FE15AE65C0

    Full List of Changes

    This release contains the following fixes and changes:

    • Updated translations with latest Crowdin changes. (#6067)
    • Updated PHP dependency versions.
    Downloads
  • v26.03.2 508cf0ade6

    ssddanbrown released this 2026-03-23 12:55:22 +01:00 | -339 commits to development since this release

    Signed by danb
    GPG key ID: 116094FE15AE65C0

    Security Release

    This is a security release to address a vulnerability where the registration form could be manipulated to gain access to additional roles.

    Upgrade is very strongly advised if your instance has user registration enabled.

    Thanks to Kwonyong Lee (LinkedIn) for responsibly reporting this issue.
    Also thanks to Boustani OSAMA (LinkedIn) for also reporting this before public announcement.

    Full List of Changes

    • Updated user creation to only use validated input from registration.
    • Updated PHP package versions.
    • Updated translations with latest Crowdin changes. (#6064)
    • Updated PHP_CodeSniffer repository link. Thanks to @rodrigoprimo. (#6060)
    • Updated WYSIWYG editors to have consistent collapsible block double click behavior. (#6059)
    Downloads
  • v26.03.1 7111e080c1

    ssddanbrown released this 2026-03-17 12:01:00 +01:00 | -329 commits to development since this release

    Signed by danb
    GPG key ID: 116094FE15AE65C0

    Security Release

    This is a security release to address a vulnerability where page content, which should be hidden by permissions, could be visible during certain markdown exports.

    We strongly advise that you update your instance if you use permissions to control page visibility.

    Thanks to Ghufran Raza Khan (GitHub Profile, LinkedIn Profile) for responsibly reporting this issue.
    Also thanks to Alex Dan (GitHub Profile) for also reporting this before public announcement.

    Full List of Changes

    • Updated queries used for pages in markdown exports.
    • Updated handling of filenames for file serving.
    • Updated PHP package versions.
    Downloads
  • v26.03 33d2eee4b2

    ssddanbrown released this 2026-03-15 14:19:58 +01:00 | -323 commits to development since this release

    Signed by danb
    GPG key ID: 116094FE15AE65C0

    Upgrade Notices

    • Email/SMTP - The way BookStack sends messages has changed slightly (Specifically, the SMTP HELO domain). This isn't expected to be a breaking change but testing of emails (Using the test send action in Settings > Maintenance) is advised after updating to be sure there's no impact.
    • Theme System - Within a theme directory, the modules/ folder is now dedicated to theme modules. If you happened to already have a folder of this name in your theme, it's advised to use a different folder name instead.

    Full List of Changes

    Released in v26.03

    • Added new module system to the theme system. (#5998)
    • Added logical theme events for page content render and pre-save. (#6049)
    • Added logical theme event and class to allow inserting custom views before/after others. (#5998)
    • Added logical theme event to allow customising the OIDC authentication URL. (#6014)
    • Updated book delete to return to the parent shelf in a shelf context. (#6029)
    • Updated book read API endpoint to provide parent shelf information. (#6006)
    • Updated cursor to pointer for drawio diagrams. Thanks to @lublak. (#5864)
    • Updated description for per-page display limits. (#6005)
    • Updated emails to use the domain from the APP_URL in the SMTP HELO. (#5990)
    • Updated translations with latest Crowdin changes. (#6007)
    • Fixed empty extra space showing for descriptions when the input is left empty. (#5724)
    Downloads