8 API Security Best Practices

API(애플리케이션 프로그래밍 인터페이스)는 프로그램이 잘 구조화된 인터페이스를 통해 서로 통신할 수 있도록 설계되었습니다. 시간이 지남에 따라 API는 웹 애플리케이션, 모바일 및 사물인터넷(IoT) 디바이스, 다양한 서비스형 소프트웨어(SaaS) 제품을 지원하는 최신 인터넷 및 IT 시스템의 중요한 부분이 되었습니다.

API가 널리 보급되면서 사이버 공격의 주요 표적으로 떠오르고 있습니다. 그 결과 API 보안은 조직의 애플리케이션 보안(AppSec) 프로그램의 핵심 구성 요소가 되었습니다.

2023 기가옴 레이더 보고서 읽기 데모 요청하기

API 사이버 공격의 유형

API는 다양한 사이버 공격에 잠재적으로 취약할 수 있습니다. 오픈 웹 애플리케이션 보안 프로젝트(OWASP)에서는 이러한 위험에 대한 주의를 환기시키기 위해 API 취약성에 대한 상위 10가지 목록을 만들었습니다.

이 목록의 2023 버전에는 다음과 같은 일반적인 API 보안 위협이 포함되어 있습니다:

  • 깨진 오브젝트 수준 인증.
  • 인증 실패.
  • 깨진 오브젝트 속성 수준 권한.
  • 무제한 리소스 소비.
  • 기능 수준 권한이 손상되었습니다.
  • 민감한 비즈니스 흐름에 대한 무제한 액세스.
  • 서버 측 요청 위조.
  • 보안 구성 오류.
  • 부적절한 재고 관리.
  • 안전하지 않은 API 사용.

API Security Best Practices

API는 다양한 보안 위협에 직면하지만 다음 API 보안 모범 사례를 구현하여 이러한 위협을 관리할 수 있습니다.

#1. 인증 및 권한 부여 구현

API를 통해 사용자는 조직의 엔드포인트에서 특정 기능을 실행할 수 있습니다. 이러한 기능은 민감한 데이터나 제한된 기능에 대한 액세스를 제공하지 않더라도 CPU, 네트워크 대역폭 및 기타 리소스를 소비합니다.

인증 및 권한 부여를 구현하면 조직에서 API에 대한 액세스를 관리할 수 있습니다. 이상적으로는 다중 인증(MFA)을 사용하여 인증을 수행하고 제로 트러스트 원칙에 따라 권한 부여를 수행합니다.

#2. SSL/TLS 암호화 사용

API 요청 및 응답에는 사용자 데이터나 금융 정보와 같은 민감한 정보가 포함될 수 있습니다. 네트워크 트래픽을 엿듣는 누군가가 이 데이터에 액세스할 수 있습니다.

SSL/TLS 프로토콜은 웹 서버를 인증하고 API 트래픽에 대한 암호화를 제공합니다. 이는 소셜 엔지니어링 공격으로부터 보호하고 네트워크 트래픽 도청을 방지하는 데 도움이 될 수 있습니다.

#3. 제로 트러스트 액세스 제어 구현

API에 대한 액세스 관리는 보안과 효율성을 위해 필수적입니다. 특정 API 기능에 대한 부적절한 액세스를 허용하면 민감한 데이터가 권한이 없는 당사자에게 노출되거나 서비스 거부(DoS) 공격이 발생할 수 있습니다.

액세스 관리는 제로 트러스트 원칙에 따라 구현하는 것이 가장 이상적입니다. 여기에는 사용자에게 역할에 필요한 액세스만 허용하는 최소 권한 액세스 제어를 정의하고 각 요청을 사례별로 검증하는 것이 포함됩니다.

#4. 정기적인 보안 테스트 및 위험 평가 수행

API는 점점 더 많은 사이버 공격의 표적이 되고 있습니다. 기업이 더 많은 API를 배포하고 비즈니스 운영의 핵심 요소로 자리 잡으면서 API에 대한 공격은 비즈니스에 심각한 위협이 되고 공격자에게는 큰 기회가 될 수 있습니다.

정기적인 보안 테스트와 위험 평가를 통해 조직의 API에서 취약성, 잘못된 구성 및 기타 보안 문제에 대한 가시성을 확보할 수 있습니다. 보안팀은 이 정보를 바탕으로 보안 제어의 우선순위를 정하고, 설계하고, 구현하여 조직의 API 보안 위험을 관리할 수 있습니다.

#5. 정기적으로 업데이트하고 신속하게 취약성 패치 적용

API에는 내부 및 외부 소스의 취약성이 모두 포함될 수 있습니다. 조직의 개발자가 오류를 일으켜 API를 공격에 노출시키거나 타사 종속성에서 이러한 취약성을 상속받을 수 있습니다.

API 코드베이스의 취약성으로 인해 데이터 유출, 무단 액세스 또는 기타 공격이 발생할 수 있습니다. 정기적인 업데이트를 수행하면 공격자가 악용하기 전에 이러한 보안 격차를 줄이는 데 도움이 됩니다.

#6. 비정상적인 활동에 대한 모니터링 및 경고

API는 크리덴셜 스터핑이나 DoS 공격과 같은 자동화된 공격의 이상적인 표적입니다. 공개적으로 액세스할 수 있는 경우가 많으며 두 프로그램 간에 쉽게 커뮤니케이션할 수 있도록 설계되었습니다.

지속적인 모니터링을 통해 조직은 공격의 징후가 될 수 있는 비정상적인 활동을 식별하고 대응할 수 있습니다. 예를 들어 API에 대한 액세스 시도가 증가하면 크리덴셜 스터핑 공격이 있을 수 있으며, 특히 실패한 요청이 많은 경우 더욱 그렇습니다.

#7. API 게이트웨이 사용

API는 공개적으로 액세스할 수 있도록 설계되어 조직의 고객에게 다양한 기능을 노출하는 경우가 많습니다. 결과적으로 조직의 API 엔드포인트를 스캔하면 조직의 네트워크 인프라에 대한 많은 정보를 파악할 수 있습니다.

 

API 게이트웨이는 API와 사용자 사이의 중개자 역할을 합니다. API 게이트웨이는 요청 필터링, 속도 제한, API 키 관리를 구현하여 남용으로부터 API를 보호할 수 있습니다.

#8. WAAP 솔루션 사용

 

API는 다양한 잠재적 위협과 공격에 직면할 수 있습니다. 이러한 공격은 취약점을 악용하는 것부터 API의 기능을 악용하는 것까지 다양합니다.

웹 애플리케이션 및 API 보호(WAAP) 솔루션은 취약한 API에 도달하는 공격을 식별하고 차단하도록 설계되었습니다. WAAP는 위협 탐지 및 예방 외에도 암호화 및 액세스 관리와 같은 다른 중요한 보안 기능도 제공할 수 있습니다.

API Security with Check Point AppSec

APIs face various security threats, and implementing API security best practices is an essential part of managing these security risks. Check Point’s Check Point AppSec provides the tools that companies need to implement these across all of their corporate APIs.

Check Point AppSec has been recognized as a Leader in Innovation and Feature Play in GigaOm’s 2023 Radar Report for Application and API Security. Learn more about its capabilities in this ebook, then sign up for a free demo today.