Breaking
사이버 보안(Cybersecurity)
셰어잇 안드로이드앱서 보안 결함 발견, 대규모 데이터 유출 발생 우려돼
2019-05-14 09:01:36
장희주
▲공유 앱 셰어잇의 안드로이드앱에서 보안 결함이 발견됐다(사진=ⓒ위키미디어커먼즈)

[라이헨바흐=장희주 기자] 세계적인 파일 공유앱 셰어잇에서 보안 결함이 발견됐다. 그러나 회사측에서 이 사실을 최근까지 공개하지 않아 논란이 예상된다.

안드로이드, 윈도우, iOS 및 맥 장치용으로 널리 사용되는 파일 공유 응용 프로그램인 셰어잇에서 공격자가 장치 간 인증 프로세스를 우회해 사용자의 파일을 다운로드할 수 있는 취약점이 드러났다.

서로 협력하는 취약점

발견된 결함은 두 가지인데, 이 두 가지는 각각 다른 기능을 하지만 서로 협력하는 구조다. 공격자들은 첫 번째 결함을 이용해 개인의 장치 간 인증 프로세스를 우회할 수 있으며 다른 결함을 이용해 장치에 액세스할 수 있다.

이 앱에 공유한 파일이 별로 없거나 다른 사람에게 드러나서는 안 되는 파일을 공유하지 않은 사용자는 크게 걱정하지 않아도 된다고 생각할 수 있지만 이런 종류의 취약점이 발견된 이상 안심할 수 없다.

이 취약점은 공격자의 미디어 파일(비디오, 음악, 사진 및 문서)을 열 뿐만 아니라 페이스북(Facebook) 인증 토큰 및 웹 사이트 쿠키와 같은 데이터 파일도 유출할 수 있기 때문이다.

▲앱 시스템에서 사용자를 해치고 개인 데이터를 악용할 우려가 있는 결함이 발견됐다(사진=ⓒ픽사베이)

이 결함은 CVSS 3.0 점수가 8.2일 정도로 심각도가 높으며 장치가 공유 와이파이 네트워크에 연결돼 있으면 공격자로 인해 악용될 수 있다. 공격자는 두 개의 열린 포트 (포트 55283 및 포트 2999)만 확인하면 피해자가 장치에서 셰어잇 앱을 적극적으로 사용하고 있는지 판단 가능하다.

포트 55283(명령 채널이라고도 함)은 앱이 기기 식별 및 파일 전송 요청과 같은 메시지를 다른 기기와 교환 할 수 있는 TCP 채널이다. 한편 포트 2999(다운로드 채널)를 사용하면 앱은 자체 HTTP 구현을 통해 사용자가 다른 장치에서 공유 파일을 다운로드할 수 있는 권한을 부여한다. 앱의 결함을 통해 사용자의 기기에 침투한 공격자는 포트를 통해 열린 네트워크에서 사용자의 개인적인 데이터를 훔칠 수 있다.

레드포스의 보안 엔지니어인 압둘라만 누어는 "셰어잇 앱에서 발견된 취약성은 매우 심각한 것이다. 파일을 공유하기 쉽게 SSID를 지닌 개방형 와이파이 핫스팟을 생성할 수 있기 때문이다. 개방형 와이파이 네트워크가 주변에서 감지된다면 공격자가 근처에 있다는 뜻이다"라고 말했다.

장치 인증 버그

일반적인 셰어잇 파일 전송 과정은 다음과 같다. 보내는 사람이 공유할 파일을 선택한 다음 장치 인증을 시작하면 수신자는 전송 준비가 완료됐음을 나타내는 제어 메시지를 보낸 사람으로부터 받게된다. 그러면 수신자는 파일을 수락할지 여부를 결정할 수 있다. 수락하면 파일 전송이 시작된다. 그리고 수신자는 복제된 파일이 전송 대기열에 있는 모습을 보게 된다. 그런 다음 파일은 다운로드 채널로 이동하고, 수신자는 자신의 기기에 파일이 전송된 것을 확인할 수 있다.

보안 연구원은 이 과정에서 인증받지 않은 사용자가 존재하지 않는 페이지를 가져오려고 시도할 수 있음을 발견했다. 셰어잇의 버그로 인해 사용자가 전체 인증 프로세스를 거치지 않고도 인증을 받을 수 있었기 때문이다.

이 결함은 보낸 사람이 모든 파일 전송을 허용했는지 확인하는 데 실패하면서 발생했다. 즉, 같은 네트워크에 존재하던 공격자가 송신자나 수신자의 눈에 띄지 않고 이들 사이에서 오간 파일을 가로챌 수 있는 것이다.

누어는 "인증되지 않은 사용자가 비정상적인 동장을 취해 일반적인 404 페이지 대신 존재하지 않는 페이지를 가져오려고 시도할 수 있다. 이때 앱의 결함 때문에 공격자가 장치에 추가된다"고 설명했다.

셰어잇의 묵묵부답

이 회사는 이미 1년 넘게 이 두 가지 취약점을 알고 있었다고 밝혔다. 이 결함은 2017년 12월에 처음 발견됐으며 회사 측은 2018년 3월에 조치를 취했다고 발표했다. 셰어잇이 조치를 취하는 데 3개월이나 걸린 이유는 취약점을 수정하기 전에 모든 사용자들이 장치에서 앱을 업데이트할 충분한 시간을 제공하기 위해서였다고 한다.

누어는 "이 취약점은 원래 2017년 12월에 발견됐고 2018년 3월에 공식적으로 수정됐지만 이 취약점이 미칠 영향, 그리고 착취의 용이성 등을 감안해 셰어잇 측이 취약점의 세부 정보를 밝히지 않기로 결정했다. 중요한 취약점을 공개하기 전에 가능한 많은 사람들에게 앱을 업데이트할 시간을 부여했다"고 덧붙였다.

그러나 셰어잇은 그 외에도 취약성을 수정한 패치 버전의 상세 사항을 전달하지 않았으며 현재 안드로이드 앱이 안전한지 여부에 대해서도 언급하지 않았다. 또 연구진이 수사를 진행하는 동안에도 상세한 사항을 전달하지 않았다.

▲셰어잇은 안드로이드 앱 결함을 해결하기 위해 업데이트를 촉구했다(사진=ⓒ위키미디어커먼즈)

누어는 "셰어잇 팀과의 의사소통은 전혀 좋은 경험이 아니었다. 이들은 매우 비협조적이었고, 무언가를 요청했을 때 답변하는 데 매우 오랜 시간이 걸렸으며 우리의 노력은 전혀 감사받지 못했다"고 토로했다.

다른 언론 매체도 셰어잇에 연락을 취하려고 시도했지만 이들은 답변하지 않았다.

셰어잇 측은 위험 요소를 없앴다고 주장하고 있지만 이 앱의 결함 내용으로 볼 때 잠재적인 피해 규모를 과소평가할 수는 없다. 전 세계적으로 15억 명의 사람들이 이 앱을 사용하고 있으며 그중 3분의 1인 5억명이 안드로이드 사용자다. 만약 이 결함이 악용됐다면 수많은 안드로이드 사용자는 물론 안드로이드 시장 전체가 중대한 위협에 직면했을 수 있다.

[라이헨바흐=장희주 기자]