KR101642252B1 - 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법 - Google Patents

이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법 Download PDF

Info

Publication number
KR101642252B1
KR101642252B1 KR1020160074459A KR20160074459A KR101642252B1 KR 101642252 B1 KR101642252 B1 KR 101642252B1 KR 1020160074459 A KR1020160074459 A KR 1020160074459A KR 20160074459 A KR20160074459 A KR 20160074459A KR 101642252 B1 KR101642252 B1 KR 101642252B1
Authority
KR
South Korea
Prior art keywords
image
mobile application
application program
resource file
storage unit
Prior art date
Application number
KR1020160074459A
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 KR1020160074459A priority Critical patent/KR101642252B1/ko
Application granted granted Critical
Publication of KR101642252B1 publication Critical patent/KR101642252B1/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
    • 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/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • 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

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)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

본 발명은 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법에 대한 것이다.
본 발명에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치는 실행파일로부터 분리된 일반코드를 저장하는 일반코드 저장부; 상기 실행파일로부터 분리된 핵심코드를 저장하는 핵심코드 저장부; 상기 핵심코드 저장부에 포함된 이미지생성함수를 이용하여 상기 핵심코드를 이미지 형태로 변환한 은닉데이터를 생성하고, 상기 생성된 은닉데이터를 상기 이미지 리소스파일에 저장된 이미지데이터에 은닉하는 데이터 은닉부; 상기 일반코드 저장부와 상기 이미지 리소스파일을 리빌드하여 상기 모바일 응용 프로그램을 재생성하는 모바일 응용프로그램 재생성부; 상기 재생성된 모바일 응용 프로그램이 실행되면, 상기 일반코드 저장부에 포함된 코드추출함수를 이용하여 상기 은닉데이터로부터 핵심코드를 추출하고 추출된 핵심코드를 메모리에 로딩하는 실행부; 및 상기 재생성된 모바일 응용 프로그램의 정보를 이용하여 동적 이미지를 생성하고, 상기 생성된 동적 이미지와 상기 이미지 리소스파일을 이용하여 최종 이미지를 생성하는 이미지 생성부를 포함한다.

Description

