| 전 세계 수천만 대 IoT 장비 비상! 칼레이 프로토콜이 문제의 근원 | 2021.08.18 |
수천만 대 IoT 장비에 SDK 형태로 구축된 칼레이 프로토콜에서 9.6점짜리 위험한 취약점이 발견됐다. 교묘히 활용만 잘하면 피해자의 네트워크에 몰래 들어가 자기 장비를 등록시켜서 크리덴셜을 수집할 수 있게 된다. 그리고 이 크리덴셜들로 각종 악성 행위를 저지를 수 있다.
[보안뉴스 문가용 기자] 미국의 국가 사이버 보안 전담 기관인 CISA가 IoT 장비들 수천만 대에서 발견된 취약점에 관한 보안 권고문을 발표했다. 이 취약점은 CVE-2021-28372로, 보안 업체 맨디언트(Mandiant)의 제이크 발레타(Jake Valletta), 에릭 바르즈두카스(Erik Barzdukas), 딜론 프랑크(Dillon Franke)가 발견했다. 취약점의 CVSS 점수는 9.6점이라고 한다. ![]() [이미지 = utoimage] 취약점의 근원은 칼레이(Kalay)라고 하는 프로토콜이다. 칼레이 프로토콜은 모바일이나 데스크톱 애플리케이션처럼 클라이언트 소프트웨어에 일종의 SDK 형태로 탑재된다. 또한 네트워크 카메라 등과 같은 사물인터넷 장비들에도 널리 사용되고 있다. 칼레이를 개발한 쓰루텍(ThroughTek)은 전 세계에 8300만 대 이상의 장비들이 한 달에 11억 번 넘게 칼레이 프로토콜을 통한 연결 요청을 한다고 한다. 주요 고객사들로는 IoT 카메라, 베이비 모니터, 디지털 비디오 레코더 제조사들이 있다고 한다. 쓰루텍의 상품에서 오류가 발견된 건 이번이 처음이 아니다. 올해 5월 보안 업체 노조미 네트웍스(Nozomi Networks)가 보안 카메라에 영향을 미치는 취약점을 쓰루텍의 소프트웨어에서 발견한 바 있다. 다만 이번에 발견된 CVE-2021-28372의 경우 공격자가 원격에서 장비와 통신할 수 있게 해 준다는 위험성이 있다. 즉 원격 코드 실행 취약점 공격이 가능하다는 것이다. 맨디언트의 연구원들은 칼레이 프로토콜을 분석하기 위해 두 가지 접근법을 사용했다. 먼저는 구글 플레이와 애플 앱스토어에서 쓰루텍 라이브러리가 포함된 애플리케이션들을 다운로드 받아 분해했다. 그 다음에는 칼레이가 활성화 되어 있는 장비들을 직접 구입해 각종 모의 공격을 실시했다. 특히 셸 접근, 펌웨어 이미지 추출 등의 공격에 집중했다고 한다. 그러면서 수개월 동안 칼레이 프로토콜의 기능적 구현(functional implementation)에 성공했다. 그러면서 이 프로토콜을 써서 네트워크에서 장비를 발견하고, 장비를 등록시키기고, 원격 클라이언트를 연결시키고, 인증하고, 오디오와 비디오 데이터를 처리할 수 있게 되었다. 프로토콜과 친해지는 기간을 갖게 된 것이고, 그 후에는 취약점을 찾는 작업이 본격적으로 진행됐다. 그렇게 발견된 것이 CVE-2021-28372이다. 맨디언트의 연구원들은 자사 블로그를 통해 “칼레이가 활성화 된 장비들이 칼레이 네트워크에 접근하고 연결되는 방식에 취약점이 영향을 미친다”고 설명하고 있다. “예를 들어 공격자가 공격 대상으로 선정된 장비의 고유 식별자(UID)에 접근하는 데 성공했다면 장비를 네트워크에 등록시킴으로써 칼레이 서버에서 기존 등록 장비를 덮어쓰기 할 수 있게 됩니다. 이러면 덮어쓰기 된 장비에 접근할 때 공격자가 등록시켜 둔 장비로 접속이 됩니다. 이렇게 장비를 계속 바꿔치기 하면 자연스럽게 사용자들의 ID와 비밀번호까지 수집할 수 있게 됩니다.” 연구원들은 “훔쳐낸 크리덴셜을 통해 공격자들이 각종 정보에 접근하고 원격 프로시저 콜을 호출할 수 있게 된다”고 설명한다. “이렇게 공격자가 접근하게 된 네트워크에 RPC 인터페이스 취약점이 존재한다면 장비의 완전 장악까지도 할 수 있습니다.” 물론 이렇게 칼레이 프로토콜을 공격하려면 맨디언트 연구원들처럼 칼레이라는 기술에 친숙해져야 한다. 또한 칼레이의 UID를 획득하려면 소셜엔지니어링 공격을 따로 진행하기도 해야 한다. 혹은 API의 취약점을 익스플로잇 할 수도 있다. 귀찮을 수 있고 어려울 수도 있지만 불가능한 건 아니라고 맨디언트는 강조한다. 맨디언트는 이 취약점을 쓰루텍 및 CISA에게 먼저 알리고 취약점 해결을 위한 작업을 실시했다. “칼레이 SDK가 3.0 이하 버전이면 3.3.1.0이나 3.4.2.0으로 업그레이드 하고, 오스키(Authkey)와 데이터그램 트랜스포트 레이어 시큐리티(Datagram Transport Layer Security, DTLS) 기능을 활성화시켜야 합니다. 칼레이 SDK가 3.1.10 이상 버전이라면 오스키와 DTLS를 활성화시키는 것으로 어느 정도 위험에 대처할 수 있습니다. 그 외 칼레이 UID를 보호하기 위한 다른 보안 장치들을 마련하는 것이 좋습니다.” 중요한 건 칼레이가 탑재된 IoT 장비의 사용자 혹은 소유자들이다. “소프트웨어와 애플리케이션 업데이트를 빠르게 적용하고, 비밀번호를 어렵고 복잡하게 설정하는 게 중요합니다. 또한 공공 와이파이에 연결하는 것도 자제하는 것이 좋습니다.” 또 맨디언트는 칼레이를 사용하는 IoT 제조사들이 칼레이 UID와 관련된 웹 API를 단단히 보호하는 게 안전하다고 강조하기도 했다. 3줄 요약 1. IoT 장비 수천만 대에서 사용되고 있는 칼레이 프로토콜에서 취약점 발견됨. 2. 이 취약점을 익스플로잇 하는 데 성공하면 네트워크에 침투해 장비 완전 장악할 수 있음. 3. 물론 그러려면 칼레이 프로토콜이라는 것에 대한 높은 이해도가 갖춰져야 함. [국제부 문가용 기자(globoan@boannews.com)] <저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지> |
|
|
|