KR101498820B1 - 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법 - Google Patents

안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법 Download PDF

Info

Publication number
KR101498820B1
KR101498820B1 KR20130134252A KR20130134252A KR101498820B1 KR 101498820 B1 KR101498820 B1 KR 101498820B1 KR 20130134252 A KR20130134252 A KR 20130134252A KR 20130134252 A KR20130134252 A KR 20130134252A KR 101498820 B1 KR101498820 B1 KR 101498820B1
Authority
KR
South Korea
Prior art keywords
application
hash value
information
market server
market
Prior art date
Application number
KR20130134252A
Other languages
English (en)
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 KR20130134252A priority Critical patent/KR101498820B1/ko
Application granted granted Critical
Publication of KR101498820B1 publication Critical patent/KR101498820B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • 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/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Abstract

본 발명은 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법에 관한 것으로서, 어플리케이션 등록 요청에 대응하여, 마켓 서버에서 APK파일에 대한 해쉬 값과 함께 어플리케이션을 등록하고, 스마트 폰과 마켓 서버와의 통신을 통해 마켓 서버에서 해쉬 값과 스마트 폰으로부터 전송된 해쉬 값을 비교하여 어플리케이션의 무결성을 검증한다. 본 발명에 따르면, 해쉬 값을 통해 리패키징 여부를 확인할 수 있으므로 정보 유출, 과금 유도, 장치 사용 불능 등의 보안 위협을 방지할 수 있다.

Description

