IT SBIT Services
Schneeberger
DEEN
CVE tracker

identrail: Cross-tenant IDOR in GitHub App connection completion

CVE-2026-59185High 8.5

← All vulnerabilities

Summary

identrail, a machine identity security platform for AWS, GitHub/OIDC and Kubernetes, does not verify that a GitHub App installation ID supplied during the connection flow belongs to the caller's workspace. An authenticated tenant can bind another organization's installation ID and then read that organization's private repository inventory and content, or trigger posture scans, if identrail's GitHub App is installed there. The installation IDs are not secret, and the default-off V2 connector path has the same gap.

Affected

  • identrail versions before 1.0.2
  • The vendor release notes name v1.0.0 and v1.0.1 as vulnerable
  • Affected endpoint: POST /v1/workspaces/:workspace_id/projects/:project_id/github/connect/complete (enabled by default), and the default-off V2 connector completion path

Fixed in

  • Upgrade to identrail 1.0.2 or later

Workaround

  • Unknown. The vendor documents no workaround.
  • Interim option (own recommendation, not vendor-confirmed): restrict the GitHub connect flow to trusted users until the upgrade is done.

Exploitation

  • CNA and vendor data: no known exploits are available.
  • Not listed as known exploited (KEV).
  • CISA SSVC: exploitation none, not automatable, partial technical impact.

Our recommendation

  • Check whether identrail is in use and which version runs.
  • If the version is below 1.0.2, upgrade to 1.0.2 or later.
  • Configure the GitHub App for user authorization during installation, as described in the vendor operator notes, so the fix is effective.
  • Review which users hold tenant accounts and restrict the GitHub connect flow to trusted users until the upgrade is done.
  • If you use a hosted service, ask the vendor whether it is patched.
  • Review audit logs for unexpected GitHub installation bindings.

Public exploits

PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.

Research sources

Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 1 Nov 2026, 09:54.

Original description (NVD)

identrail is a machine identity security platform for AWS, GitHub/OIDC, and Kubernetes. Prior to 1.0.2, the default-on `POST /v1/workspaces/:workspace_id/projects/:project_id/github/connect/complete` endpoint in `internal/api/router.go` accepts `installation_id` from the request body or `X-GitHub-Installation-ID` header without verifying the installation belongs to the caller's workspace. `CompleteGitHubConnection` in `internal/api/github_connect.go` rigorously binds `state` to the caller's tenant, workspace, and project, but checks only that the installation ID is positive before persisting it as the caller's connection. `ListInstallationRepositories` in `internal/connectors/github/repositories.go` invokes token creation through `internal/connectors/github/app.go` and `POST /app/installations/{installationId}/access_tokens`, using the application's JWT. An authenticated tenant who starts a legitimate connection can supply another customer's non-secret installation ID to read the victim organization's private repository inventory, content, and metadata or drive posture scans, provided identrail's GitHub App is installed there. The default-off V2 `CompleteGitHubConnector` path shares the installation-ownership gap and additionally matches pending `state` without rechecking caller scope. This issue is fixed in version 1.0.2.

NVD references (3)

Sources

The tracker combines official, freely usable data sources – updated continuously:

This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.

Affected? We can help.

We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.