“허위사실 유포로 인한 명예훼손에 대한 경고” 경고장에 대한 공개 답변

안녕하세요, 주식회사 티오리한국 (이하 “티오리”) 대표 박세준입니다.

저는 티오리 팀원들과 함께 2019년 10월 7일부터 10월 25일까지 국내외 앱 보안솔루션 10여개에 대한 보안성 검증 연구를 진행하였습니다. 또한, 진행된 연구의 결과를 바탕으로 2019년 11월 7일에 해당 내용을 국제해킹보안컨퍼런스 Power Of Community (이하 “POC”)에서 발표하였습니다. 발표에서도 언급했듯이 본 연구의 목적과 취지는 현존하는 다양한 앱 보안솔루션들을 직접 기술적으로 분석하여 보다 객관적으로 기능 및 성능을 비교하여 앱 보안솔루션의 도입을 고민하는 기업관계자들 뿐 아니라 도입하여 사용하고 있는 기업들이 정확한 위협모델링을 할 수 있도록 돕기 위함이었습니다.

발표자료: https://github.com/theori-io/POC2019-BAOBAB/tree/master/slides

마케팅 자료 등은 참고하지 않고 기술에 기반한 검증에만 집중한 결과, 아쉽게도 모두가 좋은 성적을 받지는 못하였습니다. 발표 이후 몇몇 국내 솔루션 업체에서는 직/간접적으로 “이번 발표가 자극이 많이 되었고, 부족한 부분들을 개선하여 더 좋은 제품을 만들도록 하겠다”는 취지의 메세지와 함께 해당 연구에 대한 칭찬과 해당 솔루션 개발자로서의 각오와 포부를 전달해주셨습니다.

하지만, 저희가 도출한 연구 결과에 수긍하지 못하는 업체도 있었습니다. 심지어 해당 업체는 저희의 연구결과와 발표가 허위사실을 유포함으로서 심각한 명예훼손을 입었다며 꽤 규모가 큰 법무법인에게 위임하여 형사고발을 예견하는 경고장을 보내왔습니다. 현재 GitHub을 통해서 공개되어 있는 발표 자료에서 해당 업체 관련 부분을 삭제하고, 허위 사실 유포에 대한 사과문 제출과, 추후 다시는 해당 업체에 대한 사실적시도 하지 않겠다는 서약서를 담당 법무법인에게 제출하면 형사고발을 하지 않겠다는 취지의 경고장이었습니다.

이에대해 상도의적 관점에서 공개된 자료에 있는 업체명 삭제는 요청에 따라 삭제해드릴 수 있으나, 애시당초 허위 사실 유포를 한 적이 없고 사실을 적시하더라도 공익을 위한 연구는 규모있는 회사의 법적 또는 금전적 압박에 억압되지 않아야 한다고 생각하기 때문에 해당 업체에서 요구한 사과문과 서약서는 다음과 같은 이유로 작성 및 제출이 어렵다고 판단을 내렸습니다.

주식회사 에버스핀 (이하 “에버스핀”)에서 주장하는 바는 다음과 같습니다.

  • 에버스핀의 앱 보안솔루션 제품 Eversafe (이하 “Eversafe”)에 관한 허위사실이 적시되어 있어 에버스핀의 명예를 심각하게 훼손 중
  • Eversafe를 해킹이 쉬운 제품군으로 공표하였으나, 이 분석결과는 주관적인 평가로 치부하기엔 다분히 고의적-악의적인 요소가 있음

특히, 고의적이고 악의적인 요소가 있다고 판단되는 배경으로는 다음과 같은 두 가지의 허위사실 적시라고 하였습니다.

허위사실 적시 1

에버스핀의 주장

발표자료에서 인용된 서버 응답 오류 (503) 스크린샷으로 2017년 블로그 (bpak.org)에 게재된 것과 동일한 이미지를 사용함으로써 마치 dynamic module loading이 작동하지 않는 것처럼 표현하여 2년전에 작동하지 않았던 문제가 현재까지도 작동하지 않은 것 처럼 폄하함

답변

경고장에 언급하신대로 2017년에 서버 컴포넌트의 미작동으로 인해 다이나믹 모듈이 실행되지 않은 점은 익히 알고 있습니다. 하지만, 이전과 별개로 진행된 이번 2019년 연구 실험에서도 마찬가지로 서버가 503 에러를 반환하였고, 그에따라 다이나믹 모듈이 로드 되지 않았습니다. 실험 당시, 따로 루팅 사실을 숨기는 스크립트를 적용하지 않은 루팅된 폰임에도 불구하고 전혀 루팅 탐지가 되지 않았고 그 사실에 기반하여 자료를 정리하였습니다.

