KR20170068814A - 악성 모바일 앱 감지 장치 및 방법 - Google Patents

악성 모바일 앱 감지 장치 및 방법 Download PDF

Info

Publication number
KR20170068814A
KR20170068814A KR1020150175747A KR20150175747A KR20170068814A KR 20170068814 A KR20170068814 A KR 20170068814A KR 1020150175747 A KR1020150175747 A KR 1020150175747A KR 20150175747 A KR20150175747 A KR 20150175747A KR 20170068814 A KR20170068814 A KR 20170068814A
Authority
KR
South Korea
Prior art keywords
graph
call flow
unit
flow graph
malicious
Prior art date
Application number
KR1020150175747A
Other languages
English (en)
Other versions
KR102415971B1 (ko
Inventor
박원주
김선중
이현우
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020150175747A priority Critical patent/KR102415971B1/ko
Priority to US15/299,818 priority patent/US10339315B2/en
Publication of KR20170068814A publication Critical patent/KR20170068814A/ko
Application granted granted Critical
Publication of KR102415971B1 publication Critical patent/KR102415971B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 악성 앱 감지 장치로, 모바일 앱을 수집하는 수집부와, 상기 수집된 모바일 앱에서 기본 정보를 추출하고, 추출된 모바일 앱의 기본 정보를 분석하여 상기 모바일 앱의 호출 흐름 그래프를 생성하는 정적 분석부와, 상기 수집된 모바일 앱을 실행하여 상기 정적 분석부에 의해 생성된 상기 모바일 앱의 호출 흐름 그래프를 동적 행위 기반의 호출 흐름 그래프로 확장하고, 상기 확장된 호출 흐름 그래프와 악성 행위를 수행하는 흐름 그래프와 유사도를 판단하는 동적 분석부와, 상기 정적 분석부에 의해 생성된 모바일 앱의 기본 정보, 호출 흐름 그래프 및 상기 동적 분석부에 의해 생성된 동적 행위 기반의 호출 흐름 그래프, 유사도를 분석하여 상기 수집된 모바일 앱이 악성인지를 판단하는 악성 앱 판단부를 포함한다.

Description

악성 모바일 앱 감지 장치 및 방법{Apparatus and Method for Recognizing Vicious Mobile App}
본 발명은 악성 어플리케이션(Application : 이하 '앱'이라 기재함) 감지 기술에 관한 것으로, 특히 모바일 단말에 설치되는 앱의 동적 행위 그래프 생성을 통한 악성 행위 감지 장치 및 방법에 관한 것이다.
스마트폰 이용이 본격화됨에 따라 모바일 금융 사기도 급증하고 있다. 피싱, 파밍 뿐만 아니라 최근에는 악성 앱(.apk 파일, 멀웨어) 설치를 유도하고 개인 정보를 요구하거나 휴대폰 소액 결제를 하는 금융 사기 기업인 스미싱 공격이 늘고 있다.
스미싱 공격은 사용자의 동의하에 또는 부지불식 간에 모바일 단말에 악성 앱이 설치되고 이 악성 앱이 개인정보유출, 문자 탈취 및 전달 등을 통하여 발생되는 모바일 금융 사기 기법이다. 이러한 스미싱 공격에 사전 대응하기 위하여, 모바일 단말에 설치되었거나 설치하려는 모바일 앱의 악성 행위를 분석하여 탐지하는 기술 개발이 필요한 실정이다.
현재 악성 앱 탐지 및 대응을 위한 모바일 안티 바이러스 백신의 시그니처 기반 탐지 기법은 악성 앱의 바이너리를 시그니처화하여 등록하여 특정 앱이 시그니처가 있는지 검사하여 탐지하는 기법이다. 그러나 비교적 사용하기가 용이한 도구를 활용하여 지속적으로 악성 앱 생성이 가능하고, 악성 행위를 수행하는 코드가 해커들 사이에 공유됨으로써 악성 앱의 수는 큰 폭으로 증가하고 있는 실정이지만, 현재의 시그니처 기반 탐지 기법으로는 그 분석 및 탐지에 한계가 있는 실정이다.
또한, 모바일 앱의 악성 행위를 분석하기 위한 방법으로 정적 분석 방법과 동적 분석 방법이 있다. 정적 분석 방법은 앱을 실행하지 않고 분석하기 때문에 분석 소요 시간이 빠르고, 안전하다는 장점이 있다. 그러나, 최근 악성 앱은 코드 난독화 기술 적용하였거나, 설치 시에는 정상 앱이지만 실제 실행하는 과정 중에 외부 파일(라이브러리 등) 다운로드 및 실행 등을 이용하여 악성 행위를 수행하는 경우가 발생하고 있다. 이러한 경우는 정적 분석 방법의 경우 정확한 분석이 어렵다는 단점이 있다. 동적 분석 방법은 가상 머신 등의 환경에서 앱을 실행하면서 그 행위를 분석하는 기법으로 실제로 정확한 행위를 탐지할 수 있는 장점이 있다. 그러나 동적 분석 환경은 정적 분석 방법보다 상대적으로 많은 시간이 소요될 수 있고, 다양한 벤더, 지속적으로 업데이트되는 다양한 모바일 운영 체제 환경에서 실험을 해야 하는 단점이 있다.
본 발명은 앱 스토어에 등록된 모바일 앱, 단말에 설치된 또는 설치하려는 앱을 정적 및 동적 분석을 병행으로 수행하여 각 분석 방법의 장점을 극대화할 수 있고, 각 분석 방법의 단점을 상호 보완할 수 있는 악성 모바일 앱 감지 장치 및 방법을 제공한다.
본 발명은 악성 앱 감지 장치로, 모바일 앱을 수집하는 수집부와, 상기 수집된 모바일 앱에서 기본 정보를 추출하고, 추출된 모바일 앱의 기본 정보를 분석하여 상기 모바일 앱의 호출 흐름 그래프를 생성하는 정적 분석부와, 상기 수집된 모바일 앱을 실행하여 상기 정적 분석부에 의해 생성된 상기 모바일 앱의 호출 흐름 그래프를 동적 행위 기반의 호출 흐름 그래프로 확장하고, 상기 확장된 호출 흐름 그래프와 악성 행위를 수행하는 흐름 그래프와 유사도를 판단하는 동적 분석부와, 상기 정적 분석부에 의해 생성된 모바일 앱의 기본 정보, 호출 흐름 그래프 및 상기 동적 분석부에 의해 생성된 동적 행위 기반의 호출 흐름 그래프, 유사도를 분석하여 상기 수집된 모바일 앱이 악성인지를 판단하는 악성 앱 판단부를 포함한다.
본 발명은 악성 앱 감지 방법으로, 모바일 앱을 수집하는 단계와, 상기 수집된 모바일 앱에서 기본 정보를 추출하고, 추출된 모바일 앱의 기본 정보를 분석하여 상기 모바일 앱의 호출 흐름 그래프를 생성하는 단계와, 상기 수집된 모바일 앱을 실행하여 상기 생성된 상기 모바일 앱의 호출 흐름 그래프를 동적 행위 기반의 호출 흐름 그래프로 확장하고, 상기 확장된 호출 흐름 그래프와 악성 행위를 수행하는 흐름 그래프와 유사도를 판단하는 단계와, 상기 생성된 모바일 앱의 기본 정보, 호출 흐름 그래프, 동적 행위 기반의 호출 흐름 그래프 및 유사도를 분석하여 상기 수집된 모바일 앱이 악성인지를 판단하는 단계를 포함한다.
본 발명은 악성 앱의 설치를 사전에 예방하여 사용자의 개인정보 유출, 금융 사기 피해 등을 줄이는 효과가 있다.
또한, 동적 분석 방법에 있어서 정적 분석 방법을 병행하여 상호 정보를 교환하여 정적 분석 방법에서 추출한 정보를 기반으로 동적 행위 그래프를 생성하고 이 정보를 다시 정적 분석부의 앱 추출 정보에 저장함으로써, 모바일 앱의 관련 정보를 확장시키는 효과가 있고, 이 정보는 새로운 앱 분석을 위한 기초 정보로 활용 가능하다.
또한, 모바일 앱의 악성 여부를 분석하고 판단하는 과정에서 정적 분석 방법은 물론 동적 분석 방법을 통하여 행위 그래프를 생성함에 있어서 소스코드 분석을 통한 호출 흐름 그래프는 실제 악성 코드가 호출되는 연결 과정으로 포함하는 행위 그래프로 확장된다. 이 동적 행위 그래프는 식별자 정보 등을 제외하여 이미지 시그니처로 생성하여 저장하며, 난독화 도구 등을 활용하여 외형적으로 변이된 신규 악성 앱일지라도 의미적으로 수행하는 악성 행위가 유사하므로 악성 행위 부분 탐지가 가능한 효과가 있다.
또한, 리패키징 기법 등을 통하여 일부 모듈 단위의 악성 코드만을 활용한 악성 앱의 경우 부분 행위 그래프 분석 및 유사도 비교를 통하여 악성 앱 탐지가 가능한 효과가 있다. 즉, 앱의 악성 여부를 감지하고 분석하는 방법에 있어서 최근까지 전 세계 70% 이상의 점유율을 보유하고 있는 안드로이드 운영 체제의 경우 플랫폼이 오픈 소스이고, 단말에 설치된 앱의 소스를 획득하기가 용이한 특징을 갖고 있어, 안드로이드 악성 앱은 기존 악성 앱을 일부 수정하여 재배포하거나, 정상 앱에 일부 악성 코드만 삽입시켜 배포하는 리패키징이 가능한 특징을 갖고 있다. 본 발명은 이러한 악성 앱의 특징을 활용하여 기존 악성 어플케이션, 악성 코드 모듈과의 유사도를 비교하여 악성 여부를 분석할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시 예에 따른 악성 모바일 앱 감지 장치의 블록 구성도이다.
도 2는 본 발명의 일 실시 예에 따른 정적 분석부의 상세 블록 구성도이다.
도 3은 본 발명의 일 실시 예에 따른 동적 분석부의 상세 블록 구성도이다.
도 4는 본 발명의 일 실시 예에 따른 악성 모바일 앱 감지 방법의 순서도이다.
도 5는 본 발명의 일 실시 예에 따른 정적 분석 단계를 설명하기 위한 순서도이다.
도 6은 본 발명의 일 실시 예에 따른 동적 분석 단계를 설명하기 위한 순서도이다.
이하, 첨부된 도면을 참조하여 기술되는 바람직한 실시 예를 통하여 본 발명을 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 기술하기로 한다.
본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명 실시 예들의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
명세서 전반에 걸쳐 사용되는 용어들은 본 발명 실시 예에서의 기능을 고려하여 정의된 용어들로서, 사용자 또는 운용자의 의도, 관례 등에 따라 충분히 변형될 수 있는 사항이므로, 이 용어들의 정의는 본 발명의 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 실시 예에 따른 악성 모바일 앱 감지 장치의 블록 구성도이다.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 악성 모바일 앱 감지 장치(100)는 신규 모바일 앱이 악성 행위를 포함하고 있는지 여부를 파악하기 위하여 정적 및 동적 분석을 병행하고, 정적 및 동적 분석시 상호 정보를 교환한다. 이를 통해 정적 분석 및 동적 분석의 상호 장점을 극대화할 수 있을 뿐만 아니라, 단점을 상호 보완하게 한다. 두 분석 방법을 병행함에 있어 상대적으로 분석에 필요한 소요 시간이 오래 걸릴 수 있다는 우려가 있으나, 이는 최근 서버의 프로세서 기술 발달, 클라우드 기술 급성장으로 전혀 우려할 사항이 아니다.
이를 위해 장치(100)는 상세하게는 앱 수집부(110), 앱 저장부(120), 정적 분석부(130), 동적 분석부(140) 및 악성 앱 판단부(150)를 포함한다. 부가적으로, 시그니처 생성부(160) 및 시그니처 저장부(170)를 더 포함한다.
앱 수집부(110)는 모바일 단말로부터 직접적으로 모바일 앱을 추출하거나, 앱 스토어로부터 모바일 앱을 수집하여 앱 저장부(120)에 저장한다.
정적 분석부(130)는 앱 저장부(120)에 저장되어 있는 모바일 앱으로부터 정적으로 기본 정보를 추출하고, 추출된 기본 정보를 이용하여 호출 흐름 그래프를 생성한다. 이와 같이 정적으로 추출된 기본 정보는 동적 분석부(140)에 전달되어 사용된다. 이러한 정적 분석부(130)의 상세 구성에 대해서는 도 2를 참조하여 후술하기로 한다.
동적 분석부(140)는 앱 저장부(120)에 저장되어 있는 모바일 앱을 가상 환경 또는 실제 환경에서 실행시켜 실제 행위 분석을 수행하고, 악성 행위를 수행하는 흐름 그래프를 시그니처화하고, 악성 행위를 수행하는 흐름 그래프와 유사한 그래프가 시그니처 저장부(170)에 존재하는지를 검색한다. 이러한 동적 분석부(140)의 상세 구성에 대해서는 도 3을 참조하여 후술하기로 한다.
악성 앱 판단부(150)는 정적 분석부(130)에 의해 생성된 모바일 앱 추출 정보 및 호출 흐름 그래프 정보와, 동적 분석부(140)에 의해 생성된 동적 행위 그래프 정보 및 유사도 정보 등을 종합하여 악성 앱 여부를 최종 판단한다. 최종 판단 결과, 악성으로 판명된 모바일 앱은 그 분석 결과가 이미지 시그니처 생성부(160)에 전달된다.
이미지 시그니처 생성부(160)는 악성 앱 판단부(150)로부터 분석 결과를 수신하여 동적 행위 분석을 통해 얻어진 악성 행위 기반 부분 그래프 시그니처와 전체 그래프 시그니처 이미지를 생성한다.
이미지 시그니처 저장부(170)는 이미지 시그니처 생성부(160)에 의해 생성된 악성 행위 기반의 부분 그래프 시그너처 및 전체 그래프를 저장하되, 분리 저장한다. 또한, 이미지 시그니처 저장부(170)는 이미지 시그니처 외에 관련된 모바일 앱 추출 정보도 연결하여 저장 가능하다. 이와 같이 저장된 이미지 시그니처는 추후 새로운 앱 분석에 활용되고 지속적으로 축적 가능하다.
도 2는 본 발명의 일 실시 예에 따른 정적 분석부의 상세 블록 구성도이다.
도 2를 참조하면, 정적 분석부(130)는 앱 정보 추출부(131) 및 모바일 앱 호출 흐름 그래프 생성부(132)를 포함한다.
앱 정보 추출부(131)는 정적 분석을 위하여 모바일 앱에 포함된 기본 정보를 추출한다. 앱 정보 추출부(131)는 압축되어진 파일 유형의 경우 압축을 해제할 수 있다. 여기서, 기본 정보는 압축 해제된 모바일 앱으로부터 실행 파일, 앱의 자원 정보, 메타데이터 정보 및 앱에서 사용 정의한 퍼미션(자원 접근 권한) 정보를 포함할 수 있다. 그러나, 이는 일 예일 뿐, 기본 정보는 이에 한정되지 않는다. 즉, 모바일 앱 종류에 따라 상기한 기본 정보가 포함되지 않을 수도 있고, 상기한 기본 정보 외에 다른 정보들이 더 포함될 수도 있다.
모바일 앱 호출 흐름 그래프 생성부(132)는 기본 정보 중에서 실행 파일을 이용하여 호출 흐름 그래프를 생성하는데, 상세하게는 소스 코드 추출부(132a), 메소드 검색부(132b), 호출 흐름 그래프 생성부(132c) 및 정규화부(132d)를 포함한다.
소스 코드 추출부(132a)는 실행 파일의 바이너리 해쉬값 생성, 디컴파일링 또는 디스어셈블링한 후, 소스 코드 또는 어셈블링된 코드를 추출한다.
메소드 검색부(132b)는 소스 코드 추출부(132a)에 의해 추출된 소스 코드 또는 어셈블링된 코드에서 메소드를 검색하여 그에 상응하는 코드를 추출한다.
호출 흐름 그래프 생성부(132c)는 소스 코드 추출부(132a) 및 메소드 검색부(132b)에 의해 추출된 소스 코드를 기반으로 함수 호출을 분석하여 호출 흐름 그래프를 생성한다. 즉, 모바일 앱은 프로그램 실행을 위하여 일련의 명령어들을 수행함으로써 정해진 작업들을 완료하는 특징을 활용할 수 있다. 이런 일련의 과정을 추적하면 앱의 특성을 잘 표현해줄 수 있는 중요한 정보가 되는데, 이를 활용하여 프로그램 실행 중에 나타나는 메소드(함수), 루프, 조건분기 등을 연결하여주는 호출 흐름 그래프(CFG) 생성할 수 있다. 일반적으로 호출 흐름 그래프는 시작 노드에서 종료 노드까지 실행 가능한 경로를 모두 추출하여 생성이 기능하고, 특정 악성 행위를 수행하는 일부 그래프만을 추출하여 시그니처화할 수도 있다.
정규화부(132d)는 추출된 호출 흐름 그래프에서 식별자 등을 제거하여 정규화 및 추상화 과정을 수행한다.
도 3은 본 발명의 일 실시 예에 따른 동적 분석부의 상세 블록 구성도이다.
도 3을 참조하면, 동적 분석부(140)는 모바일 앱 행위 그래프 동적 생성부(141), 부분 그래프 분할부(142), 이미지 시그니처 비교부(143) 및 의미적 분할 규칙 저장부(144)를 포함한다.
모바일 앱 행위 그래프 동적 생성부(141)는 앱 저장부(120)에서 전달받은 모바일 앱을 가상화된 환경 또는 실제 모바일 단말 환경에서 실행하여, 정적 분석부(130)와 상호 정보 교환을 통하여 모바일 앱의 호출 흐름 그래프를 실제로 호출되는 과정을 동적으로 행위 기반의 호출 흐름 그래프로 확장한다.
상세하게는 모바일 앱 실행부(141a), 동적 코드 분석부(141b) 및 동적 행위 그래프 생성부(141c)를 포함한다.
모바일 앱 실행부(141a)는 전달받은 앱의 기본 정보를 정적 분석부(130)로부터 전달받아 실행 환경에 맞는 가상 환경을 구동한다. 동적 코드 분석부(141b)는 모바일 앱이 실행되면 동적으로 코드를 분석한다. 여기서, 정적 분석부(130)를 통하여 획득하지 못한 호출 정보(라이브러리 호출, 실행 압축된 코드 등의 호출)가 분석될 수 있다.
동적 행위 그래프 생성부(141c)는 분석된 결과에 따라, 동적 행위 그래프를 생성하는데, 정적 분석부(130)로부터 수신한 호출 흐름 그래프를 확장하여 생성한다. 여기서, 동적 행위 그래프는 앱을 동적으로 실행하는 과정을 관찰하여 연결된 호출 흐름 그래프이며, 코드 난독화 등의 기법으로 무력해진 식별자 정보 등은 제외시킨 일반화된 호출 흐름 그래프이다. 또한, 동적 행위 그래프는 1차적으로 정적 분석부(130)를 통하여 생성한 호출 흐름 그래프와 유사하지만, 실제로 실행하는 과정에서 추가적으로 실제 행위 기반의 호출 흐름 분석이 가능하다. 이때, 동적으로 행위 그래프를 생성하는 과정에서 라이브러리 호출, 래핑 함수 호출, 실행 압축된 코드의 호출, 데이터(예: 인덴트 등)로 연결되는 호출 등이 행위 그래프로 표현됨으로써 정적 분석부(130)에서 생성하지 못했던 그래프 정보가 생성된다. 이 정보는 다시 정적 분석부(130)로 전달되어 추가적으로 모바일 앱 추출 정보에 저장되고 호출 흐름 그래프에 활용 가능하다.
부분 그래프 분할부(142)는 미리 저장된 의미적 분할 규칙 저장부(144)을 참조하여 전체 행위 그래프에서 의미 기반의 부분 행위 기반 그래프를 추출하는데, 상세하게는 의미 기반 부분 행위 그래프 추출부(142a) 및 정규화부(142b)를 포함한다.
의미 기반 부분 행위 그래프 추출부(142a)는 미리 저장된 의미적 분할 규칙저장부(144)을 참조하여 상기 생성된 동적 행위 기반의 호출 흐름 그래프로부터 모듈 단위의 부분 행위 그래프를 추출한다. 이때, 상기 생성된 동적 행위 기반의 호출 흐름 그래프를 의미론적으로 분리 가능한 범위에서 교집합 또는 합집합 단위로 분리한다. 이는 리패키징 기법 등이 적용된 악성 앱을 탐지하기 위하여 의미 있는 모듈 단위의 부분 행위 그래프를 추출하여 유사도 비교에 활용한다. 여기서, 의미 기반 부분 행위 그래프 추출부(142a)는 의미적으로 가용한 모든 부분 그래프를 추출할 수 있도록 반복 수행 가능하다. 또한, 부분 행위 그래프 생성 후, 필요에 따라 부분 행위 그래프의 재분할이 가능하다. 의미 있는 모듈 단위의 부분 그래프는 메시지 등으로 전달되는 모듈로 분리 가능하나, 문맥적으로 구분이 가능한 경우에는 모두 적용 가능하고 본 발명은 제한을 두지 않는다.
정규화부(142b)는 추출된 전체 행위 그래프 및 부분 행위 그래프에서 식별자를 제거한다.
이미지 시그니처 비교부(143)는 동적으로 생성된 부분 그래프를 시그니처 저장부(170)를 탐색하여 유사도를 비교한다. 즉, 부분 그래프를 기존 악성 행위 기반으로 만들어진 부분 그래프 시그니처 이미지와 유사도를 비교한다. 그래프 이미지 유사도를 비교하는 알고리즘은 통상적으로 그래프의 동형 비교법(Isomorphism), 편집 거리(Edit Distance), 최대 공통 부분 그래프 생성(Maximum common Sub-graph), 통계학적 유사도(Statistical Similarity) 방법 등이 활용 가능하다.
전술한 바와 같이 정적 분석부(130) 및 동적 분석부(140)는 상호간에 정보를 교환하면서 병렬적으로 수행되는데, 정적 분석부(130)에서 동적 분석부(140)로 전달되는 정보는 모바일 앱의 기본 정보(이름, 서명, 크기 등), 정적 호출 흐름 그래프, 사용 선언한 퍼미션, 자원 정보 등이 포함될 수 있고, 동적 분석부(140)에서 정적 분석부(130)로 전달되는 정보는 추가로 호출된 메소드 정보, 확장된 행위 그래프, 확장된 퍼미션, 확장된 자원 정보 및 다운로드된 요소 정보 등이 포함될 수 있다.
도 4는 본 발명의 일 실시 예에 따른 악성 모바일 앱 감지 방법의 순서도이다.
도 4를 참조하면, 장치(100)는 모바일 단말로부터 직접적으로 모바일 앱을 추출하거나, 앱 스토어로부터 모바일 앱을 수집하여 앱 저장부(120)에 저장한다(S410).
장치(100)는 앱 저장부(120)에 저장되어 있는 모바일 앱으로부터 정적으로 기본 정보를 추출하고, 추출된 기본 정보를 이용하여 호출 흐름 그래프를 생성한다(S420). 이와 같이 정적으로 추출된 기본 정보는 동적 분석에 사용된다. 이러한 정적 분석 단계의 상세 구성에 대해서는 도 5를 참조하여 후술하기로 한다.
장치(100)는 앱 저장부(120)에 저장되어 있는 모바일 앱을 가상 환경 또는 실제 환경에서 실행시켜 실제 행위 분석을 수행하고, 악성 행위를 수행하는 흐름 그래프를 시그니처화하고, 악성 행위를 수행하는 흐름 그래프와 유사한 그래프가 시그니처 저장부(170)에 존재하는지를 검색한다(S430). 이러한 동적 분석의 상세 구성에 대해서는 도 6을 참조하여 후술하기로 한다.
장치(100)는 정적 분석에 의해 생성된 모바일 앱 추출 정보 및 호출 흐름 그래프 정보와, 동적 분석에 의해 생성된 동적 행위 그래프 정보 및 유사도 정보 등을 종합하여 악성 앱 여부를 최종 판단한다(S440).
장치(100)는 악성 앱 판단의 분석 결과를 수신하여 동적 행위 분석을 통해 얻어진 악성 행위 기반 부분 그래프 시그니처와 전체 그래프 시그니처 이미지를 생성한다(S450). 이와 같이 생성된 악성 행위 기반의 부분 그래프 시그너처 및 전체 그래프는 분리 저장된다.
도 5는 본 발명의 일 실시 예에 따른 정적 분석 단계를 설명하기 위한 순서도이다.
도 5를 참조하면, 장치(100)는 정적 분석을 위하여 모바일 앱에 포함된 기본 정보를 추출한다(S421). 이때, 압축되어진 파일 유형의 경우 압축을 해제하는 동작을 더 포함할 수 있다. 일 예로, 기본 정보는 압축 해제된 모바일 앱으로부터 실행 파일, 앱의 자원 정보, 메타데이터 정보 및 앱에서 사용 정의한 퍼미션(자원 접근 권한) 정보를 포함할 수 있다. 그러나, 이는 일 예일 뿐, 기본 정보는 이에 한정되지 않는다. 즉, 모바일 앱 종류에 따라 상기한 기본 정보가 포함되지 않을 수도 있고, 상기한 기본 정보 외에 다른 정보들이 더 포함될 수도 있다.
장치(100)는 실행 파일의 바이너리 해쉬값 생성, 디컴파일링 또는 디스어셈블링한 후, 소스 코드 또는 어셈블링된 코드를 추출한다(S422). 그런 후, 장치(100)는 추출된 소스 코드 또는 어셈블링된 코드에서 메소드를 검색하여 그에 상응하는 코드를 추출한다(S423).
장치(100)는 추출된 소스 코드를 기반으로 함수 호출을 분석하여 호출 흐름 그래프를 생성한다(S424). 즉, 모바일 앱이 프로그램 실행을 위하여 일련의 명령어들을 수행함으로써 정해진 작업들을 완료하는 특징을 활용할 수 있다. 이런 일련의 과정을 추적하면 앱의 특성을 잘 표현해줄 수 있는 중요한 정보가 되는데, 이를 활용하여 프로그램 실행 중에 나타나는 메소드(함수), 루프, 조건분기 등을 연결하여주는 호출 흐름 그래프(CFG) 생성할 수 있다. 일반적으로 호출 흐름 그래프는 시작 노드에서 종료 노드까지 실행 가능한 경로를 모두 추출하여 생성이 기능하고, 특정 악성 행위를 수행하는 일부 그래프만을 추출하여 시그니처화할 수도 있다.
부가적으로, 장치(100)는 추출된 호출 흐름 그래프에서 식별자 등을 제거하여 정규화 및 추상화 과정을 수행한다(S425).
도 6은 본 발명의 일 실시 예에 따른 동적 분석 단계를 설명하기 위한 순서도이다.
도 6을 참조하면, 장치(100)는 정적 분석에 따른 앱의 기본 정보를 이용하여 실행 환경에 맞는 가상 환경을 구동한다(S431). 장치(100)는 모바일 앱이 실행되면 동적으로 코드를 분석한다(S432). 여기서, 정적 분석을 통하여 획득하지 못한 호출 정보(라이브러리 호출, 실행 압축된 코드 등의 호출)가 분석될 수 있다.
장치(100)는 상기 분석된 결과에 따라, 동적 행위 그래프를 생성하는데, 정적 분석에 의해 생성된 호출 흐름 그래프를 확장하여 생성한다(S433). 여기서, 동적 행위 그래프는 앱을 동적으로 실행하는 과정을 관찰하여 연결된 호출 흐름 그래프이며, 코드 난독화 등의 기법으로 무력해진 식별자 정보 등은 제외시킨 일반화된 호출 흐름 그래프이다. 또한, 동적 행위 그래프는 1차적으로 정적 분석부(130)를 통하여 생성한 호출 흐름 그래프와 유사하지만, 실제로 실행하는 과정에서 추가적으로 실제 행위 기반의 호출 흐름 분석이 가능하다. 이때, 호출 흐름 그래프와 함께 데이터(예: 인덴트 등)의 흐름 그래프도 같이 생성될 수 있다. 동적으로 행위 그래프를 생성하는 과정에서 라이브러리 호출, 래핑 함수 호출, 실행 압축된 코드의 호출, 데이터(예: 인덴트 등)로 연결되는 호출 등이 행위 그래프로 표현됨으로써 기존 정적 분석부에서 생성하지 못했던 그래프 정보가 생성된다. 이 정보는 다시 정적 분석부로 전달되어 추가적으로 모바일 앱 추출 정보에 저장되고 호출 흐름 그래프에 활용 가능하다.
장치(100)는 미리 저장된 의미적 분할 규칙 집합을 참조하여 전체 행위 그래프에서 의미 기반의 부분 행위 기반 그래프를 추출한다(S434). 리패키징 기법 등이 적용된 악성 앱을 탐지하기 위하여 본 발명은 의미 있는 모듈 단위의 부분 행위 그래프를 추출하여 유사도 비교에 활용한다. 이는 타 악성 앱으로부터 도용하였을 가능성이 매우 큰 악성 행위 모듈을 탐지하기 위함이다. 부분 행위 그래프는 의미적으로 가용한 모든 부분 그래프를 추출할 수 있도록 반복 수행 가능하다. 또한, 부분 행위 그래프 생성 후, 필요에 따라 부분 행위 그래프의 재분할이 가능하다. 의미 있는 모듈 단위의 부분 그래프는 메시지 등으로 전달되는 모듈로 분리 가능하나, 문맥적으로 구분이 가능한 경우에는 모두 적용 가능하고 본 발명은 제한을 두지 않는다. 부분 행위 그래프는 동적으로 확장이 가능하고, 분리된 부분 행위 그래프는 동적 분석이 완료될 때까지 계속된다.
장치(100)는 추출된 전체 행위 그래프 및 부분 행위 그래프에서 식별자를 제거한다(S435). 그런 후, 장치(100)는 동적으로 생성된 부분 그래프를 시그니처 저장부(170)를 탐색하여 유사도를 비교한다(S436). 즉, 부분 그래프를 기존 악성 행위 기반으로 만들어진 부분 그래프 시그니처 이미지와 유사도를 비교한다. 그래프 이미지 유사도를 비교하는 알고리즘은 통상적으로 그래프의 동형 비교법(Isomorphism), 편집 거리(Edit Distance), 최대 공통 부분 그래프 생성(Maximum common Sub-graph), 통계학적 유사도(Statistical Similarity) 방법 등이 활용 가능하다.

Claims (18)

  1. 모바일 앱을 수집하는 수집부와,
    상기 수집된 모바일 앱에서 기본 정보를 추출하고, 추출된 모바일 앱의 기본 정보를 분석하여 상기 모바일 앱의 호출 흐름 그래프를 생성하는 정적 분석부와,
    상기 수집된 모바일 앱을 실행하여 상기 정적 분석부에 의해 생성된 상기 모바일 앱의 호출 흐름 그래프를 동적 행위 기반의 호출 흐름 그래프로 확장하고, 상기 확장된 호출 흐름 그래프와 악성 행위를 수행하는 흐름 그래프와 유사도를 판단하는 동적 분석부와,
    상기 정적 분석부에 의해 생성된 모바일 앱의 기본 정보, 호출 흐름 그래프 및 상기 동적 분석부에 의해 생성된 동적 행위 기반의 호출 흐름 그래프, 유사도를 분석하여 상기 수집된 모바일 앱이 악성인지를 판단하는 악성 앱 판단부를 포함함을 특징으로 하는 악성 앱 감지 장치.
  2. 제1 항에 있어서, 상기 정적 분석부 및 동적 분석부는
    상호간에 정보를 교환하면서 병렬적으로 동작함을 특징으로 하는 악성 앱 감지 장치.
  3. 제1 항에 있어서,
    상기 악성 앱 판단부의 판단 결과에 따라, 악성으로 판단된 모바일 앱으로부터 악성 행위 기반 부분 그래프 시그니처 이미지와 전체 그래프 시그니처 이미지를 생성하는 이미지 시그니처 생성부와,
    상기 이미지 시그니처 생성부에 의해 생성된 악성 행위 기반의 부분 그래프 시그너처 이미지 및 전체 그래프 시그니처 이미지를 분리 저장하는 시그니처 저장부를 더 포함함을 특징으로 하는 악성 앱 감지 장치.
  4. 제1 항에 있어서, 상기 정적 분석부는
    상기 수집된 모바일 앱의 기본 정보를 추출하는 앱 정보 추출부와,
    상기 추출된 기본 정보 중에서 실행 파일을 이용하여 호출 흐름 그래프를 생성하는 모바일 앱 호출 흐름 그래프 생성부를 포함함을 특징으로 하는 악성 앱 감지 장치.
  5. 제4 항에 있어서, 상기 모바일 앱의 기본 정보는
    상기 수집된 모바일 앱의 실행 파일, 자원 정보, 메타데이터 정보 및 퍼미션 정보 중 적어도 하나를 포함함을 특징으로 하는 악성 앱 감지 장치.
  6. 제4 항에 있어서, 상기 모바일 앱 호출 흐름 그래프 생성부는
    상기 모바일 앱의 실행 파일을 디컴파일링 또는 디스어셈블링한 후, 소스 코드 또는 어셈블링된 코드를 추출하는 소스 코드 추출부와,
    상기 소스 코드 추출부에 의해 추출된 소스 코드 또는 어셈블링된 코드에서 메소드를 검색하여 그에 상응하는 코드를 추출하는 메소드 검색부와,
    상기 소스 코드 추출부 및 메소드 검색부에 의해 추출된 소스 코드를 기반으로 함수 호출을 분석하여 호출 흐름 그래프를 생성하는 호출 흐름 그래프 생성부를 포함함을 특징으로 하는 악성 앱 감지 장치.
  7. 제6 항에 있어서, 상기 모바일 앱 호출 흐름 그래프 생성부는
    상기 추출된 호출 흐름 그래프에서 식별자 등을 제거하여 정규화 및 추상화하는 정규화부를 더 포함함을 특징으로 하는 악성 앱 감지 장치.
  8. 제1 항에 있어서, 상기 동적 분석부는
    상기 수집된 모바일 앱을 가상화된 환경 또는 실제 모바일 단말 환경에서 실행하여, 상기 정적 분석부와 상호 정보 교환을 통하여 모바일 앱의 호출 흐름 그래프를 실제로 호출되는 과정을 분석하여 동적으로 행위 기반의 호출 흐름 그래프로 확장하는 모바일 앱 행위 그래프 동적 생성부와,
    미리 저장된 의미적 분할 규칙 집합을 참조하여 전체 행위 그래프에서 의미 기반의 부분 행위 기반 그래프를 추출하는 부분 그래프 분할부와,
    상기 부분 행위 기반 그래프와 사전에 생성된 악성 행위 기반으로 만들어진 부분 그래프 시그니처 이미지와 유사도를 비교하는 이미지 시그니처 비교부를 포함함을 특징으로 하는 악성 앱 감지 장치.
  9. 제8 항에 있어서, 상기 모바일 앱 행위 그래프 동적 생성부는
    상기 수집된 모바일 앱의 기본 정보를 정적 분석부로부터 전달받아 실행 환경에 맞는 가상 환경을 구동하는 모바일 앱 실행부와,
    상기 모바일 앱이 실행되면 동적으로 코드를 분석하는 동적 코드 분석부와,
    상기 동적 코드 분석부에 의해 분석된 결과에 따라, 동적 행위 그래프를 생성하되, 상기 정적 분석부로부터 수신한 호출 흐름 그래프를 확장하여 생성하는 동적 행위 그래프 생성부를 포함함을 특징으로 하는 악성 앱 감지 장치.
  10. 제9 항에 있어서, 상기 동적 행위 그래프 생성부는
    호출 흐름 그래프 외에 지정된 데이터 유형의 흐름을 포함하여 동적 행위 기반의 호출 흐름 그래프를 생성함을 특징으로 하는 악성 앱 감지 장치.
  11. 제9 항에 있어서, 상기 부분 그래프 분할부는
    미리 저장된 의미적 분할 규칙을 참조하여 상기 생성된 동적 행위 기반의 호출 흐름 그래프로부터 모듈 단위의 부분 행위 그래프를 추출하는 의미 기반 부분 행위 그래프 추출부와,
    상기 추출된 부분 행위 그래프에서 식별자를 제거하는 정규화부를 포함함을 특징으로 하는 악성 앱 감지 장치.
  12. 제9 항에 있어서, 상기 부분 그래프 분할부는
    상기 생성된 동적 행위 기반의 호출 흐름 그래프를 의미론적으로 분리 가능한 범위에서 교집합 또는 합집합 단위로 분리함을 특징으로 하는 악성 앱 감지 장치.
  13. 모바일 앱을 수집하는 단계와,
    상기 수집된 모바일 앱에서 기본 정보를 추출하고, 추출된 모바일 앱의 기본 정보를 분석하여 상기 모바일 앱의 호출 흐름 그래프를 생성하는 단계와,
    상기 수집된 모바일 앱을 실행하여 상기 생성된 상기 모바일 앱의 호출 흐름 그래프를 동적 행위 기반의 호출 흐름 그래프로 확장하고, 상기 확장된 호출 흐름 그래프와 악성 행위를 수행하는 흐름 그래프와 유사도를 판단하는 단계와,
    상기 생성된 모바일 앱의 기본 정보, 호출 흐름 그래프, 동적 행위 기반의 호출 흐름 그래프 및 유사도를 분석하여 상기 수집된 모바일 앱이 악성인지를 판단하는 단계를 포함함을 특징으로 하는 악성 앱 감지 방법.
  14. 제13 항에 있어서, 상기 생성하는 단계 및 상기 유사도를 판단하는 단계는
    상호 간에 정보를 교환하면서 병렬적으로 수행됨을 특징으로 하는 악성 앱 감지 방법.
  15. 제13 항에 있어서,
    상기 악성으로 판단된 모바일 앱으로부터 악성 행위 기반 부분 그래프 시그니처 이미지와 전체 그래프 시그니처 이미지를 생성하는 단계와,
    상기 생성된 악성 행위 기반의 부분 그래프 시그너처 및 전체 그래프를 분리 저장하는 단계를 더 포함함을 특징으로 하는 악성 앱 감지 방법.
  16. 제13 항에 있어서, 상기 생성하는 단계는
    상기 수집된 모바일 앱의 기본 정보를 추출하는 단계와,
    상기 모바일 앱의 실행 파일을 디컴파일링 또는 디스어셈블링한 후, 소스 코드 또는 어셈블링된 코드를 추출하는 단계와,
    상기 추출된 소스 코드 또는 어셈블링된 코드에서 메소드를 검색하여 그에 상응하는 코드를 추출하는 단계와,
    상기 추출된 소스 코드를 기반으로 함수 호출을 분석하여 호출 흐름 그래프를 생성하는 단계를 포함함을 특징으로 하는 악성 앱 감지 방법.
  17. 제13 항에 있어서, 상기 생성하는 단계는
    상기 추출된 호출 흐름 그래프에서 식별자 등을 제거하여 정규화 및 추상화하는 단계를 포함함을 특징으로 하는 악성 앱 감지 방법.
  18. 제13 항에 있어서, 상기 유사도를 판단하는 단계는
    상기 수집된 모바일 앱의 기본 정보를 실행 환경에 맞는 가상 환경을 구동하는 단계와,
    상기 모바일 앱이 실행되면 동적으로 코드를 분석하는 단계와,
    상기 분석된 결과에 따라, 동적 행위 그래프를 생성하되, 상기 호출 흐름 그래프를 확장하여 생성하는 단계와,
    미리 저장된 의미적 분할 규칙을 참조하여 상기 생성된 동적 행위 기반의 호출 흐름 그래프로부터 모듈 단위의 부분 행위 그래프를 추출하는 단계와,
    상기 추출된 부분 행위 그래프에서 식별자를 제거하는 단계와,
    상기 부분 행위 기반 그래프와 기존의 악성 행위 기반으로 만들어진 부분 그래프 시그니처 이미지와 유사도를 비교하는 단계를 포함함을 특징으로 하는 악성 앱 감지 방법.
KR1020150175747A 2015-12-10 2015-12-10 악성 모바일 앱 감지 장치 및 방법 KR102415971B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150175747A KR102415971B1 (ko) 2015-12-10 2015-12-10 악성 모바일 앱 감지 장치 및 방법
US15/299,818 US10339315B2 (en) 2015-12-10 2016-10-21 Apparatus and method for detecting malicious mobile app

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150175747A KR102415971B1 (ko) 2015-12-10 2015-12-10 악성 모바일 앱 감지 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20170068814A true KR20170068814A (ko) 2017-06-20
KR102415971B1 KR102415971B1 (ko) 2022-07-05

Family

ID=59019328

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150175747A KR102415971B1 (ko) 2015-12-10 2015-12-10 악성 모바일 앱 감지 장치 및 방법

Country Status (2)

Country Link
US (1) US10339315B2 (ko)
KR (1) KR102415971B1 (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190020363A (ko) * 2017-08-21 2019-03-04 주식회사 스패로우 동적 분석과 정적 분석을 연계한 프로그램을 분석하기 위한 방법 및 장치
KR101976992B1 (ko) * 2017-11-16 2019-05-10 숭실대학교산학협력단 시그니처 추출을 이용한 분석회피기법 자동 인식 장치 및 그 방법
KR101976993B1 (ko) * 2017-11-16 2019-05-10 숭실대학교산학협력단 모바일 코드 자동 분석을 위한 동적 바이너리 계측 코드추출장치 및 그 방법
KR102113966B1 (ko) * 2019-11-25 2020-05-21 숭실대학교산학협력단 분석회피기법 우회 장치, 방법 및 이를 수행하기 위한 프로그램을 기록한 기록매체
US10878086B2 (en) 2017-11-16 2020-12-29 Foundation Of Soongsil University-Industry Cooperation Dynamic code extraction-based automatic anti analysis evasion and code logic analysis apparatus
WO2022149637A1 (ko) * 2021-01-06 2022-07-14 주식회사 아이티스테이션 사용자 단말 이벤트 연동 악성파일 판단방법 및 이를 이용한 시스템
US11886589B2 (en) 2020-11-26 2024-01-30 Foundation Of Soongsil University-Industry Cooperation Process wrapping method for evading anti-analysis of native codes, recording medium and device for performing the method

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2555859B (en) * 2016-11-15 2020-08-05 F Secure Corp Remote malware scanning
US11222135B2 (en) * 2018-05-28 2022-01-11 International Business Machines Corporation User device privacy protection
US10929532B1 (en) * 2018-09-07 2021-02-23 Zimperium, Inc. Detecting malware in mobile applications via static analysis
US11263325B2 (en) 2019-01-31 2022-03-01 Mcafee, Llc System and method for application exploration
RU2728505C1 (ru) * 2019-02-07 2020-07-29 Акционерное общество "Лаборатория Касперского" Система и способ обеспечения информационной безопасности на основании антропной защиты
CN113672919A (zh) * 2021-08-05 2021-11-19 支付宝(杭州)信息技术有限公司 基于小程序动静态分析的风险检测方法、装置以及设备
US11790086B2 (en) * 2021-09-30 2023-10-17 Fortinet, Inc. Selectively applying dynamic malware analysis to software files based on compression type in a software security system
CN114491530B (zh) * 2021-12-20 2024-05-17 西安电子科技大学 基于抽象流图和图神经网络的安卓应用程序分类方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100031353A1 (en) * 2008-02-04 2010-02-04 Microsoft Corporation Malware Detection Using Code Analysis and Behavior Monitoring
KR20120073018A (ko) * 2010-12-24 2012-07-04 한국인터넷진흥원 악성 코드 탐지를 위한 시스템 및 방법
KR20130068421A (ko) * 2011-12-15 2013-06-26 한국인터넷진흥원 악성코드 통합정보 생성 시스템 및 이를 포함하는 악성코드 통합관리 시스템

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9479357B1 (en) * 2010-03-05 2016-10-25 Symantec Corporation Detecting malware on mobile devices based on mobile behavior analysis
US9449175B2 (en) * 2010-06-03 2016-09-20 Nokia Technologies Oy Method and apparatus for analyzing and detecting malicious software
US9672355B2 (en) 2011-09-16 2017-06-06 Veracode, Inc. Automated behavioral and static analysis using an instrumented sandbox and machine learning classification for mobile security
KR101143999B1 (ko) 2011-11-22 2012-05-09 주식회사 안철수연구소 Api 기반 어플리케이션 분석 장치 및 방법
KR20130078278A (ko) 2011-12-30 2013-07-10 (주)이지서티 스마트폰 악성 어플 탐지 시스템 및 방법
KR101472321B1 (ko) 2013-06-11 2014-12-12 고려대학교 산학협력단 이동단말의 어플리케이션 내 악성코드 탐지 방법 및 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100031353A1 (en) * 2008-02-04 2010-02-04 Microsoft Corporation Malware Detection Using Code Analysis and Behavior Monitoring
KR20120073018A (ko) * 2010-12-24 2012-07-04 한국인터넷진흥원 악성 코드 탐지를 위한 시스템 및 방법
KR20130068421A (ko) * 2011-12-15 2013-06-26 한국인터넷진흥원 악성코드 통합정보 생성 시스템 및 이를 포함하는 악성코드 통합관리 시스템

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190020363A (ko) * 2017-08-21 2019-03-04 주식회사 스패로우 동적 분석과 정적 분석을 연계한 프로그램을 분석하기 위한 방법 및 장치
KR101976992B1 (ko) * 2017-11-16 2019-05-10 숭실대학교산학협력단 시그니처 추출을 이용한 분석회피기법 자동 인식 장치 및 그 방법
KR101976993B1 (ko) * 2017-11-16 2019-05-10 숭실대학교산학협력단 모바일 코드 자동 분석을 위한 동적 바이너리 계측 코드추출장치 및 그 방법
WO2020050455A1 (ko) * 2017-11-16 2020-03-12 숭실대학교산학협력단 시그니처 추출을 이용한 분석회피기법 자동 인식 장치 및 그 방법
US10878086B2 (en) 2017-11-16 2020-12-29 Foundation Of Soongsil University-Industry Cooperation Dynamic code extraction-based automatic anti analysis evasion and code logic analysis apparatus
US11934495B2 (en) 2017-11-16 2024-03-19 Foundation Of Soongsil University-Industry Cooperation Device for automatically identifying anti-analysis techniques by using signature extraction and method therefor
KR102113966B1 (ko) * 2019-11-25 2020-05-21 숭실대학교산학협력단 분석회피기법 우회 장치, 방법 및 이를 수행하기 위한 프로그램을 기록한 기록매체
US11886589B2 (en) 2020-11-26 2024-01-30 Foundation Of Soongsil University-Industry Cooperation Process wrapping method for evading anti-analysis of native codes, recording medium and device for performing the method
WO2022149637A1 (ko) * 2021-01-06 2022-07-14 주식회사 아이티스테이션 사용자 단말 이벤트 연동 악성파일 판단방법 및 이를 이용한 시스템

Also Published As

Publication number Publication date
KR102415971B1 (ko) 2022-07-05
US10339315B2 (en) 2019-07-02
US20170169224A1 (en) 2017-06-15

Similar Documents

Publication Publication Date Title
KR102415971B1 (ko) 악성 모바일 앱 감지 장치 및 방법
US10114946B2 (en) Method and device for detecting malicious code in an intelligent terminal
US10152594B2 (en) Method and device for identifying virus APK
KR101246623B1 (ko) 악성 애플리케이션 진단 장치 및 방법
US9600668B2 (en) Method and device for extracting characteristic code of APK virus
US9015814B1 (en) System and methods for detecting harmful files of different formats
US20170214704A1 (en) Method and device for feature extraction
Mercaldo et al. Mobile malware detection in the real world
Mercaldo et al. Hey malware, i can find you!
CN103294951B (zh) 一种基于文档型漏洞的恶意代码样本提取方法及系统
CN103839005A (zh) 移动操作系统的恶意软件检测方法和恶意软件检测系统
CN103778373A (zh) 病毒检测方法及装置
CN113961919B (zh) 恶意软件检测方法和装置
Nguyen et al. Detecting repackaged android applications using perceptual hashing
CN114462044A (zh) 一种基于污点分析的uefi固件漏洞静态检测方法及装置
CN108399321B (zh) 基于动态指令依赖图胎记的软件局部抄袭检测方法
KR101256468B1 (ko) 악성 파일 진단 장치 및 방법
CN114282212A (zh) 流氓软件识别方法、装置、电子设备及存储介质
Dam et al. Learning android malware
Hu et al. Robust app clone detection based on similarity of ui structure
KR102415494B1 (ko) 에뮬레이션 기반의 임베디드 기기 취약점 점검 및 검증 방법
Laudanna et al. GANG-MAM: GAN based enGine for modifying android malware
KR101530530B1 (ko) 모바일단말의 악성 프로세스 실행 탐지 시스템 및 방법
Cam et al. Detect repackaged android applications by using representative graphs
JPWO2019049478A1 (ja) コールスタック取得装置、コールスタック取得方法およびコールスタック取得プログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant