‘동적 보안‘으로 해킹 ‘지연’ 아닌 ‘방지’한다

[컴퓨터월드] 본지는 세계 속에 한국을 심고 있는 국내 중소기업을 발굴해 그 회사가 제품을 개발하고 해외에 진출하기까지 어떤 과정을 겪으면서 성장할 수 있었는지를 조명하는 기획기사를 시리즈로 게재한다. 새롭게 회사를 설립하는 중소업체, 특히 해외 시장 진출을 앞두고 어려움을 겪고 있는 중소업체에 도움을 주고자함이다.

먼저 다이내믹 보안 기술로 세계 시장에서 주목받고 있는 에버스핀의 성장과 해외진출 과정 그리고 기업 문화 등에 대해 지난 9월부터 연재하고 있다.

지난 호에서 에버스핀은 온라인 서비스의 최전선이자 누구나 쉽게 접근할 수 있는 모바일 앱 및 웹을 엔드포인트라 하고, 이를 철저히 보호하지 못하면 서버와 데이터베이스 보안까지 위험할 수 있음을 설명했다.

이번 호에서는 엔드포인트를 보호하기 위해 현재 사용되는 기술은 무엇인지, 엔드포인트 보호 솔루션이 널리 쓰이고 있음에도 왜 기업들이 해킹 공격에 속수무책으로 당하게 되는지 그 이유를 알아봤다. <편집자 주>

1회 에버스핀, 세계에 한국테크를 증명하다 (2019년 9월호)
2회 보안의 기본, ‘이곳’을 수비해야 한다 (2019년 10월호)
3회 오늘날의 보안 기술, 그 실태와 문제점 (이번호)


오늘날의 보안 기술, 그 실태와 문제점

해킹이란 간단히 말해 해커가 프로그램의 소스 코드를 ‘분석’하고 ‘변조’하는 행위를 일컫는다. 소스 코드는 개발자가 컴퓨터가 이해하는 언어로 쓴 ‘텍스트’다. 프로그래밍 언어를 사용할 줄 알아 이 텍스트를 읽고 수정하면서 정보를 훔치는 사람들을 우리는 해커라 부른다.


해커가 사용자 프로그램을 ‘분석’하고 ‘변조’하는 행위를 막기 위해 먼저 고안된 기술이 ‘난독화(obfuscation)’와 ‘암호화(Encryption)’다.

암호화란 말 그대로 소스 코드를 해커가 이해할 수 없는 암호로 표현하는 기술이다. 그러나 암호화된 코드는 해커만 읽을 수 없는 것이 아니다. 컴퓨터도 이를 이해할 수 없어 프로그램이 동작하려면 결국 암호화된 소스 코드를 다시 복호화해야 한다. 따라서 복호화 과정을 위해 암호화된 코드와 늘 함께하는 것이 복호화 로직 및 키다.

암호화된 소스 코드를 바로 읽을 수 없을지라도 해커는 복호화 로직과 키를 발견하면 이를 이용해 원본 소스 코드를 알아낼 수 있게 된다. 또, 프로그램이 동작할 때는 원본 소스 코드가 그대로 노출되게 된다.

난독화는 소스 코드를 로직은 그대로 둔 채 단지 이해하기 어렵게 변형시키는 기술이다. 사람의 언어에 빗대어 난독화 과정에 대해 다음과 같은 비유를 할 수 있다. “토마스가 밥을 먹었다.”라는 간단한 문장이 난독화를 거치면, “만물의 영장이라 불리는 현생 인류 - 즉, 호모 사피엔스 사피엔스 종 - 중 북아메리카 대륙에 위치한 미합중국의 동부에 거주하면서 XY 성 염색체를 가진 개체 토마스는, 살아있는 모든 동물이 생명을 유지하기 위해 본능적으로 하는 행동을 - 그중에서도 영양소를 섭취하는 행동을 - 했는데, 섭취된 물질은 어떠한 다른 인간 개체에 의해 조리되어 인간의 미각을 기쁘게 하는 형태로 토마스라는 인간 개체가 허기를 채우려는 본능적 욕구를 해소하였다.” 정도로 바뀔 수 있다.

난독화를 거친 후에도 토마스가 밥을 먹었다는 내용에는 변화가 없으나 9글자로 구성된 첫 번째 문장에 비해 난독화된 문장은 의미 파악에 시간이 더 소요된다.

암호화와 난독화 두 기술 모두 해커의 분석 및 방지 시도를 완전히 차단하지는 못한다. 해커는 이 기술들이 적용된 소스 코드를 해킹하기 위해 약간의 노력과 시간을 투자해야 할 뿐이다.

정보 보안 업계가 해킹 방어를 위해 다음으로 꺼낸 카드가 ‘위변조 방지 솔루션’이다. 기존의 프로그램 소스 코드에 특별히 보안 기능을 하는 소스 코드를 추가해 해커가 프로그램의 원본 소스 코드를 분석하고 변조했는지 감시하는 역할을 한다.

‘분석’과 ‘변조’ 시도가 포착되면 프로그램을 차단하므로 해커가 본인의 입맛대로 조작한 프로그램을 사용해 정보를 탈취하는 것을 막을 수 있다. 그러나 이 솔루션도 먼저 설명한 ‘암호화’ 및 ‘난독화’ 기술처럼 해킹에 더 많은 시간을 들이면 충분히 우회할 수 있다. 위변조를 감시하는 역할을 하는 보안 소스 코드도 결국 컴퓨터와 개발자의 공용어인 프로그래밍 언어로 만들어졌기 때문이다.

위변조 방지 솔루션이 적용되어 보호 대상 프로그램에 접근할 수 없게 된 해커는 솔루션을 먼저 분석하고 변조할 수 있다. 먼저 보안 기능을 무력화하고 이후에 목표물인 사용자 프로그램을 공격하면 이를 감지하고 차단할 수 없다. 사용자나 회사는 결국 사고가 일어난 후 로그 기록을 조회해 어떤 경로로 해커가 침투했는지를 파악할 수 있을 뿐이다.

지금까지 우리가 의존해 왔던 해킹 방어 기술은 결국은 해킹 지연 기술에 불과했다는 것이라는 불편한 진실을 알 수 있었다. 보안 시장이 극복해야 할 과제로 결코 쉬운 일이 아니었다.

그러나, 국내 보안 스타트업 에버스핀이 ‘동적 보안(Dynamic Security)’이라는 정의를 확립하면서 풀지 못할 것만 같았던 이 문제에 해결의 실마리를 제공했다.

간단한 발상의 전환으로 탄생한 ‘동적 보안 기술 (Dynamic Security Technology)’은 세상에 나온 이후 국가 보안 기술 연구소, 우리은행 BMT, 글로벌 IT 보안 컨설팅 회사의 보안성 테스트에서 전례 없는 방어능력을 보이면서 정보 보안 기술의 역사를 새로 쓰고 있다.

국내외 각종 검증 기관의 테스트를 모두 통과하고 각종 기술경진대회를 휩쓴 동적 보안 기술은 도대체 무엇일까? 세계 최고라 불리는 화이트 해커들도 두손 두발 다 든 에버스핀의 동적 보안 기술 이야기가 다음 호에서 이어진다.

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