OWASP API 보안 상위 10대 취약점이란?

오픈 웹 애플리케이션 보안 프로젝트(OWASP)는 애플리케이션 프로그래밍 인터페이스(API)에 대한 가장 큰 보안 위험 목록을 정리했습니다.

학습 목표

이 글을 읽은 후에 다음을 할 수 있습니다:

  • OWASP API 보안 상위 10가지 요약
  • 이 목록을 OWASP 상위 10가지와 비교해보세요.

관련 콘텐츠


계속 알아보시겠어요?

인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!

Cloudflare가 개인 데이터를 수집하고 처리하는 방법은 Cloudflare의 개인정보 취급방침을 참조하세요.

글 링크 복사

OWASP API 보안 상위 10대 취약점이란?

오픈 웹 애플리케이션 보안 프로젝트(OWASP)는 웹 애플리케이션 보안을 촉진하는 것을 목표로 하는 비영리 단체입니다. OWASP는 보다 안전한 웹 애플리케이션을 구축하기 위한 많은 무료 리소스를 제공합니다.

이 조직에서 가장 널리 참조되는 리소스 중 하나는 OWASP 상위 10가지이며, 웹 애플리케이션의 보안 우려 사항 상위 10가지를 나열합니다. OWASP는 대부분의 웹과 모바일 경험을 구동하는 데 중요한 애플리케이션 프로그래밍 인터페이스(API)에 대한 유사한 목록을 별도로 관리하고 있습니다.

API는 비즈니스 인텔리전스를 제공하고, 클라우드 배포를 촉진하고, AI 기능을 통합함으로써 기업의 경쟁 우위를 촉진할 수 있습니다. 하지만 동시에 API는 외부 사용자가 애플리케이션에 액세스하고 데이터를 공유하며 잠재적으로 중요한 워크플로우를 실행하도록 허용하여새로운 위험을 초래할 수 있습니다.

