1 |
1
(a) 입력받은 프로그램으로부터 코드 영역을 추출하는 단계;(b) 추출된 코드 영역을 디스어셈블링(disassembling) 하는 단계;(c) 디스어셈블링(disassembling) 된 프로그램의 인스트럭션 시퀀스(instruction sequence)를 프로시저(procedure)로 분리하는 단계;(d) 분리된 프로시저들의 API 콜 시퀀스에 대하여 퍼지 해시 함수(fuzzy hash function)를 통해 해시값을 생성하여 버스마크 DB에 저장하는 단계; 및(e) 저장된 해시값을 이용하여 입력받은 프로그램의 유사성을 측정하는 단계를 포함하는 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정방법
|
2 |
2
청구항 1에 있어서,상기 코드 영역은,마이크로프로세서에 의해 해석되어 실행되는 코드(code) 들의 집합인 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정방법
|
3 |
3
청구항 1에 있어서,상기 (b) 단계는,추출된 코드 영역을 리커시브 디슨트 디스어셈블리(recursive decent disassembly) 방식을 이용하여 콜 인스트럭션(call instruction)에 대한 참조 프로시저(procedure) 들을 인식하는 단계를 포함하는 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정방법
|
4 |
4
청구항 1에 있어서,상기 (c) 단계는,분리된 각각의 프로시저에서 API 콜이 발생하지 않는 프로시저를 제거하는 단계를 포함하는 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정방법
|
5 |
5
청구항 1에 있어서,상기 (c) 단계는,분리된 프로시저들을 선택적으로 프로시저 DB에 저장하는 단계를 포함하는 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정방법
|
6 |
6
청구항 1에 있어서,상기 (d) 단계는,생성된 해시값을 실행파일에 대한 정보를 가지는 실행파일 테이블과, 실행파일 테이블과 연결된 프로시저 리스트가 구비된 리스트 테이블로 구성하여 데이터베이스에 저장하는 단계를 포함하는 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정방법
|
7 |
7
청구항 1에 있어서,상기 (e) 단계는,저장된 해시값을 이용하여 입력받은 프로그램의 상기 (a) 단계 내지 (e) 단계에서 생성된 해시값을 유사도 측정함수를 통해 프로그램 유사성을 판단하는 단계인 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정방법
|
8 |
8
청구항 7에 있어서,상기 유사도 측정함수는,(여기서, ε는 문턱값을 나타내고, 각 α 및 β 두 프로그램 P 및 Q로부터 추출된 각 프로시저들에 대한 Bf를 통해 생성된 버스마크 값을 나타낸다
|
9 |
9
프로그램을 입력받아 코드 영역을 추출하는 코드 영역 추출부;추출된 코드 영역을 디스어셈블링(disassembling) 하는 디스어셈블링부;디스어셈블링(disassembling) 된 프로그램의 인스트럭션 시퀀스(instruction sequence)를 프로시저(procedure)로 분리하는 프로시저 분리부;분리된 프로시저들의 API 콜 시퀀스에 대하여 퍼지 해시 함수(fuzzy hash function)를 통해 해시값을 생성하여 버스마크 DB에 저장하는 버스마크 생성부; 및저장된 해시값을 이용하여 입력받은 프로그램의 유사성을 측정하는 유사성 측정부를 포함하는 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정 시스템
|
10 |
10
청구항 9에 있어서,상기 디스어셈블링부는,추출된 코드 영역을 리커시브 디슨트 디스어셈블리(recursive decent disassembly) 방식을 이용하여 콜 인스트럭션(call instruction)에 대한 참조 프로시저(procedure) 들을 인식하는 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정 시스템
|
11 |
11
청구항 9에 있어서,상기 프로시저 분리부는,분리된 각각의 프로시저에서 API 콜이 발생하지 않는 프로시저를 제거하는 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정 시스템
|
12 |
12
청구항 9에 있어서,상기 프로시저 분리부는,분리된 프로시저들을 선택적으로 프로시저 DB에 저장하는 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정 시스템
|
13 |
13
청구항 9에 있어서,상기 버스마크(birthmark) 생성부는,생성된 해시값을 실행파일에 대한 정보를 가지는 실행파일 테이블과, 실행파일 테이블과 연결된 프로시저 리스트가 구비된 리스트 테이블로 구성하여 버스마크 DB에 저장하는 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정 시스템
|
14 |
14
청구항 9에 있어서,상기 유사성 측정부는,저장된 해시값을 이용하여 생성된 입력받은 프로그램의 해시값을 유사도 측정함수를 통해 프로그램 유사성을 판단하는 것을 특징으로 하는 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정 시스템
|
15 |
15
청구항 14에 있어서,상기 유사도 측정함수는,(여기서, ε는 문턱값을 나타내고, 각 α 및 β 두 프로그램 P 및 Q로부터 추출된 각 프로시저들에 대한 Bf를 통해 생성된 버스마크 값을 나타낸다
|
16 |
16
하드웨어와 결합되어,청구항 1의 퍼지 해싱을 사용한 함수의 API 기반 소프트웨어의 유사성 측정방법을 실행시키기 위하여 컴퓨터가 판독 가능한 매체에 저장된 컴퓨터프로그램
|