미션 크리티컬 시스템을 위한 사전 예방적 보안: 글로벌 기업이 Spring 인프라를 보호한 방법

CRIF 사례 연구

고객 프로필

금융 서비스 및 정보 기술 분야에서 사업을 영위하는 한 주요 기업은 ‘ Spring ’ 프레임워크와 ‘ Spring Boot’를 기반으로 구축된 방대한 규모의 자바 기반 애플리케이션을 운영하고 있습니다. 민감한 데이터를 취급하며 전 세계 수백만 명의 고객에게 서비스를 제공하는 글로벌 기업으로서, 견고한 보안 체계를 유지하는 것은 단순한 기술적 요구 사항에 그치지 않고, 비즈니스 운영과 규제 준수의 근간을 이루는 요소입니다.

이 조직은 보안 취약점이 규제 당국의 제재, 고객 신뢰 상실, 잠재적인 사업 중단 등 심각한 결과를 초래할 수 있는 엄격한 규제가 적용되는 환경에서 운영되고 있습니다. 이 조직의 기술 인프라에는 엄격한 보안 기준을 충족하면서 지속적인 가용성을 유지해야 하는 수많은 미션 크리티컬 애플리케이션이 포함되어 있습니다.

“우리 업계에서 보안은 타협의 여지가 없습니다. 프레임워크의 지원이 종료될 때, 단순히 그 위험을 감수할 수는 없습니다. 운영을 방해하지 않으면서도 보안 태세를 유지할 수 있는 솔루션이 필요합니다.” — 글로벌 금융 서비스 기업

과제: 수명 주기 종료 단계의 프레임워크 보안

이 조직은 많은 기업이 직면하는 중대한 과제에 직면해 있었습니다. 바로 지원 종료(End-of-Life) 상태에 이른 프레임워크를 기반으로 구축된 애플리케이션의 보안을 유지하는 문제였습니다. 구체적으로, 더 이상 공식 보안 업데이트를 제공받지 못하는 ‘ Spring ’ 프레임워크와 ‘ Spring ’ 부트 애플리케이션에 대한 지속적인 보안 패치가 필요했습니다.

이 과제는 다음과 같은 이유로 특히 복잡했습니다:

1. 핵심 애플리케이션 종속성

이 회사의 핵심 비즈니스 애플리케이션은 운영에 없어서는 안 될 요소가 된 특정 버전의 ‘ Spring Framework’와 ‘ Spring Boot’를 기반으로 구축되었습니다. 이러한 애플리케이션은 민감한 재무 데이터와 고객 정보를 처리했기 때문에 보안 취약점은 절대 용납될 수 없는 문제였습니다.

2. 규제 준수 요건

금융 서비스 분야에서 사업을 영위하는 조직으로서, 이 회사는 알려진 모든 보안 취약점을 지정된 기한 내에 해결하도록 의무화하는 엄격한 규제 요건을 준수해야 했습니다.

3. 사업 연속성상의 제약 사항

해당 애플리케이션은 운영에 있어 그토록 핵심적인 역할을 담당하고 있었기 때문에, 마이그레이션 과정에서 상당한 가동 중단이나 장애가 발생할 경우 고객 서비스와 사업 운영에 차질을 빚을 수 있었습니다.

“지원 종료된 라이브러리에 대한 보안 패치가 필요했습니다. 이 문제는 단순히 기술적인 문제뿐만 아니라, 핵심 시스템이 계속 가동되는 동안 규제 준수 사항을 유지하고 고객의 신뢰를 지켜야 하는 과제이기도 했습니다.” — 글로벌 금융 서비스 기업

딜레마: 이전 대 계속 운영

이 조직은 기업 기술 분야에서 흔히 겪는 딜레마에 직면하게 되었으며, 몇 가지 어려운 선택지가 놓여 있었습니다:

