블로그 | NGINX

NGINX Modern Application Security로 DevOps를 안전하게 자유롭게 설정하세요

NGINX-F5-수평-검정-유형-RGB의 일부
F5 NGINX 썸네일
F5 NGINX
2021년 8월 12일 게시

이제 "DevSecOps"라는 개념은 현대 소프트웨어 개발에 종사하는 거의 모든 사람에게 친숙해졌으며, 애플리케이션 보안을 근본적으로 강화하고 DevOps와 보안 팀 간의 마찰을 완화하겠다는 약속을 담고 있습니다.

DevSecOps 모델에서는 보안이 좌측으로 이동되어 DevOps 개발 및 배포 프로세스에 직접 포함됩니다. 특히, 보안 결함을 조기에 식별할 수 있도록 지속적인 통합/지속적인 배포(CI/CD) 파이프라인의 모든 단계에 보안이 내장되어 있습니다. 기존 보안 모델과 달리 DevSecOps는 보안을 개발의 핵심에 두고, 문제가 발생한 지점에 더 가까운 곳에서 문제를 식별하고, 비용이 많이 들고 시간이 많이 걸리는 수정 작업을 줄이고, 취약점이 프로덕션에 도달하는 것을 방지합니다.

하지만 DevSecOps에 대한 추진에도 불구하고 보안팀은 여전히 DevOps의 속도에 뒤처져 있는 것으로 보입니다. snyk의 DevSecOps Insights 2020 보고서에 따르면, 개발자의 48%는 여전히 보안이 소프트웨어를 신속하게 제공하는 능력에 큰 제약 요소라고 생각합니다.

애플리케이션 보안이 여전히 너무 느린 이유는 무엇일까?

대부분 기업은 보안 태세가 어떤 수준이어야 하는지 알고 있지만, 의도와 현실은 전혀 다른 문제입니다. Contrast Security의 2020년 DevSecOps 보고서 에 따르면, 조직의 99% 이상이 운영 중인 애플리케이션에 평균적으로 최소 4개의 취약점이 있다는 사실을 인정해야 하는 반면, 거의 80%가 개발 중인 애플리케이션에서 20개 이상의 취약점을 보고합니다. 따라서 GitLab의 2021년 글로벌 DevSecOps 설문 조사 에 참여한 보안팀의 70%가 보안을 좌측으로 전환하고 그 어느 때보다 개발자와 긴밀하게 협력하고 있다고 답했지만, 여전히 상당한 보안 격차가 남아 있다는 것은 분명합니다.

NGINX 고객과의 대화를 통해 보안 팀의 DevOps 관행 도입을 지속적으로 늦추거나 차단하는 세 가지 광범위한 과제를 발견했습니다.

  1. 끊임없이 변화하는 분산된 경계
    20년 전과 달리, 보안팀은 보안하기 쉬운 단일 경계만을 방어하는 임무를 거의 맡지 않습니다. 대신 DevOps 팀이 개발하고 배포한 앱을 보호해야 합니다. 해당 팀은 반복 작업을 가장 빠르게 수행하는 데 도움이 되는 환경, 플랫폼, 도구를 자유롭게 선택할 수 있습니다. DevOps 방식은 혁신에는 좋지만, API를 통해 서로 통신하는 다양한 서비스, 엔드포인트 및 장치를 보호해야 하는 보안 전문가에게는 나쁜 소식입니다. 실제로 GitLab 설문조사 에 응한 사람 중 절반만이 마이크로서비스와 컨테이너를 포함한 최신 개발 전략을 사용하여 만든 앱을 모니터링하고 보호하는 프로세스가 있다고 답했습니다.

  2. CI/CD 파이프라인에 보안 정책을 자동화하고 내장할 수 없음
    여러 팀 간의 변화는 동일한 속도로 진행되지 않으며, 보안 팀에서 사용할 수 있는 대부분의 레거시 도구는 Shifted-Left 환경에 맞게 설계되지 않았습니다. 결과적으로 보안 팀은 자동화 및 현대적 인프라에 적합하지 않은 도구를 파이프라인에 적용하고 통합해야 합니다. 더 나쁜 점은, 이러한 도구에는 셀프 서비스 기능이 없기 때문에 개발자와 DevOps 엔지니어는 보안 부서가 정책과 프로세스에 대한 수동 감사를 마칠 때까지 다음 단계로 넘어가기 위해 기다려야 한다는 것입니다.

  3. 중앙화된 가시성과 보안 통찰력을 얻는 것이 어려움
    대부분의 기업용 앱은 분산되어 있을 뿐만 아니라 소유권 영역도 분산되어 있으며, 각 영역마다 서로 다른 도구를 사용합니다. 이로 인해 조직 내 보안 태세에 대한 통합된 가시성을 확보하는 것이 엄청나게 어려워졌습니다. 보안팀은 문제의 근본 원인을 파헤치는 대신 여러 곳의 데이터를 통합하고 상관관계를 파악하는 데 시간을 낭비하는 경우가 많습니다.

