KR20140004819A - 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법 - Google Patents

안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법 Download PDF

Info

Publication number
KR20140004819A
KR20140004819A KR1020120066033A KR20120066033A KR20140004819A KR 20140004819 A KR20140004819 A KR 20140004819A KR 1020120066033 A KR1020120066033 A KR 1020120066033A KR 20120066033 A KR20120066033 A KR 20120066033A KR 20140004819 A KR20140004819 A KR 20140004819A
Authority
KR
South Korea
Prior art keywords
server
application
android
hash
forgery
Prior art date
Application number
KR1020120066033A
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 KR1020120066033A priority Critical patent/KR20140004819A/ko
Publication of KR20140004819A publication Critical patent/KR20140004819A/ko

Links

Images

Classifications

    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 안드로이드 운영체계를 갖는 기기에서 어플리케이션 실행 시 서버와의 통신 및 난독화 기술을 통해 위변조 체크 및 방지를 하기 위한 것으로서, 어플리케이션 실행 시 서버와의 통신을 이용하여 서버에 저장된 정상적인 어플리케이션의 해쉬값과 클라이언트의 해쉬값을 비교하는 제 1 단계; 상기 제 1 단계의 결과, 해쉬 데이터가 동일하다면 해당 어플리케이션에 대한 클래스(Class)와 액티비티(Activity)의 흐름을 서버에서 전송 받는 제 2 단계; 및 서버에서 전송 받은 클래스 명칭을 메모리에 저장하고 저장된 흐름에 따라 동적으로 클래스(Class) 혹은 액티비티(Activity)를 호출하는 제 3 단계;를 포함하는 것을 특징으로 하는 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법을 제공한다.

Description

