blog: Keycloak 26.7.3 released - #360
Draft
xgp wants to merge 3 commits into
Draft
Conversation
Deploying phasetwo-docs with
|
| Latest commit: |
f71a98f
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://2c030cb6.phasetwo-docs.pages.dev |
| Branch Preview URL: | https://release-keycloak-26-7-3.phasetwo-docs.pages.dev |
Re-derives every claim from sources/ and upstream: - 20 CVEs fixed (one per Security fixes entry); the 22 distinct ids in the release body include CVE-2026-9083 and CVE-2026-9794, cited as earlier incomplete fixes rather than fixed here. Both are now named explicitly. - Severities generated from the advisory severity field, not hand-typed. - Backport mapping taken from release/* labels on the 20 upstream issues, since 19 of 21 advisories publish no version range at all. - Scopes the delegated-admin exposure to five FGAP v2 items plus one in role management, and drops the implication that leaving FGAP off covers you. - Records that the high-severity item is a development-scope dependency per upstream #50785, with the runtime classpath explicitly unverified.
xgp
marked this pull request as ready for review
September 1, 2026 17:56
Member
Author
|
@pnzrr automated keycloak release blog post |
Revise against re-verified sources: scope-check the one high-severity CVE (CVE-2026-35563 is test-scope, not runtime LDAP federation), derive branch backport status from git tags because 19 of 21 advisories carry no version ranges, and cut to the 800-word limit.
xgp
marked this pull request as draft
September 1, 2026 18:46
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Draft blog post for the Keycloak 26.7.3 release (published 2026-08-31).
Verdict in the post
No emergency window, but upgrade this week if you use external token exchange with Google or Microsoft, or fine-grained admin permissions (FGAP) v2 with delegated admins. Everything else can go in a normal cycle. Readers on 26.4, 26.5 or 26.6 have no tag carrying these fixes yet.
Tier: Notable (security-led). No CVE here is exploitable without a privileged account, an opt-in feature, or a network position, and there is no data-loss bug — so it is not an emergency. Security still leads the article because 20 CVEs and three breaking changes are what the release contains; there are no new features to lead with. Body is 800 words.
How the CVE count was derived
grep -o 'CVE-[0-9]\{4\}-[0-9]*' | sort -u | wc -lover the release body gives 22 distinct identifiers. Two of those are back-references, not fixes in this release:CVE-2026-9083appears only inside theCVE-2026-19729entry ("incomplete fix for CVE-2026-9083")CVE-2026-9794appears in the Bugs section, in issue #52017 ("incomplete fix of CVE-2026-9794")The
Security fixessection has exactly 20<li>entries, one CVE each. So: 20 CVEs fixed, 22 identifiers present. Upstream's own announcement also says 20. Severity split, taken verbatim from each advisory'sseverityfield: 1 high, 17 medium, 1 low, 1 unrated. The table in the post is generated fromadvisories.json, not transcribed, and every row links both the GHSA and the CVE.The claim a reviewer should check hardest
The post argues that the only high CVE, CVE-2026-35563 (Apache Directory LDAP API, 8.8 CVSS v4), is test-scope and does not reach a running server. This is our analysis, explicitly labelled as such in the post, not an upstream statement. Evidence:
org.apache.directory.apiusage inkeycloak/keycloakis underutil/embedded-ldap/ortestsuite/(code search, 8 hits)util/pom.xml,testsuite/utils/pom.xmlandtestsuite/integration-arquillian/tests/base/pom.xmldepend onembedded-ldap— no distribution module doesfederation/ldapuses JNDI (javax.naming.ldap), not the Apache Directory client API26.7.3is "Upgrade ApacheDS to 2.0.0.AM27 to address CVE-2026-35563", and issue #51785 in the same release reads "Multiple CVEs inherited from Apache DS used for testing"If a reviewer disagrees, the fix is to soften that section rather than to restore an "urgent LDAP flaw" framing — the advisory's fixed version (
2.1.8) is the library's, and the post says so.Backport status: derived from tags, not advisories
19 of the 21 advisories have an empty
vulnerabilities[]array (they aretype: unreviewed, NVD-sourced), so no affected-version orfirst_patched_versiondata exists for the Keycloak packages. There is no backport map to read. Derived from git instead:26.7.3✅26.6.6✅26.4.15✅26.4.8–26.4.15,26.6.5and26.6.6return 200 on/git/ref/tags/{v}and 404 on/releases/tags/{v}— tagged, never announced. Images verified individually viaquay.io/api/v1/repository/phasetwo/keycloak/tag/?specificTag=<v>&onlyActiveTags=true;26.6.5,26.6.4and26.4.14returned zero tags and are not claimed in the post.Conflicting upstream data, flagged in the post
The
CVE-2026-9794advisory (GHSA-fqjh-8322-vgrv) listsfirst_patched_version: 26.6.3, while issue #52017 in this release says that fix was incomplete. Its other range,<= 26.4.7, has no patched version at all. The post tells readers to trust the release notes and read the advisory directly.What could not be verified
https://www.keycloak.org/docs/latest/release_notes/index.htmlstops at 26.7.0 and does not cover this release; the upgrading guide does. Noted in the post.Sources
repos/keycloak/keycloak—releases,git/matching-refs/tags/26.*,commits?sha=<tag>, and code search fororg.apache.directory.api/embedded-ldapDraft — not for merge until the test-scope argument above has been checked by someone who knows the LDAP federation code.
Note on this revision
This branch already carried an earlier draft of the article. This revision keeps that history and changes three things: