IT이야기

[API보안] 여러분의 API는 안전하십니까?

붉은수염님 2024. 2. 12. 23:06
반응형

들어가는 말 : 여러분의 API는 안전하십니까?

여러분의 API는 안전하십니까?
오늘 제가 여러분에게 드리는 질문입니다.

Digital Life의 중심인 API


다들 아시는 바와 같이, 코로나 팬데믹은 우리 생활에 많은 변화를 가져왔습니다. 이와 더불어 IT환경에도 많은 변화가 생겼습니다.
기업들은 시장에서 생존하기 위하여 기존의 모놀리식 애플리케이션 개발 방식에서 작고 독립적인 마이크로 서비스로 분해해서 개발하고 있습니다. 
유연성과 확장성, 그리고 개발 속도를 향상하여 시장의 요구에 최대한 빨리 응답하기 위한 변화의 일부일 것입니다.
마이크로 서비스의 도입과 더불어 
클라우드 전환 또한 가속화 되고 있는 실정입니다. 
작년 설문조사 결과 43% 회사가 현재 클라우드 환경에서 업무를 처리하고 있다고 응답했습니다. 몇일 전 있었던 ‘가트너 IT 인프라, 운영 및 클라우드 전략 컨퍼런스’에서 가트너는 2027년까지 애플리케이션 워크로드의 65%가 클라우드 활용에 최적화될 것으로 예상한다고 발표한 바가 있습니다. 이러한 클라우드와 마이크로서비스의 환경에서 서비스들이 연계하기 위해서는 API, Application Programming Interface가 없어서는 안되는 핵심 기술입니다.
2022년 통계에 따르면 전체 인터넷 트래픽의 83%가 API 호출에 의해서 발생했다는 연구 결과도 있습니다.

 

API란 무엇인가?

그럼 이렇게 많이 사용되고 있는 API가 무엇인지에 대해서 잠깐 살펴보고 넘어가겠습니다.

API 란?


API는 일방인들이 사용하는 것이 아닙니다. 
API는 서비스를 연계하기 위해서 프로그램 간 상호 호출하여 사용하는 개발자에 의해서 만들어지고, 개발자들이 사용하는 인터페이스입니다.
화면에서 보시는 것처럼 한 서비스를 위해서 여러 가지의 기능들이 연계 되게 되고, 친구 관련 API, 메시지 관련 API, 알림 관련 API, 위치 관련 API등 여러 API 호출을 통해서 하나의 서비스를 완성하게 됩니다. 이렇게 API를 호출 할 때에 여러 방식이 존재하는데, 시장에서 가장 많이 사용하는 HTTP, RESTful API를 비롯하여 페이스북에서 개발한 GraphQL, google이 개발한 gRPC등 여러 종류의 API가 존재합니다.
그리고, 조직이 사용하고 있는 API를 살펴보면, 대 고객에 사용되는 외부와 인터페이스하는 External API는 물론이고, 내부적으로 서비스 간에 사용되는 Internal API와 서드파티 API가 존재하게 됩니다. 이 모든 API를 잘 파악하고 있으면 좋겠지만 그렇지 못한 경우가 대부분이며, 그러다 보니 로그 API나 셰도우 API, 존비 API를 가지게 됩니다. 로그 또는 세도우 API는 기업에서 승인되지 않은, 문서화 되지 않은, 파악도 되지 않는 API를 말합니다. 존비 API는 사용되지 않는 상태의 API로 예를 들면 API가 개정이 되어서 버전업을 하였을 경우 이전 버전의 API들은 제거되고 새로운 API가 관리되어야 하는데, 업데이트 후 여전히 이전 버전의 API들이 운영되는 상황을 예로 들수 있습니다. 이러한 로그, 섀도우, 존비 API는 데이터이 정합성이나 보안 취약점을 유발하고, 나아가 시스템 침투 가능성을 제공하게 되고 중요한 데이터의 유출이나 변경 등에 악용될 수가 있습니다.

 

API가 이용되는 경로

API의 다양한 이용 경로


API가 이용되는 경로를 보게 되면,
사용자들이 웹이나 앱을 통해서 접근하는 North/South 트래픽, 그리고, 내부 서비스 간에 통신하는 East/West 트래픽이 존재하게 되고, 
North/South 트래픽은 External API가, East/West 트래픽은 Internal API를 통해서 접근하게 됩니다.
배송이나 결제 등을 위해서 서드파티 API가 존재하게 됩니다. 
기존의 웹방화벽이나 API Gateway들은 North/South 트래픽을 통하는 External API를 모니터링 할 수 있겠지만, 이 마저도 우회할 경우에는 모니터링이 불가능하며, 특히 시그니쳐 베이스로 탐지할 경우 비즈니스 로직을 기반으로 타겟팅 된 공격이나 API 오용에 대해서는 탐지하는 것이 쉽지 않은 것이 현실입니다.

OWASP API security top 10 2023 Release Candidate

웹취약점 공개로 유명한 OWASP에서는 2019년부터 API 보안에 관련하여서도 별도로 top 10을 공개하고 있습니다.
현재 OWASP API security top 10 2023 Release Candidate 버전이 공개 되어있습니다.

OWASP API Security Top 10 2023 RC


기존에 문제가 되었던 top 3 중 1,2위는 여전히 유지 되었고, top 3에  Broken Object Property Level Authorization이 새롭게 추가 되었습니다. 
첫 top 10이 발표되고 5년이 되는 시점에 새로운 top 10이 발표되는 것인데요… 1,2위가 그대로라는 것은 이 취약점들은 여전히 시장에서 큰 문제가 되고 여전히 많이 발생하고 있는 문제점이라고 볼 수 있을 것입니다.
이들 취약점에 대해서 일일이 살펴 볼 수는 없지만,  top 10의 첫번째 문제점은 다음 글에서 살펴 보려고 합니다.

반응형