소스코드 바꾸는 앱보안 기술 주목

에버스핀, 국내 시장 본격 노크

일반입력 :2015/04/24 08:45    수정: 2015/04/24 22:20

손경호 기자

이전까지 모바일뱅킹, 온라인쇼핑몰용 애플리케이션(앱)들은 보안성을 높이기 위해 본인인증을 강화하는 방법을 활용해왔다. 근거리무선통신(NFC), 일회용비밀번호(OTP), QR코드, 지문인식 등이 모두 사용자가 실제 해당 앱으로 이체, 결제했는지 등 여부를 확인하는 용도로 활용되고 있다.

문제는 이러한 방법을 활용한다고 해도 앱 자체에 대한 보안성을 확보하지는 못한다는 점이다. 해커들이 앱 소스코드를 분석하기 어렵도록 난독화하는 기술이 등장하고 있지만 결국에는 분석이 가능하다는 점에서 한계가 있다. 아무리 인증단에서 사용자 본인이 맞는지 확인하는 과정을 거친다고 하더라도 소스코드가 변하지 않는 한 여전히 앱 내부를 해킹해 인증이나 보안관련 모듈을 우회하는 방법을 찾을 수 있다.

보안스타트업 에버스핀은 이러한 한계를 해결하기 위해 아예 앱을 구성하는 소스코드를 실행할 때마다 바꿔버리는 기술을 고안해 냈다. 그 뒤 1여년 간 기술개선작업을 거쳐 지난달 금융보안연구원(현 금융보안원) 으로부터 금융 보안 적합성 심사를 통과했다. '에버세이프'라고 불리는 기술이 그것이다.

22일 코스콤이 서울 여의도 한국거래소에서 개최한 자본시장 IT컨퍼런스 2015에서 만난 하영빈 에버스핀 대표는 앱을 실행할 때마다 내부 소스코드 자체가 바뀌는 기술을 고안해냈다고 밝혔다. 이 기술은 코스콤 주관 2015 핀테크 코리아 공모전에서 핀테크 기술부문에서 기술부문대상을 받기도 했다.

하 대표는 공격자가 대상 앱에 대한 소스코드 분석(리버스엔지니어링)을 통한 앱위변조, 앱의 인증 및 보안모듈을 우회한 공격, 보안프로세스 자체를 거치지 않는 공격을 사실상 불가능하게 만들 수 있다고 설명했다.

해커 입장에서 앱을 해킹해 공격을 시도하기 위해서는 앱 내부 소스코드에 대한 분석이 필수다. 그러나 에버세이프는 앱을 실행할 때마다 별도 서버를 통해 서로 다른 소스코드를 다운받아 실행하는 알고리즘을 적용했다. 하 대표는 설정에 따라 30초, 1분, 10분 주기로 다른 소스코드를 쓰면서도 해당 앱을 정상실행할 수 있게 했다고 밝혔다.

일반적인 앱은 단순 버그를 해결하기 위해서도 패치가 적용된 전체 앱을 다시 다운로드받아야 한다. 그러나 에버세이프를 통해 앱을 구동하면 해당 앱을 실행할 때마다 해킹을 방지하기 위해 새로운 모듈이 생성, 교체된다. 따라서 업데이트가 될 때마다 앱 전체를 다운로드 받지 않는다. 대신 별도 서버로부터 다운로드 받는 모듈의 용량은 50KB에 불과하다. 일반 앱이 업데이트와 비교해 사용환경에 큰 변화없이도 동적으로 앱을 구동할 수 있다는 설명이다.

관련기사

하 대표는 다날 근무시절 바코드결제인 '바통'을 개발하고, 네이버 등을 거쳐 2014년 에버스핀을 설립했다. 에버세이프는 그가 다른 개발자들과 함께 2011년부터 3년여 개발기간을 거쳐 금융보안연구원으로부터 보안성심의까지 마쳤다. 현재 증권사 한 곳에 서비스를 구축 중이기도 하다.

그는 글로벌 시장에서도 조사해 본 결과 앱 자체에 대한 보안을 위해 동적 기술을 쓴 경우는 없었다며 금융분야를 시작으로 모바일 게임, PC에 이르기까지 여러 영역에 기술을 제공할 생각이라고 밝혔다.