
Go 기반 자동화 도구로, 취약한 Next.js 버전(CVE-2025-66478)이 포함된 GitHub 리포지토리를 스캔하고 자동으로 특정 보안 패치가 포함된 풀 리퀘스트를 생성합니다.
Go로 작성된 자동화 도구로, GitHub 저장소를 스캔하고 취약한 Next.js 버전(CVE-2025-66478)을 감지하여 특정 보안 패치로 Pull Request를 자동 생성합니다.
환경에 다음이 설치 및 구성되어 있는지 확인하세요:
gh)도구를 실행하기 전에 GitHub CLI에 인증되어 있어야 합니다:
gh auth login
# Select "SSH" as git protocol and "GitHub.com"
이 저장소를 클론하세요 (main.go 스크립트를 저장한 위치에서):
git clone <your-tools-repo-url>
cd auto-patcher
Go 종속성 설치:
지능형 버전 비교를 위해 semver 라이브러리가 필요합니다.
go get github.com/Masterminds/semver/v3
go mod tidy
현재 설정은 main.go 파일의 상수에서 직접 수행됩니다. 실행 전에 다음 줄을 검토하세요:
main 함수에서 검색을 특정 조직이나 사용자로 제한하려면 gh 명령어를 편집하세요:
// 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"
)
간단히 메인 스크립트를 실행하세요:
go run main.go
gh repo list를 사용하여 저장소를 나열합니다./tmp/repo-fixer-*)에 클론합니다.package.json 파일을 재귀적으로 검색합니다.next 버전을 비교합니다.package.json을 수정합니다.스크립트는 호환성을 유지하기 위해 엄격한 규칙을 적용합니다(최신으로 업데이트하지 않고, 마이너 버전의 안전한 패치로 업데이트합니다):
| Detected Version | Applied Patch |
|---|---|
전체 목록은 main.go의 nextJsRules를 확인하세요.
15.0.x^15.0.5 |
15.1.x | ^15.1.9 |
15.2.x | ^15.2.6 |
| ... | ... |