[보안뉴스 문정후 기자] 공개인증 혹은 오오스(OAuth)라고 하는 인증 표준을 구축하는 과정에서 생성되는 취약점 하나가 큰 문제가 될 수 있다는 지적이 나왔다. 웹사이트나 애플리케이션을 페이스북, 구글, 애플, 트위터와 같은 각종 서비스에 연결할 때 취약점이 발동된다는 뜻으로, 공격자가 익스플로잇에 성공할 경우 사용자 계정을 탈취하거나 민감한 정보를 유출시킬 수 있게 된다. 그 외 다른 악성 행위도 가능하다고 한다.

[이미지 = gettyimagesbank]
오오스는 사용자가 한 웹사이트에 접속해 ‘구글 계정으로 로그인’, ‘애플 계정으로 로그인’ 등의 링크를 누름으로써 로그인을 할 때 뒷단에서 작동하는 인증 장치다. 많은 사이트나 앱이 이 기능을 사용하고 있으며, 소비자들 역시 회원가입의 절차를 줄일 수 있어 환영하는 기능이라고 할 수 있다.
그런데 이 기능을 사이트에 구축할 때 CVE-2023-28131이라는 취약점이 나타날 수 있다고 보안 업체 설트시큐리티(Salt Security)가 최근 밝혀냈다. 하나의 코드베이스를 사용해 iOS, 안드로이드 등 각종 웹 플랫폼을 위한 네이티브 모바일 앱을 개발할 때 유용하게 사용할 수 있는 오픈소스 프레임워크인 엑스포(Expo)에서 오오스를 구현할 때 이 취약점이 나타난다고 한다. 엑스포를 사용하는 온라인 서비스에 소셜미디어 계정으로 로그인 하는 사용자들이 위험할 수 있다는 뜻이다.
참고로 지난 3월에도 설트시큐리티는 부킹닷컴(Booking.com)이 오오스를 구현하는 과정에서 오류를 생성했다는 사실을 밝힌 바 있다. 오오스를 오류 없이 구축한다는 게 그리 간단치만은 않은 일이라고 설트시큐리티 측은 강조했다.
오오스의 구현과 서드파티 리스크
설트시큐리티의 보안 전문가 아비아드 카멜(Aviad Carmel)은 “엑스포는 광범위하게 사용되는 플랫폼이기 때문에 이번에 발견된 취약점의 영향은 상당히 크다고 볼 수 있다”고 경고한다. “전 세계 수천 개 기업들이 엑스포를 이용해 앱을 개발합니다. 그런데 이 엑스포가 오오스를 잘못 구현하는 바람에 취약점이 생겼으니, 이를 모르고 엑스포를 평소처럼 사용하다가는 자동으로 취약점에 노출되는 겁니다. 전수 조사를 해보지는 못했지만 족히 수천 개의 웹사이트와 앱들이 지금 CVE-2023-28131 익스플로잇 공격에 노출되어 있을 겁니다.”
게다가 오오스는 현대 웹 서비스 환경에서 사실상 ‘표준’으로 자리를 잡은 인증 기술이다. 빠르게 늘어나고 있는 인공지능 기반 플랫폼들에서도 오오스의 위상은 더 높아지면 높아졌지 전혀 낮아지지 않고 있다. SaaS 보안 업체 두컨트롤(DoControl)에 따르면 서드파티 인공지능 앱의 24%가 오오스를 활용하고 있다고 할 정도다. 엑스포의 측면에서 봐도, 오오스의 측면에서 봐도, 이번에 발견된 취약점의 영향력이 광범위하다는 말로는 부족할 정도로 넓을 것이라는 걸 알 수 있다.
엑스포 측은 설트시큐리티가 문제를 제보하자 수시간 만에 패치를 개발해 발표했다. 그리고 이 사실을 공개해 최대한 많은 사람들이 빠르게 문제를 해결할 수 있도록 했다. 때문에 이제는 엑스포를 사용하는 개발자들이 이 소식을 접하고 패치를 적용하기만 하면 된다. 그 기간은 짧으면 짧을수록 좋다.
하지만 이번 문제가 해결된다고 해서 상황이 종료되는 건 아니다. 오오스라는 사실상의 표준을 구현하는 과정에서 취약점이 빈번하게 나오고 있기 때문이다. 이를 올바로 구축해 설정한다는 것이 난이도 높은 작업이라는 게 문제인데, 이는 앞으로도 비슷한 문제가 계속해서 나올 거라는 뜻이며, 나올 때마다 광범위한(오오스가 널리 사용되므로) 영향력을 미칠 것이라는 뜻이다. 보다 근본적인 해결책이 등장하지 않는다면 무슨 일이 벌어져도 이상하지 않을 정도다.
오오스, 왜 어려운가
오오스는 일반 웹 사용자들의 인증 과정을 크게 간소화시키기 때문에 높은 인기를 구가하고 있으며, 앞으로도 쉬이 대체되지 않을 것으로 예상된다. 하지만 사용하기에 쉽도록 만들어진 만큼 뒷단이 매우 복잡하게 만들어져 있다. 이 때문에 구현 시 취약점이 자주 나타나며, 익스플로잇 공격에 노출되는 것이다. “즉 오오스의 기능들에 대한 기술적 이해도를 높이는 게 궁극적인 오오스 보안을 위한 왕도”라고 카멜은 강조한다.
“공격자들도 오오스가 꽤나 삐걱거리는 요소라는 걸 인지하고 있습니다. 그래서 오오스가 도입되어 있는 곳은 한 번쯤 흔들어보죠. 흔들리면 침해하여 공격을 시도합니다. 이게 오오스의 현황이라고 할 수 있습니다. 그러므로 오오스를 구현했다면, 오오스로 전송되는 사용자의 입력값을 엄격히 관리해야 할 필요가 있습니다. 화이트리스팅도 좋은 방법 중 하나가 될 수 있습니다.”
카멜은 “아무래도 오오스 구현의 난이도가 문제의 근원인 만큼 안전을 위한 가이드라인이 있다면 도움이 되지 않겠느냐”며 “조만간 안전한 오오스 구축을 위한 최고 실천 사항을 담아낸 가이드라인을 제작할 예정”이라고 살짝 귀띔하기도 했다. 다만 그 시점이 언제가 될 지는 본인도 확신할 수 없다고 인정했다. “나오면 설트시큐리티를 통해 공식 발표할 것입니다.”
3줄 요약
1. 편리한 로그인의 대명사가 되어가고 있는 오오스이지만 구현 난이도가 너무 높음.
2. 오오스 구현 과정에서 취약점이 연달아 나오는 중.
3. 오오스에 대한 이해도 높이는 게 관건.
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>