한국어

EDPS

국정원 해킹 SW 소스코드 열어보니…

조회 수 33 추천 수 0 2015.07.17 10:03:08

국정원이 이탈리아 업체 해킹팀으로부터 스파이웨어 ‘리모트 컨트롤 시스템(RCS)’을 구입한 사실이 드러났다. 국정원은 스파이웨어를 구입해 어디에 어떻게 활용했을까. 의문이 드는 것은 당연하다. 이병호 국정원장과 국정원 관계자들은 지난 14일 국회에서 열린 정보위원회 전체회의에 출석해 “북한 공작원을 대상으로만 활용했으며, 기술 연구용으로 구입한 것”이라고 해명했다. 이 말을 곧이곧대로 믿는 이들은 그리 많지 않다. 국회 정보위원회에서는 국정원 실사를 계획 중이다.


RCS는 사용자의 스마트폰에 사용자 몰래 설치된다. 스마트폰으로 할 수 있는 거의 모든 일을 감시하도록 설계돼 있다. 심각한 인권침해로 이어질 수 있는 일이다. 수사를 목적으로 했다 해도 과도한 기능이라는 견해가 지적도 나온다. 혹여 내 스마트폰에도 RCS가 설치돼 있는 것은 아닐까. 국내 보안 업체 엠시큐어가 개발한 안드로이드 스마트폰용 보안 응용프로그램(앱) ‘스파이 스캐너’가 15일부터 서버 판올림을 통해 RCS를 검출할 수 있는 기능을 제공하기 시작했다. 엠시큐어의 도움을 받아 RCS의 소스코드를 살펴봤다. RCS에 사각지대는 없었다.


spy_2_800

RCS안드로이드의 소스코드



스마트폰 사용할 때마다 서버로 전송

엠시큐어는 캐나다 토론토대학의 사이버연구팀 시티즌랩이 공개한 RCS 소스코드를 활용해 스파이 스캐너 앱에 RCS 검출 기능을 판올림했다. 시티즌랩이 공개한 RCS 소스코드는 누구나 볼 수 있다. 소스코드를 본 홍동철 엠시큐어 연구소장은 “RCS는 스마트폰으로 할 수 있는 거의 모든 기능을 털어갈 수 있게 돼 있다”라고 설명했다.



RCS의 대표적인 기능이 전화통화 감시다. RCS는 안드로이드 운영체제(OS)의 ‘브로드캐스트 리시버’를 활용한다. 브로드캐스트 리시버란 전화통화나 문자메시지가 왔을 때 알려주는 역할을 하는 영역이다. RCS에 감염된 스마트폰에 전화나 문자메시지가 오면, 공격자가 이를 바로 알 수 있다. 스마트폰의 전화통화 내용은 녹음파일 형태로, 문자메시지는 문자 형태로 서버에 전송한다. 물론, 서버는 공격자가 갖고 있는 서버다.


시티즌랩이 공개한 RCS 소스코드에는 ‘RCS안드로이드’라는 이름이 붙어 있다. 이름 그대로 사용자의 스마트폰에 설치돼 정보를 서버로 전송하는 역할을 하는 앱이다. 김광진 새정치민주연합 의원이 지난 13일 밝힌 자료에 따르면, 국정원은 ‘떡볶이 맛집’이나 ‘메르스 정보’ 등을 키워드로 URL을 발송한 것으로 드러났다. URL을 눌렀을 때 스마트폰에 자동으로 설치되는 것이 바로 RCS안드로이드다.


홍동철 연구소장은 “RCS안드로이드에는 스마트폰 전원이 켜질 때 자동으로 실행되도록 하는 소스코드도 있고, 사용자가 잠금해제를 할 때도 알려주기도 한다”라며 “사용자의 스마트폰을 실시간으로 감시하며 데이터를 전송하는 것으로 보인다”라고 설명했다.


sapy_3_800

홍동철 엠시큐어 연구소장



텔레그램부터 페이스북 메신저까지 모두 감시 가능해

스마트폰의 모든 기능을 감시하는 것이 RCS안드로이드의 역할이지만, 해킹팀은 그중에서도 스마트폰의 메시지 앱을 감시하는 데 많은 공을 들인 것으로 보인다. RCS안드로이드 소스코드 속에는 ‘블랙베리 메신저(BBM)’와 중국의 ‘위챗’, ‘스카이프’, ‘라인’, 구글의 ‘행아웃’. ‘페이스북 메신저’ 등 다양한 메신저 앱을 감시할 수 있는 소스코드가 포함돼 있다. 지난 2014년 뛰어난 보안 기능으로 국내에서 인기를 끈 ‘텔레그램’도 포함돼 있었다.