옵션 1: 프레임워크 즉시 마이그레이션

  • 일정: 전체 마이그레이션에 12~18개월 소요
  • 비용: 수백만 달러에 달하는 개발 자원 및 잠재적인 사업 차질
  • 위험: 새로운 버그 및 회귀 문제가 발생할 가능성이 높음

옵션 2: 보안 취약점 수용

  • 일정: 미정
  • 비용: 잠재적인 규제 당국의 과태료 및 보안 침해로 인한 결과
  • 위험: 용납할 수 없는 보안 및 규정 준수 위험

옵션 3: 임시 해결책 적용

  • 일정: 6~8개월의 개발 기간
  • 비용: 상당한 지속적인 유지보수 부담
  • 위험: 불완전한 보호 및 기술적 복잡성 증가

이 옵션들 중 어느 것도 보안을 유지하면서 운영의 안정성을 확보하려는 그들의 사업 목표와 부합하지 않았다.

“여러 가지 방안을 검토해 보았지만, 모두 상당한 사업적 위험을 수반하거나 전략적 이니셔티브에 할당된 자원을 크게 전용해야 하는 문제점이 있었습니다. 핵심 운영에 차질을 빚지 않으면서도 당면한 보안 요구 사항을 해결할 수 있는 솔루션이 필요했습니다.” — 글로벌 금융 서비스 기업

해결책: HeroDevs의 끝없는 지원 Spring

신중한 검토 끝에, 해당 조직은 ‘ Spring ’ 프레임워크와 ‘ Spring ’ 부트에 대해 HeroDevs의 ‘Never-Ending Support’ 이니셔티브를 채택했습니다. 이 솔루션은 애플리케이션 재작성이나 대규모 아키텍처 변경 없이도 수명이 종료된 프레임워크에 대한 지속적인 보안 패치를 제공함으로써, 조직이 필요로 했던 요구 사항을 정확히 충족시켰습니다.

HeroDevs 솔루션은 다음과 같은 몇 가지 중요한 장점을 제공했습니다:

1. 지속적인 보안 패치 적용

HeroDevs의 ‘끝없는 지원(Never-Ending Support)’을 통해 Spring 및 Spring Boot에 대한 보안 패치가 지속적으로 제공되며, 공식 지원이 종료된 후에도 취약점이 발견되는 대로 이를 해결해 드립니다.

2. 드롭인 호환성

패치된 버전은 기존 프레임워크와 완벽한 API 호환성을 유지하므로, 애플리케이션은 코드를 수정하지 않고도 보안 개선의 이점을 누릴 수 있습니다.

3. 규제 준수 지원

이 솔루션은 알려진 모든 취약점을 신속하게 해결함으로써 조직이 보안 규정을 준수할 수 있도록 지원합니다.

4. 사업 연속성

애플리케이션은 지속적인 보안 보호를 받으면서도 중단 없이 계속 작동할 수 있습니다.

“HeroDevs는 우리가 필요로 했던 핵심 서비스를 제공해 주었습니다. 바로 Spring 및 SpringBoot에 대한 보안 패치의 지속적인 배포를 보장해 준 것입니다. 덕분에 우리는 애플리케이션의 원활한 운영을 유지하면서 보안 태세를 공고히 할 수 있었습니다.” — 글로벌 금융 서비스 기업

구현: 전 과정에 걸친 전문가 지원

이 구현 과정은 HeroDevs의 포괄적인 고객 성공 전략에 힘입어 진행되었으며, 이는 해당 조직의 기술 팀에 큰 도움이 되었습니다.

사전 판매 단계 지원

평가 단계에서 HeroDevs는 해당 기관이 ‘Never-Ending Support’가 기존 인프라와 어떻게 통합될지, 그리고 구체적인 보안 요구 사항을 어떻게 충족시킬 수 있는지 이해할 수 있도록 상세한 기술적 지침을 제공했습니다.

설정 단계 협업

구현 단계에서는 보안이 강화된 프레임워크 버전이 원활하게 통합될 수 있도록 HeroDevs의 기술 전문가들과 해당 조직의 개발 팀이 긴밀히 협력했습니다.