안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법{Method for Detecting Application Repackaging in Android}
본 발명은 어플리케이션 리패키징 탐지 기법에 관한 것으로, 더욱 상세하게는 안드로이드 환경의 어플리케이션 리패키징을 탐지할 수 있는 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법에 관한 것이다.
스마트 폰의 보급이 증가함과 동시에 어플리케이션의 종류와 그 수도 기하급수적으로 증가하고 있다. IDC에서 공개한 2013년 2분기 전 세계 스마트 폰 시장 점유율을 살펴보면 안드로이드가 80%를 점유하였으며, 사용자들이 꾸준히 증가하고 있는 추세이다. 안드로이드는 공개되어 있는 여러 가지 개발 툴을 이용하여 손쉽게 어플리케이션을 개발할 수 있으며, 마켓(마켓 서버)을 통해 쉽게 배포할 수 있는 특징을 가지고 있다. 현재까지 70만개 이상의 유익한 어플리케이션들이 개발되어 제공되고 있으며, 다양한 마켓을 통해 사용자에게 유통되고 있다[1].
어플리케이션이 유통되는 마켓은 공인 마켓과 사설 마켓으로 구분된다. 공인 마켓은 정식적으로 제공되는 마켓을 말하며, 구글 스토어를 비롯한 통신사별 마켓, 제조사별 마켓 등이 있으며, 사설마켓은 정식적인 절차를 거치지 않고 사용되는 마켓으로 블랙마켓 등이 있다[2][3]. 사용자들은 이러한 다양한 마켓을 통해 원하는 어플리케이션을 다운로드하여 사용하고 있다.
이러한 환경 속에서 오픈소스로 제공되는 안드로이드는 어플리케이션이 손쉽게 디컴파일(Decompile)될 수 있으며, 공격자는 어플리케이션에 악성코드를 삽입한 후 리패키징(Repackaging)하여 마켓에 업로드할 수도 있다. 리패키징은 디컴파일된 APK파일을 다시 APK파일로 변환하는 과정으로 디컴파일을 통해 소스코드를 추출하고 코드수정 및 코드삽입을 통해 어플리케이션을 변조하여 다시 정상적으로 보이는 설치파일로 패키징한다. 여기서, APK파일은 안드로이드 구동 시스템을 위한 패키징 파일 포맷인 안드로이드 패키지(Android PacKage : APK) 파일을 의미한다.
이와 같이 어플리케이션의 리패키징이 손쉽기 때문에 그에 따른 문제점들도 발생할 가능성이 높다. 즉, 정상 어플리케이션처럼 보이지만 악성코드가 삽입된 어플리케이션을 다운로드받아 피해를 입을 수 있다. 구체적으로, 리패키징된 어플리케이션은 악성코드가 삽입되어 정보 유출, 과금 유도, 장치 사용 불능 등의 피해를 발생시킨다. 현재 악성 어플리케이션 중 리패키징 어플리케이션이 차지하는 비율은 86%로 대부분의 악성 어플리케이션이 리패키징 어플리케이션임을 알 수 있다[4].
[1] 이종우, 이고은, "구글의 안드로이드와 안드로이드 마켓," 정보보호학회논문지, 22(5) pp. 1145-1157, 2012년 10월. [2] 김배현, "어플리케이션스토어 기술 및 동향", 한국콘텐츠학회지, 10(1), pp. 20-24, 2012년 3월. [3] 전종홍, 이승윤, "모바일 웹 스토어 기술 동향," 정보과학회지, 30(11), pp. 9-15, 2012년 11월. [4] 전영남, 안우현 "안드로이드 스마트 폰에서 어플리케이션 설치 정보를 이용한 리패키징 어플리케이션 탐지 기법", 융합보안 논문지, 12(4), 2012년 9월.
따라서, 본 발명은 상기한 종래 기술의 문제점을 해결하기 위해 이루어진 것으로서, 본 발명의 목적은 어플리케이션에 대한 해쉬 값의 등록 및 비교를 통해 어플리케이션 리패키징 여부를 탐지할 수 있도록 하는 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법을 제공하는데 있다.
상기와 같은 목적을 달성하기 위한 본 발명의 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법은, (a) 어플리케이션 등록 요청에 대응하여, 마켓 서버에서 APK파일에 대한 해쉬 값과 함께 상기 어플리케이션을 등록하는 단계; 및 (b) 스마트 폰과 마켓 서버와의 통신을 통해 상기 마켓 서버에서 상기 해쉬 값과 상기 스마트 폰으로부터 전송된 해쉬 값을 비교하여 어플리케이션의 무결성을 검증하는 단계를 포함하는 것을 특징으로 한다.
상기 단계 (a)는, 상기 마켓 서버에서 상기 어플리케이션의 개발자가 등록하는 APK파일에 대한 해쉬 값을 상기 어플리케이션과 함께 전송받는 단계; 및 상기 어플리케이션과 해쉬 값을 분리하여 인덱싱을 통해 생성된 인덱스 정보를 데이터베이스에 저장하고, 해당 마켓 서버에 대한 플래그 정보를 연접하여 보관하는 단계를 포함한다. 한편, 상기 어플리케이션의 배포시, 상기 해쉬 값을 검색할 수 있는 상기 인덱스 정보와 등록된 마켓 서버를 확인할 수 있는 상기 플래그 정보를 상기 어플리케이션과 함께 배포한다.
상기 단계 (b)는, 상기 스마트 폰에서 어플리케이션의 APK파일로부터 플래그 정보를 추출하는 단계; 상기 스마트 폰에서 상기 플래그 정보에 대응하는 마켓 서버로 접속하여 해쉬 값을 요청하는 단계; 및 상기 마켓 서버에서 상기 어플리케이션의 인덱스 정보를 이용하여 해쉬 값을 검색하여 상기 스마트 폰으로부터 전송된 해쉬 값과 비교하고, 해쉬 값의 일치 여부를 확인하여 상기 어플리케이션의 무결성을 검증하는 단계를 포함한다.
상술한 바와 같이, 본 발명에 의한 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법에 따르면, 해쉬 값을 통해 리패키징 여부를 확인할 수 있으므로 정보 유출, 과금 유도, 장치 사용 불능 등의 보안 위협을 방지할 수 있다.
도 1은 서명된 APK 파일의 리패키징하는 과정을 나타낸 개념도이다.
도 2는 리패키징된 어플리케이션의 유통 과정을 나타낸 개념도이다.
도 3은 본 발명의 일 실시예에 의한 어플리케이션 마켓 등록 과정을 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 의한 어플리케이션 무결정 검증 과정을 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 의한 어플리케이션의 초기화면이다.
도 6은 설치된 어플리케이션 정보 호출 화면이다.
도 7은 실행되고 있는 어플리케이션 정보 호출 화면이다.
도 8은 네트워크 사용량 정보를 나타낸 화면이다.
이하, 본 발명의 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법에 대하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
먼저, 어플리케이션의 리패키징 과정에 대하여 간략하게 설명하고, 이에 대한 보안위협에 대해 분석한 후, 안드로이드 환경에서의 어플리케이션 리패키징 탐지 기법에 대해 설명한다.
어플리케이션 리패키징 과정
리패키징 과정은 디컴파일된 APK파일을 다시 APK파일로 변환하는 과정이다. 언패킹(Unpacking)과 디컴파일을 통해 추출한 소스코드를 원래의 APK파일로 변환시킴으로써 스마트 폰에서는 이상 없이 해당 APK파일을 설치할 수 있다. 리패키징을 위해 컴파일 툴과 패킹 툴을 이용하여 APK파일을 생성하는 과정에서 새롭게 서명이 이루어져야 하며, 기존의 서명파일을 따로 추출하여 사용함으로써 원래의 서명된 원본 파일처럼 재생성이 가능하다. 도 1은 기존의 서명된 APK파일에 대하여 공개되어 있는 툴을 이용하여 언패킹과 디컴파일을 통해 소스코드를 추출하고 다시 APK파일로 변환하는 과정이다. 추출된 소스코드는 수정되거나 새로운 코드가 추가될 수 있으며 리패키징 과정을 통해 APK파일을 생성할 수 있다. 이와 같이 안드로이드 어플리케이션은 어렵지 않게 리패키징이 가능하기 때문에 이에 따른 보안 위협이 존재한다.
보안위협
리패키징된 어플리케이션은 사용자에게 잘 알려진 어플리케이션에 악성코드를 포함하여 재배포되는 형태나 유료 어플리케이션에 악성코드를 포함하여 블랙마켓 또는 웹에서 무료배포되는 형태로 유통된다. 도 2는 리패키징된 어플리케이션의 유통 과정을 나타낸 도면이다.
리패키징된 어플리케이션은 공격자가 목표로 하는 악성코드가 포함되어 있으나 외관상으로는 정상적인 어플리케이션과 동일하게 보인다. 그러나 어플리케이션을 설치하는 과정에서 권한정보만을 제공하기 때문에 사용자는 해당 어플리케이션의 리패키징 여부를 파악하기 어렵다.
즉, 대부분의 악성 어플리케이션이 리패키징 어플리케이션인 것을 통해 확인할 수 있다[4].
리패키징된 어플리케이션에 포함된 악성코드를 통해 공격자는 스마트 폰의 정보를 수집할 수 있으며 과금유도형 공격, 스마트 폰 사용불능 공격 등을 시도할 수 있다. 다음 [표 1]은 스마트 폰 악성코드 공격 유형에 따른 영향을 정리한 것이다.
공격유형 내용
정보 유출 스마트 폰에 저장되어 있는 전화번호부를 비롯하여 사진, IMEI정보 등을 공격자에게 전송함.
과금 유도 소액결제를 유도하거나 통신을 지속적으로 사용함으로써 과금을 유도함.
사용 불능 배터리를 소모시키거나 원하는 서비스를 이용하지 못하게 함으로써 정상적인 스마트 폰 사용을 방해함.
이와 같이 안드로이드 어플리케이션은 각종 디컴파일 툴을 이용하여 디컴파일이 된다는 점과 다시 리패키징을 할 수 있는 특징이 있다. 이 특징을 이용하여 정상적인 어플리케이션에 악성코드를 삽입하여 배포할 수 있는 보안 위협이 존재한다.
따라서, 본 발명에서는 마켓 서버와 안드로이드를 사용하는 스마트 폰 사이에서 업로드된 어플리케이션에 대한 무결성을 검증하기 위해 마켓 서버의 새로운 등록 배포 방법과 스마트 폰에서 마켓 서버와의 통신을 통한 무결성 검증 기법을 제시한다.
본 발명에서는 마켓 서버(1), 데이터베이스(2), 안드로이드 스마트 폰(3)으로 구성된 시스템을 이용하며, 이 시스템을 이용한 본 발명의 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법은, 크게 마켓 서버(1)에 어플리케이션을 등록하는 과정과, 어플리케이션을 검증하는 과정을 포함한다.
마켓 서버 등록
마켓 서버(1)는 구글 스토어 이외에 여러 이동통신사와 같이 각종 서비스 업체에서도 제공하고 있으며, 어플리케이션 개발자들은 자신이 원하는 마켓 서버(1)에 손쉽게 어플리케이션을 등록할 수 있다.
리패키징에 대한 보안 위협에 대응하기 위하여 마켓 서버(1)에서는 어플리케이션을 등록 받을 때 개발자들이 등록하는 APK파일에 대한 해쉬 값을 같이 등록 받는다. 등록받은 어플리케이션과 해쉬 값은 인덱싱을 통해 데이터베이스(2)에 저장하여 관리하며 해당 마켓 서버(1)에 대한 플래그 정보를 연접하여 보관한다. 등록된 어플리케이션을 배포할 때에는 마켓 서버(1)에 대한 플래그 값과 인덱스 정보를 같이 배포한다. 마켓 서버(1)의 플래그 정보와 인덱스 정보는 어느 마켓 서버(1)에 등록되어 있는 어플리케이션인지 확인이 가능하며, 인덱스 정보를 통해 빠르게 해당 어플리케이션에 대한 해쉬 정보를 검색할 수 있도록 한다. 도 3은 마켓 서버(1)에 어플리케이션을 등록하는 과정을 나타낸 도면이다.
Step1. 안드로이드 마켓 서버(1)에 어플리케이션을 등록하는 과정에서 APK파일에 대한 해쉬 값을 포함하여 등록한다.
Step2. 마켓 서버(1)에서는 등록받은 어플리케이션과 해쉬 값을 분리하여 인덱싱을 통해 데이터베이스(2)에 보관하며, 플래그 정보를 연접하여 저장한다.
어플리케이션 검증 과정
스마트 폰(3)에서는 다운로드받은 어플리케이션을 설치하기 전에 APK파일에서 마켓 서버(1)에 대한 플래그 값을 추출하고, 해당 마켓 서버(1)에 접속하여 해쉬 값을 요청한다. 마켓 서버(1)에서는 해당 어플리케이션의 인덱스 정보를 통하여 해쉬 값을 검색하고, 다운로드받은 어플리케이션의 해쉬 값과 비교하여 어플리케이션에 대한 무결성을 점검한다. 마켓 서버(1)의 플래그 정보를 통해 접속한 마켓 서버(1)에서 해당 어플리케이션에 대한 정보를 찾을 수 없거나 해쉬 값이 다른 경우, 리패키징에 대한 위협을 사용자에게 고지하거나 차단할 수 있다. 도 4는 어플리케이션에 대한 무결성 검증 과정이다.
Step1. 어플리케이션을 다운로드받아 설치하기 전에 마켓 서버(1)에 대한 플래그 정보를 추출한다.
Step2. 추출된 플래그 정보를 통해 해당 마켓 서버(1)에 접속한다.
Step3. 플래그를 통해 접속한 마켓 서버(1)에서 해당 어플리케이션의 인덱스 정보를 이용하여 해쉬 값의 일치여부를 점검함으로써 어플리케이션에 대한 무결성을 검사한다.
한편, 본 발명에서는 안드로이드 환경에서 잠재적인 위협성을 가진 어플리케이션들을 탐지할 수 있는 어플리케이션을 제시한다. 이를 통해, 다운받은 어플리케이션의 위협성을 분석하여 사용자에게 보여줌으로써 사용자는 어플리케이션이 가질 수 있는 악성 행위에 대한 보안 위협을 확인할 수 있다. 이 어플리케이션은 사용자가 직접 선택을 통해 개별적인 어플리케이션에 대한 점검을 실시하고 정보를 얻을 수 있는 형태로 구성되어 있다.
개방형 특성의 안드로이드 환경은 각종 악성 앱에 대한 보안위협이 존재한다. 어플리케이션에 대하여 별도의 인증을 하지 않는 블랙마켓의 등장 역시 사용자들을 보안위협에 노출시키고 있다. 본 발명에서 제시하는 어플리케이션의 구현 목표는 설치되어 있는 모든 어플리케이션 및 실행되고 있는 어플리케이션이 사용하는 Permission 정보, 인텐트(Intent) 정보, 마켓의 출처, 네트워크 송ㆍ수신 량에 대해 분석하여 위협 등급별로 분류하고 보안위협에 대하여 사용자에게 통보함으로써 사용자가 주의할 수 있도록 하는 어플리케이션이다.
이와 같이, 안드로이드 환경의 악성 앱 탐지 어플리케이션은, 시스템에 설치된 어플리케이션의 Permission 정보, 인텐트 정보, 마켓 출처, 프로세스별 네트워크 사용 트래픽에 대하여 점검을 실시한다.
▣ Permission 정보 및 인텐트 정보
Permission 정보에 대한 점검은 안드로이드 디바이스에 설치된 어플리케이션의 모든 목록을 호출하여 설치된 목록, 실행중인 목록을 분류하여 사용자에게 보여줌으로써 사용자의 의도와는 상관없이 실행되고 있는 어플리케이션의 목록을 확인할 수 있다. 또한 각각의 어플리케이션에 대한 Permission 정보를 사용자에게 보여주어 보안적인 위협가능성이 있는 권한 정보는 붉은색으로 표시하여 보안위협을 알린다.
인텐트 정보는 해당 어플리케이션의 Permission 정보와 마찬가지로 관리자 권한의 실행과 같은 특정 인텐트 정보에 대하여 점검을 실시하여 사용자에게 보여준다.
▣ 마켓 출처
마켓의 출처는 해당 어플리케이션을 다운받은 곳을 추적하여 사용자에게 보여줌으로써 해당 어플리케이션이 공식 마켓에서 제공된 어플리케이션인지 확인할 수 있게 해 준다.
▣ 네트워크 트래픽 점검
실행되는 모든 어플리케이션의 트래픽 정보를 통해 각각의 어플리케이션에 대한 데이터 송ㆍ수신 크기를 비교하여 사용자에게 보여주며, 지속적으로 송신량의 증가여부를 확인하여 사용자에게 보여준다. 어플리케이션에 대한 보안 평가를 실시할 때 추가 점수를 부여한다.
도 5는 본 발명의 일 실시예에 의한 어플리케이션의 초기화면이다.
도 5를 참조하면, 구성화면에 나타난 메뉴에서와 같이, 첫 번째 아이콘은 설치되어 있는 어플리케이션을 탐지하는 기능으로서, 공장에서 설치되어 나오는 기본 어플리케이션을 제외한 모든 어플리케이션에 대한 정보를 분석하는 기능이다. 두 번째 아이콘은 실행되는 어플리케이션을 탐지하는 기능으로서, 현재 프로세스 상에서 동작하고 있는 어플리케이션에 대한 상태 및 정보를 분석하는 기능이다. 세 번째 아이콘은 어플리케이션이 사용하는 네트워크 통신량을 측정하는 기능을 수행한다.
한편, 도 6은 설치된 어플리케이션 정보 호출(스캔) 화면이고, 도 7은 실행되고 있는 어플리케이션 정보 호출 화면으로서, Permission 정보가 펼쳐지거나 닫혀진 화면이며, 도 8은 네트워크 사용량 정보를 나타낸 화면이다.
상술한 바와 같이, 본 발명에서는 안드로이드 환경에서 어플리케이션에 대한 리패키징 여부를 탐지하는 기법에 대해 개시하고 있으며, 마켓 서버(1) 등록과정에서 개발자는 어플리케이션에 대한 해쉬 값을 등록함으로써 원본 어플리케이션의 해쉬 값을 비교할 수 있도록 하며, 마켓 서버(1)에서는 마켓 서버(1)에 대한 플래그 정보와 인덱스 정보를 어플리케이션에 연접하여 사용자에게 제공함으로써 사용자는 스마트 폰(3)과 마켓 서버(1)와의 통신을 통해 해당 어플리케이션에 대한 해쉬 값을 확인할 수 있도록 한다. 이를 통해 다운로드받은 어플리케이션이 공인마켓 서버(1)에 업로드되어 무결성이 검증된 어플리케이션인지 확인할 수 있다. 실제로 이러한 과정을 사용하기 위해 각 마켓 서버(1)에서는 해당 어플리케이션에 대한 정보를 제공할 수 있도록 데이터베이스(2)를 좀 더 세부적으로 구조화시킬 수 있으며, 스마트 폰(3)에서는 어플리케이션을 설치하기 전에 마켓 서버(1)의 플래그 값을 확인할 수 있도록 설치 모듈을 마련하여야 한다.
이상에서 몇 가지 실시예를 들어 본 발명을 더욱 상세하게 설명하였으나, 본 발명은 반드시 이러한 실시예로 국한되는 것이 아니고 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형실시될 수 있다.
1 : 마켓 서버
2 : 데이터베이스
3 : 스마트 폰

