코로나19 팬데믹 이후 디지털 경제는 계속 확장되고 있으며, 조직의 90%가 최신 앱 아키텍처를 확대하고 있습니다. F5의 2023년 애플리케이션 전략 현황 보고서에 따르면, 설문조사에 참여한 전 세계 IT 의사 결정권자 1,000명 중 40% 이상이 자사의 앱 포트폴리오를 "최신"이라고 설명했습니다. 이 비율은 지난 몇 년간 꾸준히 증가해 왔으며, 2025년에는 50%를 넘어설 것으로 예상됩니다. 그러나 최신 앱과 마이크로서비스 사용이 증가하면서 API와 API 엔드포인트도 급증해 잠재적인 취약점과 공격 표면이 기하급수적으로 확대되고 있습니다.
F5 CTO실의 보고서인 지속적인 API 확산에 따르면, 2021년 전 세계 API 수는 약 2억 개였으며 2030년에는 20억 개에 육박할 것으로 예상됩니다. 이처럼 API가 빠르게 증가하면서 복잡성이 가중되는 가운데, 하이브리드 및 멀티 클라우드 환경 전반에서 분산 애플리케이션을 관리해야 하는 과제도 대두되고 있습니다. 2023년 애플리케이션 전략 현황 보고서의 응답자들은 멀티 클라우드 환경에 앱을 배포할 때 여러 도구와 API를 관리하는 복잡성을 가장 큰 과제로 꼽았습니다. 일관된 보안 정책 적용과 앱 성능 최적화가 근소한 차이로 공동 2위를 차지했습니다.