안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법{Method for detecting fake and falsification of application by using Android obfuscation}
본 발명은 안드로이드 운영체계를 갖는 기기에서 어플리케이션 실행 시 서버와의 통신 및 난독화 기술을 통해 위변조 체크 및 방지를 하기 위한 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법에 관한 것이다.
도 1은 종래의 안드로이드 어플리케이션의 실행파일의 압축 해제 파일의 구성을 보여주는 도면이고, 도 2는 종래의 툴을 이용하여 위변조를 진행하는 과정에서의 확장자를 나타낸 도면이고, 도 3은 종래의 안드로이드 apk의 변조과정을 나타낸 도면이다.
안드로이드 어플리케이션은 도 1과 같이, zip파일 형식으로 되어있고 내부에 java파일이 컴파일된classes.dex파일이 존재한다.
상기 컴파일된 classes.dex파일은 특정 툴을 통해 도 2와 같이, smali라는 확장자를 갖는 파일로 변경이 가능하다.
위변조된 안드로이드 apk를 만들기 위해서는 도 3에서와 같이, smali 파일을 변경하고 직접 jarsinger라는 안드로이드 기본 툴로 Self Sign을 수행한 후에 특정 툴을 이용하여 재패키징하여 변조된 안드로이드 apk를 만들 수 있다.
이러한 문제로 인하여 중요한 어플리케이션이 위변조 되어 배포될 수 있기 때문에 이를 막기 위한 대책으로 금융권에서는 단순히 서버에 정상 어플리케이션 파일의 해쉬값을 가지고 어플리케이션 모듈 실행 시 비교 체크하는 기법을 사용하고 있다.
도 4는 종래의 위변조 체크 구간 삭제에 따른 변조 어플리케이션의 탐지 불가 이유를 설명한 도면이다.
도 4에서와 같이, 위변조 체크를 우회하도록 위변조된 어플리케이션은 위변조 체크 구간을 삭제하여 정상적인 위변조 체크가 어렵도록 한다.
따라서, 단순한 서버와의 위변조 해쉬값의 비교로는 악의적인 사용자가 해당 어플리케이션을 위변조할 때 위변조 검사 부분을 제거하여 배포한다면 변조된 어플리케이션에 대한 탐지가 불가능 하게 되는 문제점이 있다.
따라서, 상기한 문제점을 해결하기 위한 본 발명의 목적은 난독화 기법 및 위변조 체크시 서버에서 특정 데이터를 로딩하여 적용하도록 하여 쉽게 변경하지 못하도록 하는 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법에 관한 것이다.
상기한 발명의 목적은, 어플리케이션 실행 시 서버와의 통신을 이용하여 서버에 저장된 정상적인 어플리케이션의 해쉬값과 클라이언트의 해쉬값을 비교하는 제 1 단계; 상기 제 1 단계의 결과, 해쉬 데이터가 동일하다면 해당 어플리케이션에 대한 클래스(Class)와 액티비티(Activity)의 흐름을 서버에서 전송 받는 제 2 단계; 및 서버에서 전송 받은 클래스 명칭을 메모리에 저장하고 저장된 흐름에 따라 동적으로 클래스(Class) 혹은 액티비티(Activity)를 호출하는 제 3 단계;를 포함하는 것을 특징으로 하는 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법에 의해 달성된다.
또한 본 발명은, 상기 제 1 단계의 결과, 해쉬 데이터가 동일하지 않다면 어플리케이션의 실행과 서버와의 연결을 종료하는 단계를 더 포함하는 것을 특징으로 한다.
또한 본 발명은, 서버에서 해쉬 값 비교가 틀렸다면 클래스 정보를 받아오지 못하여 다음 클래스를 호출하지 못하도록 하는 단계를 더 포함하는 것을 특징으로 한다.
또한 본 발명은, 상기 제 1 단계는, 자신의 해쉬정보와 특정 난수값을 서버에서의 비대칭키(RSA 등)을 이용한 공개키 생성을 하고 클라이언트에 전송하는 단계; 클라이언트에서 SEED, DES 및 AES 중 어느 하나의 대칭키를 이용하여 키를 생성하고 자신의 해쉬 정보와 특정 난수값을 암호화하는 단계; 서버로 대칭키 암호와 난수를 포함한 해쉬 데이터를 전송하여 서버에 저장된 정상 배포 파일과의 해쉬 비교를 통한 위변조 탐지 여부를 판단하는 단계; 및 클래스간의 이동 정보를 서버와의 해쉬값 비교 후 정상이면 전송 받아서 이용하는 단계를 포함하는 것을 특징으로 한다.
또한 본 발명은, 제 1 함수 호출이 시작되면, 위변조 검사를 시작함과 동시에 정상으로 판단되면 상기 제 1 함수의 특정 중요 기능을 하는 제 2 함수를 호출하고, 위변조 검사결과 비정상적으로 판단되면 실행을 종료하는 단계를 더 포함하는 것을 특징으로 한다.
또한 본 발명은, 상기 제 2 단계는 서버에 저장된 해쉬값과 자기 자신의 설치된 해쉬값을 비교하여 일치한다면 앱에 필요한 클래스간의 이동정보를 서버의 데이터에서 전송하는 것을 특징으로 한다.
또한 본 발명은, 상기 제 3 단계는, 클래스 및 액티비티를 호출하는 구간에서 JNI의 Callback함수를 이용하여 Native binary library에 넣어서 역컴파일로는 내용 분석을 하지 못하도록 난독화 처리하는 것을 특징으로 한다.
본 발명의 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법에 의하면, 중요 어플리케이션 위변호를 하는 악성 사용자들이 어플리케이션에 포함되어 있는 위변조 체크 구간을 삭제하고 사용하는 부분을 효과적으로 방어할 수 있으며, 바이너리 파일 안에서 Callback기법을 이용하여 Class, Activity, Method를 하도록 하여 체크 구간을 위변조 하기 어렵도록 할 수 있으며, 금융 어플리케이션과 같이 중요한 어플리케이션이 위변조 되어 배포 된 경우 정상적으로 서비스 하지 못하도록 하는 효과가 있다.
도 1은 종래의 안드로이드 어플리케이션의 실행파일의 압축 해제 파일의 구성을 보여주는 도면.
도 2는 종래의 툴을 이용하여 위변조를 진행하는 과정에서의 확장자를 나타낸 도면.
도 3은 종래의 안드로이드 apk의 변조과정을 나타낸 도면.
도 4는 종래의 위변조 체크 구간 삭제에 따른 변조 어플리케이션의 탐지 불가 이유를 설명한 도면.
도 5는 본 발명의 실시예에 따른 어플리케이션 위변조 탐지 방법을 나타낸 흐름도.
도 6은 본 발명의 실시예에 따른 함수 호출과 동시에 위변조 검사를 진행하는 흐름을 나타낸 도면.
본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
이하 첨부된 도면을 참조하여 본 발명의 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법에 대해 설명하도록 한다.
도 5는 본 발명의 실시예에 따른 어플리케이션 위변조 탐지 방법을 나타낸 흐름도이다.
도 5에 도시된 바와 같이, 어플리케이션 실행 시 서버와의 통신을 이용하여 서버에 저장된 정상적인 어플리케이션의 해쉬값과 클라이언트의 해쉬값을 비교하고 내용이 동일하다면 해당 어플리케이션에 대한 클래스(Class)와 액티비티(Activity)의 흐름을 서버에서 전송 받는다(S100,S200).
만약, 해쉬 데이터가 동일하지 않다면 어플리케이션의 실행과 서버와의 연결을 종료한다(S300).
그리고, 서버에서 전송 받은 클래스 명칭을 메모리에 저장하고 저장된 흐름에 따라 동적으로 클래스(Class) 혹은 액티비티(Activity)를 호출한다(S400).
서버에서 해쉬 값 비교가 틀렸다면 클래스 정보를 받아오지 못하여 다음 클래스를 호출하지 못하도록 한다(S600).
클래스 및 액티비티를 호출하는 구간은 JNI의 Callback함수를 이용하여 Native binary library에 넣어서 역컴파일로는 내용 분석을 하지 못하도록 난독화 처리한다(S700).
서버와의 통신을 통한 정상 어플리케이션 검사 단계는, 자신의 해쉬정보와 특정 난수값을 서버에서의 비대칭키(RSA 등)을 이용한 공개키 생성을 하고 클라이언트에 전송하고(S102), 클라이언트에서 대칭키(SEED, DES, AES 등)을 이용하여 키를 생성하고 자신의 해쉬 정보와 특정 난수값을 암호화, 즉, 데이터 암호화 및 대칭키를 전송받은 공개키로 암호화하고(S104,S106), 서버로 대칭키 암호와 난수를 포함한 해쉬 데이터를 전송하여 서버에 저장된 정상 배포 파일과의 해쉬 비교를 통한 위변조 탐지 여부를 판단하여(S108,S110,S112,S114), 클래스간의 이동 정보를 서버와의 해쉬값 비교 후 정상이면 전송 받아서 이용하고(S116), 변조된 사용자는 어플리케이션 종료와 함께 서버에서 서비스를 이용하지 못하게 차단한다(S118).
상기 단계 116은, 서버에 저장된 해쉬값과 자기 자신의 설치된 해쉬값을 비교하여 일치한다면 아래의 [그림 1]과 같은 앱에 필요한 클래스간의 이동정보를 서버의 데이터에서 전송 받도록 한다.
[그림 1]
Figure pat00001