Claims (4)

  1. 마켓 서버가, 어플리케이션의 개발자가 등록하는 APK파일에 대한 해쉬 값을 상기 어플리케이션과 함께 전송받는 단계;
    상기 마켓 서버가, 상기 어플리케이션과 해쉬 값을 분리하여 인덱싱을 통해 생성된 인덱스 정보를 데이터베이스에 저장하고, 해당 마켓 서버에 대한 플래그 정보를 연접하여 보관하는 단계;
    상기 마켓 서버가, 상기 어플리케이션의 배포시, 상기 해쉬 값을 검색할 수 있는 상기 인덱스 정보와 등록된 마켓 서버를 확인할 수 있는 상기 플래그 정보를 상기 어플리케이션과 함께 배포하는 단계;
    배포된 어플리케이션을 다운로드한 사용자의 스마트 폰에서 상기 어플리케이션의 APK파일로부터 플래그 정보를 추출하는 단계;
    상기 스마트 폰에서 상기 플래그 정보에 대응하는 마켓 서버로 접속하여 해쉬 값을 요청하는 단계; 및
    상기 마켓 서버가, 상기 어플리케이션의 인덱스 정보를 이용하여 해쉬 값을 검색하여 상기 스마트 폰으로부터 전송된 해쉬 값과 비교하고, 해쉬 값의 일치 여부를 확인하여 상기 어플리케이션의 무결성을 검증하는 단계를 포함하며,
    상기 APK파일은 안드로이드 구동 시스템을 위한 패키징 파일 포맷인 안드로이드 패키지(Android PacKage : APK) 파일이며,
    상기 단계들을 시행하는 어플리케이션은,
    안드로이드 디바이스에 설치된 어플리케이션의 모든 목록을 호출하여 사용자의 의도와는 상관없이 실행되고 있는 어플리케이션의 목록을 제공하는 Permission 정보 제공 기능,
    관리자 권한의 실행을 포함한 특정 인텐트(Intent) 정보에 대하여 점검을 실시하는 인텐트 정보 제공 기능,
    공식 마켓으로부터 어플리케이션을 다운로드받았는지 여부를 제공하는 마켓 출처 정보 제공 기능,
    실행되는 모든 어플리케이션의 트래픽 정보를 통해 각각의 어플리케이션에 대한 데이터 송ㆍ수신 크기를 비교하는 네트워크 트래픽 점검 제공 기능
    을 포함하는 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법.
  2. 삭제
  3. 삭제
  4. 삭제