API 보안이 기업의 수익에 중요한 이유
API는 현대 애플리케이션의 구성 요소일 뿐만 아니라 디지털 비즈니스의 핵심이기도 합니다. F5 2023 보고서의 설문 조사에 참여한 조직 중 58%는 전체 매출의 절반 이상을 디지털 서비스에서 창출한다고 답했습니다. API는 사용자와 앱 간, 앱과 앱 간 통신을 지원하며, 고객의 비공개 데이터와 기업 내부 정보에 접근할 수 있게 해주기 때문에 공격자에게 매력적인 표적이 됩니다. 2022년에는 API가 공격에 가장 많이 사용된 경로였습니다.
전반적인 애플리케이션 보안 전략에서 API 보호는 무엇보다 중요합니다. 공격은 소비자 개인정보 침해(그 자체로도 심각한 문제입니다)를 훨씬 넘어 공공 안전을 위협하고 지적 재산 손실로 이어지는 등 치명적인 결과를 초래할 수 있습니다. 다음은 2022년에 발생한 이러한 유형별 API 공격 사례입니다.
- 소비자 개인정보 보호 – 트위터는 수년에 걸친 API 공격을 겪었습니다. 2022년 12월, 해커들은 트위터 사용자 2억 명의 프로필 데이터와 이메일 주소를 탈취했습니다. 그보다 4개월 전에는 CloudSEK 연구진이 유효한 트위터 API 키와 시크릿을 유출하는 모바일 애플리케이션 3,207개를 발견했습니다. 또한 그보다 한 달 전에는 해커들이 API 취약점을 악용해 사용자 540만 명의 데이터를 탈취하고 판매했습니다.
- 공공 안전 – 한 연구팀이 Toyota, Mercedes, BMW를 비롯한 약 20개의 주요 자동차 제조업체에서 심각한 API 보안 취약점을 발견했습니다. 오늘날 많은 자동차가 스마트 기기처럼 작동하기 때문에 해커는 차량 식별 번호(VIN)와 차량 소유자의 개인정보를 훔치는 데 그치지 않고, 차량 위치를 추적하고 원격 관리 시스템을 제어하여 차량의 잠금을 해제하고 시동을 걸거나 차량을 완전히 작동 불능 상태로 만들 수 있습니다.
- 지적 재산 – CircleCI에서 표적이 된 직원이 악성코드 공격의 피해를 입었습니다. CircleCI는 전 세계 100만 명 이상의 개발자가 코드 배포에 사용하는 CI/CD 플랫폼입니다. 이 직원에게는 프로덕션 액세스 토큰을 생성할 권한이 있었으며, 그 결과 해커들은 고객의 API 키와 비밀 정보를 탈취할 수 있었습니다. 침해 사실은 거의 3주 동안 발견되지 않았습니다. 고객의 비밀 정보가 탈취되어 타사 시스템에 무단으로 액세스하는 데 사용되었는지 확인할 수 없었던 CircleCI는 고객에게 프로젝트 및 개인 API 토큰을 교체하라고 권고할 수밖에 없었습니다.
이러한 API 공격 사례는 우리에게 경각심을 줍니다. API에 보안 취약점이 있는데도 보호 조치 없이 방치하면 장기적인 여파가 금전적 손실을 훨씬 넘어설 수 있습니다. API 보안의 중요성은 아무리 강조해도 지나치지 않습니다.
F5 NGINX가 API 보안을 강화하는 방법
The NGINX API Connectivity Stack 솔루션을 사용하면 멀티 클라우드 환경 전반에서 API 게이트웨이와 API를 관리할 수 있습니다. API 게이트웨이로 NGINX Plus를 NGINX App Protect WAF와 함께 배포하면 F5의 2023 애플리케이션 전략 현황 보고서에서 파악된 3대 API 과제인 멀티 클라우드 환경 전반의 API 복잡성 관리, 보안 정책 보장, 애플리케이션 성능 최적화뿐만 아니라 이전 섹션에서 설명한 유형의 API 공격과 관련된 일반적인 API 익스플로잇을 예방하고 완화하는 데 도움이 됩니다. NGINX Plus는 API 요청을 신속하게 라우팅하고, API 클라이언트를 인증 및 승인하여 API를 보호하며, 트래픽 속도를 제한하여 API 기반 서비스가 과부하되지 않도록 보호하는 API 게이트웨이 등 여러 방식으로 사용할 수 있습니다.
NGINX Plus는 기본적으로 OWASP API 보안 10대 취약점뿐만 아니라 다양한 위협으로부터 보호합니다. 또한 잘못된 형식의 쿠키, JSON 및 XML을 검사하고, 허용된 파일 형식과 응답 상태 코드를 검증하며, 공격을 은폐하는 데 사용되는 회피 기법을 탐지합니다. NGINX Plus API 게이트웨이는 REST, GraphQL, gRPC를 비롯한 HTTP 또는 HTTP/2 API 프로토콜을 보호합니다.
NGINX App Protect WAF는 OWASP API Security Top 10 및 OWASP (애플리케이션) Top 10에 대한 기본적인 보호를 넘어, 7,500개 이상의 고급 시그니처, 봇 시그니처 및 위협 캠페인으로부터 가볍고 뛰어난 성능의 애플리케이션 및 API 보안을 제공합니다. 또한 시프트 레프트 전략을 지원하고 API 보안을 손쉽게 자동화하여 보안을 코드로 관리하는 방식을 CI/CD 파이프라인에 통합할 수 있습니다. AWS, Azure 및 Cloudflare WAF와 비교한 테스트에서 NGINX App Protect WAF는 더 우수한 성능과 더 짧은 지연 시간을 유지하면서 강력한 애플리케이션 및 API 보안을 제공하는 것으로 나타났습니다. 자세한 내용은 이 GigaOm 보고서에서 확인하세요.
NGINX App Protect WAF는 NGINX Plus API 게이트웨이에 내장되어 있어 API 트래픽의 홉이 하나 줄어듭니다. 계층 간 홉 수가 줄어들면 지연 시간과 복잡성, 장애 지점이 감소합니다. 이는 WAF와 통합되지 않는 일반적인 API 관리 솔루션과는 확연히 다릅니다(WAF를 별도로 배포해야 하며, 설정이 완료되면 API 트래픽이 WAF와 API 게이트웨이를 각각 통과해야 합니다). NGINX의 긴밀한 통합은 보안을 저해하지 않으면서도 높은 성능을 제공합니다.
GraphQL과 gRPC의 부상
앱 및 API 개발자는 유연성과 속도를 높이고 사용 및 배포를 간소화할 새로운 방법을 끊임없이 모색하고 있습니다. Postman의 2022년 API 현황 보고서에 따르면 REST는 여전히 오늘날 가장 널리 사용되는 API 프로토콜(89%)이지만, GraphQL(28%)과 gRPC(11%)도 계속해서 인기를 얻고 있습니다. 궁극적으로 API 프로토콜 선택은 애플리케이션의 목적과 비즈니스에 가장 적합한 솔루션에 따라 크게 달라집니다. 각 프로토콜에는 고유한 장점이 있습니다.
GraphQL API를 사용하는 이유는 무엇인가요?
GraphQL API 사용의 주요 이점은 다음과 같습니다:
- 적응성 – 클라이언트가 요청할 데이터와 데이터의 유형 및 형식을 결정합니다.
- 효율성 – 오버페칭이 발생하지 않으며, 요청은 생성된 스키마를 기반으로 실행되고 요청한 데이터만 정확하게 반환됩니다. 요청과 응답의 데이터 형식이 동일하므로 GraphQL API는 빠르고 예측 가능하며 쉽게 확장할 수 있습니다.
- 유연성 – 12개 이상의 언어와 플랫폼을 지원합니다.
GitHub은 GraphQL을 사용하는 잘 알려진 기업 중 하나입니다. 확장성과 유연성을 확보하기 위해 2016년에 GraphQL로 전환했습니다.
왜 gRPC API를 사용해야 할까요?
gRPC API 사용의 주요 이점은 다음과 같습니다:
- 성능 – 가볍고 간결한 데이터 형식으로 리소스 요구량을 최소화하고 메시지를 빠르게 인코딩하고 디코딩할 수 있습니다
- 효율성 – protobufs 데이터 형식은 구조화된 데이터를 직렬화하여 통신을 간소화합니다
- 안정성 – HTTP/2 및 TLS/SSL이 필수이므로 기본적으로 보안이 강화됩니다
대부분의 기능은 클라이언트 측에서 제공되며, 관리와 연산은 리소스를 호스팅하는 원격 서버에서 처리됩니다. gRPC는 마이크로서비스 간 트래픽이나 요청자(예: IoT 기기)가 제한된 리소스를 절약해야 하는 데이터 수집처럼 일정량의 데이터 또는 처리가 지속적으로 필요한 사용 사례에 적합합니다.
Netflix는 gRPC API를 사용하는 것으로 잘 알려진 기업의 한 예입니다.
NGINX App Protect WAF로 GraphQL API를 보호하세요
NGINX App Protect WAF 이제 GraphQL API 지원REST 및 gRPC API뿐만 아니라 GraphQL API도 지원합니다. 공격 시그니처를 적용하여 악의적인 익스플로잇을 차단하고 공격을 방어함으로써 GraphQL API를 보호합니다. GraphQL 트래픽을 기본적으로 파싱하므로 NGINX App Protect WAF는 GraphQL 구문과 프로필을 기반으로 위반 사항을 탐지하고 공격 시그니처를 적용할 수 있습니다. 또한 인트로스펙션 쿼리를 식별하여 차단하고, 응답에서 탐지된 패턴도 차단할 수 있습니다. 이 방식은 공격을 탐지하고 페이로드의 적절한 구간에서 시그니처를 실행하여 오탐을 줄이는 데 도움이 됩니다.
이 데모에서 NGINX App Protect WAF가 GraphQL API를 공격으로부터 보호하는 방법을 알아보세요.
 
