1 |
1
분석 대상 응용 프로그램에 대하여 기 설정된 분석 수준 및 분석 범위를 저장하는 분석 설정부, 입력된 응용 프로그램의 실행 파일을 로딩하는 제어부, 상기 분석 범위에 대응하여, 상기 실행 파일에 포함된 실시간으로 실행되는 달빅 바이트 코드의 피연산자를 상기 분석 수준으로 분석하는 피연산자 분석부, 상기 달빅 바이트 코드 및 분석된 상기 피연산자를 중간 언어 형태의 중간 코드로 재구성하고, 상기 달빅 바이트 코드의 문자열 정보, 필드 정보, 메소드 정보 중에서 적어도 하나를 추출하여 분석 정보를 생성하는 코드 분석부, 그리고 상기 재구성된 중간 코드 및 상기 분석 정보를 포함하는 분석 결과 파일을 생성하는 파일 생성부를 포함하며, 상기 분석 범위는 분석하고자 하는 상기 응용 프로그램의 클래스 명 또는 메소드 명을 포함하고, 상기 분석 수준은 상기 응용 프로그램이 안드로이드 프레임워크를 통해 호출한 API 내부에서 실행되는 코드의 출력 여부를 포함하며, 상기 코드 분석부는, 메소드 명, 메소드의 클래스 디스크립터, 메소드 디스크립터 중에서 적어도 하나를 상기 메소드 정보로 추출하고, 메소드 호출시 사용된 매개변수의 개수, 상기 매개변수로 사용된 달빅 레지스터의 번호 중에서 적어도 하나를 상기 필드 정보로 추출하는 응용 프로그램 코드 분석 장치
|
2 |
2
제1항에 있어서, 상기 분석 설정부는 상기 분석 대상 응용 프로그램의 패키지 명을 더 저장하고, 상기 제어부는, 상기 패키지 명을 이용하여 상기 입력된 응용 프로그램이 분석 대상인지 여부를 판단하는 응용 프로그램 코드 분석 장치
|
3 |
3
제1항에 있어서, 상기 코드 분석부는, 문자열을 매개변수로 사용하는 메소드의 리턴 값이 문자열 객체인 경우, 상기 문자열 객체에 저장된 문자열 및 상기 문자열이 포함된 메소드의 소스 코드를 상기 문자열 정보로 추출하는 응용 프로그램 코드 분석 장치
|
4 |
4
삭제
|
5 |
5
제1항에 있어서, 상기 분석 결과 파일을 코드 분류 장치로 전송하는 통신부를 더 포함하며,상기 코드 분류 장치는, 상기 분석 결과 파일에 포함된 코드를 스레드(Thread)별로 구분하는 스레드 분류부, 그리고 상기 분석 결과 파일에 포함된 메소드(Method)의 호출 관계를 분석하는 콜 스택 분석부를 포함하는 응용 프로그램 코드 분석 장치
|
6 |
6
삭제
|
7 |
7
응용 프로그램 코드 분석 장치를 이용한 코드 분석 방법에 있어서, 분석 대상 응용 프로그램에 대하여 기 설정된 분석 수준 및 분석 범위를 저장하는 단계, 입력된 응용 프로그램의 실행 파일을 로딩하는 단계, 상기 분석 범위에 대응하여, 상기 실행 파일에 포함된 실시간으로 실행되는 달빅 바이트 코드의 피연산자를 상기 분석 수준으로 분석하는 단계, 상기 달빅 바이트 코드 및 분석된 상기 피연산자를 중간 언어 형태의 중간 코드로 재구성하고, 상기 달빅 바이트 코드의 문자열 정보, 필드 정보, 메소드 정보 중에서 적어도 하나를 추출하여 분석 정보를 생성하는 단계, 그리고 상기 재구성된 중간 코드 및 상기 분석 정보를 포함하는 분석 결과 파일을 생성하는 단계를 포함하며, 상기 분석 범위는 분석하고자 하는 상기 응용 프로그램의 클래스 명 또는 메소드 명을 포함하고, 상기 분석 수준은 상기 응용 프로그램이 안드로이드 프레임워크를 통해 호출한 API 내부에서 실행되는 코드의 출력 여부를 포함하며, 상기 달빅 바이트 코드의 문자열 정보, 필드 정보, 메소드 정보 중에서 적어도 하나를 추출하여 분석 정보를 생성하는 단계는, 메소드 명, 메소드의 클래스 디스크립터, 메소드 디스크립터 중에서 적어도 하나를 상기 메소드 정보로 추출하고, 메소드 호출시 사용된 매개변수의 개수, 상기 매개변수로 사용된 달빅 레지스터의 번호 중에서 적어도 하나를 상기 필드 정보로 추출하는 코드 분석 방법
|
8 |
8
제7항에 있어서, 상기 분석 대상 응용 프로그램에 대하여 기 설정된 분석 수준 및 분석 범위를 저장하는 단계는, 상기 분석 대상 응용 프로그램의 패키지 명을 더 저장하고, 상기 입력된 응용 프로그램의 실행 파일을 로딩하는 단계는, 상기 패키지 명을 이용하여 상기 입력된 응용 프로그램이 분석 대상인지 여부를 판단하는 코드 분석 방법
|
9 |
9
제7항에 있어서, 상기 달빅 바이트 코드의 문자열 정보, 필드 정보, 메소드 정보 중에서 적어도 하나를 분석 정보로 추출하는 단계는, 문자열을 매개변수로 사용하는 메소드의 리턴 값이 문자열 객체인 경우, 상기 문자열 객체에 저장된 문자열 및 상기 문자열이 포함된 메소드의 소스 코드를 상기 문자열 정보로 추출하는 코드 분석 방법
|
10 |
10
삭제
|
11 |
11
제7항에 있어서, 상기 분석 결과 파일을 코드 분류 장치로 전송하는 단계를 더 포함하고, 상기 코드 분류 장치는, 상기 분석 결과 파일에 포함된 코드를 스레드(Thread)별로 구분하는 스레드 분류부, 그리고 상기 분석 결과 파일에 포함된 메소드(Method)의 호출 관계를 분석하는 콜 스택 분석부를 포함하는 코드 분석 방법
|
12 |
12
삭제
|