API 검색으로 API 확산을 줄이는 방법
보안 전문가라면 확산의 개념에 대해 잘 알고 있을 것입니다. 권한부터 비밀번호에 이르기까지 잠재적 공격 기법의 확산이 통제 불능 상태가 될 때마다 확산 문제를 겪게 됩니다.
1980년대 영화 ‘그렘린’과 다르지 않습니다. 그렘린은 처음에는 작고 귀여운 생명체였지만 이야기가 진행되면서 비명을 지르고 물건을 부수는 등의 다양한 말썽을 부리기 시작합니다.
영화 속 비유는 차치하고서라도 많은 기업이 잘 알지 못하는 확산이라는 공격이 있으며 API 확산은 인기 있는 공격 기법이 되고 있습니다.
그렘린(또는 API 확산) 관리
구축하는 모든 애플리케이션, 클라우드에서 전환하는 모든 워크로드, 직원들이 협업에 사용하는 모든 툴에는 보이지 않는 곳에서 데이터를 교환하는 API가 있습니다. 그리고 혁신의 속도가 빨라지면서 API가 완전한 그렘린 모드로 전환되고 있습니다.
API 확산은 여러 개발팀과 다양한 애플리케이션 및 서비스를 보유한 기업에서 흔히 발생하는 문제입니다. 더 많은 혁신이 요구됨에 따라 더 많은 API가 만들어지고, 이러한 API가 어떻게 사용되고 있는지, 호출 시 어떤 종류의 데이터를 반환하는지 추적하기가 점점 더 어려워집니다.
API 확산은 개발의 비효율성, 비용 증가, 성능 문제, 리소스 낭비를 초래할 수 있습니다. 또한, 특정 API의 목적과 사용법에 대한 혼란으로 이어져 개발자가 필요에 맞는 API를 찾거나 상호 작용하는 방식을 이해하기 어렵게 만들 수 있습니다. 비즈니스의 API 의존도가 높아짐에 따라 API 확산이 어떻게 발생하고 이를 효과적으로 방지하거나 관리할 수 있는 방법을 이해해야 합니다.
이 블로그 게시물에서는 API 확산이 발생하는 방식과 이를 방지하기 위해 기업이 할 수 있는 일에 대해 설명합니다. 이러한 전략을 이해하면 API를 더 효율적으로 관리하고 애플리케이션의 효율성과 유지보수성을 향후 몇 년 동안 유지할 수 있습니다.
API 확산이 발생하는 방식
API 확산은 부실한 API 관리, 거버넌스 부재, 기존 API에 대한 가시성 부족, 부적절한 문서화 등 다양한 이유로 발생할 수 있습니다. 기업에 적절한 거버넌스와 가시성이 없으면 사용되지 않거나 제대로 관리되지 않는 API가 너무 많을 수 있습니다.
직원 이탈도 휴면, 섀도, 좀비 API의 증가에 큰 영향을 미칩니다. 개발자가 기업 내에서 부서를 이동하는 속도를 고려해 보세요. 개발자가 퇴사하기 전에 지식을 전수하거나 프로젝트를 완료할 시간이 있을 확률은 얼마나 될까요? 아무리 좋은 의도를 가진 개발자라도 인수인계 과정에서 간과할 수 있는 부분이 있습니다.
게다가 인수합병의 결과로 ‘상속’된 API는 종종 잊어버리는 경우가 많습니다. 시스템 통합이라는 까다롭고 복잡한 작업 중에 인벤토리를 잃어버리거나 애초에 존재하지 않았던 경우도 있습니다. 인수한 회사의 API가 제대로 문서화되지 않은 경우, 회사는 미지의 리스크와 같은 심각한 리스크에 직면할 수 있습니다.
보안이 취약하거나 알려진 취약점이 있는 이전 버전의 API가 그대로 유지되는 경우가 많습니다. 소프트웨어가 업그레이드되는 동안 이전 버전과 최신 버전이 일정 기간 동안 공존해야 할 수도 있습니다. 동시에 적절한 버전 관리와 API 비활성화를 담당하던 사람이 회사를 그만두거나, 새로운 업무를 맡게 되거나, 이전 버전을 제거하는 것을 잊어버릴 수도 있습니다.
API 확산의 결과
보안 측면에서 보면, 기업의 API가 제대로 보안 및 설정되지 않은 경우 API 확산은 악성 공격자가 취약점을 악용할 수 있는 기회를 더 많이 만들어 줍니다. API가 통제할 수 없을 정도로 확산되면 기업은 애플리케이션, 시스템, 민감한 데이터와 같은 리소스가 어떻게 상호 연결되는지에 대한 가시성을 잃게 되어 아키텍처 및 인프라에 대한 정보에 기반한 의사 결정을 내리는 데 어려움을 겪게 됩니다. 얼마나 많은 API를 보유하고 있는지 정확히 파악하지 않고서는 API 사용량을 모니터링하는 것이 거의 불가능합니다.
그리고 보이지 않는 것은 보호할 수 없습니다.
비즈니스에 미치는 영향 측면에서 API 확산은 성능 저하로 이어질 수 있습니다. 여러 개의 API를 추가하고 유지 관리하면 관리의 복잡성이 증가해 응답 시간이 느려지고 요청 시 대기 시간이 길어집니다. 또한, API 확산은 기업이 API 관리에 더 많은 리소스를 투자해야 하므로 비용을 증가시킬 수 있습니다.
API 검색이란 무엇이며 어떻게 API 확산을 줄일 수 있을까요?
API 검색은 기업이 API를 식별, 분류, 관리하고 리스크를 측정하는 데 도움이 되는 프로세스 및 기능 집합입니다. API 검색을 올바르게 수행하면 API 확산을 줄이고 보안 체계를 개선하는 데 도움이 될 수 있습니다.
또한, API 검색은 기업이 현재 API 환경을 더 잘 이해하고 향후 개발에 대해 정보에 입각한 결정을 내리는 데 도움이 됩니다. 게다가, 이러한 API에 대한 접속을 더 쉽게 모니터링하고 제어해 권한이 부여된 사용자만 접속할 수 있도록 할 수 있습니다.
수동 API 검색이 선택 사항이 아닌 이유
수동으로 API 감사를 수행하면 필요한 모든 입력을 정확하게 문서화하기 위해 API당 최대 40시간이 소요될 수 있습니다. 또한, 발생을 조사하고, 피해를 평가하고, 시정 조치를 취하고, 근본 원인 조사를 수행하는 데 훨씬 더 많은 시간이 소요될 수 있습니다.
리소스가 과도하게 늘어난 보안팀은 자동화된 절차를 사용해 사용 중인 모든 API를 검색함으로써 API 자산을 보호하는 데 도움이 될 수 있습니다. API 게이트웨이로 제어되지 않는 API와 API 도메인을 포함한 모든 디지털 활동에서 모든 API를 찾아 인벤토리를 구축해야 합니다.
Akamai가 API 자산을 확장하는 데 도움을 주는 방법
이 블로그 게시물이 거의 끝날 무렵, 잠시 멈춰서 주변을 둘러볼 필요가 있습니다. 이 글을 읽는 동안 API 그렘린이 더 많이 확산되지는 않았나요?
API 확산은 상당히 심해질 수 있습니다. 더 좋은 질문은 다음과 같습니다. 기업의 API 검색 기능을 개선하고 싶나요? 대답이 '예'라면 Akamai가 도와드리겠습니다.
Akamai API Security는 찾기 어려운 섀도 API를 포함해 모든 API의 정확한 인벤토리를 유지할 수 있도록 설계되었습니다. 다음은 리스크를 줄이고 API 인벤토리에 대한 신뢰도를 높이는 데 도움이 되는 몇 가지 기능입니다.
Akamai의 검색 모듈을 사용하면 보안팀은 간소화된 사용자 경험을 통해 온프레미스 및 클라우드 환경 전반의 수많은 데이터 소스에서 완벽한 가시성을 확보할 수 있습니다.
Akamai API Security는 수백 또는 수천 개의 인프라로 확장해 부하 분산, API 게이트웨이, 웹 애플리케이션 방화벽을 모니터링함으로써 HTTP, RESTful, GraphQL, SOAP, XML-RPC, JSON-RPC, gRPC 등 모든 종류의 API를 찾고 분류할 수 있습니다.
데이터 분류 기능이 API 트래픽을 모니터링하고 API를 통과하는 데이터 종류에 대한 가시성을 제공하므로 신용카드 데이터, 전화번호, 주민등록번호, 기타 민감한 데이터에 접속할 수 있는 API의 수를 빠르게 확인할 수 있습니다.