NGINX App Protect WAF를 통한 GraphQL API 보안의 이점:
- 보안 매개변수 정의 – 애플리케이션 보안 정책의 일부로 GraphQL 템플릿 및 콘텐츠 프로필에 포함되는 매개변수의 전체 길이와 값을 조직 정책에 따라 설정합니다
- 오탐 감소 – 세분화된 제어를 통해 GraphQL 요청의 공격을 더 정확하게 탐지하여 공격 방지 정확도를 높입니다
- 악의적인 악용 완화 – 악의적인 악용 및 공격의 위험을 줄이기 위해 하나의 HTTP 요청에서 일괄 처리할 수 있는 쿼리의 최대 개수를 정의합니다
- DoS 공격 차단 – 콘텐츠 프로필에서 최대 구조 깊이를 설정하여 재귀 쿼리로 인한 DoS 공격을 차단합니다
- API 위험 노출 제한 – 해커가 API 구조를 파악하여 보안 침해로 이어지는 것을 방지하도록 인트로스펙션 쿼리에 제약 조건을 적용합니다
NGINX App Protect WAF로 gRPC 양방향 스트리밍 API 보호
NGINX App Protect WAF 이제 gRPC 양방향 스트리밍을 지원합니다 단항 메시지 유형뿐만 아니라 메시지 스트림(클라이언트, 서버 또는 둘 다)을 사용하는 gRPC 기반 API도 보호할 수 있습니다. 이를 통해 통신 유형에 관계없이 gRPC API를 완벽하게 보호할 수 있습니다.
NGINX App Protect WAF는 스키마 적용, 크기 제한 설정, 알 수 없는 파일 차단, 리소스 고갈형 DoS 공격 방지를 통해 gRPC API를 보호합니다. 인터페이스 정의 언어(IDL) 파일을 NGINX App Protect WAF로 가져오면 gRPC 메시지의 구조와 스키마를 적용하고 적절한 위치에서 공격을 검사할 수 있습니다. 이를 통해 gRPC를 이용해 애플리케이션을 악용하려는 시도를 정확하게 탐지하고, 컨텍스트 없이 잘못된 위치에서 보안 검사를 수행할 때 발생할 수 있는 오탐을 방지할 수 있습니다.
이 데모에서 NGINX App Protect WAF가 gRPC 양방향 API를 공격으로부터 보호하는 방법을 알아보세요.
 
