
Automatisierungstool in Go, das GitHub-Repositorys scannt, verwundbare Next.js-Versionen (CVE-2025-66478) erkennt und automatisch Pull Requests mit dem spezifischen Sicherheitspatch erstellt.
Stelle sicher, dass Folgendes in deiner Umgebung installiert und konfiguriert ist:
gh)Bevor du das Tool ausführst, musst du in der GitHub CLI authentifiziert sein:
gh auth login
# Select "SSH" as git protocol and "GitHub.com"
Klone dieses Repository (dorthin, wo du das main.go-Skript gespeichert hast):
git clone <your-tools-repo-url>
cd auto-patcher
Installiere Go-Abhängigkeiten:
Wir benötigen die Bibliothek semver für einen intelligenten Versionsvergleich.
go get github.com/Masterminds/semver/v3
go mod tidy
Derzeit erfolgt die Konfiguration direkt in den Konstanten der Datei main.go. Überprüfe diese Zeilen vor der Ausführung:
main-Funktion den gh-Befehl, wenn du die Suche auf eine bestimmte Organisation oder einen bestimmten Benutzer einschränken möchtest:
// main.go
cmd := exec.Command("gh", "repo", "list", "YOUR_ORG_OR_USER", "--limit", "100", ...)
const (
TargetBranch = "fix/security-nextjs-cve"
PRTitle = "fix(deps): upgrade next.js to patch CVE-2025-66478"
)
Führe einfach das Hauptskript aus:
go run main.go
gh repo list auf./tmp/repo-fixer-*).package.json-Dateien.next-Version mit der Tabelle der Sicherheitsregeln (SemVer).package.json mit der mindestens erforderlichen sicheren Version.Das Skript wendet strenge Regeln an, um Kompatibilitätsbrüche zu vermeiden (es aktualisiert nicht auf die neueste Version, sondern auf den sicheren Patch deiner Nebenversion):
| Erkannte Version | Angewandter Patch |
|---|---|
Die vollständige Liste findest du unter nextJsRules in main.go.
15.0.x^15.0.5 |
15.1.x | ^15.1.9 |
15.2.x | ^15.2.6 |
| ... | ... |