KR20130134252A 2013-11-06 2013-11-06 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법 KR101498820B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20130134252A KR101498820B1 (ko) 2013-11-06 2013-11-06 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130134252A KR101498820B1 (ko) 2013-11-06 2013-11-06 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법

Publications (1)

Publication Number Publication Date
KR101498820B1 true KR101498820B1 (ko) 2015-03-05

Family

ID=53026290

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130134252A KR101498820B1 (ko) 2013-11-06 2013-11-06 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법

Country Status (1)

Country Link
KR (1) KR101498820B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108259182A (zh) * 2018-01-08 2018-07-06 中国人民大学 一种Android应用重打包检测方法及装置
CN109756340A (zh) * 2018-12-03 2019-05-14 深圳市新国都支付技术有限公司 一种数字验签方法、装置和存储介质
KR20190061075A (ko) * 2016-10-11 2019-06-04 알리바바 그룹 홀딩 리미티드 소프트웨어 재패키징 방지 방법 및 장치
KR20210063846A (ko) * 2019-11-25 2021-06-02 순천향대학교 산학협력단 안드로이드 플랫폼에서의 ssl 통신시 보안 위협 검증 장치 및 방법
KR20210083780A (ko) 2019-12-27 2021-07-07 주식회사 린아레나 Dex 파일 분할 및 난독화를 통한 안드로이드 앱 보안성 향상 방법 및 시스템
CN113873482A (zh) * 2021-08-27 2021-12-31 青岛中科英泰商用系统股份有限公司 测试Android系统对蓝牙模块兼容性的方法、系统、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120090711A (ko) * 2011-02-08 2012-08-17 (주)바이너리소프트 모바일 단말용 애플리케이션 위변조 검증 시스템 및 방법
KR20130085535A (ko) * 2011-12-16 2013-07-30 주식회사 케이티 어플리케이션의 변조 방지 장치 및 검증 장치
KR20130114710A (ko) * 2011-02-03 2013-10-17 가부시키가이샤 리코 애플리케이션을 인증하기 위한 서명의 생성 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130114710A (ko) * 2011-02-03 2013-10-17 가부시키가이샤 리코 애플리케이션을 인증하기 위한 서명의 생성 방법
KR20120090711A (ko) * 2011-02-08 2012-08-17 (주)바이너리소프트 모바일 단말용 애플리케이션 위변조 검증 시스템 및 방법
KR20130085535A (ko) * 2011-12-16 2013-07-30 주식회사 케이티 어플리케이션의 변조 방지 장치 및 검증 장치

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190061075A (ko) * 2016-10-11 2019-06-04 알리바바 그룹 홀딩 리미티드 소프트웨어 재패키징 방지 방법 및 장치
KR102192880B1 (ko) * 2016-10-11 2020-12-22 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. 소프트웨어 재패키징 방지 방법 및 장치
CN108259182A (zh) * 2018-01-08 2018-07-06 中国人民大学 一种Android应用重打包检测方法及装置
CN108259182B (zh) * 2018-01-08 2021-01-05 中国人民大学 一种Android应用重打包检测方法及装置
CN109756340A (zh) * 2018-12-03 2019-05-14 深圳市新国都支付技术有限公司 一种数字验签方法、装置和存储介质
KR20210063846A (ko) * 2019-11-25 2021-06-02 순천향대학교 산학협력단 안드로이드 플랫폼에서의 ssl 통신시 보안 위협 검증 장치 및 방법
KR102295484B1 (ko) * 2019-11-25 2021-08-30 순천향대학교 산학협력단 안드로이드 플랫폼에서의 ssl 통신시 보안 위협 검증 장치 및 방법
KR20210083780A (ko) 2019-12-27 2021-07-07 주식회사 린아레나 Dex 파일 분할 및 난독화를 통한 안드로이드 앱 보안성 향상 방법 및 시스템
CN113873482A (zh) * 2021-08-27 2021-12-31 青岛中科英泰商用系统股份有限公司 测试Android系统对蓝牙模块兼容性的方法、系统、设备及介质