이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법{APPARATUS FOR TAMPER DETECTION ON MOBILE APPLICATION USING IMAGE RESOURCE FILE AND METHOD THEREOF}
본 발명은 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법에 관한 것으로서, 더욱 상세하게는 이미지 리소스 파일을 활용하여 모바일 응용 프로그램의 위변조 여부를 시각적으로 판단할 수 있도록 하는 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법에 관한 것이다
2015년 11월 IT 시장 조사기관인 IC 인사이트에 따르면 2015년 4분기 국내 스마트폰의 출하량이 4억대를 돌파할 것으로 전망했고, 2018년 스마트폰의 비중이 93%까지 치솟을 것으로 전망하고 있다. 또한, 2015년 10월 안랩의 ASEC Report에 따르면, 2015년 10월 발견된 악성코드 수는 69만개 수준으로 측정했고, 이는 2015년 9월에 비해 2.5배나 증가한 수치이다. 악성코드의 수가 급격하게 증가함에 따라 이를 보호하기 위한 위변조 탐지 기법이 조명을 받을 것으로 판단되고 있다.
이에 따라 기존에는 실행 파일의 해쉬값을 원본 시그니쳐값과 비교함으로써 위변조 여부를 탐지하는 방법을 사용하였다. 또한 이에 기반하여 실행 파일이 위변조된 것으로 판단된 경우 사용자에게 메시지를 표시하거나, 모바일 응용 프로그램이 강제로 종료되도록 하였다.
그러나 이러한 방법은 공격자가 비교 루틴의 위치를 역공학 분석을 통해 쉽게 찾을 수 있을 뿐 아니라 비교 값을 변경하는 것만으로 기존의 위변조 탐지 기법을 우회할 수 있는 문제점이 있었다. 또한 이를 우회하게되면 사용자는 사용하는 모바일 응용 프로그램의 위변조 여부를 인지할 수 있는 다른 방법이 없기 때문에 위변조 탐지가 우회되는 경우 공격자의 공격에 쉽게 노출되는 문제점이 있었다.
본 발명의 배경이 되는 기술은 대한민국 등록특허공보 제10-1509585호(2015. 04. 07. 공고)에 개시되어 있다.
본 발명이 이루고자 하는 기술적 과제는 이미지 리소스 파일을 활용하여 모바일 응용 프로그램의 위변조 여부를 시각적으로 판단할 수 있도록 하는 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법을 제공하기 위한 것이다.
이러한 기술적 과제를 이루기 위한 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치는, 실행파일과 이미지 리소스파일을 포함하는 모바일 응용 프로그램의 실행파일로부터 분리된 일반코드를 저장하는 일반코드 저장부; 상기 실행파일로부터 분리된 핵심코드를 저장하는 핵심코드 저장부; 상기 핵심코드 저장부에 포함된 이미지생성함수를 이용하여 상기 핵심코드를 이미지 형태로 변환한 은닉데이터를 생성하고, 상기 생성된 은닉데이터를 상기 이미지 리소스파일에 저장된 이미지데이터에 은닉하는 데이터 은닉부; 상기 일반코드 저장부와 상기 이미지 리소스파일을 리빌드하여 상기 모바일 응용 프로그램을 재생성하는 모바일 응용프로그램 재생성부; 상기 재생성된 모바일 응용 프로그램이 실행되면, 상기 일반코드 저장부에 포함된 코드추출함수를 이용하여 상기 은닉데이터로부터 핵심코드를 추출하고 추출된 핵심코드를 메모리에 로딩하는 실행부; 및 상기 재생성된 모바일 응용 프로그램의 정보를 이용하여 동적 이미지를 생성하고, 상기 생성된 동적 이미지와 상기 이미지 리소스파일을 이용하여 최종 이미지를 생성하는 이미지 생성부를 포함한다.
또한, 상기 생성된 최종 이미지로부터 상기 모바일 응용 프로그램의 위변조 여부를 판단하는 위변조 판단부를 더 포함할 수 있다.
또한, 상기 모바일 응용 프로그램의 정보는 상기 모바일 응용 프로그램에 대한 해쉬값, 서명값, 공개키 인증서, 클래스 또는 메소드의 실행코드 중 하나 이상을 포함할 수 있다.
또한, 상기 이미지 생성부는 상기 모바일 응용 프로그램의 정보를 이용하여 크기 및 형태를 포함하는 모양값, 색상값, 위치값, 투명도 중 하나 이상의 값을 생성하고, 생성된 값에 대응하여 상기 동적 이미지를 생성할 수 있다.
또한, 상기 이미지 생성부는 상기 이미지 리소스파일에 저장된 이미지데이터의 원본 이미지와 상기 생성된 동적 이미지를 결합하여 상기 최종 이미지를 생성할 수 있다.
또한, 상기 위변조 판단부는 상기 모바일 응용 프로그램이 위변조된 것으로 판단하면 상기 모바일 응용 프로그램의 실행을 종료시킬 수 있다.
또한, 본 발명의 실시예에 따른 모바일 응용 프로그램 위변조 탐지 장치를 이용한 위변조 탐지 방법에서, 상기 위변조 탐지 장치는 상기 실행파일로부터 분리된 일반코드와 핵심코드를 일반코드 저장부와 핵심코드 저장부에 각각 저장하는 단계; 상기 핵심코드 저장부에 포함된 이미지생성함수를 이용하여 상기 핵심코드를 이미지 형태로 변환한 은닉데이터를 생성하고, 상기 생성된 은닉데이터를 상기 이미지 리소스파일에 저장된 이미지데이터에 은닉하는 단계; 상기 일반코드 저장부와 상기 이미지 리소스파일을 리빌드하여 상기 모바일 응용 프로그램을 재생성하는 단계; 상기 재생성된 모바일 응용 프로그램이 실행되면, 상기 일반코드 저장부에 포함된 코드추출함수를 이용하여 상기 은닉데이터로부터 핵심코드를 추출하고 추출된 핵심코드를 메모리에 로딩하는 단계; 및 상기 재생성된 모바일 응용 프로그램의 정보를 이용하여 동적 이미지를 생성하고, 상기 생성된 동적 이미지와 상기 이미지 리소스파일을 이용하여 최종 이미지를 생성하는 단계를 포함한다.
이와 같이 본 발명에 따르면, 이미지 리소스 파일을 활용하여 모바일 응용 프로그램의 위변조 여부를 사용자에게 이미지 형태로 보여주기 때문에 사용자가 사용하고 있는 애플리케이션의 위변조 여부를 쉽게 알아차릴 수 있게 하여 보안성이 강화되는 효과가 있다.
또한 본 발명에 따르면, 핵심 코드의 노출을 최소화함으로써 공격자로 하여금 분석을 어렵게하여 응용 프로그램의 위변조를 어렵게 하고, 사용자로 하여금 위변조된 앱의 사용이 차단되도록 할 수 있어 모바일 응용 프로그램을 보호할 수 있는 효과가 있다.
또한 본 발명에 따르면, 위변조 탐지 및 핵심 코드를 서버에 두지 않고 모바일 응용 프로그램의 하나 이상의 이미지 리소스 파일에 은닉함으로써, 서버와의 통신을 사용하지 않고도 위변조 여부를 탐지할 수 있어 불안정하거나 데이터 소모량을 줄여야하는 모바일 환경에 적합하고, 하나 이상의 이미지 리소스 파일에 핵심 코드를 은닉함으로써 공격자들의 정적 혹은 동적 역공학 분석을 방해할 수 있는 효과가 있다.
도 1은 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치를 나타낸 블록구성도이다.
도 2는 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치에서 모바일 응용 프로그램의 재생성 과정을 설명하기 위한 도면이다.
도 3은 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치에서 동정 이미지 생성 과정을 설명하기 위한 도면이다.
도 4는 도 3의 동적 이미지 생성을 위한 최하위 비트 기반의 이미지 스테가노그래피 예를 나타낸 도면이다.
도 5는 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 방법의 동작 흐름을 도시한 순서도이다.
도 6은 모바일 응용 프로그램이 위변조되지 않은 경우의 최종 이미지를 나타낸 화면 예이다.
도 7은 모바일 응용 프로그램이 위변조된 경우의 최종 이미지를 나타낸 화면 예이다.
이하 첨부된 도면을 참조하여 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용프로그램 위변조 탐지 장치 및 그 방법을 설명한다. 이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다.
또한 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
먼저, 도 1 내지 도 4를 통해 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치에 대하여 설명한다.
도 1은 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치를 나타낸 블록구성도이고, 도 2는 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치에서 모바일 응용 프로그램의 재생성 과정을 설명하기 위한 도면이다.
도 1에서와 같이 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치(100)는, 일반코드 저장부(110), 핵심코드 저장부(120), 데이터 은닉부(130), 모바일 응용프로그램 재생성부(140), 실행부(150), 이미지 생성부(160) 및 위변조 판단부(170)를 포함한다.
본 발명의 실시예에서의 모바일 응용 프로그램은 도 2에서와 같이 실행파일(코드 파일)과 이미지 리소스파일(코드파일을 제외한 나머지 이미지 파일들)을 포함하며, 사용자는 모바일 응용 프로그램을 모바일 콘텐츠를 자유롭게 사고 파는 가상의 장터인 모바일 애플리케이션 마켓에서 다운로드 받아 스마트폰 등의 모바일 단말기에 다운로드 받아서 설치될 수 있다.
먼저, 일반코드 저장부(110)는 모바일 응용 프로그램의 실행파일로부터 분리된 일반코드를 저장한다.
그리고 핵심코드 저장부(120)는 모바일 응용 프로그램의 실행파일로부터 분리된 핵심코드를 저장한다.
자세히는, 모바일 응용 프로그램 위변조 탐지 장치(100)는 모바일 응용 프로그램 패키지(APK)로부터 디컴파일된 실행파일을 통하여 일반코드와 핵심코드를 분리하고, 분리된 일반코드는 일반코드 저장부(110)에 저장하고 분리된 핵심코드와 핵심코드의 메타 데이터인 코드 속성 정보를 핵심코드 저장부(120)에 저장한다. 이때, 모바일 플랫폼에서 미리 정의해둔 함수를 이용하여 일반코드와 핵심코드를 분리하거나 해당 모바일 응용 프로그램의 개발자나 인증 관련 관계자에 의해 일반코드와 핵심 코드가 분리될 수도 있다.
즉, 개발자에 의해 일반코드와 핵심코드가 분리되면 모바일 응용 프로그램 위변조 탐지 장치(100)는 일반코드로 구성된 일반코드 저장부(110)에 코드추출함수를 추가하고 핵심코드로 구성된 핵심코드 저장부(120)에 이미지생성함수를 추가한다.
그리고 데이터 은닉부(130)는 핵심코드 저장부(120)에 포함된 이미지생성함수를 이용하여 핵심코드를 이미지 형태로 변환한 은닉데이터를 생성하고, 생성된 은닉데이터를 이미지 리소스파일에 저장된 이미지데이터에 은닉한다.
즉, 도 2에서와 같이 데이터 은닉부(130)는 이미지생성함수를 이용하여 핵심코드를 이미지 형태로 변환하여 은닉데이터를 생성하고, 생성된 은닉데이터를 이미지 리소스파일에 저장된 이미지데이터에 은닉하는데, 실제로는 이미지데이터만 보이게 된다.
그리고, 모바일 응용프로그램 재생성부(140)는 일반코드 저장부(110)와 이미지 리소스파일을 리빌드하여 모바일 응용 프로그램을 재생성한다.
자세히는, 핵심코드 저장부(120)에 저장되어 있던 핵심코드는 은닉데이터로 변환되어 이미지 리소스파일에 은닉된 채로 모바일 응용 프로그램이 재생성된다.
그리고, 실행부(150)는 모바일 응용프로그램 재생성부(140)에서 재생성된 모바일 응용 프로그램이 실행되면, 일반코드 저장부(110)에 포함된 코드추출함수를 이용하여 이미지 리소스파일에 저장된 이미지데이터에 은닉된 은닉데이터로부터 핵심코드를 추출하고 추출된 핵심코드를 메모리에 로딩한다.
그리고, 이미지 생성부(160)는 모바일 응용프로그램 재생성부(140)에서 재생성된 모바일 응용 프로그램의 정보를 이용하여 동적 이미지를 생성하고, 생성된 동적 이미지와 이미지 리소스파일을 이용하여 최종 이미지를 생성한다.
도 3은 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치에서 동정 이미지 생성 과정을 설명하기 위한 도면이고, 도 4는 도 3의 동적 이미지 생성을 위한 최하위 비트 기반의 이미지 스테가노그래피 예를 나타낸 도면이다.
이미지 생성부(160)는, 도 3에서와 같이 모바일 응용프로그램 재생성부(140)에서 재생성된 모바일 응용 프로그램의 정보를 이용하여 동적 이미지를 생성하는데, 이때, 모바일 응용 프로그램의 정보는 모바일 응용 프로그램에 대한 해쉬값, 서명값, 공개키 인증서, 클래스 또는 메소드의 실행코드 중 하나 이상을 포함할 수 있다.
그리고, 이미지 생성부(160)는 모바일 응용 프로그램의 정보를 이용하여 크기 및 형태를 포함하는 모양값, 색상값, 위치값, 투명도 중 하나 이상의 값을 생성하고, 생성된 값에 대응하여 동적 이미지를 생성한다.
이때, 모양값, 색상값, 위치값, 투명도는 각각 도 4에서와 같이 최하위 비트(LSB) 기반의 스테가노그래피(Steganography)를 이용하여 숫자열로 생성될 수 있으며, 이미지 생성부(160)는 생성된 숫자열에 대응하는 동적 이미지를 생성할 수 있다.
여기서, 스테가노그래피는 전달하려는 정보를 이미지, 오디오 등의 파일에 인간이 감지할 수 없도록 숨겨져 상대방에게 전달하는 기술의 총칭이다. 기존의 암호화 방법은 메시지를 암호화하여 정보를 보호하는 반면에 스테가노그래피는 비밀정보를 매체에 은닉하여 그 정보의 존재 자체를 감추는 보안 기술이다.
이때, 이미지 생성부(160)는 이미지 리소스파일에 저장된 이미지데이터의 원본 이미지와 생성된 동적 이미지를 결합하여 최종 이미지를 생성한다.
마지막으로, 위변조 판단부(170)는 이미지 생성부(160)에서 생성된 최종 이미지로부터 모바일 응용 프로그램의 위변조 여부를 판단한다.
자세히는, 원본 이미지와 생성된 동적 이미지를 결합된 최종 이미지가 사용자 또는 개발자가 알고 있는 본래의 이미지와 상이하거나 틀어져 있으면 해당 모바일 응용 프로그램이 해킹당한 것으로 판단한다.
이때, 위변조 판단부(170)는 모바일 응용 프로그램이 위변조된 것으로 판단하면 모바일 응용 프로그램의 실행을 강제로 종료시킨다.
이하에서는 도 5 내지 도 7을 통해 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 방법에 대하여 설명한다.
도 5는 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 방법의 동작 흐름을 도시한 순서도로서, 이를 참조하여 본 발명의 구체적인 동작을 설명한다.
본 발명의 실시예에 따르면, 먼저, 위변조 탐지 장치(100)는 모바일 응용 프로그램에 포함된 실행파일로부터 분리된 일반코드와 핵심코드를 일반코드 저장부(110)와 핵심코드 저장부(120)에 각각 저장한다(S510).
그 다음, 데이터 은닉부(130)는 핵심코드 저장부(120)에 포함된 이미지생성함수를 이용하여 핵심코드를 이미지 형태로 변환한 은닉데이터를 생성하고(S520), S520 단계에서 생성된 은닉데이터를 모바일 응용 프로그램에 포함된 이미지 리소스파일에 저장되어 있는 이미지데이터에 은닉한다(S530).
그 다음, 모바일 응용 프로그램 재생성부(140)는 일반코드 저장부(110)와 이미지 리소스파일을 리빌드하여 모바일 응용 프로그램을 재생성한다(S540).
그 다음, S540 단계에서 재생성된 모바일 응용 프로그램이 실행되면, 실행부(150)는 일반코드 저장부(110)에 포함된 코드추출함수를 이용하여 은닉데이터로부터 핵심코드를 추출하고(S550), 추출된 핵심코드를 메모리에 로딩한다(S560).
자세히는, 일반코드 저장부(110)에 포함된 코드추출함수를 이용하여 이미지 리소스파일에 저장된 이미지데이터에 은닉된 은닉데이터로부터 핵심코드를 추출하고 추출된 핵심코드를 메모리에 로딩한다.
그 다음, 이미지 생성부(160)는 S540 단계에서 재생성된 모바일 응용 프로그램의 정보를 이용하여 동적 이미지를 생성한다(S570).
자세히는, 모바일 응용프로그램 재생성부(140)에서 재생성된 모바일 응용 프로그램의 정보를 이용하여 동적 이미지를 생성하는데, 이때, 모바일 응용 프로그램의 정보는 모바일 응용 프로그램에 대한 해쉬값, 서명값, 공개키 인증서, 클래스 또는 메소드의 실행코드 중 하나 이상을 포함할 수 있다.
그리고, 이미지 생성부(160)는 모바일 응용 프로그램의 정보를 이용하여 크기 및 형태를 포함하는 모양값, 색상값, 위치값, 투명도 중 하나 이상의 값을 생성하고, 생성된 값에 대응하여 동적 이미지를 생성한다.
그 다음, 이미지 생성부(160)는 S570 단계에서 생성된 동적 이미지와 이미지 리소스파일을 이용하여 최종 이미지를 생성한다(S580).
자세히는, 이미지 리소스파일에 저장된 이미지데이터의 원본 이미지와 생성된 동적 이미지를 결합하여 최종 이미지를 생성한다.
그 다음, 위변조 판단부(170)는 S580 단계에서 생성된 최종 이미지로부터 모바일 응용 프로그램의 위변조 여부를 판단한다(S590).
S590 단계의 판단 결과, 모바일 응용 프로그램이 위변조되지 않은 것으로 판단하면, 해당 모바일 응용 프로그램의 실행을 유지시키고(S591) 위변조된 것으로 판단하면 모바일 응용 프로그램의 실행을 종료시킨다(S600).
자세히는, 원본 이미지와 생성된 동적 이미지를 결합된 최종 이미지가 본래의 이미지와 상이하거나 틀어져 있으면 해당 모바일 응용 프로그램이 위변조(해킹)된 것으로 판단하여 모바일 응용 프로그램의 실행을 강제로 종료시킨다.
도 6은 모바일 응용 프로그램이 위변조되지 않은 경우의 최종 이미지를 나타낸 화면 예이고, 도 7은 모바일 응용 프로그램이 위변조된 경우의 최종 이미지를 나타낸 화면 예이다.
위변조 판단부(170)는 원본 이미지와 생성된 동적 이미지가 결합된 최종 이미지가 도 6에서와 같이, 본래의 이미지와 동일하면 모바일 응용 프로그램이 위변조되지 않은 것으로 판단하여 해당 모바일 응용 프로그램의 실행을 유지시킨다.
도 7에 예시한 최종 이미지(a) 내지 (c)와 같이 최종 이미지가 본래의 이미지와 상이하거나 틀어져 있으면 해당 모바일 응용 프로그램이 해킹당한 것으로 판단하여 해당 모바일 응용 프로그램을 강제로 종료 시킨다.
또한, 본 발명의 실시예에서는 원본 이미지와 생성된 동적 이미지가 결합된 최종 이미지를 사용자에게 제공하여 사용자로부터 위변조 판단이 이루어지게 할 수도 있다. 즉, 제공된 최종 이미지를 통해 사용자로부터 최종 이미지의 비정상 유무가 판단되어 모바일 응용 프로그램이 유지 또는 종료되도록 할 수도 있다.
상술한 바와 같이, 본 발명의 실시예에 따른 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법은 이미지 리소스 파일을 활용하여 모바일 응용 프로그램의 위변조 여부를 사용자에게 이미지 형태로 보여주기 때문에 사용자가 사용하고 있는 애플리케이션의 위변조 여부를 쉽게 알아차릴 수 있게 하여 보안성이 강화되는 효과가 있다.
또한 본 발명의 실시예에 따르면, 핵심 코드의 노출을 최소화함으로써 공격자로 하여금 분석을 어렵게하여 응용 프로그램의 위변조를 어렵게 하고, 사용자로 하여금 위변조된 앱의 사용이 차단되도록 할 수 있어 모바일 응용 프로그램을 보호할 수 있는 효과가 있다.
또한 본 발명의 실시예에 따르면, 위변조 탐지 및 핵심 코드를 서버에 두지 않고 모바일 응용 프로그램의 하나 이상의 이미지 리소스 파일에 은닉함으로써, 서버와의 통신을 사용하지 않고도 위변조 여부를 탐지할 수 있어 불안정하거나 데이터 소모량을 줄여야하는 모바일 환경에 적합하고, 하나 이상의 이미지 리소스 파일에 핵심 코드를 은닉함으로써 공격자들의 정적 혹은 동적 역공학 분석을 방해할 수 있는 효과가 있다.
본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호범위는 아래의 특허청구범위에 의해서 정하여져야 할 것이다.
100 : 위변조 탐지 장치 110 : 일반코드 저장부
120 : 핵심코드 저장부 130 : 데이터 은닉부
140 : 모바일 응용프로그램 재생성부 150 : 실행부
160 : 이미지 생성부 170 : 위변조 판단부