물론 대부분의 기업이 단지 몇 개의 앱 때문에 이러한 장애물을 극복하는 것은 아닙니다. 여러 팀에 분산되어 있는 수백 개의 제품과 서비스를 조정하고 자체 기술 스택, 툴체인, 프로세스를 실행해야 하며, 이러한 모든 것에는 취약점으로 인해 공격에 취약성이 생기지 않도록 하는 감사와 검사가 필요합니다.

플랫폼 운영으로 전환하는 엔터프라이즈 팀

그렇다면 애플리케이션 보안팀의 민첩성을 높이는 동시에 개발자가 빠르고 안전하게 계속 움직일 수 있도록 지원하려면 어떻게 해야 할까요?

냉정한 진실은 위에서 논의한 과제를 해결할 방법을 찾지 못하면 관행과 프로세스를 발전시킬 수 없다는 것입니다. 더 빠르게 반복하는 것이 모든 사람에게 필요한 승리처럼 느껴질 수 있지만, DevOps를 최대한 확장할 수 있는 유일한 방법은 소프트웨어 개발 라이프사이클 전체에 걸쳐 보안을 가능한 한 원활하고 적응 가능하게 만드는 것입니다.

점점 더 많은 기업이 Gartner의 선례를 따라 플랫폼 운영이라고 부르는 접근 방식을 도입하고 있습니다. 핵심 개념은 회사 내 내부 팀의 요구 사항에 맞게 구축된 플랫폼을 통해 DevOps 기능을 제공하는 것입니다. 내부 플랫폼을 사용하면 중복된 작업에 시간을 낭비할 가능성이 줄어들 뿐만 아니라 여러 제품 팀이 속도가 느려지지 않고 지속적이고 효과적으로 협업하는 데 도움이 됩니다.

Platform Ops 모델에 따라 보안 팀은 개발 팀에 셀프 서비스 방식의 소모성 정책을 제공합니다. 또한, 보안 도구는 애플리케이션 제공 프로세스에 완벽하게 통합되어 있습니다. 이런 방식으로 개발자는 지식이 풍부한 보안 전문가가 정한 모범 사례, 거버넌스, 액세스 요구 사항을 준수하면서도 더 빠르게 배포할 수 있습니다.

애플리케이션 보안팀의 가장 큰 이점은 Platform Ops를 통해 개발자가 보안을 더 이상 속도를 늦추는 방해 요소로 여기지 않고, 오히려 이미 사용하고 있는 프로세스와 도구에 통합된 부분으로 여기는 환경을 조성한다는 것입니다. 이는 앱 제공 팀이 기업 전체의 보안을 강화하는 패턴을 도입하도록 동기를 부여합니다.

NGINX가 어떻게 도움이 되는가

NGINX에서는 개발 프로세스의 어느 곳에서나 보안을 제공하고 CI/CD 파이프라인과 완벽하게 통합할 수 있는 웹 애플리케이션 방화벽(WAF)과 같은 도구를 제공하는 것의 중요성을 인식합니다. CPU를 많이 사용하거나 성능을 저하시키지 않는 가벼운 솔루션을 갖는 것도 중요합니다.

우리는 보안이 관문이 아닌 보호막 역할을 할 때 개발팀과 DevOps팀이 훨씬 더 행복하다는 것을 보았습니다. 보안이 공유 셀프 서비스 플랫폼에서 강력하고 일관된 제어 및 정책을 제공하면 개발 및 보안 팀이 최소한의 상호 작용과 방해로 지침에 맞춰 조정하기가 더 쉬워집니다.

NGINX Ingress Controller와 NGINX App Protect WAF를 사용한 Kubernetes 생태계 다이어그램
NGINX Ingress Controller와 NGINX App Protect WAF를 사용한 Kubernetes 생태계 다이어그램