Similar Documents

Publication Publication Date Title
US11259183B2 (en) Determining a security state designation for a computing device based on a source of software
US11301569B2 (en) Quarantine of software based on analysis of updated device data
US20210258304A1 (en) Configuring access to a network service based on a security state of a mobile device
Gamba et al. An analysis of pre-installed android software
KR101498820B1 (ko) 안드로이드 환경에서의 어플리케이션 리패키징 탐지 방법
Feal et al. Angel or devil? a privacy study of mobile parental control apps
Viennot et al. A measurement study of google play
EP3706022A2 (en) Permissions policy manager to configure permissions on computing devices
Weinmann Baseband Attacks: Remote Exploitation of Memory Corruptions in Cellular Protocol Stacks.
KR101012872B1 (ko) 플랫폼 보안 장치 및 방법
US20140150096A1 (en) Method for assuring integrity of mobile applications and apparatus using the method
US9026795B2 (en) Apparatus and method for signing application
US20130055335A1 (en) Security enhancement methods and systems
KR20120134509A (ko) 어플리케이션 개발 시스템에서 디바이스용 어플리케이션을 생성 및 설치하기 위한 장치 및 방법
CN104298916A (zh) 应用程序管理方法、应用程序管理系统与使用者装置
KR101277517B1 (ko) 애플리케이션 위/변조 탐지장치 및 방법
CN104751049A (zh) 一种应用程序安装方法及移动终端
CN104049973A (zh) 安卓应用程序的安全验证方法及装置
CN104683299A (zh) 一种软件注册的控制方法、认证服务器及终端
Blázquez et al. Trouble over-the-air: An analysis of fota apps in the android ecosystem
KR101642267B1 (ko) 앱 위변조 방지시스템 및 그 방법
Zhauniarovich et al. Enabling trusted stores for android
KR20160145574A (ko) 모바일 컴퓨팅에서의 보안을 강제하는 시스템 및 방법
Choi et al. Large-scale analysis of remote code injection attacks in android apps
Montealegre et al. Security vulnerabilities in android applications

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180227

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190227

Year of fee payment: 5