Claims (12)

  1. 실행파일과 이미지 리소스파일을 포함하는 모바일 응용 프로그램의 위변조 탐지를 위한 장치에 있어서,
    상기 실행파일로부터 분리된 일반코드를 저장하는 일반코드 저장부;
    상기 실행파일로부터 분리된 핵심코드를 저장하는 핵심코드 저장부;
    상기 핵심코드 저장부에 포함된 이미지생성함수를 이용하여 상기 핵심코드를 이미지 형태로 변환한 은닉데이터를 생성하고, 상기 생성된 은닉데이터를 상기 이미지 리소스파일에 저장된 이미지데이터에 은닉하는 데이터 은닉부;
    상기 일반코드 저장부와 상기 이미지 리소스파일을 리빌드하여 상기 모바일 응용 프로그램을 재생성하는 모바일 응용프로그램 재생성부;
    상기 재생성된 모바일 응용 프로그램이 실행되면, 상기 일반코드 저장부에 포함된 코드추출함수를 이용하여 상기 은닉데이터로부터 핵심코드를 추출하고 추출된 핵심코드를 메모리에 로딩하는 실행부; 및
    상기 재생성된 모바일 응용 프로그램의 정보를 이용하여 동적 이미지를 생성하고, 상기 생성된 동적 이미지와 상기 이미지 리소스파일을 이용하여 최종 이미지를 생성하는 이미지 생성부를 포함하는 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치.
  2. 제1항에 있어서,
    상기 생성된 최종 이미지로부터 상기 모바일 응용 프로그램의 위변조 여부를 판단하는 위변조 판단부를 더 포함하는 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치.
  3. 제1항에 있어서,
    상기 모바일 응용 프로그램의 정보는,
    상기 모바일 응용 프로그램에 대한 해쉬값, 서명값, 공개키 인증서, 클래스 또는 메소드의 실행코드 중 하나 이상을 포함하는 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치.
  4. 제3항에 있어서,
    상기 이미지 생성부는,
    상기 모바일 응용 프로그램의 정보를 이용하여 크기 및 형태를 포함하는 모양값, 색상값, 위치값, 투명도 중 하나 이상의 값을 생성하고, 생성된 값에 대응하여 상기 동적 이미지를 생성하는 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치.
  5. 제4항에 있어서,
    상기 이미지 생성부는
    상기 이미지 리소스파일에 저장된 이미지데이터의 원본 이미지와 상기 생성된 동적 이미지를 결합하여 상기 최종 이미지를 생성하는 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치.
  6. 제2항에 있어서,
    상기 위변조 판단부는,
    상기 모바일 응용 프로그램이 위변조된 것으로 판단하면 상기 모바일 응용 프로그램의 실행을 종료시키는 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치.
  7. 실행파일과 이미지 리소스파일을 포함하는 모바일 응용 프로그램 위변조 탐지 장치를 이용한 위변조 탐지 방법에 있어서,
    상기 위변조 탐지 장치는 상기 실행파일로부터 분리된 일반코드와 핵심코드를 일반코드 저장부와 핵심코드 저장부에 각각 저장하는 단계;
    상기 핵심코드 저장부에 포함된 이미지생성함수를 이용하여 상기 핵심코드를 이미지 형태로 변환한 은닉데이터를 생성하고, 상기 생성된 은닉데이터를 상기 이미지 리소스파일에 저장된 이미지데이터에 은닉하는 단계;
    상기 일반코드 저장부와 상기 이미지 리소스파일을 리빌드하여 상기 모바일 응용 프로그램을 재생성하는 단계;
    상기 재생성된 모바일 응용 프로그램이 실행되면, 상기 일반코드 저장부에 포함된 코드추출함수를 이용하여 상기 은닉데이터로부터 핵심코드를 추출하고 추출된 핵심코드를 메모리에 로딩하는 단계; 및
    상기 재생성된 모바일 응용 프로그램의 정보를 이용하여 동적 이미지를 생성하고, 상기 생성된 동적 이미지와 상기 이미지 리소스파일을 이용하여 최종 이미지를 생성하는 단계를 포함하는 모바일 응용 프로그램 위변조 탐지 방법.
  8. 제7항에 있어서,
    상기 생성된 최종 이미지로부터 상기 모바일 응용 프로그램의 위변조 여부를 판단하는 단계를 더 포함하는 모바일 응용 프로그램 위변조 탐지 방법.
  9. 제7항에 있어서,
    상기 모바일 응용 프로그램의 정보는,
    상기 모바일 응용 프로그램에 대한 해쉬값, 서명값, 공개키 인증서, 클래스 또는 메소드의 실행코드 중 하나 이상을 포함하는 모바일 응용 프로그램 위변조 탐지 방법.
  10. 제9항에 있어서,
    상기 최종 이미지를 생성하는 단계는,
    상기 모바일 응용 프로그램의 정보를 이용하여 크기 및 형태를 포함하는 모양값, 색상값, 위치값, 투명도 중 하나 이상의 값을 생성하고, 생성된 값에 대응하여 상기 동적 이미지를 생성하는 모바일 응용 프로그램 위변조 탐지 방법.
  11. 제10항에 있어서,
    상기 최종 이미지를 생성하는 단계는,
    상기 이미지 리소스파일에 저장된 이미지데이터의 원본 이미지와 상기 생성된 동적 이미지를 결합하여 상기 최종 이미지를 생성하는 모바일 응용 프로그램 위변조 탐지 방법.
  12. 제8항에 있어서,
    상기 모바일 응용 프로그램이 위변조된 것으로 판단하면 상기 모바일 응용 프로그램의 실행을 종료시키는 단계를 더 포함하는 모바일 응용 프로그램 위변조 탐지 방법.
