본문 바로가기

  • 과학기술정보
  • 과학기술 핫 뉴스

과학기술 핫 뉴스

악성코드에도 유전자가 있어

학교로 찾아가는 진로 컨설팅 상세
작성일 2018-03-27
첨부파일
악성코드에도 유전자가 있어

보안 한계점을 사이버 게놈으로 극복
 

보안 전문업체 카스퍼스키랩에 따르면, 지난해 신규 악성파일 생성량은 하루 평균 360,000개에 달했다. 2016년 대비 11.5% 상승한 수치이다. 이러한 추세로 신규 악성코드 생성량이 계속 늘어난다면, 사이버 공격에 취약해질 수밖에 없다.

대부분의 보안 솔루션은 ‘시그너처 (Signature)’라는 정보를 기반으로 악성코드를 탐지한다. 다시 말해 검열 대상 파일에 시그너처 유무를 확인한 후 악성코드를 판별한다. 시그너처가 있으면 악성코드이고, 없으면 정상 파일로 간주하는 것이다.

시그너처는 악성 행위를 일으키는 코드로 정의할 수 있는데, 악성코드 분석으로 시그너처가 추출되는 경우가 대부분이다. 따라서 신규 악성코드의 경우 보안 솔루션이 악성코드 판별하는 시그너처가 없어서 탐지하지 못할 수도 있다. 신규 악성코드가 나오자마자 바로 분석되는 경우는 드물기 때문이다. 결국, 신규 악성코드를 이용한 공격에는 취약할 수밖에 없다.

악성코드유전자.jpg
                            시그너처는 악성 행위를 일으키는 코드로 정의할 수 있다. ⓒ Flickr

동적 분석의 신규 악성코드 탐지 한계점

다행스럽게도 이러한 취약점을 보완할 수 있는 자동화 된 동적 분석 기술이 있어, 신규 악성코드에 어느 정도 대응할 수 있다. 여기서 동적 분석이란 파일을 직접 실행시켜서 동작 결과를 보고 악성 여부를 판별하는 악성코드 분석 기법이다.

악성코드 분석가가 랜섬웨어 감염 파일을 동적 분석으로 판별한다고 가정해보자. 분석가는 시스템의 특정 프로세스가 잠기는 현상을 관찰해 파일이 랜섬웨어에 감염됐는지를 확인할 수 있다.

과거에는 동적 분석이 수동으로 이뤄졌는데, 최근 인공지능 (AI) 발달로 자동으로 동적 분석이 가능하다. 이에 따라 동적 분석 속도도 빨라지게 됐는데, 이를 탑재한 보안 솔루션은 신규 악성코드 공격에 어느 정도 대응이 가능하게 됐다. 그렇다고 한계점이 없는 건 아니다.

동적 분석 속도가 빨라진 것은 사실이지만, 시그너처 기반의 검열보다는 여전히 느리다. 그래서 제한적으로 적용할 수밖에 없는 한계점이 있다. 특히 실시간성이 중요한 네트워크에 활용하기에 어려운 한계점이 있다. 네트워크의 모든 트래픽을 동적 분석 기반으로 파일을 검열 한다면 인터넷 속도가 상당히 느려지는 부작용이 발생할 것이기 때문이다.

그러므로 동적 분석은 부분적으로 이용될 수밖에 없는데, 이는 신규 악성코드가 동적 분석 기반의 검열을 우회할 수 있는 여지를 만들어내는 문제를 발생시킨다.


악성코드유전자1.jpg
                                               가상 환경이 구현된 모습. ⓒ Flickr

아울러 악성코드 지능화로 인해서 발생하는 한계점도 있다. 가령 악성코드에 가상 환경을 탐지할 수 있는 기능을 넣어서 동적 분석 기반의 검열을 우회할 수 있다. 동적 분석은 악성코드를 직접 실행시켜서 악성코드 여부를 판별하기 때문에, 악성코드 실행으로 인해서 실제 운영환경이 손해 입는 것을 방지해야 한다.

그러므로 실제 운영환경과 별도 공간인 가상 환경에서 동적 분석이 이뤄지는 경우가 대부분인데, 악성코드는 이를 인지하고 동적 분석을 회피할 수 있다. 실제로 여러 악성코드를 분석해본 경험이 있는데, 동적 분석을 우회하는 악성코드가 많았다.

