Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
GitHound — BloodHound OpenGraph collector para GitHub que mapeia a estrutura da organização, permissões e caminhos de ataque entre nuvens em um grafo navegável para auditorias de segurança e resposta a incidentes. | Kitploit
Ferramentas/GitHubGitHub/specterops/githound
ReconhecimentoAnálise de VulnerabilidadesColeta de InformaçõesTestes de PenetraçãoSegurança na NuvemGerenciamento de Identidade e Acesso (IAM)Segurança da Cadeia de Suprimentos
GitHubspecterops/githound

GitHound

BloodHound OpenGraph collector para GitHub que mapeia a estrutura da organização, permissões e caminhos de ataque entre nuvens em um grafo navegável para auditorias de segurança e resposta a incidentes.

Ver Repositório
1431860há 1 mêsRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

GitHound

GitHound

Visão Geral

GitHound é um coletor OpenGraph do BloodHound para GitHub, projetado para mapear a estrutura e as permissões da sua organização em um grafo navegável de caminhos de ataque. Ele:

  • Modela as Principais Entidades do GitHub

    • GH_Organization: metadados da sua org no GitHub
    • GH_User: contas de usuário individuais na org
    • GH_Team: equipes que agrupam usuários para acesso compartilhado
    • GH_Repository: repositórios dentro da org
    • GH_Branch: branches nomeados em cada repositório
    • GH_OrgRole, GH_TeamRole, GH_RepoRole: funções/permissões nos níveis de org, equipe e repositório
  • Visualize e Analise no BloodHound

    • Auditorias de Acesso: Veja rapidamente quem tem admin/escrita/leitura em repositórios e branches
    • Verificações de Conformidade: Valide o princípio do menor privilégio entre equipes e repositórios
    • Resposta a Incidentes: Trace escalonamentos de privilégio e associações a grupos

Com o GitHound, você obtém um grafo claro e interativo do panorama de permissões do GitHub — perfeito para revisões de segurança, auditorias de conformidade e investigações rápidas de incidentes.

Documentação

Para documentação detalhada, consulte BloodHound Docs - GitHound.

Início Rápido

# 1. Load the collector
. ./githound.ps1

# 2. Create a session with your Personal Access Token
$session = New-GitHubSession -OrganizationName "YourOrgName" -Token (Get-Clipboard)

# 3. Run the collection
Invoke-GitHound -Session $session

# 4. Upload the resulting githound_<orgId>.json file to BloodHound

Se a coleta for interrompida, retome de onde parou:

Invoke-GitHound -Session $session -Resume

Sessões de GitHub App

O GitHound suporta tanto sessões de Personal Access Token quanto sessões de instalação do GitHub App. O fluxo de trabalho existente do GitHub App com escopo de organização permanece inalterado:

. ./githound.ps1

$session = New-GitHubJwtSession `
  -OrganizationName "YourOrgName" `
  -ClientId $clientId `
  -PrivateKeyPath $privateKeyPath `
  -InstallationId $installationId

Invoke-GitHound -Session $session -CollectAll

A mesma função também pode criar sessões com capacidade enterprise:

. ./githound.ps1