NGINX App Protect WAF를 통한 gRPC API 보안의 이점:
- 포괄적인 gRPC 보호 – 단항 통신부터 양방향 스트리밍까지, 통신 유형에 관계없이 완벽한 보안 제공
- 오탐 감소 – gRPC 메시지 구조와 스키마를 적용하여 정확도를 높이고, gRPC 요청 내 공격을 더욱 효과적으로 탐지
- 악성 익스플로잇 차단 – gRPC 메시지의 각 필드가 올바른 유형과 예상된 콘텐츠를 갖도록 적용하고, 알 수 없는 필드를 차단할 수 있습니다.
- DoS 공격 차단 – 리소스 고갈형 DoS 공격을 방지하기 위한 메시지 크기 제한
SecOps 팀과 API 개발팀 모두 API 보안을 관리하고 자동화할 수 있습니다
Postman의 2022 API 현황 보고서에 따르면, 설문에 참여한 개발자 및 API 전문가 37,000명 중 20%는 조직에서 API 사고가 한 달에 한 번 이상 발생하며, 이로 인해 데이터 손실, 서비스 중단, 악용 또는 부적절한 액세스가 발생한다고 답했습니다. 반면 응답자의 52%는 API 공격을 겪는 빈도가 연 1회 미만이라고 답했습니다. 이는 API 보안을 위한 시프트 레프트 전략의 일환으로 개발 초기부터 보안을 통합하는 것이 중요함을 보여줍니다. API가 애플리케이션보다 더 자주 배포됨에 따라 API 보안에도 시프트 레프트 전략이 점점 더 많이 적용되고 있습니다. 조직이 시프트 레프트 문화를 도입하고 코드형 보안을 CI/CD 파이프라인에 통합하면 API 개발의 각 단계에 보안을 내재화하고, 개발자의 민첩성을 유지하며, 배포 속도를 높일 수 있습니다.
보호 기능이 API에 특화되어야 하는 핵심 영역 중 하나는 gRPC IDL 파일과 GraphQL 쿼리를 비롯한 API 스키마의 유효성 검사입니다. 스키마는 API마다 고유하며 API 버전이 바뀔 때마다 변경됩니다. API 스키마를 자동화할 때는 API를 업데이트할 때마다 해당 파일의 구성과 코드도 업데이트해야 합니다. WAF 구성은 API 버전 변경에 맞춰 자동으로 배포할 수 있습니다. NGINX App Protect WAF는 스키마의 유효성을 검사하여 요청이 API에서 지원하는 항목(메서드, 엔드포인트, 매개변수 등)을 준수하는지 확인할 수 있습니다. NGINX App Protect WAF는 SecOps 팀이 생성할 수 있는 선언적 정책을 통해 일관된 애플리케이션 보안을 지원하며, API 개발 팀은 API 보안을 관리하고 배포하여 더욱 세밀하게 제어하고 민첩성을 높일 수 있습니다. 하이브리드 및 멀티 클라우드 환경 전반에서 API 보안을 대규모로 자동화하려는 경우 NGINX App Protect WAF가 도움이 될 수 있습니다.
요약
최신 애플리케이션 포트폴리오는 계속 확장되고 있으며, 마이크로서비스의 사용으로 API가 더욱 빠르게 증가하고 있습니다. API 보안은 복잡하고 까다로우며, 특히 하이브리드 또는 멀티 클라우드 환경에서 운영되는 조직에는 더욱 그렇습니다. API 보안이 미흡하면 금전적 비용을 넘어 장기적으로 심각한 영향을 초래할 수 있습니다. NGINX App Protect WAF는 REST, GraphQL 및 gRPC API 보호를 포함한 포괄적인 API 보안을 제공하며, SecOps 및 API 팀이 보안을 개발 초기 단계로 전환하고 전체 API 수명 주기와 분산 환경 전반에서 보안을 자동화할 수 있도록 지원합니다.
지금 바로 30일 무료 평가판으로 NGINX App Protect WAF를 체험해 보세요.
추가 자료
블로그: NGINX App Protect WAF로 API 게이트웨이 보호하기
eBook: 최신 앱 및 API 보안
eBook: O’Reilly의 API 아키텍처 마스터하기
데이터시트: NGINX App Protect WAF
작성자 소개

