1 |
1
바이너리 코드로부터 아키텍처 정보를 추출하여 중간 표현 형식으로 변환 가능한지를 확인하기 위한 바이너리 분석부;상기 확인 결과에 따라, 상기 바이너리 코드를 중간 표현 코드로 변환하기 위한 중간 표현 변환부;상기 중간 표현 코드로부터 함수 호출 그래프와 제어 흐름 그래프를 추출하여 취약점 분석대상 함수를 선별하기 위한 중간 표현 분석부;상기 취약점 분석대상 함수에 대해, CWE(Common Weakness Enumeration) 취약점 목록에 해당되는 보안 취약점이 있는지를 판단하여 정적 취약점 검출 목록을 생성하기 위한 정적 취약점 분석부; 및상기 정적 취약점 검출 목록으로부터 선별된 취약점을 갖는 함수에 대해 테스트 케이스를 생성하여 기호 수행을 실행하기 위한 동적 취약점 분석부;를 포함하고,상기 중간 표현 분석부는, 상기 중간 표현 코드를 파싱하여 추상 구문 트리를 생성한 후, 상기 추상 구문 트리를 순회하여 상기 함수 호출 그래프와 상기 제어 흐름 그래프를 추출하며,상기 함수 호출 그래프와 상기 제어 흐름 그래프의 함수 호출 관계 분석을 통해 상기 취약점 분석대상 함수를 선별하되, 상기 취약점 분석대상 함수 내에서의 프로그램이 실행 중에 횡단할 수 있는 모든 경로에 대한 수행 흐름을 파악하고,상기 취약점 분석대상 함수는, 시스템 함수가 제외된 것인 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 장치
|
2 |
2
제 1 항에 있어서,상기 바이너리 분석부는,상기 바이너리 코드로부터 바이너리 유형 정보인 문자열 정보와 심볼 정보를 추출하여 저장하는 것을 특징으로 하는 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 장치
|
3 |
3
제 1 항에 있어서,상기 중간 표현 변환부는,상기 바이너리 코드에 대해 디스어셈블 과정을 거쳐 디스어셈블 코드를 생성한 후, 상기 디스어셈블 코드에 대응되는 상기 중간 표현 코드으로 변환하는 것을 특징으로 하는 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 장치
|
4 |
4
삭제
|
5 |
5
삭제
|
6 |
6
제 1 항에 있어서,상기 정적 취약점 분석부는,상기 취약점 분석대상 함수를 분석하여 이전에 알려진 형태의 취약점 정보와 동일한 유형의 중간 표현 코드를 확인하는 것을 특징으로 하는 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 장치
|
7 |
7
제 1 항에 있어서,상기 정적 취약점 검출 목록은, 취약점 위치와 취약점 정보가 기록된 것을 특징으로 하는 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 장치
|
8 |
8
제 1 항에 있어서,상기 동적 취약점 분석부는,상기 정적 취약점 검출 목록으로부터 선별된 취약점을 가지는 함수의 인자정보, 분기정보, 호출 관계 정보를 분석하는 것을 특징으로 하는 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 장치
|
9 |
9
바이너리 코드로부터 아키텍처 정보를 추출하여 중간 표현 형식으로 변환 가능한지를 확인하는 단계;상기 확인 결과에 따라, 상기 바이너리 코드를 중간 표현 코드로 변환하는 단계;상기 중간 표현 코드로부터 함수 호출 그래프와 제어 흐름 그래프를 추출하여 취약점 분석대상 함수를 선별하는 단계;상기 취약점 분석대상 함수에 대해, CWE(Common Weakness Enumeration) 취약점 목록에 해당되는 보안 취약점이 있는지를 판단하여 정적 취약점 검출 목록을 생성하는 단계; 및상기 정적 취약점 검출 목록으로부터 선별된 취약점을 갖는 함수에 대해 테스트 케이스를 생성하여 기호 수행을 실행하는 단계;를 포함하고,상기 선별 단계는, 상기 중간 표현 코드를 파싱하여 추상 구문 트리를 생성한 후, 상기 추상 구문 트리를 순회하여 상기 함수 호출 그래프와 상기 제어 흐름 그래프를 추출하며,상기 함수 호출 그래프와 상기 제어 흐름 그래프의 함수 호출 관계 분석을 통해 상기 취약점 분석대상 함수를 선별하되, 상기 취약점 분석대상 함수 내에서의 프로그램이 실행 중에 횡단할 수 있는 모든 경로에 대한 수행 흐름을 파악하고,상기 취약점 분석대상 함수는, 시스템 함수가 제외된 것인 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 방법
|
10 |
10
제 9 항에 있어서,상기 정적 취약점 검출 목록의 분석결과와 상기 기호 수행이 실행된 결과를 종합하여 발생 가능한 취약점을 검출하는 단계;를 더 포함하는 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 방법
|
11 |
11
제 10 항에 있어서,상기 검출 단계 이후에,상기 검출 결과에 따라 보안 위협에 대응하는 보안 취약점 관리 프로세스를 운영하는 단계;를 더 포함하는 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 방법
|
12 |
12
제 9 항에 있어서,상기 확인 단계는,상기 바이너리 코드로부터 바이너리 유형 정보인 문자열 정보와 심볼 정보를 추출하여 저장하는 것을 특징으로 하는 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 방법
|
13 |
13
제 9 항에 있어서,상기 변환 단계는,상기 바이너리 코드에 대해 디스어셈블 과정을 거쳐 디스어셈블 코드를 생성한 후, 상기 디스어셈블 코드에 대응되는 상기 중간 표현 코드으로 변환하는 것을 특징으로 하는 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 방법
|
14 |
14
삭제
|
15 |
15
삭제
|
16 |
16
제 9 항에 있어서,상기 생성 단계는,상기 취약점 분석대상 함수를 분석하여 이전에 알려진 형태의 취약점 정보와 동일한 유형의 중간 표현 코드를 확인하는 것을 특징으로 하는 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 방법
|
17 |
17
제 9 항에 있어서,상기 실행 단계는,상기 정적 취약점 검출 목록으로부터 선별된 취약점을 가지는 함수의 인자정보, 분기정보, 호출 관계 정보를 분석하는 것을 특징으로 하는 바이너리 코드 기반 임베디드 소프트웨어 취약점 분석 방법
|