가장 최근인 2023년에 발표된 이 OWASP API 보안 상위 10가지는 API, 애플리케이션, 데이터를 더 잘 보호하기 위해 조직이 해결해야 하는 핵심 문제를 집중적으로 다룹니다. 이 목록에는 다음이 포함됩니다.

  1. 손상된 개체 수준 권한 부여: 공격자들은 손상된 개체 수준 권한 부여에 취약한 API 엔드포인트를 악용하려고 시도할 수 있습니다. 요청 내의 개체 식별자를 조작하여 중요한 데이터에 대한 무단 액세스를 확보할 수 있습니다.
  2. 손상된 인증: 인증이 잘못 구현되면 공격자가 API 사용자를 사칭하여 기밀 데이터에 액세스할 수 있습니다.
  3. 손상된 개체 속성 수준 권한 부여: 개체 속성 수준에서 권한이 없거나 권한 유효성 검사가 부적절하면 정보가 노출되거나 권한이 없는 사람들이 조작할 수 있는 취약한 상태가 될 수 있습니다.
  4. 무제한 리소스 소비: 많은 API는 클라이언트 상호 작용 또는 리소스 소비를 제한하지 않습니다. 공격자의 API 대량 호출로 인해 운영 비용이 증가하고 서비스 거부가 발생할 수 있습니다.
  5. 손상된 함수 수준 권한 부여: 공격자는 합법적인 API 호출을 엔드포인트에 보낼 수 있는데, 이러한 엔드포인트에는 액세스할 수 없어야 합니다. 다른 사용자의 리소스나 관리 기능에 액세스할 수도 있습니다.
  6. 중요한 비즈니스 흐름에 대한 무단 액세스: API는 비즈니스 흐름(예: 웹 사이트에 대한 댓글 게시, 제품 구매, 예약 등)을 노출하여 공격자가 해당 흐름을 과도하게 실행할 수 있습니다.
  7. 서버 측 요청 위조: 사용자가 제공한 URL의 유효성을 검사하지 않고 API가 원격 리소스를 가져올 수 있습니다. 예를 들어, 사용자는 소셜 미디어 플랫폼에 이미지를 업로드할 수 있는 URL을 제공할 수 있습니다. 그러면 해당 URL이 내부 네트워크 내에서 포트 스캔을 시작할 수 있습니다.
  8. 부적절한 인벤토리 관리: API는 기존 웹 애플리케이션보다 더 많은 엔드포인트를 노출할 수 있습니다. 조직에서 호스트 및 배포된 API 버전의 인벤토리를 작성하지 않으면 사용 중단된 API 버전 및 엔드포인트가 취약한 상태로 남을 수 있습니다.
  9. 안전하지 않은 API 사용: 공격자는 API를 직접 공격하지 않고 API와 상호작용하는 타사 서비스를 표적으로 삼을 수 있습니다. 이들은 개발자가 사용자 입력보다 타사 API의 데이터를 더 신뢰하는 경우가 많다는 것을 알고 있습니다.
  10. 이 10가지 보안 위험에 대해 자세히 알아보려면 OWASP 공식 페이지를 참조하세요.

    OWASP 상위 10가지 목록(여기에서 전체 목록 확인)과 OWASP API 보안 상위 10가지 목록 사이에는 약간의 교차점이 있습니다. 예를 들어 손상된 접근 제어는 OWASP 상위 10가지 목록에 처음 포함된 문제이며, API 목록에 있는 처음 5가지 보안 문제 중에는 다양한 형태의 손상된 인증 및 권한 부여가 있습니다. 또한 잘못된 보안 구성과 서버 측 요청 위조가 두 목록에 모두 나타납니다.

    그러나 API는 웹 애플리케이션에 비해 몇 가지 뚜렷한 위험을 수반합니다. 개발자는 두 가지 목록을 모두 고려해야 합니다.

    Cloudflare는 API 보안 위험을 해결하는 데 어떻게 도움이 될까요?

    Cloudflare API Shield는 API 검색 기능, 중앙 집중식 API 관리 및 모니터링, 혁신적인 계층화 방어 기능을 통해 API를 안전하게 유지하고 제대로 작동하도록 지원합니다. API Shield는 Cloudflare의 애플리케이션 보안 포트폴리오의 일부로, 봇, DDoS 공격, 애플리케이션 공격을 차단하고 공급망 공격을 모니터링하기 위한 추가 기능을 제공합니다.

    Cloudflare 기능이 OWASP API 보안 상위 10가지에 언급된 특정 위험을 해결하는 방법을 알아보세요. Cloudflare의 API 보안 솔루션도 더 살펴보세요.

    FAQ

    OWASP(Open Web Application Security Project)란?

    OWASP는 웹 애플리케이션 보안을 촉진하기 위해 보안 모범 사례 및 위험 목록과 같은 무료 리소스를 제공하여 조직에서 애플리케이션을 안전하게 보호하도록 돕는 비영리 단체입니다.

    OWASP API 보안 상위 10대 취약점이란?

    OWASP API 보안 상위 10은 API가 직면한 가장 중요한 보안 위험 목록입니다. 이는 조직에서 API 설계 및 구현에서 일반적인 취약점을 이해하고 해결하는 데 도움이 됩니다.

    API 보안에서 '손상된 권한 부여'란?

    '손상된 권한 부여'는 손상된 개체 수준 권한 부여, 손상된 개체 속성 수준 권한 부여, 손상된 기능 수준 권한 부여 등 API에 대한 여러 OWASP 위험을 지칭할 수 있습니다. 이 세 가지 취약점 모두 공격자가 중요한 데이터를 노출시키거나 조작할 수 있게 합니다.

    API 보안 위험의 예로는 어떤 것이 있을까요?

    주요 API 위험에는 데이터 노출 또는 서비스 중단으로 이어질 수 있는 무제한 리소스 소비, 서버 측 요청 위조(SSRF), 미흡한 API 인벤토리 관리 등이 있습니다.

    API에서의 인증 취약점은?

    API가 사용자를 제대로 검증하지 않을 때 인증 취약점이 발생하여 공격자가 합법적인 사용자를 사칭하고 중요한 데이터에 무단으로 접근할 수 있습니다.

    타사 API 위험이란?

    API가 외부 서비스와 상호 작용할 때 타사 API 위험이 발생할 수 있습니다. 특히 API가 이러한 타사 서비스의 데이터를 신뢰하는 경향이 있는 경우 공격자는 API를 직접 공격하지 않고 이러한 외부 서비스를 겨냥할 수 있습니다.

    Cloudflare API Shield란?

    Cloudflare API Shield는 API 검색, 중앙 집중식 관리, 모니터링, 계층화된 보안 방어를 제공하여 조직에서 API를 보호할 수 있도록 지원하는 솔루션입니다.

    OWASP API 보안 상위 10은 웹 애플리케이션의 OWASP 상위 10과 어떤 관련이 있을까요?

    이 두 목록은 공통 보안 위험을 분류합니다. OWASP API 보안 Top 10은 API에만 해당하며, OWASP Top 10은 일반적인 웹 애플리케이션에 적용됩니다. API는 거의 항상 웹 애플리케이션 인프라의 중요한 구성 요소이므로 보안에 신경 쓰는 웹 애플리케이션 개발자는 두 목록을 모두 고려해야 합니다. 손상된 액세스 제어 및 서버 측 요청 위조 문제와 같이 API와 웹 애플리케이션이 직면하는 보안 위험 유형 측면에서 중복되는 부분이 있지만, 이러한 위험에 대한 솔루션 구현은 API와 웹 애플리케이션마다 약간 다를 것입니다.

    API에서 비즈니스 흐름의 악용이란?

    비즈니스 흐름 악용은 공격자가 과도한 구매나 예약과 같은 합법적인 API 워크플로우를 남용하여 비즈니스 운영을 방해할 때 발생합니다.