KR1020160074459A 2016-06-15 2016-06-15 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법 KR101642252B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160074459A KR101642252B1 (ko) 2016-06-15 2016-06-15 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160074459A KR101642252B1 (ko) 2016-06-15 2016-06-15 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR101642252B1 true KR101642252B1 (ko) 2016-07-25

Family

ID=56616845

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160074459A KR101642252B1 (ko) 2016-06-15 2016-06-15 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR101642252B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200053010A (ko) * 2018-11-07 2020-05-18 엔에이치엔 주식회사 정보의 단방향 암호화 이미지 생성 장치 및 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090036339A (ko) * 2007-10-09 2009-04-14 주식회사 안철수연구소 실행 이미지의 원본 코드 생성 시스템 및 그 방법
KR101328012B1 (ko) * 2013-08-12 2013-11-13 숭실대학교산학협력단 애플리케이션 코드 난독화 장치 및 그 방법
KR20150022429A (ko) * 2013-08-23 2015-03-04 주식회사 마크애니 모바일 애플리케이션의 위변조 방지 장치, 사용자 디바이스, 방법 및 시스템
KR101518689B1 (ko) * 2014-10-20 2015-05-12 숭실대학교산학협력단 핵심 코드를 이용하여 응용 프로그램의 위변조 여부를 탐지하는 사용자 단말기 및 그것을 이용한 위변조 탐지 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090036339A (ko) * 2007-10-09 2009-04-14 주식회사 안철수연구소 실행 이미지의 원본 코드 생성 시스템 및 그 방법
KR101328012B1 (ko) * 2013-08-12 2013-11-13 숭실대학교산학협력단 애플리케이션 코드 난독화 장치 및 그 방법
KR20150022429A (ko) * 2013-08-23 2015-03-04 주식회사 마크애니 모바일 애플리케이션의 위변조 방지 장치, 사용자 디바이스, 방법 및 시스템
KR101518689B1 (ko) * 2014-10-20 2015-05-12 숭실대학교산학협력단 핵심 코드를 이용하여 응용 프로그램의 위변조 여부를 탐지하는 사용자 단말기 및 그것을 이용한 위변조 탐지 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200053010A (ko) * 2018-11-07 2020-05-18 엔에이치엔 주식회사 정보의 단방향 암호화 이미지 생성 장치 및 방법
KR102627930B1 (ko) 2018-11-07 2024-01-23 엔에이치엔 주식회사 정보의 단방향 암호화 이미지 생성 장치 및 방법

