1 |
1
문맥 자유 문법에 따라 생성된 문장들의 집합인 문장 집합을 확장하여, 상기 문장들의 특수 단말을 확장 정규 문법으로 제한된 문자열 생성 규칙에 따라 의미있는 문자열로 변환하는 입력 생성 장치; 및상기 변환된 문자열을 포함하는 전체 문자열을 입력으로 받아 프로그램이 실행되는 중 간접 분기 명령이 발생하면, 적법한 제어흐름을 분석 및 선별하는 제어흐름 분석 장치;를 포함하고,상기 입력 생성 장치는,상기 문맥 자유 문법 기반의 입력 명세를 해석하여 문법 매핑 테이블을 생성하고, 상기 확장 정규 문법 기반의 문자열 명세를 해석하여 문자열 생성 규칙 테이블을 생성하는 명세 해석부;상기 문법 매핑 테이블로부터 도출가능한 모든 문장들을 생성하여 문장 집합 테이블에 열거하는 문장 열거부;상기 문장 집합 테이블로부터 사용하고자 하는 모든 문장들을 출력하는 문장 출력부; 및상기 문자열 생성 규칙 테이블에 설정된 문자열 생성 규칙에 따라 상기 출력된 문장들 내의 특수 단말을 상기 의미있는 문자열로 변환하고, 일반 단말은 속성을 문장에서 문자열로 변환하는 문자열 변환부;를 포함하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 장치
|
2 |
2
삭제
|
3 |
3
제1항에 있어서,상기 명세 해석부는,상기 문맥 자유 문법을 기반으로 작성된 입력 명세를 해석하여 비단말에 색인 번호를 매핑한 비단말 테이블을 생성하고, 단말에 색인 번호를 매핑한 단말 테이블을 생성한 후, 상기 비단말 테이블과 상기 단말 테이블의 색인 번호와 상기 입력 명세의 줄번호로 이루어진 상기 문법 매핑 테이블을 생성하는 것을 특징으로 하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 장치
|
4 |
4
제1항에 있어서,상기 명세 해석부는,상기 문자열 명세에 상기 특수 단말 별로 지정된 문자열을 이용하여 상기 문자열 생성 규칙 테이블을 생성하는 것을 특징으로 하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 장치
|
5 |
5
제1항에 있어서,상기 문자열 변환부는,상기 출력된 모든 문장들에 속한 일반 단말은 문장에서 문자열로 속성을 변환하고, 상기 모든 문장들에 속한 특수 단말은 상기 문자열 생성 규칙을 참조하여 해당하는 문자열로 변환하여 상기 모든 문장들을 상기 전체 문자열로 변환하는 것을 특징으로 하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 장치
|
6 |
6
제1항에 있어서,상기 제어흐름 분석 장치는,상기 전체 문자열을 입력받아 상기 프로그램이 실행되는 동안 간접 분기 명령이 발생하면, 상기 간접 분기 명령에 해당하는 주소 쌍을 추출하여 누적 주소 테이블에 저장하는 주소 검사부; 및상기 누적 주소 테이블에 누적된 주소쌍을 제어흐름 처방 테이블로 출력하는 주소 출력부;를 포함하는 것을 특징으로 하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 장치
|
7 |
7
제6항에 있어서,상기 주소 검사부는,상기 프로그램이 실행되는 동안 입력되는 명령어를 분석하여 상기 간접 분기 명령인지를 판단하고, 상기 명령어가 발생한 메모리의 출처 주소 및 상기 명령어의 목적지 주소를 추출하여 상기 주소 쌍을 생성하며,상기 생성된 주소 쌍은 상기 프로그램의 동적 제어흐름 분석 결과로서 상기 제어흐름 처방 테이블에 저장되는 것을 특징으로 하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 장치
|
8 |
8
(A) 문맥 자유 문법에 따라 생성된 문장들의 집합인 문장 집합을 확장하여, 상기 문장들의 특수 단말을 확장 정규 문법으로 제한된 문자열 생성 규칙에 따라 의미있는 문자열로 변환하는 단계; 및(B) 상기 변환된 문자열을 포함하는 전체 문자열을 입력으로 받아 프로그램이 실행되는 중 간접 분기 명령이 발생하면, 적법한 제어흐름을 분석 및 선별하는 단계;를 포함하고,상기 (A) 단계는,(A1) 상기 문맥 자유 문법 기반의 입력 명세를 해석하여 문법 매핑 테이블을 생성하고, 상기 확장 정규 문법 기반의 문자열 명세를 해석하여 문자열 생성 규칙 테이블을 생성하는 단계;(A2) 상기 문법 매핑 테이블로부터 도출가능한 모든 문장들을 생성하여 문장 집합 테이블에 열거하는 단계;(A3) 상기 문장 집합 테이블로부터 사용하고자 하는 모든 문장들을 출력하는 단계; 및(A4) 상기 문자열 생성 규칙 테이블에 설정된 문자열 생성 규칙에 따라 상기 출력된 문장들 내의 특수 단말을 상기 의미있는 문자열로 변환하고, 일반 단말은 속성을 문장에서 문자열로 변환하는 단계;를 포함하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 방법
|
9 |
9
삭제
|
10 |
10
제8항에 있어서,상기 (A1) 단계는,상기 문맥 자유 문법을 기반으로 작성된 입력 명세를 해석하여 비단말에 색인 번호를 매핑한 비단말 테이블을 생성하고, 단말에 색인 번호를 매핑한 단말 테이블을 생성한 후, 상기 비단말 테이블과 상기 단말 테이블의 색인 번호와 상기 입력 명세의 줄번호로 이루어진 상기 문법 매핑 테이블을 생성하는 것을 특징으로 하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 방법
|
11 |
11
제8항에 있어서,상기 (A1) 단계는,상기 문자열 명세에 상기 특수 단말 별로 지정된 문자열을 이용하여 상기 문자열 생성 규칙 테이블을 생성하는 것을 특징으로 하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 방법
|
12 |
12
제8항에 있어서,상기 (A4) 단계는,상기 출력된 모든 문장들에 속한 일반 단말은 문장에서 문자열로 속성을 변환하고, 상기 모든 문장들에 속한 특수 단말은 상기 문자열 생성 규칙을 참조하여 해당하는 문자열로 변환하여 상기 모든 문장들을 상기 전체 문자열로 변환하는 것을 특징으로 하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 방법
|
13 |
13
제8항에 있어서,상기 (B) 단계는,(B1) 상기 전체 문자열을 입력받아 상기 프로그램이 실행되는 동안 간접 분기 명령이 발생하면, 상기 간접 분기 명령에 해당하는 주소 쌍을 추출하여 누적 주소 테이블에 저장하는 단계; 및(B2) 상기 누적 주소 테이블에 누적된 주소쌍을 제어흐름 처방 테이블로 출력하는 단계;를 포함하는 것을 특징으로 하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 방법
|
14 |
14
제13항에 있어서,상기 (B1) 단계는,상기 프로그램이 실행되는 동안 입력되는 명령어를 분석하여 상기 간접 분기 명령인지를 판단하고, 상기 명령어가 발생한 메모리의 출처 주소 및 상기 명령어의 목적지 주소를 추출하여 상기 주소 쌍을 생성하며,상기 생성된 주소 쌍은 상기 프로그램의 동적 제어흐름 분석 결과로서 상기 제어흐름 처방 테이블에 저장되는 것을 특징으로 하는 문법에 의하여 생성된 입력으로 제어흐름을 처방하기 위한 동적 제어흐름 분석 방법
|
15 |
15
삭제
|