$session = New-GitHubJwtSession `
  -EnterpriseName "YourEnterpriseSlug" `
  -ClientId $clientId `
  -PrivateKeyPath $privateKeyPath `
  -InstallationId $installationId `
  -PersonalAccessToken $pat

Sessões com capacidade enterprise mantêm múltiplos contextos de autenticação no GitHound.Session retornado:

  • Headers: os cabeçalhos do token de instalação do GitHub App usados para a coleta normal
  • JwtHeaders: cabeçalhos JWT do GitHub App usados para endpoints de nível de aplicativo, como a enumeração de instalações
  • PatHeaders: cabeçalhos opcionais de Personal Access Token para caminhos de coleta que exigem autenticação por token de usuário

Para enumerar as instalações que pertencem ao GitHub App autenticado:

Get-GitHubAppInstallation -Session $session |
  Select-Object TargetType, InstallationId, Login, Name, SuspendedAt

Análise de Workflow

O parsing de workflow agora está integrado ao Invoke-GitHound quando você usa -CollectAll. O coletor irá:

  • coletar nós brutos GH_Workflow e conteúdos de workflow
  • analisar esses workflows em GH_WorkflowJob e GH_WorkflowStep
  • calcular GH_CanPwnRequest e GH_CanDispatchTo
  • mesclar os resultados na saída consolidada normal githound_<orgId>.json

Para fins de retomada/depuração, o checkpoint intermediário da análise de workflow é gravado como githound_WorkflowAnalysis_<orgId>.json.

Base da Coleta Enterprise

O GitHound agora inclui uma base mínima de coleta enterprise por meio do Git-HoundEnterprise. Esse coletor atualmente cria:

  • GH_Enterprise
  • nós stub leves de GH_Organization para organizações membro
  • arestas GH_Contains da enterprise para suas organizações

A coleta de usuários enterprise por meio do Git-HoundEnterpriseUser adiciona:

  • GH_User
  • arestas GH_HasMember da enterprise para esses usuários

A coleta SAML enterprise por meio do Git-HoundEnterpriseSamlProvider adiciona:

  • GH_SamlIdentityProvider
  • GH_ExternalIdentity
  • GH_HasSamlIdentityProvider da enterprise para o provedor
  • as mesmas arestas de correlação de identidade usadas pelo coletor SAML de organização

Esse caminho exige uma sessão baseada em PAT porque o GitHub expõe o SAML enterprise por meio de enterprise.ownerInfo.

A coleta de equipes enterprise por meio do Git-HoundEnterpriseTeam adiciona:

  • GH_EnterpriseTeam
  • arestas GH_AssignedTo de equipes enterprise para organizações designadas
  • arestas GH_MemberOf de equipes enterprise para nós GH_Team ent: visíveis na org usando correspondência de propriedades
  • funções de members de equipe enterprise e arestas GH_HasRole de usuários para essas funções

A coleta de funções enterprise por meio do Git-HoundEnterpriseRole adiciona:

  • GH_EnterpriseRole
  • arestas GH_Contains da enterprise para essas funções
  • arestas GH_HasRole de usuários e equipes enterprise designados diretamente
  • uma função padrão owners preenchida a partir de enterprise.ownerInfo.admins quando dados administrativos enterprise baseados em PAT estão disponíveis

Por enquanto, as strings brutas de permissão enterprise são preservadas no nó GH_EnterpriseRole em sua propriedade permissions, em vez de serem expandidas em arestas de permissão dedicadas.

A coleta SCIM enterprise atualmente adiciona:

  • SCIM_User
  • SCIM_Group
  • SCIM_Provisioned de SCIM_User para GH_ExternalIdentity
  • SCIM_Provisioned de SCIM_Group para GH_EnterpriseTeam quando o GitHub expõe o group_id da equipe enterprise
  • SCIM_MemberOf de SCIM_User para SCIM_Group

Isso dá ao GitHound uma ponte agnóstica de provedor do esquema SCIM compartilhado para o modelo nativo de identidade e equipe enterprise do GitHub.

Quando um GH_SamlIdentityProvider coletado identifica o IdP upstream, o GitHound também pode adicionar arestas de correlação SCIM cientes do provedor dentro da saída sidecar SCIM:

  • Okta_User -> SCIM_User
    • correspondidos por Okta_User.id = SCIM_User.externalId
  • Okta_Group -> SCIM_Group
    • correspondidos por Okta_Group.name = SCIM_Group.externalId
    • e Okta_Group.oktaDomain = GH_SamlIdentityProvider.foreign_environmentid

O GitHound mantém a camada SCIM em sua própria saída sidecar para que esses mapeamentos permaneçam visíveis sem misturar nós nativos SCIM no grafo enterprise principal nativo do GitHub:

  • githound_<entId>.json contém dados enterprise nativos do GitHub
  • githound_scim_<entId>.json contém nós nativos SCIM e arestas de ponte SCIM
  • githound_saml_<entId>.json contém dados de identidade SAML e externa
  • githound_hybrid_<entId>.json contém arestas entre modelos, como SAML_Implements, SAML_HasAccount e GH_SyncedTo
  • githound_saml_<entId>.json também contém a topologia SAML normalizada para o provedor de serviços GitHub, incluindo SAML_TrustsIssuer e SAML_HasAssertionConsumerService

O modelo nativo de provedor de identidade do GitHub permanece intacto nas saídas nativas GitHub/SAML:

  • GH_ExternalIdentity
  • GH_HasExternalIdentity
  • GH_MapsToUser

A camada SAML normalizada em githound_hybrid_<entId>.json agora coloca SAML_HasAccount diretamente em GH_User, ao mesmo tempo que deriva match_values das propriedades voltadas para SAML do GH_ExternalIdentity vinculado, como saml_identity_name_id e saml_identity_username.

Baixar ferramenta