Collector Compatibility for Case-Sensitive Object IDs
BloodHound introduced case-sensitive OpenGraph object IDs (a SpecterOps-managed feature) in the 2026-07-29 release. This feature is not enabled by default.This release updates collector compatibility as BloodHound moves property-value normalization out of ingest and into collectors. BloodHound will ingest object IDs, names, and other properties exactly as collector output supplies them.This change lets BloodHound preserve case-sensitive OpenGraph object IDs while keeping existing Active Directory, Microsoft Entra ID, Okta, and Jamf graph identities stable. AzureHound and the OpenHound Okta and Jamf collectors now uppercase the object ID and related identifier values they own before output. GitHub object IDs remain case-sensitive to prevent collisions between distinct GitHub objects.These updates prepare BloodHound to enable case-sensitive OpenGraph object IDs by default in a future release.See the following table for a summary of collector compatibility changes:Extension Management Enabled by Default
The OpenGraph Management page is now enabled by default so you can manage OpenGraph extensions without enabling the feature on the Early Access Features page first.OpenGraph Markdown Validation
Upload extension definition schemas with more confidence that custom Markdown content can render safely in BloodHound.BloodHound now validates Markdown used for custom Entity Panel sections and BloodHound Enterprise remediation guidance when you upload an extension definition schema. Supported Markdown continues to work, and BloodHound rejects uploads that include unsafe HTML or links before the content appears in the product.Kind Metadata APIs
Retrieve node and relationship kind metadata by graph-assigned kind ID.BloodHound now exposes experimental APIs for looking up node kind and relationship kind details.Use these endpoints to retrieve kind names, descriptions, extension metadata, display properties, and markdown-backed Entity Panel information for OpenGraph automation and integrations.PostgreSQL Graph Storage Optimization
Get more reliable PostgreSQL graph database performance with storage optimization.BloodHound now runs graph storage optimization automatically after key ingest and analysis workflows and records timing details in the logs. These changes help large PostgreSQL-backed environments stay responsive as graph data changes over time.Faster Graph Data Deletion
Delete graph data from PostgreSQL-backed environments more quickly with Database Management.BloodHound now uses optimized deletion paths for full graph wipes and targeted deletions by source kind or relationship type. These changes reduce the time it takes to delete large datasets.Findings Table Beta
Known issue: Filtering environments with special characters in the Findings Table may not work as expected. This issue affects customers participating in the AWS beta.
This feature is available under beta access. Enable on the Administration > Early Access Features page to access it.
GitHub Self-Hosted Runner Modeling
Added collection and graph modeling for enterprise and organization-scoped GitHub Actions self-hosted runners and runner groups.New relationships expose membership, delegation, inheritance, organization visibility, and repository access.Fixed Issues
Cypher
- Resolved an issue where backtick-escaped Cypher property accessors did not work correctly for property names that included special characters.
- Resolved an issue where directed multi-hop pattern predicates could lose row correlation on PostgreSQL graph databases when an outer-bound node appeared after the root traversal step.
Database Management
- Resolved an issue where selecting All graph data on the Database Management page did not call the correct full-graph deletion path.
OpenGraph
- Resolved an issue where OpenGraph nodes with a
refproperty could crash the Entity Panel. - Resolved an issue where findings for OpenGraph objects were not correctly displaying schema-defined object icons.
UI
- Resolved an issue where the table layout on the Explore page could become difficult to read or scroll correctly at smaller window sizes.
- Resolved an issue where hovering over environment or zone selector options could invert inline icon colors.
- Resolved an issue where the Download Collectors page could show redundant scrollbars.
- Resolved an issue where the table on the Manage Clients page in BloodHound Enterprise could show a horizontal scrollbar when column content became too wide.
Zone Builder
- Resolved an issue where Cypher-based rules could fail to tag all expected objects.
- Resolved an issue where the Certification page did not preserve
environmentIdin the URL when navigating back from another Zone Builder page. - Improved the Privilege Zone History display for non-system records with empty notes.
Fixed Issues
GitHub
-
Resolved an issue where GitHub App authentication compatibility could be limited.
The collector now accepts either
client_idorapp_idas the installation JWT issuer, preferringclient_idwhen available while continuing to support older GitHub Enterprise Server responses.
Okta
- Resolved an issue where SAML issuer identifiers could be inaccurate. BloodHound now prefers runtime metadata over configured issuer templates, no longer emits unresolved Okta expressions as issuer identifiers, and retains diagnostics when issuer evidence is missing, unresolved, or superseded.
- Resolved an issue where long-running Okta collections using OAuth application credentials could fail after bearer tokens expired. Access tokens now refresh before expiration, eligible authentication failures retry once, and transient refresh failures can reuse a still-valid token. SSWS authentication is unchanged.
-
Resolved an issue where Okta org-to-org group synchronization relationships could fail to resolve.
Group names now match using normalized uppercase values, and application group matching uses the correct
okta_domainproperty. -
Resolved an issue where relationships between Active Directory computers and their Okta AD Agents could be missing.
Okta_HostsAgentnow matches the complete computersAMAccountNameand AD domain, preserving valid hostname prefixes and correctly targeting Computer nodes.