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

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

학습 목표

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

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

글 링크 복사

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

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

가장 널리 참조되는 리소스 중 하나는 웹 애플리케이션의 가장 큰 보안 우려 사항 10가지를 나열한 OWASP 상위 10가지입니다.

또한 대부분의 웹 애플리케이션의 중요한 구성 요소인 애플리케이션 프로그래밍 인터페이스(API)()에 대한 유사한 목록을 별도로 관리하고 있습니다. 이 목록은 OWASP API 보안 상위 10가지입니다.

2019년 현재*, OWASP API 보안 상위 10가지에는 다음이 포함됩니다.

  1. 취약한 개체 수준 인증: 이는 중요한 데이터에 대한 무단 액세스를 얻기 위해 요청 내에서 개체 식별자를 조작하는 것을 의미합니다.공격자는 단순히 식별자만 변경하여 접근해서는 안 되는 개체(데이터)에 접근합니다.
  2. 취약한 사용자 인증: 인증이 잘못 구현된 경우, 공격자는 API 사용자를 사칭하여 기밀 데이터에 액세스할 수 있습니다.
  3. 과도한 데이터 노출: 많은 API가 데이터를 노출하는 과정에서 오류를 범하며, 데이터를 적절하게 필터링하기 위해 API 사용자에게 의존합니다.이렇게 하면 권한이 없는 사람이 데이터를 볼 수 있습니다.
  4. 리소스 부족 및 레이트 리미팅: 기본적으로 많은 API는 주어진 시간에 수신할 수 있는 요청의 수나 크기를 제한하지 않습니다.따라서 서비스 거부(DoS) 공격에 노출될 수 있습니다.
  5. 취약한 기능 수준 인증: 이 위험은 인증과 관련이 있습니다.API 사용자에게 너무 많은 권한이 부여되어 데이터가 노출될 수 있습니다.
  6. 대량 할당: API는 사용자 입력을 여러 속성에 자동으로 적용합니다.공격자는 이 취약점을 이용해 예를 들어 사용자 프로필의 다른 무해한 속성을 업데이트하면서 자신을 관리자로 변경할 수 있습니다.
  7. 보안 설정 오류: 여기에는 잘못 설정된 HTTP 헤더, 불필요한 HTTP 메서드, 중요한 정보가 포함된 "장황한 오류 메시지 등 API 설정 시 발생하는 다양한 실수가 포함되어 있습니다."
  8. 삽입: 삽입 공격에서 공격자는 API에 특수 명령을 보내 데이터를 노출하거나 다른 예기치 않은 작업을 실행하도록 속입니다.SQL 삽입에 대해 알아보기.
  9. 부적절한 자산 관리: 이는 현재 프로덕션 API와 더 이상 사용되지 않는 API를 모두 추적하지 않을 때 발생하며, 섀도 API로 이어집니다.API는 많은 엔드포인트를 사용할 수 있도록 하는 경향이 있으므로 이러한 위험에 취약합니다.
  10. 불충분한 로깅 및 모니터링: OWASP는 연구에 따르면 일반적으로 유출을 감지하는 데 200일 이상이 걸리는 것으로 나타났다고 지적합니다.자세한 이벤트 로깅과 면밀한 모니터링을 통해 API 개발자는 위반을 훨씬 더 일찍 감지하고 차단할 수 있습니다.

*2021년 12월 현재 이 목록은 2019년 이후 업데이트되지 않았습니다.

이 10가지 보안 위험에 대해 더 자세히 알아보려면 OWASP의 공식 페이지를 참조하세요.

OWASP 상위 10가지 목록(전체 목록은 여기에 있음)과 OWASP API 보안 상위 10가지 목록 사이에는 약간의 교차점이 있습니다. 예를 들어 삽입, 취약한 인증, 불충분한 로깅 및 모니터링이 두 가지 모두에 나타납니다. 그러나 API는 웹 애플리케이션과는 약간 다른 위험을 수반합니다. 개발자는 두 가지 목록을 모두 고려해야 합니다.

Cloudflare API Shield는 이러한 10가지 보안 위험에 어떻게 대응할까요?

Cloudflare API Shield는 계층화된 API 방어를 사용하여 다양한 API 지향 공격으로부터 보호합니다.여기에는 데이터 손실 방지(위험 1, 3번 대응), 상호 TLS(위험 2번), 레이트 리미팅(위험 4번) 등의 기능이 포함됩니다.전체 기능 목록은 Cloudflare API Shield 페이지에서 확인하세요.

API 보안에 대해 자세히 알아보려면 API 보안이란?을 읽어보세요.