기술적 구현

이 구현 과정에서는 HeroDevs가 보안 조치를 적용한 버전의 ‘ Spring ’ 프레임워크와 ‘ Spring ’ 부트를 사용하도록 빌드 구성을 업데이트했습니다. 다음은 이 구현 방식에 대한 간략한 예시입니다:

<!-- Before: pom.xml with end-of-life Spring Boot version -->
<parent>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-parent</artifactId>
   <version>2.3.12.RELEASE</version>
</parent>

<dependencies>
   <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
   </dependency>
   <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-security</artifactId>
   </dependency>
</dependencies>

<!-- After: Using HeroDevs NES secured versions -->
<parent>
   <groupId>com.herodevs.nes</groupId>
   <artifactId>spring-boot-starter-parent</artifactId>
   <version>2.3.12.RELEASE-nes.1</version>
</parent>

<dependencies>
   <dependency>
       <groupId>com.herodevs.nes</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
   </dependency>
   <dependency>
       <groupId>com.herodevs.nes</groupId>
       <artifactId>spring-boot-starter-security</artifactId>
   </dependency>
</dependencies>

// Application code remains unchanged - now secured by HeroDevs patches
@SpringBootApplication
public class FinancialServicesApplication {
   public static void main(String[] args) {
       SpringApplication.run(FinancialServicesApplication.class, args);
   }
}


“우리는 사전 판매 단계와 구축 단계 모두에서 HeroDevs로부터 탁월하고 지속적인 지원을 받았습니다. HeroDevs 팀은 우리의 요구 사항을 정확히 파악하고, 솔루션을 원활하게 구현할 수 있도록 도와주었습니다.” — 글로벌 금융 서비스 기업

초기 결과 및 향후 전망

이 사례 연구를 작성할 당시 해당 조직은 HeroDevs의 ‘Never-Ending Support’ 서비스를 불과 몇 달간만 이용해 왔음에도 불구하고, 이미 다음과 같은 여러 가지 긍정적인 성과를 확인했습니다:

1. 보안 태세의 즉각적인 개선

이번 패치 적용을 통해 ‘ Spring ’ 프레임워크와 ‘ Spring ’ 부트 애플리케이션의 알려진 취약점에 대해 즉각적인 보호 조치가 이루어졌으며, 이로써 가장 시급한 보안 문제가 해결되었습니다.

2. 규정 준수 신뢰도

지속적인 보안 패치 적용이 보장됨에 따라, 해당 조직은 취약점 관리에 관한 규제 요건을 충족할 수 있다는 확신을 갖게 되었습니다.

3. 운영 안정성

이들의 애플리케이션은 중단 없이 계속 가동되어, 보안이 강화되는 동안에도 비즈니스 연속성을 유지했습니다.

4. 전략적 계획의 유연성

당면한 보안 요구 사항을 해결함으로써, 해당 조직은 보안 문제에 대응하기 위해 어쩔 수 없이 업그레이드를 진행해야 하는 상황 대신, 자체 일정에 맞춰 프레임워크 마이그레이션을 계획할 수 있는 유연성을 확보하게 되었습니다.

“이 지원 서비스를 시작한 지 불과 몇 달밖에 되지 않아 아직 포괄적인 지표를 수집하지는 못했지만, 보안 신뢰도와 운영 안정성 측면에서 이미 그 가치를 확인하고 있습니다. 상황이 허락하는 대로 HeroDevs가 제공하는 지원 수준을 검토할 예정이지만, 초기 반응은 매우 긍정적입니다.” — 글로벌 금융 서비스 기업

이 문제가 중요한 이유: 프레임워크 지원 종료의 숨겨진 비용

기업 보안의 딜레마

이 조직의 사례는 전 세계 기업들이 직면한 중대한 과제를 여실히 보여주는데, 바로 프레임워크의 지원 종료 시점에 운영 안정성을 유지함과 동시에 보안 취약점을 해결해야 하는 양자 간의 갈등이다.