특정 조건에만 동작하는 악성코드도 있어, 동적 분석을 어렵게 한다. 특정 시간대, 특정 운영환경 등에 동작하는 악성코드가 있는데, 이러한 특성은 동적 분석에서 탐지를 어렵게 한다. 특정 환경이 아니면 동작을 하지 않기 때문이다. 가령 3월 8일에 터키 은행을 해킹하기 위해 사용된 “뱅크샷 (BankShot)” 악성코드의 경우, 어도비 플래시 프로그램의 특정 버전에만 악성 행위를 수행하게끔 돼 있어서 동적 분석이 어려웠다.

정리하면, 동적 분석은 시그너처를 보완해 신규 악성코드에 어느 정도 대처할 수 있게는 하지만, 완벽히 보완재 역할을 할 수 있는 건 아니다. 여러 한계점이 존재하기 때문이다.

악성코드 유전자 ‘사이버 게놈’

악성코드를 탐지하는 가장 정확한 방법은 프로그램 코드를 사람이 직접 분석해서 보는 것이다. 물론 해커는 분석을 어렵게 하려고 난독화 등 여러 기술을 사용한다. 그러나 시간이 많이 소요될 뿐, 대부분 분석가는 이를 탐지해낸다. 참고로 직접 소스코드를 분석해서 악성코드를 판별하는 기법을 ‘정적분석’이라고 한다.

사람이 직접 소스코드를 분석하면서 악성코드를 탐지하기 때문에, 악성 행위 코드 유무만을 파악하는 시그너처 기반 탐지와는 대조적이다. 그런데 문제는 시간이 매우 많이 걸린다는 것이다.

하나의 악성코드를 분석하는 데에 반나절 정도 걸린다. 매일 쏟아지는 360,000개 신규 악성 파일에 대응하기에는 턱없이 부족하다. 다행히 기쁜 소식이 있는데, 게으른 해커들이 많다는 것이다. 다시 말해 신규 악성 파일이 전혀 새로운 것이 아니라, 기존 악성 파일을 약간 변형시킨 경우가 많다는 의미이다.

더욱이 악성코드는 사람이 모여서 만들기 때문에 해커 그룹만의 고유 특징이 있다. 카스퍼스키 랩의 한 보안 전문가에 따르면, 악성 행위에 내리는 명령어의 특정 철자가 틀린 부분이 있는데, 그 부분만을 보고도 배후 해커 그룹을 알아낼 수 있다고 한다. 철자를 틀리는 것 또한 해커의 성격을 나타내기 때문이다. 그렇다면 악성코드의 고유 특징을 추출하여, 신규 악성코드를 좀 더 효과적으로 대응할 방법은 없을까?

사이버 게놈 (Cyber Genome)이 해답이 될 수 있다. 사이버 게놈은 2000년도에 미국 방위고등연구계획국 (DAPRA)가DAPRA)이 만들어낸 용어로, 신규 생성 악성코드 대응을 위해 사이버 게놈 프로젝트를 진행했다. 사이버 게놈의 게놈은 유전자를 영어로 표현한 말로, 악성코드 유전자로 의역할 수 있다.

가게 물건을 훔치러 온 도둑이 얼굴과 지문을 숨기기 위해 모자와 장갑을 쓰더라도, 경찰은 도둑이 머리카락을 흘린다면 이러한 유전자 정보를 보고 잡을 수 있다. 마찬가지로 해당 악성코드만이 가지는 유전자 정보를 모은다면, 신규 악성코드라도 쉽게 탐지해낼 수 있다.

해커가 시그너처를 변형하더라도, 사이버 게놈은 시그너처 특성을 분석하기 때문에 변형된 시그너처도 탐지할 수 있다. 따라서 신규 악성코드에 대해서도 대처할 수 있다. 그뿐만 아니라 시그너처 특징별로 모으기 때문에 악성 행위자 추적에도 활용될 수 있다. 이러한 점은 경찰이 범죄 특성을 보고 연쇄 범죄 여부를 파악하는 것과 같다.

인간의 모든 특성을 파악하기 위해 30억 개 유전자를 파악하는 인간 게놈 프로젝트 (HGP)가 진행되고 있다. 사이버 보안에서도 악성코드 특성을 파악하기 위한 목적으로 사이버 게놈 프로젝트가 진행되고 있다. 악성코드 특성 파악으로 신규 생성 악성코드도 탐지할 수 있는 장점이 있기 때문이다. 기존 보안 한계점을 보완하기 위한 기술로 사이버 게놈이 주목 받을 전망이다.


유성민 IT칼럼니스트다른 기사 보기
저작권자 2018.03.27 ⓒ ScienceTimes