- CEO 대시보드 컴포넌트 추가 - AuthenticatedLayout 개선 - 각 모듈 actions.ts 에러 핸들링 개선 - API fetch-wrapper, refresh-token 로직 개선 - ReceivablesStatus 컴포넌트 업데이트 - globals.css 스타일 업데이트 - 기타 다수 컴포넌트 수정 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
3.6 KiB
3.6 KiB
Next.js 보안 업데이트 및 마이그레이션 계획
현재 상태 (2026-01-07)
적용된 버전
| 패키지 | 이전 버전 | 현재 버전 | 상태 |
|---|---|---|---|
| next | 15.5.7 | 15.5.9 | ✅ 보안 패치 완료 |
| react | 19.2.1 | 19.2.3 | ✅ 보안 패치 완료 |
| react-dom | 19.2.1 | 19.2.3 | ✅ 보안 패치 완료 |
해결된 취약점
| CVE | 심각도 | 내용 | 상태 |
|---|---|---|---|
| CVE-2025-55184 | HIGH (7.5) | DoS - 무한 루프로 서버 중단 | ✅ 해결 |
| CVE-2025-55183 | MEDIUM (5.3) | Server Functions 소스코드 노출 | ✅ 해결 |
| CVE-2025-67779 | HIGH | CVE-2025-55184 완전 수정 | ✅ 해결 |
남은 취약점
| 패키지 | 심각도 | 내용 | 우선순위 |
|---|---|---|---|
| js-yaml | MODERATE | Prototype Pollution (간접 의존성) | 낮음 |
Next.js 16 마이그레이션 계획
예상 작업량
- 예상 소요 시간: 4-8시간
- 영향 파일 수: 약 40개
Breaking Changes 영향 분석
1. middleware.ts → proxy.ts 변경 (중간 난이도)
영향 파일: src/middleware.ts (316줄)
작업 내용:
- 파일명 변경: middleware.ts → proxy.ts
- 함수명 변경: export function middleware → export function proxy
- next-intl 호환: 이미 지원됨
2. Async Request APIs (가장 큰 작업)
영향 파일: 36개
수정 필요 위치: 52곳
변경 전 (현재 패턴):
const eventId = params.id as string;
const mode = searchParams.get('mode');
변경 후 (Next.js 16 패턴):
const { id } = await params;
const searchParamsResolved = await searchParams;
const mode = searchParamsResolved.get('mode');
영향받는 주요 영역:
| 영역 | 파일 수 |
|---|---|
| /accounting/* | 10개 |
| /hr/* | 6개 |
| /sales/* | 8개 |
| /boards/* | 6개 |
| 기타 | 6개 |
3. Turbopack 기본값 (영향 없음)
next.config.ts에 이미turbopack: {}설정 있음- 커스텀 Webpack 설정 없음 → 호환 OK
4. cookies() 호출 (이미 호환)
src/lib/api/fetch-wrapper.ts에서await cookies()사용 중- 추가 수정 불필요
마이그레이션 절차
# 1. feature 브랜치 생성
git checkout -b feature/nextjs-16-migration
# 2. 자동 마이그레이션 도구 실행
npx @next/codemod@canary upgrade latest
# 3. 수동 확인 및 수정
# - middleware.ts → proxy.ts 변경
# - params/searchParams async 변환 확인
# 4. 빌드 테스트
npm run build
# 5. 로컬 테스트
npm run dev
# 6. PR 생성 및 리뷰
마이그레이션 체크리스트
- feature 브랜치 생성
- codemod 실행
- middleware.ts → proxy.ts 변경
- 함수명 middleware → proxy 변경
- params/searchParams async 변환 (36개 파일)
- 빌드 테스트 통과
- 주요 페이지 동작 테스트
- PR 생성 및 머지
참고 자료
공식 문서
보안 권고
변경 이력
| 날짜 | 작업 | 담당 |
|---|---|---|
| 2026-01-07 | 보안 패치 적용 (15.5.9, 19.2.3) | Claude |
| - | Next.js 16 마이그레이션 | 예정 |