CVE-2021-21423
Exposition eines Versionskontroll-Repositorys an eine unbefugte Kontrollsphäre in projen
- Veröffentlicht
- 06.04.2021
- Aktualisiert
- 03.08.2024
- CNA zuweisen
- GitHub_M
- Beweise beobachtet
- 31.08.2026
Primäres CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:NNiedrig · nächste 30 Tage
- Perzentil
- 71,7 %
- Modelldatum
- 18.10.2026
EPSS ist eine statistische Schätzung, keine Gewissheit oder ein Maß für die Auswirkung. Kombinieren Sie es mit CVSS, KEV-Status, Belichtung und Ihrer Umgebung.
Zusammenfassung
`projen` ist ein Projektgenerierungswerkzeug, das Projektkonfigurationsdateien wie `package.json`, `tsconfig.json`, `.gitignore`, GitHub Workflows, `eslint`, `jest` und mehr aus einer gut typisierten, in JavaScript geschriebenen Definition synthetisiert. Benutzer des `NodeProject`-Projekttyps von projen (einschließlich aller davon abgeleiteten Projekttypen) binden einen `.github/workflows/rebuild-bot.yml`-Workflow ein, der es jedem GitHub-Benutzer ermöglichen kann, die Ausführung von nicht vertrauenswürdigem Code im Kontext des „main“-Repositorys (im Gegensatz zu dem eines Forks) auszulösen. In einigen Situationen könnte solcher nicht vertrauenswürdiger Code möglicherweise in der Lage sein, Commits an das „main“-Repository durchzuführen. Der Rebuild-Bot-Workflow wird durch Kommentare ausgelöst, die `@projen rebuild` bei Pull-Requests enthalten, um einen Neuaufbau des projen-Projekts auszulösen und den Pull-Request mit den aktualisierten Dateien zu aktualisieren. Dieser Workflow wird durch ein `issue_comment`-Ereignis ausgelöst und führt daher immer mit einem `GITHUB_TOKEN` aus, das zu dem Repository gehört, in das der Pull-Request erstellt wird (dies steht im Gegensatz zu Workflows, die durch `pull_request`-Ereignisse ausgelöst werden, die immer mit einem `GITHUB_TOKEN` ausgeführt werden, das zu dem Repository gehört, aus dem der Pull-Request erstellt wird). Repositorys, die keinen Branch-Schutz für ihren Standard-Branch (typischerweise `main` oder `master`) konfiguriert haben, könnten es einem nicht vertrauenswürdigen Benutzer möglicherweise ermöglichen, Zugriff auf im Repository konfigurierte Geheimnisse (wie NPM-Tokens usw.) zu erhalten. Branch-Schutz verhindert diese Eskalation, da das verwaltete `GITHUB_TOKEN` nicht in der Lage wäre, den Inhalt eines geschützten Branches zu ändern, und betroffene Workflows müssen auf dem Standard-Branch definiert sein.
Quellen
Autorisiertes Sicherheitsforschungslabor, das CVE-2021-21423 (GHSA-gg2g-m5wc-vccq) reproduziert: projen rebuild-bot pwn request über issue_comment
Verantwortungsvoller Umgang
Verwenden Sie Schwachstelleninformationen nur auf Systemen, die Sie besitzen oder zu deren Testen Sie berechtigt sind. Kitploit verlinkt auf öffentliche Forschungsmetadaten und speichert keinen Exploit-Code oder bösartige Payloads.