또한, 구글에서 구글서버가 아닌 에버스핀과 같은 제3사 서버에서 동적으로 코드를 다운로드 받고 로드(실행)하는 행위는 보안상 매우 위험하다고 판단하여 플레이스토어 정책 위반으로 규정하고 있고, 최근 해당 기술을 사용하는 앱들을 플레이스토어에서 제외시키거나 해당 행위를 더이상 하지 않도록 업데이트를 권고 하였습니다. 위 사유로 더이상 해당 (다이나믹) 기능이 작동하지 않았던것 같다고 발표 중에 언급하며 서버가 제대로 동작하지 않은 합리적인 이유를 찾으려 노력하였습니다.

해당 발표자료에 사용된 스크린샷은 제 개인 블로그에 담긴 이미지와 동일한 것이 맞습니다. 이번 실험이 2년전에 비슷한 현상을 보이며 서버가 503 에러를 반환하던 상황과 동일하였기에 해당 장표를 준비한 연구원이 관련 이미지를 참고자료로 인용하였습니다. 발표 중 해당 스크린샷이 이번 실험에서 찍은 내용이라고 언급한 적이 없고, 다만 2년전과 크게 달라진 점이 없다고 발언하며 소개하였습니다.

즉, 에버스핀이 언급한 저희 연구가 2017년의 자료와 상황을 마치 2019년에 일어난 것인양 속여 허위사실을 공표했다는 주장은 어불성설이며 실제로 2019년 10월 실험 당시 서버의 응답이 제대로 오지 않아 다이나믹 보안 모듈이 실행되지 않았습니다. 경고장을 받은 이후, 저희 주장을 뒷받침하기 위해 MITM (Man-in-the-middle) proxy 기술을 이용하여 저희 연구팀이 그 당시 목격한 서버가 503 에러를 반환하는 상황을 시뮬레이션 돌려본 결과 (response 패킷의 status code를 503으로 변경), 실제로 다이나믹 보안 모듈이 실행되지 않고 제대로 된 루팅 디텍션 또한 작동하지 않는 것을 확인하였습니다.

아래는 해당 시뮬레이션 과정과 결과입니다.

위 자료에서 확인할 수 있듯, 서버에서 503 에러가 반환된다면 동적보안모듈이 작동하지 않고 200 정상 코드가 반환될 때만 동적보안모듈이 작동하여 루팅폰을 감지하는 것을 알 수 있습니다.

비고: 에버스핀이 설명한대로 동적모듈이 작동하지 않는 경우에는 기본적으로 정적모듈을 사용하게 되나, 정적 보안모듈은 기본 설치 상태인 루팅 툴 조차 검출하지 못했습니다.

허위사실 적시 2

에버스핀의 주장

Eversafe 보안솔루션은 발표에서 언급한것처럼 간단한 조작으로 초기화 API가 호출되지 않도록 한다 해서 솔루션 기능이 우회되지 않는데, 지극히 일부에 해당되는 화면만 띄우고 솔루션 기능을 손쉽게 우회했다는 거짓된 정보를 만들어 발표함

답변

에버스핀에서는 임의로 “해킹완료”에 대한 정의를 하고 귀사가 정한 정의에 저희가 발표한 내용이 일치하지 않는다며 허위사실이라고 주장하고 있습니다. 우선 해당 내용에 대해 발표에서 주장한 것은 크게 두 가지였습니다:

  1. 보안모듈 초기화 코드 호출이 앱 main activity constructor (생성자)에 들어가 있어서 찾기 쉬웠고, 해당 부분을 호출하지 않도록 변경하면 보안모듈이 작동하지 않는다.
  2. 그렇기 때문에, 동적보안 모듈이 로딩되지 않아 루팅 디텍션이 제대로 작동하지 않았으며 예시로 보인것 처럼 앱 리패키징을 통한 임의의 코드 삽입과 실행이 가능했다.

에버스핀은 “로그인”을 할 수 있는가 없는가를 “해킹완료”의 척도로 정의하고 있습니다. 하지만 위의 내용만으로도 이미 앱의 보안성과 무결성은 잃었다고 평가할 수 있을 뿐만 아니라, 임의의 코드를 실행할 수 있는 상태에서 로그인과 같은 추가 기능을 사용하는 것을 보여주는 것이 전체적인 맥락에서 보았을 때 전달된 정보의 가치나 무게를 크게 변경하지 않는다고 판단하여 더 깊이 다루지 않았습니다.

다만, 에버스핀이 제시한 완전한 해킹의 조건에도 부합하는 솔루션 우회도 이미 연구를 진행하며 성공을 했던 부분입니다. 실제로 에버스핀의 솔루션이 적용된 금융권 뱅킹 앱을 간단히 변조하여 보안모듈을 손쉽게 무력화하고 개인 계정으로 로그인하여 계좌이체까지 문제없이 할 수 있었습니다. 이런 자세한 내용을 발표에 공개하는 것은 이 정도의 깊이로 다루지 않은 다른 솔루션 및 앱 예시들과 비교하였을 때 오히려 형평성을 어긋나게 한다고 판단하여 공개하지 않았습니다.