이후, 전송된 데이터 값은 메모리의 해쉬 테이블로 저장하는데, 그 소스는 아래 [그림 2]와 같다.
[그림 2]
Figure pat00002

그리고, 해당 함수 호출 및 이동 정보에 대한 키 값을 이용하여 정보를 얻어서 아래 [그림 3]의 소스와 같이 이용할 수 있다.
[그림 3]
Figure pat00003

상기 클래스 및 액티비티를 호출하는 구간에서는 JNI의 Callback함수를 이용하여 Native binary library에 넣어서 역컴파일로는 내용 분석을 하지 못하도록 난독화 처리할 수 있는데, JAVA가 변경된 DEX(Dalvik Executable)파일은 바이트코드로 쉽게 역컴파일이 되고 smali라는 코드를 통해 변경이 가능하기 때문에 위의 두 가지 위변조 체크 기법을 이용해도 악의적인 사용자가 해당 검사 부분을 삭제하고 이용 가능하다.
그리고, 안드로이드의 Native binary library로 컴파일된 so파일은 DEX(Dalvik Executable)파일과 다르게 C로 생성되어 바이너리로 컴파일 되기 때문에 바이트 코드인 DEX보다는 안전하고 위변조 위험성이 낮다.
또한, 위변조 체크를 우회하지 못하도록 하나의 so 모듈 안에서 위 변조 체크와 함수 호출 로직을 둘 다 수행하도록 구성되며, so 바이너리 라이브러리에서 다음에 호출할 클래스와 메소드 명칭은 서버에서 전송받은 값으로 이용할 수 있고, 중요 호출되는 함수 명칭은 악의적인 공격자가 이름만으로 알기 어렵도록 구성된다.
도 6은 본 발명의 실시예에 따른 함수 호출과 동시에 위변조 검사를 진행하는 흐름을 나타낸 도면이다.
도 6을 참조하면, 함수 1 호출이 시작되면(S802), 위변조 검사를 시작함과 동시에 정상으로 판단되면 상기 함수 1이 특정 중요 기능을 하는 함수 2를 호출하고(S804,S806,S810), 위변조 검사결과 비정상적으로 판단되면 실행을 종료한다(S808).
그리고, Android JNI Callback을 이용한 Activity, Class, Method 간의 이동 방법에 대한 소스는 아래 [그림 4]와 같다.
[그림 4]
Figure pat00004
본 발명은 이상에서 살펴본 바와 같이 바람직한 실시예를 들어 도시하고 설명하였으나, 상기한 실시예에 한정되지 아니하며 본 발명의 정신을 벗어나지 않는 범위 내에서 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.