Similar Documents

Publication Publication Date Title
US7913292B2 (en) Identification and visualization of trusted user interface objects
US9208334B2 (en) Content management using multiple abstraction layers
KR100335308B1 (ko) 워터마크를 이용한 인간 지각가능 데이터 세트의 배포와 인증 방법 및 그 장치
US11716197B2 (en) System and method for generating a cryptographic key
US20190372759A1 (en) Shared secret establishment
CN106709963B (zh) 验证图像真伪的方法和装置
US10461944B2 (en) Challenge-response method and associated computing device
KR20040098025A (ko) 디지털 서명에 의한 디지털 오브젝트의 워터마킹
CN105760722A (zh) 一种嵌入水印的电子签名生成方法和平台
Kim et al. Anti-reversible dynamic tamper detection scheme using distributed image steganography for IoT applications
CN111860727A (zh) 二维码生成方法、验证方法、设备及计算机可读存储介质
JP2022522315A (ja) クライアントデバイスにおけるサードパーティコンテンツの表示の確認
Zhao et al. DNN self-embedding watermarking: Towards tampering detection and parameter recovery for deep neural network
Tyagi et al. A novel data hiding tool based on pvd: Steganopixtrans
KR101642252B1 (ko) 이미지 리소스 파일을 이용한 모바일 응용 프로그램 위변조 탐지 장치 및 그 방법
US8898733B2 (en) System security process method and properties of human authorization mechanism
Pevný et al. Malicons: Detecting payload in favicons
CN105740659B (zh) 一种数据隐藏方法、应用程序防篡改方法及相关装置
Singla et al. A Hash Based Approach for secure image stegnograpgy using canny edge detection method
KR100734600B1 (ko) 변조방지 하드웨어에 기반한 자가 무결성 검증 기법을이용한 시스템 인증 및 보안성 강화 방법
He et al. Cryptanalysis on majority-voting based self-recovery watermarking scheme
CN111259387B (zh) 一种检测被篡改的应用的方法及设备
Naji et al. " Stego-Analysis Chain, Session Two" Novel Approach of Stego-Analysis System for Image File
Dadkhah et al. Efficient image authentication and tamper localization algorithm using active watermarking
Mahajan et al. Alpha channel for integrity verification using digital signature on reversible watermarking QR

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 4