최근 보안 산업에서 중요하게 뜨고 있는 것이 API 보안이다. API(Application Programming Interface)는 운영체제와 응용프로그램 사이의 통신에 사용되는 언어나 메시지 형식을 뜻한다. API는 애플리케이션 소프트웨어를 구축하고 통합하기 위한 일종의 프로토콜 집합이다. API를 이용하면 각각의 기능을 불러올 때 짧은 프로그램을 작성해도 될 뿐더러, 작업자가 직접 프로그래밍을 하지 않더라도 그 기능을 구현할 수 있다.

최근 API 사용빈도 역시 높아지는 추세인데, 잘못하면 해커의 표적이 될 수 있다. API가 지닌 보안 관련 취약점에 유의해야 한다는 말이다.

보안관련 이미지 / 픽사베이
보안관련 이미지 / 픽사베이
7일 보안업계 관계자들은 API 보안 전략 수립의 난점으로 웹 애플리케이션 방화벽이나 ID, 액세스 관리 솔루션으로 완전히 해결할 수 없는 보안 위협을 꼽는다. 취약점에서 자유로우려면 일반적인 취약점에 대한 이해가 필요하다는 말이다.

API의 취약점은 과도한 데이터를 외부에 노출시킬 수 있다는 점이다. 일반적으로 API는 효율성을 위해 필요 이상의 데이터를 공유하도록 요구한다. 해커들은 이같은 데이터를 활용해 중요 정보를 추출해 낼 수 있다. 특히 사용 가능한 정보와 사용해선 안되는 민감한 정보를 기존 보안 솔루션만으로는 명확히 구별할 수 없는 경우 해커의 표적이 된다.

API 관련 사이버 공격 대부분은 로봇이 진행한다. 해커의 공격 목적 대부분은 빼돌린 데이터를 볼모로 대가(돈) 취득이다. 해커 입장에서는 API 취약점만 잘 공략하면 방대한 표적을 가져올 수 있다.

API는 클라이언트나 사용자가 요청할 수 있는 리소스 수가 항상 제한되지 않는다. 즉 해커는 데이터를 가져오는 API를 무차별 공격할 수 있다. 공격자가 자격 증명 크래킹 및 토큰 크래킹을 포함해 리소스 수가 무제한인 API를 자동 공격을 가하는 식이다.

API의 취약점을 악용할 수 있도록 불완전하게 구성된 보안 솔루션도 맹점이다. 잘못된 HTTP 헤더, 개방형 클라우드 스토리지 등 허술한 부분이 공격자에게 노출될 경우, 해커는 해당 구성요소를 감별한 후 공격에 나설 수 있다. API 보안 솔루션은 정상적인 값을 벗어나는 모든 활동을 식별할 수 있는 기능을 탑재해야 한다.

보안업계 한 관계자는 "최근 급증하는 API 보안위협에 대응하기 위해 기업들이 보안 위협과 관련된 변수를 고려해 설계와 개발을 해야 한다"며 "API 보안 기준을 충족하는 보안 솔루션을 신중하게 도입하는 것이 중요하다"고 말했다.

이유정 기자 uzzoni@chosunbiz.com