Claims (7)

  1. 어플리케이션 실행 시 서버와의 통신을 이용하여 서버에 저장된 정상적인 어플리케이션의 해쉬값과 클라이언트의 해쉬값을 비교하는 제 1 단계;
    상기 제 1 단계의 결과, 해쉬 데이터가 동일하다면 해당 어플리케이션에 대한 클래스(Class)와 액티비티(Activity)의 흐름을 서버에서 전송 받는 제 2 단계; 및
    서버에서 전송 받은 클래스 명칭을 메모리에 저장하고 저장된 흐름에 따라 동적으로 클래스(Class) 혹은 액티비티(Activity)를 호출하는 제 3 단계;를 포함하는 것을 특징으로 하는 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법.
  2. 제 1항에 있어서,
    상기 제 1 단계의 결과, 해쉬 데이터가 동일하지 않다면 어플리케이션의 실행과 서버와의 연결을 종료하는 단계를 더 포함하는 것을 특징으로 하는 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법.
  3. 제 1항에 있어서,
    서버에서 해쉬 값 비교가 틀렸다면 클래스 정보를 받아오지 못하여 다음 클래스를 호출하지 못하도록 하는 단계를 더 포함하는 것을 특징으로 하는 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법.
  4. 제 1항에 있어서,
    상기 제 1 단계는,
    자신의 해쉬정보와 특정 난수값을 서버에서의 비대칭키(RSA 등)을 이용한 공개키 생성을 하고 클라이언트에 전송하는 단계;
    클라이언트에서 SEED, DES 및 AES 중 어느 하나의 대칭키를 이용하여 키를 생성하고 자신의 해쉬 정보와 특정 난수값을 암호화하는 단계;
    서버로 대칭키 암호와 난수를 포함한 해쉬 데이터를 전송하여 서버에 저장된 정상 배포 파일과의 해쉬 비교를 통한 위변조 탐지 여부를 판단하는 단계; 및
    클래스간의 이동 정보를 서버와의 해쉬값 비교 후 정상이면 전송 받아서 이용하는 단계를 포함하는 것을 특징으로 하는 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법.
  5. 제 4항에 있어서,
    제 1 함수 호출이 시작되면, 위변조 검사를 시작함과 동시에 정상으로 판단되면 상기 제 1 함수의 특정 중요 기능을 하는 제 2 함수를 호출하고, 위변조 검사결과 비정상적으로 판단되면 실행을 종료하는 단계를 더 포함하는 것을 특징으로 하는 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법.
  6. 제 1항에 있어서,
    상기 제 2 단계는 서버에 저장된 해쉬값과 자기 자신의 설치된 해쉬값을 비교하여 일치한다면 앱에 필요한 클래스간의 이동정보를 서버의 데이터에서 전송하는 것을 특징으로 하는 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법.
  7. 제 1항에 있어서,
    상기 제 3 단계는, 클래스 및 액티비티를 호출하는 구간에서 JNI의 Callback함수를 이용하여 Native binary library에 넣어서 역컴파일로는 내용 분석을 하지 못하도록 난독화 처리하는 것을 특징으로 하는 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법.
KR1020120066033A 2012-06-20 2012-06-20 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법 KR20140004819A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120066033A KR20140004819A (ko) 2012-06-20 2012-06-20 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120066033A KR20140004819A (ko) 2012-06-20 2012-06-20 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법

Publications (1)

Publication Number Publication Date
KR20140004819A true KR20140004819A (ko) 2014-01-14

Family

ID=50140554

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120066033A KR20140004819A (ko) 2012-06-20 2012-06-20 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법

Country Status (1)