사용자가 스마트폰에서 메시지 앱으로 대화를 하면, 스마트폰 안에 대화 내용이 남는다. 메시지 앱 개발업체의 서버와는 관계없는 일이다. RCS안드로이드는 스마트폰 안에 남아 있는 대화 내용을 감시자에게 보내는 역할을 한다. 메시지 앱 중에서는 스마트폰 안에 대화 기록을 남길 때 암호화해 기록하는 것도 있다. RCS안드로이드 앞에서는 이마저도 무력하다. 홍동철 연구소장은 다음과 같이 설명했다.


“RCS는 텔레그램도 털 수 있어요. 텔레그램은 단말기에 대화를 저장할 때도 암호화를 하는데, RCS도 그걸 그냥 읽지는 않더라고요. 암호화된 텍스트를 단말기 안에서 풀어서 서버로 전송하는 소스코드가 포함돼 있었습니다.”


단순히 텔레그램도 털릴 가능성이 있다는 것만을 시사하는 것은 아니다. RCS 소스코드를 보면, 해킹팀이 아닌 다른 개발자나 해커도 텔레그램의 암호화 방법을 알 수 있다는 뜻이다. 텔레그램이 메시지를 저장할 때 쓰는 암호화 방식을 바꾸기 전까지는 RCS와 같은 스파이웨어를 통한 유출은 언제든지 발생할 수 있다. 페이스북 메신저나 라인 등을 비롯해 국내에서 자주 쓰이는 다른 앱도 상황은 같다.


국정원이 해킹팀과 주고받은 e메일에서 ‘카카오톡’이 언급된 바 있다. 국정원이 직접 해킹팀에 카카오톡 감시 기능을 주문한 것으로 추정되는 대목이다. 엠시큐어와 확인한 RCS안드로이드 소스코드에는 카카오톡 관련 기능은 포함돼 있지 않았다. 적어도 RCS 소스코드가 유출된 시점에서는 카카오톡을 감시할 수 있는 기능이 추가되지는 않은 것으로 추정된다.


“SMS는 물론이고, 멀티미디어 메시지 서비스(MMS)도 뚫도록 해놨더라고요. 메시지 외에도 전화나 사진, 화면캡처, 마이크, GPS 등 RCS안드로이드에 포함된 감시 기능이 25개가 넘어요. 사실상 모든 것을 감시할 수 있는 수준입니다.”


spy_1_800

안드로이드 스마트폰으로 시연한 ‘RCS 안드로이드’



‘알 수 없는 출처’ 막는 것이 최선

어떻게 이런 일이 가능한 것일까. RCS안드로이드는 안드로이드 OS의 취약점을 이용해 ‘루트권한’을 탈취한다. OS의 가장 최상위에 있는 권한이라고 생각하면 된다. RCS안드로이드가 스마트폰에 설치된 메시지 앱 등 다양한 서비스에 접근할 수 있는 것은 이 같은 이유에서다. RCS가 사용자 몰래 루트권한을 얻도록 설계된 탓에 이른바 ‘루팅’ 된 스마트폰이 아니어도 안심할 수 없다.


가장 확실한 대안은 안드로이드 스마트폰에서 ‘알 수 없는 출처’ 앱 설치를 허용하지 않는 일이다. RCS안드로이드 뿐만 아니라 다양한 스파이웨어가 기승을 부리는 오늘날에는 ‘알 수 없는 출처’에서 나온 앱은 설치하지 않는 것이 안전하다. 설정 방법은 다음과 같다. 안드로이드 스마트폰의 ‘설정’ 앱을 들어가 ‘보안’ 메뉴를 선택한다. ‘알 수 없는 출처’ 항목의 체크박스에 ‘v’ 체크가 돼 있다면, 이를 해제하면 된다. 가장 기초적인 보안 설정이 가장 견고한 보안을 보장하는 셈이다.


‘알 수 없는 출처’ 항목에서 ‘v’ 체크를 지우면, RCS안드로이드도 사용자의 스마트폰에 설치되지 않는다. 물론, 다양한 피싱 수법을 이용해 사용자 스스로 ‘v’ 체크를 하도록 유도할 수는 있다. 혹여, 앱 설치 전에 사용자에게 ‘v’ 체크를 하도록 유도하는 앱이나 서비스가 있다면 일단 의심부터 하는 것이 좋다고 홍동철 연구소장은 조언했다.


hack_5_800

국정원은 2014년 3월 해킹팀에 ‘카카오톡’ 관련 기능을 문의한 것으로 추정된다.



RCS는 아이폰도 볼 수 있을까