아래는 현재 최신 버전의 앱을 변조하여 보안모듈을 무력화하고, 로그인 및 계좌이체를 성공적으로 하는 모습입니다. 시연을 위해 단순히 저희 회사명이 담긴 메세지 (토스트) 박스를 띄웠으나, 수신계좌를 임의로 변경하여 의도하지 않은 계좌로 이체하는 앱 변조도 가능합니다.

또한, 에버스핀측은 미국 본사인 Theori와 라온시큐어가 2017년 1월에 작성한 양해각서(MOU) 체결을 인용하며, 이번 발표를 통해 허위사실을 적시하여 에버스핀의 사회적 평가를 저하시키는 반면, 티오리와 특별 관계에 있는 타사의 보안솔루션을 Hard 등급으로 분류하여 간접적으로 홍보하고 있다는 의심을 하였습니다.

하지만 이는 양사간의 관계를 근본적으로 오해하여 주장하는 내용입니다. Theori는 라온시큐어와 2017년 초에 솔루션 또는 제품 등과 전혀 무관하게 보안컨설팅 업무를 주로 하는 라온 화이트햇 센터와의 적극적인 협력을 위해 MOU를 맺었으나, 그 이후로 참여 기업들은 단 한 번의 교류도 없이 표면적인 제휴 관계를 유지하다가 1년 뒤인 2018년 초에 종결하였습니다. 해당 연구가 진행된 시점에서 에버스핀이 믿고 있는 것과는 다르게 저희는 라온시큐어와 이해관계가 없었습니다. 다시한번 강조하지만, 저희 연구에서 어떤 특정한 회사나 솔루션을 홍보할 이유가 없습니다.

더욱이, 연구를 위한 솔루션 선정 중에는 2년전 공개된 자료에 비해 큰 변화가 없었던 에버스핀을 포함시키지 않을 계획이었으나, 국내외 큰 규모의 금융권 앱에서 사용되고 있음에도 특정 업체를 제외함으로서 오히려 형평성에 관한 오해가 생길 수 있다는 판단하에 에버스핀을 목록에 추가하였습니다. 솔루션의 선정은 공개된 정보안에서 사회적으로 큰 영향력을 미치는 것을 기준으로 하였기에, 에버스핀에서 주장하는 특정한 업체의 사회적 평가를 저하시키기 위해서 이런 복잡한 연구를 진행하고 발표했다는 것은 신빙성이 없습니다. 이는 에버스핀의 취약함을 언급하기 위한 목적으로 다른 업체들은 그럴 가치가 없음에도 선정하였다는 듯한 자기중심적인 생각이며, 타 업체들을 기만하는 발언이라고 생각합니다.

아시다시피, POC는 국내외 해커와 보안전문가들이 주도하는 국제컨퍼런스로 최신 보안기술을 알리는 한편 더 나은 솔루션을 위하여 기존 솔루션의 취약점을 찾고 그 결과를 공유하는 장입니다. 저와 티오리 팀원들이 보안성 검증 연구를 한 결과, 귀사의 솔루션이 보안적으로 매우 취약하다는 평가를 한 것에 대해 불편한 감정을 느끼셨다면 이는 심적으로 충분히 이해할 수 있습니다. 그러나 제 발표내용을 취약점을 보완하여 보다 나은 보안솔루션을 만들기 위한 계기로 삼는 것이 아니라, 대형 로펌을 선임하여 사실을 왜곡하고 형사고소 운운하며 보안기술 연구자들을 겁주어 귀사에 대한 부정적인 평가를 덮으려고만 하는 귀사의 대응방식에 깊은 유감을 표합니다.

에버스핀은 경고장을 통해 2019년 11월 29일, 오늘까지 성의 있는 사과문과 서약서를 작성하여 에버스핀이 선임한 로펌에 제출하지 않으면 ‘수사기관에서 만나게 될 것’이라고 하였습니다. 저는 에버스핀의 경고장에 대해 위와 같은 내용으로 공개답변을 게시하며, 보다 많은 분들의 피드백을 통해 제가 에버스핀에 대해 허위사실을 적시한 것인지, 제가 Eversafe를 해킹이 쉬운 제품군(easy)으로 분석한 것이 다분히 고의적이고 악의적인 것인지 의견을 듣고자 합니다.

저는 보안기술 연구자로서 이러한 연구와 발표들, 그리고 이 공개답변을 통해 이뤄질 공론장을 통하여 더 많은 관련기술자들이 현존하는 기술을 발전시키고 그에 따라 사용자들이 보다 안전한 환경에서 모바일 앱을 사용할 수 있기를 기대합니다.