Akamai는 온라인 비즈니스를 지원하고 보호하는 사이버 보안 및 클라우드 컴퓨팅 기업입니다. 시장을 대표하는 보안 솔루션, 탁월한 위협 인텔리전스, 글로벌 운영팀이 어디서나 기업 데이터와 애플리케이션을 보호하기 위한 심층적 방어 기능을 제공합니다. Akamai의 풀스택 클라우드 컴퓨팅 솔루션은 세계에서 가장 분산된 플랫폼에서 성능과 경제성을 제공합니다. 글로벌 기업들은 비즈니스 성장에 필요한 업계 최고의 안정성, 확장성, 전문성을 제공하는 Akamai를 믿고 신뢰합니다.
애플리케이션 프로그래밍 인터페이스(API)는 기업의 디지털 제품, 서비스, 클라우드 환경의 핵심입니다. API는 매우 다른 시스템이 함께 작동하고 데이터를 공유할 수 있도록 하기 때문에 혁신, 비즈니스 생산성, 소프트웨어 개발에 필수적입니다.
API는 최신 IT 시스템에 필수적이지만 사이버 범죄자들이 가장 선호하는 표적이기도 합니다. 예를 들어, API의 데이터에 대한 지속적인 접속은 운영 리스크를 초래합니다. 이러한 이유로 API 보안 솔루션은 보안 스택의 중요한 부분이 되었습니다. API 보안 솔루션은 API와 기타 시스템 간의 상호 작용을 보호하는 프로토콜, 툴, 관행을 구축함으로써 무단 접속, 데이터 유출, 기타 치명적인 사이버 공격을 방지하는 데 도움이 됩니다.
API 보안이란 무엇일까요?
API는 매우 다양한 소프트웨어 애플리케이션과 시스템이 쉽게 통신하고 데이터와 기능을 공유할 수 있도록 하는 일련의 룰과 프로토콜입니다. API는 기본적으로 한 애플리케이션이 다른 애플리케이션과 정보를 요청하고 공유하는 데 사용할 수 있는 방법과 데이터 형식을 정의합니다.
이 기능은 소프트웨어 개발자에게 엄청난 장점을 제공합니다. 개발자가 새로운 앱과 웹 애플리케이션을 구축할 때 처음부터 새로운 데이터베이스를 생성하고 새로운 기능을 구축하는 대신 API를 통해 데이터를 통합하고 기존 소프트웨어의 기능을 활용할 수 있습니다. 그 결과 개발자는 타임라인을 가속하고 더 강력한 소프트웨어를 만들 수 있습니다.
API는 매우 널리 사용되고 민감한 데이터에 자주 접속하기 때문에 악성 공격자의 주요 공격 기법이 되었습니다. API 보안은 다양한 API 공격을 방어하기 위해 프로토콜, 모범 사례, 기술을 구현하는 관행입니다.
API 보안 솔루션의 필요성
API는 IT 시스템의 기능에 필수적이기 때문에 API 보안은 비즈니스에서 매우 중요한 부분입니다. API에 대한 공격이 성공하면 기업에 다음과 같은 치명적인 결과를 초래할 수 있습니다.
- 재정적 손실. API 공격은 사이버 범죄자가 금융 계좌에 접속하고 자금을 탈취할 수 있도록 합니다. 추가적인 재정적 손실에는 법률 수수료, 규제 벌금, 공격으로 영향을 받은 고객에 대한 보상, 비즈니스 기회 손실로 인한 장기적인 영향 등이 포함됩니다.
- 데이터 유출. API는 민감한 데이터와 개인 식별 정보(PII)를 처리하는 경우가 많기 때문에 API 공격은 데이터 유출을 초래해 ID 도용, 금융 사기, 기타 악성 활동으로 이어질 수 있습니다.
- 운영 차질. API는 애플리케이션 및 시스템 성능에 매우 필수적이기 때문에 API 보안 유출은 다운타임과 생산성 손실로 이어질 수 있습니다. 또한 공격자는 API를 사용해 정상 사용자가 서비스와 기능을 사용할 수 없게 만드는 서비스 거부(DoS) 공격을 시작하는 경우가 많습니다.
- 평판 훼손. API 공격이 성공하면 기업의 평판이 심각하게 훼손될 수 있습니다. 고객은 기업과의 비즈니스 수행을 경계할 수 있으며, 파트너는 기업의 데이터 보호 능력에 대한 신뢰를 잃을 수 있습니다. 이러한 상황은 비즈니스 기회의 상당한 손실로 이어질 수 있습니다.
- 지적 재산 손실. 공격자는 API를 악용해 영업 비밀, 비즈니스 계획, 지적 재산 등 중요한 비즈니스 정보에 접속할 수 있습니다.
API 보안의 도전 과제
모든 API 보안 솔루션은 기업이 공격과 남용으로부터 API를 보호하는 데 있어 몇 가지 주요 장애물을 극복하는 데 도움이 되어야 합니다.
- API의 복잡성. 최신 API, 특히 GraphQL 또는 REST를 사용하는 API의 복잡성으로 인해 보안이 더욱 어려워집니다.
- 진화하는 위협. 공격자들이 악용할 새로운 취약점과 API를 남용하는 새로운 방법을 모색함에 따라 API에 대한 위협은 끊임없이 진화하고 있습니다.
- 마감 기한 압박. API 보안 문제는 개발자가 빠르게 진행되는 DevOps 워크플로우에서 마감 기한을 맞추기 위해 신속하게 움직여야 하는 필요성과 상충되는 경우가 많습니다.
- 급격한 확산. API 사용이 폭발적으로 증가함에 따라 IT팀은 특히 새로운 버전의 API가 릴리스되면서 보안을 유지하기가 어려워졌습니다.
- 가시성 부족. 관리되지 않는 급속한 성장이 'API 확산'에 기여함에 따라 IT팀은 API를 정확하게 식별하고 인벤토리화하는 데 어려움을 겪고 있어, 생태계의 모든 API를 보호할 수 없습니다.
- 잘못된 거버넌스 프레임워크. 많은 기업에서 여러 팀이 보안이나 거버넌스를 위한 중앙 프레임워크 없이 API를 동시에 개발하고 있습니다. 설상가상으로 기업은 안전한 통합을 더욱 어렵게 만드는 오픈 소스 또는 써드파티 API를 자주 도입합니다.
API 보안에 대한 일반적인 위협
공격자는 취약점을 악용하고, 데이터를 감염시키고, 서비스를 중단하기 위해 다양한 방법으로 API를 사용하거나 남용할 수 있습니다.
- 무단 접속. 공격자는 API 엔드포인트를 조작하거나 크리덴셜 스터핑과 무차별 대입 공격을 사용해 데이터에 무단으로 접속할 수 있습니다.
- 서비스 중단. 서비스 거부(DoS) 및 분산 서비스 거부(DDoS) 공격은 많은 수의 요청으로 API를 마비시켜 정상 사용자가 애플리케이션과 서비스를 사용할 수 없게 만듭니다. 또는 공격자가 API 호출을 남용해 대역폭 및 컴퓨팅 파워와 같은 리소스의 과도한 소비를 유발해 운영 비용을 증가시키고 잠재적으로 서비스를 중단시킬 수 있습니다.
- 인젝션 공격. SQL 인젝션(SQLi) 및 크로스 사이트 스크립팅(XSS)과 같은 공격은 API가 의도하지 않은 위험한 작업을 수행하도록 하여 데이터 손실, 데이터 유출 또는 계정 탈취를 초래할 수 있습니다.
- 무단 기능 접속. 이러한 공격은 접속 제어의 취약점을 악용해 무단 작업을 수행하거나 보안 제어를 우회합니다.
- 비즈니스 로직 조작. 공격자는 비즈니스 로직을 보호하지 못하는 API를 자주 악용해 자동으로 계정을 위조할 수 있습니다. 대량 할당 공격은 입력 데이터를 적절히 필터링하지 않고 내부 자산에 자동으로 바인딩하는 API를 악용해 API 요청에 추가 매개변수를 포함시킴으로써 해커가 사용자 역할을 변경할 수 있도록 합니다.
- 설정 오류. 잘못 설정된 API를 악용하면 공격자가 민감한 데이터나 기능에 접속할 수 있습니다. 공격자는 모니터링되지 않거나 문서화되지 않은 보안이 취약한 API를 표적으로 삼을 수도 있습니다.
- 써드파티 API 남용. 기업이 써드파티 API의 데이터를 제대로 검증하지 않고 신뢰하면 공격자는 기본 서비스의 데이터나 기능을 조작해 공급망의 다른 시스템에 접속할 수 있습니다.
자세한 설명은 OWASP API Security 상위 10대 위협 목록을 참조하세요.
API Security 솔루션의 종류
기업은 다중 보안 레이어를 제공하고 기업이 API에 대한 보안 체계를 개선하는 데 도움이 되는 API 사이버 보안 툴을 도입할 수 있습니다.
- 인증 및 권한 확인 기술: 권한이 부여된 사용자만 API에 접속하고 데이터를 조작할 수 있도록 하려면 기업은 멀티팩터 인증, OAuth, OpenID Connect, API 키 같은 인증 방법을 도입해야 합니다. 권한 확인 기술에는 역할 기반 접속 제어와 속성 기반 접속 제어가 포함됩니다.
- API Gateway: API Gateway는 모든 API 요청의 엔트리 포인트 역할을 하며 인증, 전송률 제한, 트래픽 관리, 캐싱 등의 작업을 수행해 DDoS 공격을 실시간으로 방지합니다.
- 암호화: 암호화 솔루션은 API를 통해 전송된 데이터를 공격자가 가로채는 것을 방지합니다. 기업은 API 트래픽, 요청, 응답, 저장된 데이터를 보호하기 위해 SSL, TLS, AES 암호화와 같은 기술을 사용할 수 있습니다.
- 전송률 제한: 전송률 제한은 지정된 기간 내에 사용자 또는 디바이스가 수행할 수 있는 요청 수를 제한해 DoS 공격을 방지합니다. 이를 통해 공격자가 요청으로 API를 마비시키는 것을 방지할 수 있습니다.
- 감사 및 로깅: 감사에는 API 요청과 응답을 추적하는 작업이 포함되며, 로깅에는 안전하고 변조되지 않는 방식으로 API 이벤트와 활동을 기록하는 작업이 포함됩니다. 감사 및 로그를 지속적으로 검토하면 API 활동에 대한 가시성을 확보해 IT팀이 보안 위협을 탐지하고 방어할 수 있습니다.
- API 보안 테스트: 개발팀과 보안팀은 정기적으로 테스트해 API 취약점과 잠재적인 API 리스크를 식별해야 합니다. API 테스트는 수동 기법이나 자동화를 사용해 API가 안전하고 의도한 대로 작동하는지 확인합니다. 동적 애플리케이션 보안 테스트(DAST) 접근 방식을 통해 기업은 실제 조건에서 런타임 상태의 API를 테스트할 수 있으며, 정적 애플리케이션 보안 테스트(SAST)는 API의 코드를 검토해 개발 프로세스 초기에 보안 문제를 탐지하고 해결합니다.
- API 모니터링 및 런타임 보안: 보안팀은 API 사용과 행동을 지속적으로 모니터링해 정상적인 기준 행동을 설정하고 API 남용을 나타낼 수 있는 비정상적이거나 의심스러운 행동을 식별할 수 있습니다.
- 취약점 관리: 보안팀은 공격자가 API 내의 취약점을 악용하지 못하도록 취약점 스캐닝, 패치, 해결을 위한 API 보안 솔루션을 배포할 수 있습니다.
- API Security 플랫폼: 기업은 여러 API 보안 솔루션을 한 곳에 통합하는 API 보안 플랫폼을 도입할 수 있습니다.
API 보안의 4가지 핵심 구성요소
1. API 검색:
- 설정이나 종류에 관계없이 모든 API를 찾아 인벤토리화합니다.
- 휴면, 레거시, 좀비 API를 탐지합니다.
- 잊히거나, 방치되거나, 알려지지 않은 섀도 도메인을 식별합니다.
- 사각지대를 제거하고 잠재적인 공격 경로를 파악합니다.
2. API 체계 관리:
- 인프라를 자동으로 스캔해 설정 오류와 숨겨진 리스크를 발견합니다.
- 주요 이해관계자에게 취약점을 알리는 맞춤형 워크플로우를 생성합니다.
- 민감한 데이터에 접속할 수 있는 API 및 내부 사용자를 식별합니다.
- 탐지된 문제에 심각도 순위를 할당해 해결 우선순위를 지정합니다.
3. API 런타임 보안:
- 데이터 변조 및 유출, 정책 위반, 의심스러운 행동, API 공격을 모니터링합니다.
- 추가적인 네트워크 변경이나 설치하기 어려운 에이전트 없이 API 트래픽을 분석합니다.
- 기존 워크플로우(티켓팅, SIEM 등)와 통합해 보안팀 및 운영팀에 알림을 제공합니다.
- 부분적으로 또는 완전히 자동화된 해결을 통해 실시간으로 공격 및 오용을 방지합니다.
4. API 보안 테스트:
- 악성 트래픽을 시뮬레이션하는 광범위한 자동화된 테스트를 실행합니다.
- API가 프로덕션 환경에 들어가기 전에 취약점을 발견해 공격 성공 리스크를 줄입니다.
- 확립된 거버넌스 정책 및 룰에 따라 API 사양을 검사합니다.
- 온디맨드 또는 CI/CD 파이프라인의 일부로 실행되는 API 중심 보안 테스트를 실행합니다.
API 보안 모범 사례
IT팀은 API 보안 툴과 함께 API를 위협과 악용으로부터 보호하는 데 도움이 되는 다양한 API 보안 모범 사례를 도입할 수 있습니다.
- API 보안 전략: API는 클라우드 네이티브 및 멀티클라우드 환경을 포함한 다양한 시스템과 플랫폼 간의 상호 운용성을 지원하는 데 중요한 역할을 합니다. 이렇게 복잡한 생태계에서 API 보안을 관리하려면 AWS 및 SaaS 공급업체를 비롯해 다양한 클라우드 환경에서 API가 안전하게 작동하도록 보장하는 강력한 보안 전략이 필요합니다.
- 지속적인 API 검색: IT팀은 섀도 API 및 좀비 API를 포함한 디지털 생태계의 모든 API를 지속적으로 시각화하고 최신 API 인벤토리를 유지해야 합니다. 또한 검색은 API 확산을 관리하고 이전 버전의 API를 적절히 중단하고 폐기함으로써 공격 표면을 줄이는 데 도움이 될 수 있습니다.
- API 수명주기 관리: API 보안을 위해서는 설계 및 개발부터 배포 및 중단에 이르기까지 전체 API 수명주기를 효과적으로 관리해야 합니다. 모든 수명주기 단계에서 API 보안에 초점을 맞춘 API 관리는 API 보안을 강화하는 데 도움이 될 수 있습니다.
- 안전한 API 개발: DevOps 파이프라인, 애플리케이션 보안(AppSec) 노력, DevSecOps 관행에 보안을 통합하면 API 보안을 개발 수명주기의 필수적인 요소로 만들 수 있습니다.
자주 묻는 질문(FAQ)
API 엔드포인트는 애플리케이션이 데이터를 얻거나 작업을 수행하기 위해 다른 서비스에 접속할 수 있는 특정 주소 또는 URL입니다. 서로 다른 소프트웨어 시스템 간에 요청과 정보가 전달되는 통로입니다.
API 보안과 애플리케이션 보안은 모두 소프트웨어 시스템 보안에 중점을 둡니다. API 보안은 무단 접속을 방지하고, 데이터를 암호화 및 보호하고, 일반적인 취약점을 해결하기 위해 API를 보호하는 데 더 좁게 초점을 맞춥니다. 애플리케이션 보안과 웹 애플리케이션 보안은 코드, 인프라, 사용자 데이터를 포함한 전체 애플리케이션을 보호하는 데 중점을 두어 범위가 더 넓습니다. 애플리케이션 보안은 안전한 코딩, 설정 관리, 접속 제어, 정기적인 보안 테스트와 같은 관행을 포함합니다. 본질적으로 API 보안은 애플리케이션이 서로 통신할 수 있도록 하는 인터페이스를 보호해야 할 특정 요구사항에 맞게 조정된 애플리케이션 보안의 하위 집합입니다.
Akamai 보안은 성능이나 고객 경험에 영향을 주지 않으면서 상호 작용이 일어나는 모든 지점에서 비즈니스의 원동력이 되는 애플리케이션을 보호합니다. 글로벌 플랫폼의 규모와 위협에 대한 가시성을 활용해 고객과 협력함으로써 위협을 예방, 탐지, 방어하고 브랜드 신뢰를 쌓고 비전을 실현할 수 있도록 지원합니다.