1 |
1
악성 코드 탐지 장치가 수행하는 악성 코드를 탐지하는 방법에 있어서,상기 악성 코드 탐지 장치의 제1 이미지 매트릭스 생성부가 제1 악성 코드 바이너리로부터 제1 이미지 매트릭스를 생성하는 단계;상기 악성 코드 탐지 장치의 제2 이미지 매트릭스 생성부가 제2 악성 코드 바이너리로부터 제2 이미지 매트릭스를 생성하는 단계; 상기 악성 코드 탐지 장치의 유사도 계산부가 상기 제1 이미지 매트릭스 및 상기 제2 이미지 매트릭스의 유사도를 계산하는 단계; 및상기 악성 코드 탐지 장치의 판단부가 상기 계산된 유사도에 기초하여 상기 제1 악성 코드 바이너리 및 상기 제2 악성 코드 바이너리의 변종 관계를 판단하는 단계를 포함하고,상기 제1 악성 코드 바이너리로부터 제1 이미지 매트릭스를 생성하는 단계는,상기 제1 이미지 매트릭스 생성부가 상기 제1 악성 코드 바이너리를 디스어셈블하여 어셈블리 코드로 구성된 복수의 어셈블리 코드 블록을 생성하는 단계;상기 제1 이미지 매트릭스 생성부가 상기 복수의 어셈블리 코드 블록의 각각에 포함된 명령어로부터 연산 명령어 시퀀스를 생성하는 단계; 및상기 제1 이미지 매트릭스 생성부가 상기 연산 명령어 시퀀스를 이용하여 상기 제1 이미지 매트릭스를 생성하는 단계를 포함하는 악성 코드를 탐지하는 방법
|
2 |
2
제1항에 있어서,상기 제1 이미지 매트릭스 및 상기 제2 이미지 매트릭스의 유사도를 계산하는 단계는,상기 악성 코드 탐지 장치의 유사도 계산부가 상기 제1 이미지 매트릭스를 n개(n은 2 이상의 정수)의 영역으로 분할하는 단계;상기 악성 코드 탐지 장치의 유사도 계산부가 상기 제2 이미지 매트릭스를 n개(n은 2 이상의 정수)의 영역으로 분할하는 단계;상기 악성 코드 탐지 장치의 유사도 계산부가 상기 제1 이미지 매트릭스에서 m개(m은 2 이상이고 n보다 작거나 같은 정수)의 영역을 선택하는 단계;상기 악성 코드 탐지 장치의 유사도 계산부가 상기 제2 이미지 매트릭스에서 m개(m은 2 이상이고 n보다 작거나 같은 정수)의 영역을 선택하는 단계; 및상기 악성 코드 탐지 장치의 유사도 계산부가 상기 제1 이미지 매트릭스에서 선택된 m개의 영역 및 상기 제2 이미지 매트릭스에서 선택된 m개의 영역을 비교함으로써, 상기 제1 이미지 매트릭스 및 상기 제2 이미지 매트릭스의 상기 유사도를 계산하는 단계를 포함하는 악성 코드를 탐지하는 방법
|
3 |
3
삭제
|
4 |
4
제1항에 있어서,상기 연산 명령어 시퀀스를 이용하여 제1 이미지 매트릭스를 생성하는 단계는,상기 제1 이미지 매트릭스 생성부가 상기 연산 명령어 시퀀스에 SimHash 함수를 적용함으로써 픽셀의 좌표를 획득하는 단계;상기 제1 이미지 매트릭스 생성부가 상기 연산 명령어 시퀀스에 djb2 함수를 적용함으로써 상기 픽셀의 칼라를 획득하는 단계를 포함하는 악성 코드 탐지 방법
|
5 |
5
악성 코드 탐지 장치가 수행하는 악성 코드를 탐지하는 방법에 있어서,상기 악성 코드 탐지 장치의 어셈블리 코드부가 악성 코드 바이너리를 디스어셈블하여 어셈블리 코드로 구성된 복수의 어셈블리 코드 블록을 생성하는 단계;상기 악성 코드 탐지 장치의 연산 명령어 시퀀스부가 상기 복수의 어셈블리 코드 블록의 각각에 포함된 명령어로부터 연산 명령어 시퀀스를 생성하는 단계; 및상기 악성 코드 탐지 장치의 이미지 매트릭스 생성부가 상기 연산 명령어 시퀀스를 이용하여 이미지 매트릭스를 생성하는 단계를 포함하는 악성 코드를 탐지하는 방법
|
6 |
6
제5항에 있어서,상기 악성 코드 바이너리를 디스어셈블하여 어셈블리 코드로 구성된 복수의 어셈블리 코드 블록을 생성하는 단계는,상기 어셈블리 코드부가 상기 악성 코드 바이너리를 디스어셈블하여 상기 어셈블리 코드를 생성하는 단계; 및상기 어셈블리 코드부가 상기 어셈블리 코드를 분할하여 상기 복수의 어셈블리 코드 블록을 생성하는 단계를 포함하는 악성 코드 탐지 방법
|
7 |
7
제5항에 있어서,상기 복수의 어셈블리 코드 블록의 각각에 포함된 명령어로부터 연산 명령어 시퀀스를 생성하는 단계는,상기 연산 명령어 시퀀스부가 상기 복수의 어셈블리 코드 블록의 각각에 포함된 복수의 명령어의 각각을 길이 N(N은 1 이상의 정수)의 문자열로 변환하는 단계; 및상기 연산 명령어 시퀀스부가 상기 길이 N의 문자열로 변환된 각각의 명령어를 이어 붙임(concatenating)으로써, 상기 연산 명령어 시퀀스를 생성하는 단계를 포함하는 악성 코드 탐지 방법
|
8 |
8
제7항에 있어서,상기 복수의 어셈블리 코드 블록의 각각에 포함된 복수의 명령어의 각각을 길이 N의 문자열로 변환하는 단계는,상기 연산 명령어 시퀀스부가 상기 복수의 어셈블리 코드 블록의 각각에 포함된 복수의 명령어의 각각을 최초 3개 문자만을 포함하는 문자열로 변환하는 단계를 포함하는 악성 코드 탐지 방법
|
9 |
9
제5항에 있어서,상기 연산 명령어 시퀀스를 이용하여 이미지 매트릭스를 생성하는 단계는,상기 이미지 매트릭스 생성부가 상기 연산 명령어 시퀀스에 해쉬 함수를 적용함으로써, 픽셀의 좌표 및 칼라를 획득하는 단계를 포함하는 악성 코드 탐지 방법
|
10 |
10
제9항에 있어서,상기 연산 명령어 시퀀스를 이용하여 이미지 매트릭스를 생성하는 단계는,상기 이미지 매트릭스 생성부가 상기 연산 명령어 시퀀스에 SimHash 함수를 적용함으로써, 상기 픽셀의 좌표를 획득하는 단계를 포함하는 악성 코드 탐지 방법
|
11 |
11
제9항에 있어서,상기 연산 명령어 시퀀스를 이용하여 이미지 매트릭스를 생성하는 단계는,상기 이미지 매트릭스 생성부가 상기 연산 명령어 시퀀스에 djb2 함수를 적용함으로써, 상기 픽셀의 칼라를 획득하는 단계를 포함하는 악성 코드 탐지 방법
|
12 |
12
제9항에 있어서,상기 연산 명령어 시퀀스를 이용하여 이미지 매트릭스를 생성하는 단계는,상기 이미지 매트릭스 생성부가 상기 연산 명령어 시퀀스로부터 생성된 제1 픽셀의 좌표가 다른 연산 명령어 시퀀스로부터 생성된 제2 픽셀의 좌표와 일치하는 경우, 상기 연산 명령어 시퀀스로부터 생성된 제1 픽셀의 칼라 및 상기 다른 연산 명령어 시퀀스로부터 생성된 제2 픽셀의 칼라를 합산하여 상기 좌표의 칼라로 결정하는 단계를 포함하는 악성 코드 탐지 방법
|
13 |
13
제9항에 있어서,상기 이미지 매트릭스의 크기는 상기 악성 코드 바이너리의 크기에 따라 결정되는악성 코드 탐지 방법
|
14 |
14
악성 코드를 탐지하는 장치에 있어서,제1 악성 코드 바이너리로부터 제1 이미지 매트릭스를 생성하는 제1 이미지 매트릭스 생성부;제2 악성 코드 바이너리로부터 제2 이미지 매트릭스를 생성하는 제2 이미지 매트릭스 생성부; 및상기 제1 이미지 매트릭스 및 상기 제2 이미지 매트릭스의 유사도를 계산하는 유사도 계산부;상기 계산된 유사도에 기초하여 상기 제1 악성 코드 바이너리 및 상기 제2 악성 코드 바이너리의 변종 관계를 판단하는 판단부를 포함하고,상기 제1 이미지 매트릭스 생성부는,상기 제1 악성 코드 바이너리를 디스어셈블하여 어셈블리 코드로 구성된 복수의 어셈블리 코드 블록을 생성하고,상기 복수의 어셈블리 코드 블록의 각각에 포함된 명령어로부터 연산 명령어 시퀀스를 생성하고,상기 연산 명령어 시퀀스를 이용하여 상기 제1 이미지 매트릭스를 생성하는 악성 코드를 탐지하는 장치
|