NGINX 애플리케이션 플랫폼이 이를 제공하는 방식은 다음과 같습니다.

  • NGINX App Protect WAF는 앱을 빌드하고 관리하는 곳 어디에나 배포할 수 있는 가볍고 현대적인 WAF입니다. F5의 시장을 선도하는 WAF 기술을 기반으로 구축된 App Protect WAF는 클라우드, 하이브리드, 마이크로서비스 기반 컨테이너화 또는 온프레미스 등 아키텍처나 배포 환경에 관계없이 OWASP Top 10 및 기타 고급 위협으로부터 보호합니다. NGINX Plus 용 동적 모듈로 배포되는 App Protect WAF를 사용하면 보안 구성 및 정책을 자동화하여 CI/CD 파이프라인 내에서 직접 프로비저닝할 수 있습니다.

  • NGINX App Protect DoS는 서비스 거부(DoS) 공격을 식별하고 방지하기 위해 자동화된 적응형 보호 기능을 제공합니다. F5 보안 전문가의 지원을 받는 App Protect DoS는 적응형 머신 러닝과 내장된 이상 탐지 기능을 사용하여 애플리케이션과 마이크로서비스를 애플리케이션 계층 공격으로부터 보호합니다. 타겟형 공격을 차단하거나 실수로 인한 구성 오류로 인해 앱 성능이 저하되는 것을 방지해야 하는 경우 App Protect DoS는 최신 애플리케이션 아키텍처, 개발 도구 및 프레임워크에 완벽하게 통합되는 제로터치 보호 기능을 제공합니다.

  • Controller Application Delivery Module 용 NGINX Controller App Security<.htmla> 애드온을 사용하면 운영과 보안 규정을 저해하지 않고도 개발자 생산성을 높일 수 있습니다. Controller App Security는 다중 클라우드 환경에서 실행되는 HTTP 기반 앱과 API 전반에 걸쳐 표준화할 수 있는 신뢰할 수 있는 앱 보호 및 중앙화된 앱 계층 위협 가시성을 제공합니다. 또한 보안팀은 사전 승인된 가이드라인을 제공할 수 있으며, 개발자와 DevOps팀은 셀프 서비스 방식으로 가이드라인을 활용하여 앱에 앱 보호 기능을 쉽게 추가할 수 있습니다.

  • NGINX Controller API 관리 모듈 의 고급 보안은 최신 애플리케이션에 대한 분산 API 보안을 지원합니다.

    • NGINX App Protect WAF는 이제 API 게이트웨이와 함께 배치되어 분산 환경에서 API 트래픽 관리 및 보안을 제공할 수 있습니다. 데이터 플레인(API 게이트웨이와 NGINX App Protect WAF로 구성)이 제어 플레인에 대한 런타임 종속성이 없는 NGINX의 분리된 아키텍처를 통해 NGINX는 온프레미스, 퍼블릭, 프라이빗 또는 하이브리드 클라우드에서 호스팅되는 API에 동급 최고의 성능과 보안을 제공합니다.
    • API 관리 모듈용 NGINX Controller App Security 애드온은 베어메탈, VM, 컨테이너, 클라우드 환경 등 어디에나 배포된 NGINX API 게이트웨이와 강력한 보안을 원활하게 통합합니다. 이 애드온은 설치 즉시 OWASP API 보안 상위 10개 취약점과 SQL 주입, 원격 명령 실행(RCE)과 같은 기타 취약점을 보호합니다. 허용된 파일 유형과 응답 상태 코드를 검증하고, 잘못된 JSON, XML 및 쿠키를 검사합니다. 이 애드온은 공격을 가리는 데 사용되는 회피 기술을 감지하고 HTTP RFC 규정을 준수하는지 확인합니다.

보안을 쉽고 간편하게 구축할 준비가 되셨나요?

NGINX App ProtectNGINX Controller 와 함께 NGINX Plus의 무료 30일 평가판을 시작하고, 클라우드( AWS , Google Cloud Platform , Microsoft Azure )에서 제공되는 서비스를 확인하고, 강사가 진행하는 NGINX App Protect 소개 수업에 등록하세요.


"이 블로그 게시물에는 더 이상 사용할 수 없거나 더 이상 지원되지 않는 제품이 참조될 수 있습니다. 사용 가능한 F5 NGINX 제품과 솔루션에 대한 최신 정보를 보려면 NGINX 제품군을 살펴보세요. NGINX는 이제 F5의 일부가 되었습니다. 이전의 모든 NGINX.com 링크는 F5.com의 유사한 NGINX 콘텐츠로 리디렉션됩니다."