에버스핀과 함께하는 사이버 보안 상식 A to Z

[아이티데일리] 시간이 흘러도 수그러들 줄 모르는 코로나19는 소비자의 행동을 급격히 변화시키며 비대면 사회로의 전환을 가속화하고 있다.

미국의 한 설문조사에 따르면, 코로나 팬데믹 이전 회사에서 일했던 직장인 중 56%가 현재는 재택근무 중인 것으로 나타났다. 또, 업무 회의 중 71%는 온라인으로 대체되었다. 전문가들은 금융서비스, 온라인 쇼핑뿐 아니라 디지털화될 수 있는 인간의 모든 활동이 비대면 서비스로 급속히 전환될 것이라고 말한다. 따라서 정보 보안은 더 이상 전문가들만이 관심 가져야 할 영역이 아니며, 일상에서 늘 신경 써야 할 일부분이 되었다. 본지는 이러한 세계적 추세에 발맞추어 정보보안 기업 ‘에버스핀’과 함께 ‘보안’이라는 주제를 쉽게 소개하는 자리를 마련했다.<편집자 주>

1회 해킹(2020년 9월호)
2회 해킹을 막기 위한 노력(이번호)

 

2019년 한 해 영국, 미국, 캐나다 곳곳에서 맥도날드 앱이 해킹돼 적게는 수십달러 많게는 수천달러가 피해자에게 청구되는 일이 일어났다. 피해자들의 증언은 비슷했다.

“맥도날드 앱을 다운 받아 딱 한 번 음식을 주문했을 뿐인데, 이후 내가 주문하지 않은 주문서들이 이메일로 날아왔고, 음식값이 내 카드로 청구되었다.”


어떻게 이 사고가 발생했을까?

 

가능한 시나리오 하나는 다음과 같다. 해커가 앱스토어에서 맥도날드 앱을 다운받아 프로그램 코드를 분석했다. 그리고 이 프로그램 코드에 이용자가 아이디, 패스워드 및 신용카드 정보를 입력하면 자신에게 전송되도록 하는 악성코드를 삽입했다. 이렇게 변조한 앱을 다운로드할 수 있는 링크를 배포해 이용자가 다운받도록 했다. 이 앱을 다운받은 맥도날드 고객이 최초 주문을 완료하면, 고객 정보가 고스란히 해커의 손에 넘어간다. 이 후 사용자가 직접 주문하지 않은 음식이 결제되고, 대금은 사용자의 카드로 청구된다.

제시한 극단적 예시 이외에도 사용자가 사용하는 앱은 마켓에서 누구나 다운로드 받을 수 있고 손쉽게 해커의 의해 분석이 가능하기 때문에 앱 자체적인 취약점이나 앱과 서버와 통신하는 구간의 홀을 발견하는 등 무수히 많은 해킹 방법이 존재할 수 있다.

당연히 맥도널드 앱 뿐만 아니라 금융사에서 제공하는 앱들도 비슷한 방법으로 해킹되면, 타인에게 송금하는 돈이 해커의 계좌로 전달되거나, 사용자 계좌의 모든 돈이 해커에게 전달될 수 있게 하는 것이 가능할 것이다.


현존하는 해킹 방지 기술

 

지난 1화에서 소개했듯이 해킹이란 ‘분석과 변조’의 과정으로 정의할 수 있다. 따라서 해킹 방지 기술은 간단히 말해 프로그램 소스코드의 ‘분석과 변조’를 방해하는 기술이다.

해킹을 막아보고자 보안 업계가 처음 사용한 기술은 프로그램 소스코드의 ‘암호화’다. 프로그램 코드를 해커가 이해할 수 없는 형태로 바꾸는 것이다. 그러나, 이렇게 암호화된 코드는 컴퓨터에서 실행될 수 없다. 따라서 코드가 동작하기 위해서는 암호화된 코드가 복호화 되어야 하며, 복호화된 코드가 실행되는 중에는 원본형태의 코드가 고스란히 노출되는 위험이 있다.

암호화 기술과 함께 사용하여 코드의 분석을 지연할 수 있는 기술로 ‘난독화’가 있다. 난독화는 원본 코드를 복잡하게 만들어 코드를 읽기 어렵게 만드는 기술이다. 해커가 난독화된 코드를 읽고 분석하는데 시간이 오래 걸리게 되어 해킹이 지연되는 이점이 있다. 하지만 이 기술이 적용될 경우 컴퓨터가 코드를 읽어들이는 시간도 늘어나게 되어 프로그램 실행도 더뎌진다. 또 난독화란 글자 그대로, 읽기가 ‘어렵게’되는 기술이지, 읽지 못하는 기술이 아니기에, 충분한 시간이 주어지면 해커에 의한 분석과 변조가 가능하다.

분석 시도와 변조된 코드를 적극적으로 차단하고자 ‘코드 무결성 검증’ 기술도 쓰인다. 보안 프로그램이 사용자 프로그램의 원본 코드 정보와 현재의 코드 상태를 비교하여, 차이점이 발견될 경우 프로그램의 동작을 차단하는 방식이다. 그러나 보안 프로그램 또한 코드로 이루어져 있어 공격자가 보안프로그램의 코드를 분석하고 변조해버린다면, 무결성 검증 기능은 무력화되고 만다.

이처럼 지금까지 쓰이고 있는 보안 기술들은 분석과 조작의 시간을 지연시켜 피해 발생을 늦추는 효과가 있지만, 충분한 시간이 주어졌을 때 무너질 수밖에 없다.


에버스핀이 제안한 해결책: 동적보안

 

아무리 훌륭한 기능을 가진 보안 솔루션도 충분한 시간이 주어지면 분석과 조작과정을 거쳐 무력화될 수 있다. 에버스핀은 이 ‘시간’ 개념에 착안해, 일정 기간마다 보안 솔루션의 코드를 자동으로 변화시키는 ‘에버세이프’를 개발했다.

보안 기능을 하는 ‘보안 모듈’이 일정 시간마다 새로이 활성화 되면서, 해커가 분석을 시도해도 미처 끝내기 전에 새 보안 모듈이 사용자 프로그램을 보호한다. 즉, 일정 시간마다 새로운 보안 모듈이 교체되기 때문에 해커는 교체될 때마다 새로이 분석과 변조 시도를 반복할 수밖에 없고, 새로운 보안 모듈이 교체되기 전에 분석해서 배포된 앱이 설령 있다 하더라도 일정시간 이후에는 의미가 없게 된다.

에버스핀은 위와 같은 새로운 보안 기술을 ‘동적 보안’이라 정의하며 이 개념을 도입한 보안 솔루션 에버세이프를 모바일, 웹 뿐아니라 네트워크 보안에도 적용했다. 전에 없던 개념인 동적보안, 이를 적용한 새로운 보안 솔루션이 어떤 분야에서 어떻게 활약하고 있는지 다음 기사들을 통해 알아본다.

저작권자 © 아이티데일리 무단전재 및 재배포 금지