identrail: Cross-tenant IDOR in GitHub App connection completion
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
- GitHub Security Advisory GHSA-cp3j-m783-3ph5 github.com
- identrail release v1.0.2 github.com
- Fix commit 835e405 github.com
- OSV entry GHSA-cp3j-m783-3ph5 osv.dev
- Tenable plugin 447867 www.tenable.com
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.
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
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.