관련 블로그 게시물
시청하기: KubeCon North America 2023에서의 NGINX Gateway Fabric
이 영상에서는 KubeCon의 NGINX 부스를 찾아가, 저희가 공개한 Kubernetes Gateway API 구현을 살펴봅니다.
F5 NGINX로 대규모 WAF 플릿을 확인하고 관리하는 2가지 방법
앱 보안을 강화하는 두 가지 방법을 소개합니다. NGINX Management Suite를 통해 WAF 운영에 대한 가시성을 높이고, NGINX App Protect WAF를 활용해 코드형 보안을 구현하는 것입니다.
Ingress 컨트롤러 선택 가이드, 4부: NGINX Ingress Controller 옵션
개발 주체, 개발 철학, 프로덕션 환경 준비도, 보안 및 지원을 기준으로 어떤 NGINX Ingress 컨트롤러가 가장 적합한지 알아보세요.
진화하는 공격 환경에 NGINX App Protect Denial of Service가 적응하는 방법
NGINX App Protect Denial of Service(DoS)가 계층 7 DoS 공격을 방어하기 위해 완화 방법을 실시간으로 조정하는 방식을 설명합니다. 정상적인 사용자 행동과 서버 상태에 대한 모델을 생성하여 공격을 나타내는 이상 징후를 감지하고 맞춤형 완화 시그니처를 적용할 수 있습니다.
NGINX Instance Manager를 활용한 대규모 구성 업데이트 및 인증서 관리
NGINX Instance Manager 버전 1.0에는 두 가지 새로운 기능이 도입되었습니다. NGINX 인스턴스에 태그와 사용자 역할을 지정하면 전체 그룹에 구성을 한 번에 적용할 수 있습니다. 인증서 검사는 만료 예정인 인증서를 감지하여 서비스 중단을 방지할 수 있도록 인증서를 교체할 수 있게 해줍니다.
Netflix가 자사 CDN의 핵심으로 NGINX를 선택한 이유
Netflix가 글로벌 콘텐츠 전송 네트워크인 Open Connect의 스트리밍 미디어 기술로 NGINX를 선택한 이유를 NGINX 개발자 Gleb Smirnoff에게서 알아보세요.