1 |
1
안티리버싱 코드 검출 장치가 안티리버싱 코드를 검출하는 방법에 있어서,생성부가 실행프로그램에 복수의 상이한 동적분석기를 적용하여, 상기 실행프로그램에 의해 호출되는 적어도 하나의 API(Application Programming Interface)의 명칭 정보를 포함하는 복수의 API트레이스정보를 생성하는 단계;검출부가 상기 복수의 API트레이스정보를 비교하여, 호출되는 API가 서로 달라지기 직전에 공통적으로 호출되는 API인 안티리버싱API를 검출하는 단계;상기 검출부가 상기 안티리버싱API 이후에 상기 실행프로그램에 의해 호출되는 적어도 하나의 명령어 정보를 포함하는 복수의 명령어트레이스정보에 기초하여, 상기 호출되는 명령어가 서로 달라지기 직전에 공통적으로 호출되는 명령어인 분기명령어를 검출하여, 안티리버싱 코드를 검출하는 단계;검색부가 상기 안티리버싱API 및 상기 분기명령어 중 적어도 하나에 대응되는 정보로서, 상기 안티리버싱 코드를 우회하는 우회정보를 데이터베이스로부터 검색하는 단계; 및출력부가 상기 검색된 우회정보를 출력하는 단계를 포함하고,상기 우회정보는상기 복수의 상이한 동적분석기 중에서 상기 안티리버싱 코드에 의해 영향을 받지 않은 동적분석기를 이용하여 분석된 레지스터 및 메모리 값에 기초하여 결정되는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 방법
|
2 |
2
삭제
|
3 |
3
삭제
|
4 |
4
제1항에 있어서,상기 API트레이스정보는상기 적어도 하나의 API 각각에 대하여, API 또는 명령어의 실행 순서 정보인 명령어 카운터, API의 호출순서, API가 로딩되는 주소, API에게 전달되는 인수 및 API가 호출되는 상기 실행프로그램의 주소 중 적어도 하나의 정보를 더 포함하는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 방법
|
5 |
5
제4항에 있어서,상기 안티리버싱API를 검출하는 단계는상기 검출부가 상기 복수의 API트레이스정보에 대하여, 동일한 상기 호출순서를 가진 API가 서로 동일한 API인지 판단하는 단계; 및상기 검출부가 상기 판단의 결과에 따라, 상기 동일한 호출순서를 가진 API가 서로 달라지기 직전에 호출되는 상기 안티리버싱API를 검출하는 단계를 포함하는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 방법
|
6 |
6
제5항에 있어서,상기 동일한 호출순서를 가진 API가 서로 동일한 API인지 판단하는 단계는상기 동일한 호출순서를 가진 API 각각의 상기 명칭, 상기 전달되는 인수 및 상기 로딩되는 주소 중 적어도 하나에 기초하여 판단하는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 방법
|
7 |
7
제1항에 있어서,상기 명령어트레이스정보는상기 적어도 하나의 명령어 각각에 대하여, API 또는 명령어의 실행 순서 정보인 명령어 카운터 및 명령어가 호출되는 주소 중 적어도 하나에 대한 정보를 더 포함하는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 방법
|
8 |
8
제1항에 있어서,상기 명령어트레이스정보는상기 안티리버싱API의 실행 순서에 대한 정보인 명령어 카운터를 이용하거나 상기 안티리버싱API가 호출되는 주소에 설정된 브레이크 포인트를 이용하여 생성되는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 방법
|
9 |
9
제1항에 있어서,상기 실행프로그램이 적어도 하나의 API 및 적어도 하나의 명령어를 호출하도록 생성되었을 때,상기 복수의 API트레이스정보를 생성하는 단계는상기 실행프로그램에 의해 호출되는 적어도 하나의 API의 명칭 정보만을 이용하여 상기 복수의 API트레이스정보를 생성하는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 방법
|
10 |
10
제1항에 있어서,상기 복수의 상이한 동적분석기는분석기법이 상이한 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 방법
|
11 |
11
실행프로그램에 복수의 상이한 동적분석기를 적용하여, 상기 실행프로그램에 의해 호출되는 적어도 하나의 API(Application Programming Interface)의 명칭 정보를 포함하는 복수의 API트레이스정보를 생성하는 생성부;상기 복수의 API트레이스정보를 비교하여, 호출되는 API가 서로 달라지기 직전에 공통적으로 호출되는 API인 안티리버싱API를 검출하고,상기 안티리버싱API 이후에 상기 실행프로그램에 의해 호출되는 적어도 하나의 명령어 정보를 포함하는 복수의 명령어트레이스정보에 기초하여, 상기 호출되는 명령어가 서로 달라지기 직전에 공통적으로 호출되는 명령어인 분기명령어를 검출하여, 안티리버싱 코드를 검출하는 검출부;상기 안티리버싱API 및 상기 분기명령어 중 적어도 하나에 대응되는 정보로서, 상기 안티리버싱 코드를 우회하는 우회정보를 데이터베이스로부터 검색하는 검색부; 및상기 검색된 우회정보를 출력하는 출력부를 포함하고상기 우회정보는상기 복수의 상이한 동적분석기 중에서 상기 안티리버싱 코드에 의해 영향을 받지 않은 동적분석기를 이용하여 분석된 레지스터 및 메모리 값에 기초하여 결정되는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 장치
|
12 |
12
삭제
|
13 |
13
삭제
|
14 |
14
제11항에 있어서,상기 API트레이스정보는상기 적어도 하나의 API 각각에 대하여, API 또는 명령어의 실행 순서 정보인 명령어 카운터, API의 호출순서, API가 로딩되는 주소, API에게 전달되는 인수 및 API가 호출되는 상기 실행프로그램의 주소 중 적어도 하나의 정보를 더 포함하는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 장치
|
15 |
15
제14항에 있어서,상기 검출부는상기 복수의 API트레이스정보에 대하여, 동일한 상기 호출순서를 가진 API가 서로 동일한 API인지 판단하고,상기 판단의 결과에 따라, 상기 동일한 호출순서를 가진 API가 서로 달라지기 직전에 호출되는 상기 안티리버싱API를 검출하는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 장치
|
16 |
16
제15항에 있어서,상기 동일한 호출순서를 가진 API가 서로 동일한 API인지 판단할 때,상기 동일한 호출순서를 가진 API 각각의 상기 명칭, 상기 전달되는 인수 및 상기 로딩되는 주소 중 적어도 하나에 기초하여 판단하는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 장치
|
17 |
17
제11항에 있어서,상기 명령어트레이스정보는상기 적어도 하나의 명령어 각각에 대하여, API 또는 명령어의 실행 순서 정보인 명령어 카운터 및 명령어가 호출되는 주소 중 적어도 하나에 대한 정보를 더 포함하는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 장치
|
18 |
18
제11항에 있어서,상기 명령어트레이스정보는상기 안티리버싱API의 실행 순서에 대한 정보인 명령어 카운터를 이용하거나 상기 안티리버싱API가 호출되는 주소에 설정된 브레이크 포인트를 이용하여 생성되는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 장치
|
19 |
19
제11항에 있어서,상기 실행프로그램이 적어도 하나의 API 및 적어도 하나의 명령어를 호출하도록 생성되었을 때,상기 생성부는상기 실행프로그램에 의해 호출되는 적어도 하나의 API의 명칭 정보만을 이용하여 상기 복수의 API트레이스정보를 생성하는 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 장치
|
20 |
20
제11항에 있어서,상기 복수의 상이한 동적분석기는분석기법이 상이한 것을 특징으로 하는 다중 동적분석기를 이용한 안티리버싱 코드 검출 장치
|