Skip to content

Latest commit

 

History

History
30 lines (21 loc) · 1.54 KB

File metadata and controls

30 lines (21 loc) · 1.54 KB

GL_RenovateInviteAndTakeover

Edge Schema

General Information

The traversable GL_RenovateInviteAndTakeover edge models the Renovate invite-and-takeover attack path. It is created by the enrichment phase when a vulnerable, self-hosted Renovate bot instance is detected on the GitLab instance.

Attack scenario: A Renovate bot configured with GitLab autodiscovery will automatically process any project that has a valid Renovate configuration file and has invited the Renovate bot user as a member. An authenticated instance member can:

  1. Create a new project (via GL_CanCreateProject)
  2. Add a renovate.json that triggers the self-hosted Renovate bot
  3. Invite the Renovate bot user as a member of the project
  4. Wait for Renovate to accept the invitation, process the configuration and update the project's dependencies
  5. Exifiltrate the Renovate bot's access token and impersonate its privilege to access other projects it manages

The edge source is the Member instance role (representing any authenticated user) and the destination is the detected Renovate bot user. The presence of this edge indicates the instance is vulnerable to this escalation path.

graph LR
    member("fa:fa-user-tie GL_InstanceRole Member")
    attacker("fa:fa-user GL_User attacker")
    renovate("fa:fa-robot GL_User renovate-bot")

    attacker -->|GL_HasRole| member
    member -->|GL_RenovateInviteAndTakeover| renovate
Loading