“모든 대규모 조직은 이러한 과제에 정기적으로 직면합니다,”라고 이 회사는 설명합니다. “프레임워크를 기반으로 구축된 비즈니스 핵심 애플리케이션에 갑자기 보안 업데이트가 제공되지 않게 되는 경우가 있습니다. 서둘러 마이그레이션하거나 위험을 감수하는 등 기존의 선택지들은 모두 심각한 비즈니스 문제를 야기합니다.”

이러한 과제는 보안 규정 준수가 선택 사항이 아니며, 애플리케이션의 안정성이 고객 서비스와 비즈니스 운영에 직접적인 영향을 미치는 규제 대상 산업에서 특히 심각합니다.

이분법적 선택을 넘어

이 조직과 HeroDevs 간의 파트너십은 기업들이 보안과 안정성 중 하나를 선택해야만 하는 것은 아니라는 점을 보여줍니다. 이들의 경험은 다음과 같은 몇 가지 중요한 원칙을 시사합니다:

  • 선제적인 보안 계획: “HeroDevs와의 협력을 통해 프레임워크 수명 주기 관리에 대한 우리의 사고방식이 바뀌었습니다,”라고 이 회사는 밝혔다. “프레임워크가 지원 종료 시점에 도달했을 때 사후 대응에 그치는 대신, 전략적인 업그레이드 계획을 수립하면서 보안을 선제적으로 유지할 수 있게 되었습니다.”
  • 위험 기반 자원 배분: ‘Never-Ending Support’를 통해 당면한 보안 요구 사항을 해결함으로써, 조직은 사후 대응 방식이 아닌 전략적인 방식으로 개발 자원을 배분할 수 있습니다. “이제 우리는 보안상의 긴급성보다는 비즈니스 가치를 기준으로 마이그레이션 일정을 계획할 수 있습니다.”
  • 규제 준수 신뢰도: 규제가 엄격한 산업에서는 규제 준수 신뢰도를 유지하는 것이 매우 중요합니다. “지속적인 보안 지원을 통해 기술 발전을 계획하는 동안에도 규제 준수 상태에 대한 확신을 가질 수 있습니다.”

기업 프레임워크 관리를 위한 청사진

수명 주기 종료 프레임워크와 관련해 유사한 과제에 직면한 다른 대규모 조직들에게 이 회사의 접근 방식은 귀중한 지침이 될 것입니다:

  1. 모든 대안을 종합적으로 검토하십시오: 특정 위험을 더 효율적으로 해결할 수 있는 맞춤형 보안 솔루션이 있다면, 무조건 즉시 마이그레이션을 선택하지 마십시오.
  2. 비즈니스에 미치는 영향을 종합적으로 고려하십시오: 의사결정 과정에서 운영 안정성, 고객에 미치는 영향, 규제 요건을 모두 반영하십시오.
  3. 전략적 파트너십 구축: 특정 과제에 대해서는 사내 개발보다 전문 업체가 더 효율적인 해결책을 제시할 수 있는 경우가 많습니다.
  4. 선제적으로 계획하기: 보안 솔루션을 단순히 사후 대응 수단이 아닌, 전략적 계획을 가능하게 하는 가교로 활용하십시오.
“HeroDevs와의 협력 경험을 통해 보안과 운영 안정성을 유지하는 것이 반드시 상충되는 관계일 필요는 없다는 사실이 입증되었습니다. 미션 크리티컬 시스템을 운영하는 조직에게 있어 이러한 균형은 단순히 기술적으로 중요한 것뿐만 아니라, 전략적인 비즈니스 경쟁력이기도 합니다.” — 글로벌 금융 서비스 기업

이 사례 연구는 고객의 요청에 따라 HeroDevs의 ‘Never-Ending Support’ 프로그램에 대한 경험을 공유하면서도 고객의 신원을 익명으로 처리하고 있습니다. 결과 및 구현 세부 사항은 고객이 전달한 경험을 반영한 것입니다.

목차
사례 연구 다운로드