📌 1. 무슨 일이 일어나는가
2026년 6월 30일, Spring Boot 3.5의 OSS(무료 오픈소스) 지원이 종료된다.
같은 날 Spring AI 1.0과 Spring AI 1.1도 함께 EOL에 진입한다. 이 날 이후로는 보안 패치, 버그 수정, 업데이트가 더 이상 제공되지 않는다.
"지원이 끝나도 돌아가는 데 문제없잖아?"라고 생각할 수 있다. 맞다. 코드는 그대로 돌아간다. 문제는 새로운 취약점이 발견됐을 때 패치가 오지 않는다는 것이다.
📌 2. 이론이 아니다 — 지난달 실제로 일어난 일
2026년 3월, Spring AI에서 고위험 CVE 2건이 동시에 공개됐다. 둘 다 CVSS 8점대의 심각한 취약점이다.
CVE-2026-22729 — JSONPath 인젝션 (CVSS 8.6)
Spring AI의 AbstractFilterExpressionConverter에서 발견됐다. 사용자 입력이 JSONPath 쿼리에 이스케이핑 없이 그대로 들어간다.
공격 시나리오:
// 정상적인 필터
metadata.department == "engineering"
// 공격자가 주입한 필터
metadata.department == "" || metadata.accessLevel == "admin"
|| 연산자가 JSONPath의 논리 OR로 해석되면서, 원래 접근할 수 없는 admin 레벨 문서까지 전부 조회된다. 멀티테넌트 격리나 역할 기반 접근 제어를 우회하는 공격이다.
영향 범위: PgVectorStore, OracleVectorStore 등 AbstractFilterExpressionConverter를 상속하는 모든 벡터 스토어. pgvector를 쓰고 있다면 직접 해당된다.
CVE-2026-22730 — SQL 인젝션 (CVSS 8.8)
MariaDBFilterExpressionConverter에서 입력 검증이 누락돼 있었다. 공격자가 임의의 SQL 명령을 실행할 수 있고, 데이터베이스의 기밀성·무결성·가용성 전부가 침해될 수 있다.
현재는 패치된 상태다
Spring AI 1.0.4, 1.1.3에서 두 CVE 모두 수정됐다. 지금 업데이트하면 문제없다.
진짜 문제는 6월 이후다. 이와 비슷한 수준의 CVE가 7월에 발견되면? Spring AI 1.x에는 패치가 오지 않는다. 상위 버전(Spring AI 2.0)에서만 수정된다. EOL 버전을 쓰는 팀은 스스로 코드를 분석하고 직접 패치하거나, 취약점을 안고 가거나, 둘 중 하나를 선택해야 한다.
📌 3. 업그레이드 경로가 꼬여 있다
자연스러운 마이그레이션 경로는 이렇다:
Spring Boot 3.5 + Spring AI 1.x (EOL: 2026.06)
↓
Spring Boot 4 + Spring AI 2.0 (현재 지원 중)
문제는 타이밍이다. Spring AI 2.0은 Spring Boot 4를 타겟으로 하며, 메이저 API 변경을 포함한다. 단순히 버전만 올리는 게 아니라, API 마이그레이션이 필요하다.
Spring Boot 3.5 EOL(6월)과 Spring AI 2.0 정식 출시 사이에 공백이 생길 수 있고, 이 기간에는 안전한 버전 조합이 존재하지 않는 상태가 된다.
📌 4. Spring Boot 3.5 EOL의 파급 범위
Spring Boot 3.5가 EOL이 되면, Boot가 관리하는 전체 의존성 트리가 함께 지원 종료된다.
| Spring Boot 3.5 | 2026년 6월 |
| Spring Framework 6.2 | 2026년 6월 |
| Spring AI 1.0 / 1.1 | 2026년 6월 |
| Spring Security (6.2 기반) | 2026년 6월 |
| Spring Data (6.2 기반) | 2026년 6월 |
Boot 하나가 EOL이면, 그 위에 올라간 Spring Security, Spring Data, Spring AI가 전부 영향을 받는다. 의존성 하나하나가 아니라 생태계 단위로 지원이 끊긴다.
📌 5. 유료 지원이라는 선택지
Spring 팀은 이 상황을 알고 있고, 해법도 제시하고 있다.
Tanzu Spring (VMware 상용 지원): Spring Boot 3.5는 메이저 버전(3.x)의 마지막 마이너이므로, 상용 엔터프라이즈 지원을 통해 최대 5년 추가 지원을 받을 수 있다. 비용이 발생한다.
HeroDevs NES (Never-Ending Support): 서드파티 유료 지원으로, Spring Boot 3.5와 Spring AI 1.x에 대한 보안 패치를 EOL 이후에도 제공한다. 코드 변경 없이 드롭인 교체가 가능하다.
둘 다 기업용 선택지다. 개인 개발자나 소규모 팀에게는 사실상 "Boot 4 + Spring AI 2.0으로 올려라"가 유일한 답이다.
📌 6. 지금 할 수 있는 것
즉시 (지금)
- Spring AI를 1.0.4 또는 1.1.3으로 업데이트해서 CVE-2026-22729, CVE-2026-22730을 패치한다
- 프로젝트의 Spring Boot 버전과 Spring AI 버전을 확인한다
단기 (6월 전까지)
- Spring Boot 4 마이그레이션을 시작한다. javax → jakarta 전환, deprecated API 정리가 핵심이다
- Spring AI 2.0 GitHub 마일스톤을 추적한다. 출시되면 바로 마이그레이션할 준비를 해둔다
- Boot 4에서 기존 코드의 호환성을 테스트한다
중기 (6월 이후)
- Spring AI 2.0이 출시되면 마이그레이션을 실행한다. API 변경이 있으므로 테스트 기간을 확보해야 한다
- Boot 4 + Spring AI 2.0 조합으로 전환을 완료한다
📌 7. 이미 Spring Boot 4를 쓰고 있다면
Spring Boot 4를 이미 채택한 프로젝트라면 Boot 자체의 EOL 문제는 없다. 하지만 Spring AI 부분은 별개다. Spring AI 1.x가 Boot 4에서 동작하더라도, Spring AI 자체의 지원은 6월에 종료된다.
결국 Spring AI 2.0이 나올 때까지는 1.x를 쓸 수밖에 없고, 2.0이 출시되면 API 마이그레이션이 필요하다. 이 부분의 일정 리스크를 프로젝트 계획에 반영해야 한다.
📌 8. 정리
Spring Boot 3.5 EOL은 단순한 버전 업데이트 문제가 아니다. Spring AI를 포함한 전체 Spring 생태계의 지원이 동시에 끊기는 이벤트다.
6월이 지나면 새로운 CVE에 대한 패치가 오지 않는다. 지난달 발견된 CVSS 8.6, 8.8 수준의 취약점이 7월에 발견된다면, EOL 버전에서는 직접 대응해야 한다.
준비할 시간은 약 2개월 남았다.
한 줄 요약 👉 Spring Boot 3.5 + Spring AI 1.x의 무료 보안 패치는 2026년 6월 30일에 끝난다. Boot 4 + Spring AI 2.0 마이그레이션을 지금 시작해야 한다.
'Software > Maker(Spring & Python & node)' 카테고리의 다른 글
| Spring Boot 3.5.x 무료 지원 종료 후 유료 지원의 모든 것 — 가격, 기간, 패치 방식 비교 (0) | 2026.04.13 |
|---|---|
| 2026년 전자정부프레임워크의 방향과 JSP의 운명: SI 개발자가 알아야 할 현실 (0) | 2026.04.10 |
| 분산 시스템 기반 대규모 트래픽 처리(WIL 5) (0) | 2026.04.10 |
| 백엔드 API의 응답이 느려 사용성에 악영향이 발생하는 상황에서 어떻게 대응하실 건가요? (0) | 2026.04.10 |
| AI 연구실: Gemma 4 31B 모델을 3070 환경에서 돌리는 법 (0) | 2026.04.10 |
