BloodHound expands capabilities to Okta and GitHub: mapping identity attack paths outside Microsoft

In many organizations, the “domain” is no longer the center of gravity. Identity has fragmented: Okta centralizes access, GitHub concentrates automation credentials and change permissions, and Microsoft remains critical but is no longer the only place where impact materializes. In that context, BloodHound’s expansion to cover Okta and GitHub points to a very specific operational problem: discovering and prioritizing attack paths when the adversary does not need to move “within” a network, but rather between identities and trust relationships.

This shift is not cosmetic. For a security team, moving from “auditing configurations” to “seeing attack paths” means discussing with product and platform in terms of chained risk (what combination of accesses leads to what capability), not isolated findings. And when the real environment mixes SSO, repos, and automation, that cross-domain visibility is often the factor that unlocks impactful remediations.

What changes when BloodHound looks at Okta and GitHub at the same time

Traditionally, many hardening programs treated Okta as “the door” and GitHub as a “development tool.” The problem is that, in real incidents, the door and the tool become the same path: an Okta session, an app assignment, a GitHub team, a token or a workflow, and from there to high-impact actions (code changes, secret exfiltration, artifact publishing, or pipeline modification).

BloodHound’s expansion of capabilities into Okta and GitHub makes it possible to model those relationships as an attack graph: not only who has access to what, but what combinations of permissions and links enable a jump. In an enterprise, this lands as operable questions: “If they compromise this user, what is the worst that can happen in GitHub?” or “Which Okta group is opening access to critical repos without anyone having made it explicit?”.

A practical effect is that the cost of prioritization goes down. Instead of opening dozens of tickets for “improvable” configurations, you can focus on paths with demonstrable impact: for example, a chain that ends in the ability to modify workflows in sensitive repositories or to administer organizations/teams that control broad permissions. That usually reduces friction with engineering because the conversation stops being “compliance” and becomes a “concrete path to an incident.”

Realistic abuse scenarios: from SSO in Okta to effective control in GitHub

Typical abuse does not start with “global admin.” It starts with enough access to plug into the ecosystem: a user with weakened MFA, a persistent session, or an overly broad Okta group assigned to the GitHub application. When that assignment translates into membership in teams with write or admin permissions, the attacker does not need to exploit anything sophisticated: they operate with legitimate permissions.

In GitHub, the ability to “cause damage” is not always obvious to non-specialists. An attacker with write access to a repository that feeds pipelines can introduce subtle changes, modify workflows, or leverage Actions secrets if the configuration allows it. Even if the company has PR reviews, there are paths where effective control comes through other avenues: infrastructure repos, template repos, repos where reusable actions are defined, or teams with permission administration over other repos.

  • Okta app assignments that translate into operational privilege

It is common for the IAM team to assign GitHub to “department” groups for convenience. The real result is that access control to critical repos is indirectly governed by HR dynamics (onboarding/moves) and not by technical criticality. When a graph shows that “member of X group” implies “maintainer of Y repos,” a single point of failure appears that was previously perceived as normal.

  • GitHub permissions that allow altering the supply chain

In many companies, the biggest impact is not “seeing code,” but “changing what gets deployed.” If a team can touch workflows, shared actions, or deployment configuration repos, it can introduce a minimal change with maximal effect. Path visualization helps identify those nodes (repos/teams) that function as risk multipliers and that require stricter controls.

Early signals that should trigger an attack path review

When an organization operates at scale, symptoms appear before the incident, but they get lost among tools. A typical example: invitations/onboarding into GitHub teams increase or new teams are created “for a project” and then remain with inherited permissions. Another: in Okta, groups with similar names and fuzzy owners proliferate, and assigning the GitHub application becomes a routine without review.

Another frequent signal is staff and contractor turnover. If the company uses Okta as an access broker, but GitHub team management is done “by hand,” drift is inevitable. In internal audits it shows up as “users outside the org” or “orphaned memberships”; in an attack path it shows up as “persistent entry with change capability.” The value of a BloodHound-type approach is turning that mess into prioritized paths.

  • GitHub teams with broad permissions and unclear owners

In practice, teams end up acting like roles. If a team administers repos or controls security settings, it should have explicit ownership, periodic review, and membership criteria. When it does not, the risk is not in an isolated permission but in how easily someone enters and retains that role.

  • Okta groups used as a “bucket” for access to multiple apps

The “wildcard group” pattern simplifies operations, but it is a highway for lateral movement via identity. If GitHub (or other apps) are assigned through that group, any failure in its governance propagates. The attack path stops depending on exploiting a vulnerability: it depends on being in the right group.

How to do it in practice: operating the mapping and turning it into remediation

For the expansion into Okta and GitHub to be useful, the goal is not to “collect data,” but to integrate the graph into the control cycle: access changes, periodic reviews, and gates for critical repos. In an enterprise, this often fails due to a lack of agreements between IAM, platform, and security on who remediates what. The first step is to define the operational perimeter: which GitHub organizations are in scope, which Okta tenants, and which repos/teams are classified as critical.

Then, you have to turn paths into actionable tickets with a clear owner. A useful ticket does not say “reduce privileges,” it says “this Okta group assigns GitHub to 340 users and results in maintainer on these repos; we propose splitting into two groups, limiting to X, and putting ownership on Y.” If it does not land in concrete changes to groups/teams/repos, the graph remains an interesting snapshot.

  • Configure a minimum viable criticality inventory in GitHub

Create a list of “crown jewels” repositories (infra, deployment, shared actions, templates) and map which teams/roles have write/admin permissions. Typical remediation is reducing who can change workflows/shared actions and requiring mandatory reviews on protected branches for those repos, in addition to limiting who can administer repo settings.

  • Review governance of Okta groups linked to GitHub

Identify groups that assign the GitHub app and require: defined owners, membership justification, expiration for temporary access, and a review process. If access to GitHub depends on dynamic attributes (department/title), validate that this logic is not accidentally placing users into privileged teams after an organizational change.

Validating that it “worked” is not only seeing fewer permissions. It is verifying that the path breaks: that there is no longer a path from a low-privilege user (or a broad group) to high-impact capabilities in critical repos. Operationally, that means re-running the analysis after each relevant change and treating it as part of identity hygiene, not as a one-off project.

Recommendations for corporate environments

BloodHound’s expansion into Okta and GitHub is valuable when it is used to surface attack paths that cross SSO and change control, because that is where impact materializes today: legitimate access that chains into the ability to modify code, pipelines, or critical configurations. The highest return usually comes from identifying a few “multiplier” nodes (Okta groups and GitHub teams/repos) and treating them as high-risk assets.

In practice, success depends on governance: clear ownership of groups in Okta, membership criteria and expiration for access, and a realistic classification of critical repos in GitHub with right-sized permissions. When those elements connect to the graph, remediation stops being an endless list and becomes cutting specific paths that, in an incident, would make the difference.


Interested in Cloud Security?

Technical analysis, hands-on labs and real-world cloud security insights.

Privacy policy