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
- 70,5 %
- Modelldatum
- 21.09.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
1Verantwortungsvoller 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.