해킹팀의 RCS는 애플의 ‘아이폰’도 감시할 수 있는 것으로 알려졌다. 일반적으로 아이폰의 iOS는 안드로이드와 비교해 상대적으로 안전한 것으로 알려져있다. 아이폰 사용자도 감시 대상이 될 수 있었다는 소식에 많은 혼란이 야기됐다. RCS 소스코드를 살펴본 결과 아이폰 사용자는 일단 안심해도 된다.


RCS가 아이폰도 탈취할 수 있었던 것은 사실이다. 하지만 이미 예전 얘기다. RCS 소스코드를 보면, 감시할 수 있는 iOS 버전이 4.3.3으로 표기돼 있다. iOS 4.3.3은 지난 2011년 5월 처음 발표됐다. 현재 아이폰 사용자 대부분은 iOS7 이상을 사용 중이다. 애플이 발표한 iOS 최신 버전은 8.4다. 구형 제품인 ‘아이폰3GS’나 ‘아이폰4’를 쓰면서 지금까지 iOS 판올림을 제대로 진행하지 않은 사용자가 아닌 이상 RCS의 아이폰 탈취 문제는 걱정하지 않아도 된다. 물론, 유출된 RCS 소스코드를 보았을 때 그렇다는 것뿐이다. 이후 iOS에 관한 어떤 기능이 추가됐는지는 확인할 수 없었다.


홍동철 연구소장은 “2011년 7월에 인터넷에서 ‘comex’라는 이름을 쓰는 해커가 iOS 4.3.3을 자동으로 탈옥할 수 있는 도구를 공개했던 적이 있는데, 아마 해킹팀의 RCS도 당시 그 취약점을 이용한 것은 아닌가 의심된다”라고 덧붙였다.



[새소식]

인터뷰 내용 중 텔레그램과 관련해 잘못된 내용을 수정합니다. 본문에서는 RCS안드로이드가 텔레그램의 암호화된 텍스트를 해독해 공격자의 서버로 전송한다고 소개했습니다. 추가 취재 결과 이는 틀린 내용입니다. 텔레그램은 ‘일반대화’ 기능의 메시지가 사용자의 스마트폰 메모리에 평문으로 저장되는 취약점을 갖고 있습니다. RCS안드로이드는 바로 이 부분을 이용해 공격자의 서버로 메시지를 전달하는 기능을 포함한 것입니다. RCS안드로이드는 텔레그램의 암호화된 메시지를 해독하는 것과 관련이 없습니다. (2015년 7월16일 오후 6시09분)

List of Articles
번호 제목 글쓴이 날짜 조회 수
59 O2O는 온라인 접수 창구가 아니다 WindBoy 2015-07-27 50
58 영감 넘치는 문장을 흘려보내기 아쉽다면 … ‘원센텐스’에 쌓아달라 file WindBoy 2015-07-22 36
57 해고 위험도 평가 : 직장을 잃을 가능성 계산해보기 WindBoy 2015-07-21 31
56 '경력 관리 노하우' 서툰 상사와 일하는 방법 [1] WindBoy 2015-07-21 59
55 IT인의 몸 값 올리기 “시간을 지배하라” WindBoy 2015-07-21 26
54 기업이 구글에서 배워야 할 5가지 교훈 WindBoy 2015-07-21 20
53 좋은 개발 코드의 8가지 특징 : 핵심은 품질 WindBoy 2015-07-20 25
52 트랜드 지식사전 1 - 넷플릭스 WindBoy 2015-07-17 21
» 국정원 해킹 SW 소스코드 열어보니… WindBoy 2015-07-17 33
50 현실화되는 '페이퍼리스'··· 업무 디지털화 3단계 WindBoy 2015-07-07 378
49 펌] IT리더의 두 가지 유형 WindBoy 2015-07-02 34
48 페이스북의 거침없는 질주 WindBoy 2015-07-02 14
47 유머스런 데이터 파괴하는 방법 9가지 (혁신적일까? ....) WindBoy 2015-07-01 16
46 역사상 가장 맥락 없는 TV가 나왔다. WindBoy 2015-06-30 19
45 SNS로 홍보하고 싶은 사장님! “꼭 읽어주세요” WindBoy 2015-06-26 17
44 화성에서 온 현업, 금성에서 온 개발자 WindBoy 2015-06-25 24
43 사자성어 살짝 비틀어보기 – 마이동풍, 우이독경 [1] WindBoy 2015-06-25 66
42 '신제품 출시·마케팅은 이렇게' 전문가들이 전하는 9가지 팁 WindBoy 2015-06-22 32
41 '마케팅과 IT 사이에서' 어떻게 균형을 잡을까 WindBoy 2015-06-22 21
40 기업이 소셜 미디어의 '악플러'에 대처하는 5가지 방법 [1] WindBoy 2015-06-18 11