Country Link
KR (1) KR20140004819A (ko)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101537205B1 (ko) * 2014-10-20 2015-07-16 숭실대학교산학협력단 해쉬값을 이용하여 응용 프로그램의 위변조 여부를 탐지하는 사용자 단말기 및 그것을 이용한 위변조 탐지 방법
CN105354095A (zh) * 2015-10-26 2016-02-24 上海斐讯数据通信技术有限公司 服务至活动间的通信方法
KR101642222B1 (ko) * 2015-03-21 2016-07-22 홍동철 안드로이드 운영체제에서의 스파이 애플리케이션 및 시스템 변조 탐지 방법
KR20160147903A (ko) * 2014-04-28 2016-12-23 에이알엠 아이피 리미티드 액세스 제어 및 코드 스케줄링
CN107133150A (zh) * 2017-05-15 2017-09-05 杭州时趣信息技术有限公司 一种Android防重发的方法及装置
KR20170140630A (ko) * 2016-06-13 2017-12-21 (유)아홉 애플리케이션 무결성 인증 방법 및 인증 서버
KR102226218B1 (ko) 2019-10-29 2021-03-10 단국대학교 산학협력단 크로스플랫폼 개발 프레임워크로 제작된 애플리케이션을 식별하기 위한 특징정보 추출 장치 및 방법
KR20210051842A (ko) 2019-10-31 2021-05-10 단국대학교 산학협력단 난독화에 강인한 애플리케이션 유사도 비교 장치 및 방법

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160147903A (ko) * 2014-04-28 2016-12-23 에이알엠 아이피 리미티드 액세스 제어 및 코드 스케줄링
KR101537205B1 (ko) * 2014-10-20 2015-07-16 숭실대학교산학협력단 해쉬값을 이용하여 응용 프로그램의 위변조 여부를 탐지하는 사용자 단말기 및 그것을 이용한 위변조 탐지 방법
WO2016064041A1 (ko) * 2014-10-20 2016-04-28 숭실대학교 산학협력단 해쉬값을 이용하여 응용 프로그램의 위변조 여부를 탐지하는 사용자 단말기 및 그것을 이용한 위변조 탐지 방법
KR101642222B1 (ko) * 2015-03-21 2016-07-22 홍동철 안드로이드 운영체제에서의 스파이 애플리케이션 및 시스템 변조 탐지 방법
CN105354095A (zh) * 2015-10-26 2016-02-24 上海斐讯数据通信技术有限公司 服务至活动间的通信方法
CN105354095B (zh) * 2015-10-26 2019-07-12 上海斐讯数据通信技术有限公司 服务至活动间的通信方法
KR20170140630A (ko) * 2016-06-13 2017-12-21 (유)아홉 애플리케이션 무결성 인증 방법 및 인증 서버
CN107133150A (zh) * 2017-05-15 2017-09-05 杭州时趣信息技术有限公司 一种Android防重发的方法及装置
KR102226218B1 (ko) 2019-10-29 2021-03-10 단국대학교 산학협력단 크로스플랫폼 개발 프레임워크로 제작된 애플리케이션을 식별하기 위한 특징정보 추출 장치 및 방법
KR20210051842A (ko) 2019-10-31 2021-05-10 단국대학교 산학협력단 난독화에 강인한 애플리케이션 유사도 비교 장치 및 방법

Similar Documents

Publication Publication Date Title
KR20140004819A (ko) 안드로이드 난독화 기법을 이용한 어플리케이션 위변조 탐지 방법
Bhat et al. A survey on various threats and current state of security in android platform
US9471776B2 (en) Secured execution of a web application
EP2897072B1 (en) Device for obfuscating code and method for same
CN105683990B (zh) 用于保护动态库的方法和装置
US9054865B2 (en) Cryptographic system and methodology for securing software cryptography
US11531751B2 (en) Software integrity checking systems and methods
US20150095653A1 (en) Method and apparatus of creating application package, method and apparatus of executing application package, and recording medium storing application package
CN108509802B (zh) 一种应用程序数据防泄密方法和装置
Piao et al. Server‐based code obfuscation scheme for APK tamper detection
CN107430650B (zh) 保护计算机程序以抵御逆向工程
KR101436536B1 (ko) 파일 서버 및 그것을 이용한 프로그램 파일의 전송 방법, 그리고 프로그램 파일 변조 방지 시스템
US20160132681A1 (en) Method for performing a secure boot of a computing system and computing system
CN104199657A (zh) 开放平台的调用方法及装置
Zheng et al. Security analysis of modern mission critical android mobile applications
CN111159658B (zh) 字节码处理方法、系统、装置、计算机设备和存储介质
US20160352522A1 (en) User Terminal For Detecting Forgery Of Application Program Based On Signature Information And Method Of Detecting Forgery Of Application Program Using The Same
Ang et al. Covid-19 one year on–security and privacy review of contact tracing mobile apps
Choi et al. Large‐Scale Analysis of Remote Code Injection Attacks in Android Apps
Lee et al. Classification and analysis of security techniques for the user terminal area in the internet banking service
US20190199694A1 (en) Individual encryption of control commands
CN105491026B (zh) 一种安全策略的远程加载方法
KR101532763B1 (ko) 어플리케이션 불법복제 방지 시스템 및 방법
CN112507302A (zh) 基于密码模块执行的调用方身份鉴别方法及装置
Salehi et al. Welcome to Binder: A kernel level attack model for the Binder in Android operating system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application