[보안칼럼]난독화된 악성앱, AI 기술로 분석 효율 높여야

유동훈 시큐리온 대표
유동훈 시큐리온 대표

보안 솔루션을 우회하기 위해 난독화된 악성 애플리케이션이 증가하면서 관련 피해가 커지고 있다. 유포되는 악성앱 다수가 응용 프로그램 패키지(APK) 자체 암호화와 난독화 기법 등을 적용, 앱이 어떻게 동작하고 어떤 행위를 하는 지 분석이 어려운 실정이다. 악성 앱은 피싱 범죄에 필요한 기능은 그대로 유지하면서 모바일 백신엔 잘 탐지되지 않는다.

이로 인해 가장 피해를 보는 것은 보이스피싱 대상이 되는 일반인이다. 일례로 지난해 구글 플레이스토어에서 유포된 조커(Joker) 악성코드 패밀리가 있다. 조커 개발자는 공통 자산 파일의 페이로드를 난독화된 형식으로 숨기고 JSON, TFT, PNG 또는 데이터베이스 확장자의 실행파일을 제공했다. 악성코드가 설치된 앱을 마켓에서 내려받은 이용자는 30만명에 달한다.

시큐리온이 2020년 3월부터 2022년 2월까지 글로벌 앱 마켓에 업로드된 앱을 분석한 결과, 전체 등록 앱 중 난독화된 앱은 약 66.7%였다. 악성 앱의 경우 보안 시스템을 우회하기 위해 더 높은 비율로 난독화 기술이 적용됐을 것으로 추정된다.

난독화된 악성코드가 활개를 치는 것은 다크웹을 통한 멀웨어 거래가 활성화된 것과 연관이 있다. 멀웨어 개발 엔진 '뱃클로크'는 난독화에 특화돼 해커 사이에서 인기를 끈 것으로 알려졌다. 뱃클로크로 만든 멀웨어는 지난해 9월부터 시중에 나온 것으로 파악되는 데, 한 보안업체의 조사에 따르면 뱃클로크로 만든 멀웨어의 79.6%가 탐지되지 않는다.

뱃클로크와 같이 악성앱을 난독화 하는 구독형 서비스를 '서비스형 난독화(obfuscation-as-a-service·OaaS)'라고 한다. 일종의 난독화 대행 서비스로, 이를 이용하면 누구나 돈을 내고 자신의 악성 앱을 난독화할 수 있다.

OaaS 등장으로 난독화된 악성 앱이 급증하며 분석가의 업무 강도는 더욱 높아졌다. 악성코드의 고유한 시그니처를 활용해 악성 여부를 판별하는 시그니처 기반 안티바이러스 솔루션의 경우, 동적 분석에 소요되는 시간과 탐지율 유지를 위한 인력 부담이 가중된다.

숙련된 보안 전문가도 난독화된 앱을 분석하고 대응하는 데 시간이 걸린다. 변수와 명령어의 패턴을 바꾸고, 제어 흐름을 난독화해 로직을 뒤섞는 등 다양한 방식으로 변경된 코드는 분석가들이 의미를 쉽게 파악하기 어렵다. 이들이 새로운 형태의 악성코드를 분석하고 등록하는 데 걸리는 시간만큼 대응이 지연되니 자연스레 피해도 커진다.

보안 업계에선 다양한 방법으로 난독화된 악성 앱의 탐지·분석 효율을 높이기 위해 노력하고 있다. 그 중 하나는 인공지능(AI)을 활용하는 것이다. 난독화된 악성 앱이라도 실행 가능한 형태이기 때문에, 사실상 실행에 필요한 정보 위주로 분석하는 머신러닝 엔진으로 악성 여부를 판단할 수 있다.

머신러닝 기술은 기존 '수동분석→수동 판정'으로 이뤄지던 분석 과정을 '자동 판정→수동 검증'으로 바꾸었다. 시큐리온은 이에 더해 머신러닝 엔진이 무엇을 근거로 위험도를 판정했는지 '설명 가능한 AI(XAI)' 기반 검증(추적) 기술을 개발해 '자동 판정→자동 검증' 시스템을 확립할 수 있도록 하는 연구를 진행하고 있다. 해당 기술로 악성 앱의 위험도를 자동으로 분석하고 관련 근거를 확보, 검증하는 전 과정이 자동화되면 분석가들의 수고를 크게 줄이는 데 기여할 것이다.

유동훈 시큐리온 대표 x82@securion.co.kr