1 |
1
함수 리스트 및 파라미터 리스트 데이터베이스를 구비하며, 파라미터 상태 추적을 통해 주요 웹 응용프로그램의 소스코드를 자동 분석하여 보안 취약점을 탐지하는 장치에 있어서, 각종 함수에 대한 목록을 사전에 정의하여 함수 리스트 데이터베이스에 저장하여 관리하는 함수특성 사전정의부; 소스코드를 분석하기 위해 정규 표현식으로 정의된 문법 구조에 맞추어 소스 코드에서 토큰을 식별하는 어휘 분석을 수행하는 어휘 분석부; 웹 응용프로그램의 일반적인 구문을 인식하기 위해 함수 호출의 특성을 파악하는 구문 분석부; 구문에 따른 상태 변화와 함수 특성에 따른 상태 변화를 추적하는 파라미터 상태 추적부; 및 출력 지점에서 변수의 특정 취약점에 대한 발생 가능성을 보고하는 취약 결과 보고부로 구성된 것을 특징으로 하는 웹 응용프로그램 취약점의 소스코드 분석 장치
|
2 |
2
제 1항에 있어서, 상기 함수특성 사전정의부가 상기 함수 리스트 데이터베이스에 저장하여 관리하는 함수 목록은, 변수에 입력을 받는 경우에 사용되는 함수의 목록인 입력 함수 목록, 변수의 값을 출력하는 함수의 목록인 출력 함수 목록, 변수의 값을 다른 변수에 대입되는 함수의 목록인 전이 함수 목록, 및 변수에서 특정 문자열을 제거하는 일을 하는 함수의 목록인 필터링 함수 목록으로 이루어지는 것을 특징으로 하는 파라미터 상태 추적을 통한 웹 응용프로그램 취약점의 소스코드 분석 장치
|
3 |
3
제 2항에 있어서, 상기 함수 목록의 함수 특성 형식은, 각 함수별로 동일한 파일에 함수를 입력하는 규칙으로 각 필드는 탭으로 구분되고, "함수이름", "크로스 사이트 스크립팅(Cross-Site Scripting, XSS) 취약점", "SQL 삽입(SQL Injection) 취약점", "명령어 삽입(Command Injection) 취약점", "함수타입", "파라미터1", "파라미터2", "파라미터3", "파라미터4", "파라미터5", "리턴 타입" 형식으로 입력함을 특징으로 하는 파라미터 상태 추적을 통한 웹 응용프로그램 취약점의 소스코드 분석 장치
|
4 |
4
제 1항에 있어서, 상기 어휘 분석부는 소스코드를 분석하기 위해 정규 표현식으로 정의된 문법 구조에 맞추어 소스 코드에서 토큰을 식별하는 어휘 분석을 수행하여 파라미터 및 함수를 식별하고, 식별된 파라미터를 파라미터 목록으로 정의한 후 상기 파라미터 리스트 데이터베이스에 저장하여 관리하는 한편, 사용자 정의 함수의 경우 구문 분석을 위해 상기 함수 리스트 데이터베이스에 저장된 함수 목록에 함수의 프로토타입 정보를 추가하는 것을 특징으로 하는 웹 응용프로그램 취약점의 소스코드 분석 장치
|
5 |
5
제 1항에 있어서, 상기 구분 분석부는 변수의 선언문, 할당문, 분기문, 함수 호출 등 웹 응용프로그램의 일반적인 구문을 인식하기 위해 파서를 이용하여 함수 호출의 특성을 파악하는 파싱 동작을 수행하는 것을 특징으로 하는 웹 응용프로그램 취약점의 소스코드 분석 장치
|
6 |
6
제 1항에 있어서, 상기 파라미터 상태 추적부는 상기 구문 분석부를 통해 파싱된 변수의 선언문, 할당문 및 분기문에 대해 파마미터의 상태를 전이시키는 구문에 따른 상태 변화와 함수 특성에 따라 파라미터의 상태를 전이시키는 함수 특성에 따른 상태 변화를 추적하는 것을 특징으로 하는 웹 응용프로그램 취약점의 소스코드 분석 장치
|
7 |
7
파라미터 상태 추적을 통해 주요 웹 응용프로그램의 소스코드를 자동 분석하여 보안 취약점을 탐지하는 방법에 있어서, 소스코드를 분석하기 위해 정규 표현식으로 정의된 문법 구조에 맞추어 소스 코드에서 토큰을 식별하는 어휘 분석을 수행하는 제 1 단계; 웹 응용프로그램의 구문을 인식하기 위해 파서를 이용하여 함수 호출의 특성을 파악하는 파싱 동작을 수행하는 제 2 단계; 상기 제 2 단계에서 파싱된 변수의 선언문, 할당문 및 분기문에 대해 파마미터의 상태를 전이시키는 구문에 따른 상태 변화와 함수 특성에 따라 파라미터의 상태를 전이시키는 함수 특성에 따른 상태 변화를 추적하는 제 3 단계; 및 상기 제 2 단계의 상태변화 추적결과를 토대로 출력 지점에서 변수의 취약점 상태가 더티(dirty)인 특정 취약점에 대한 발생 가능성을 보고하기 위해 그 결과를 출력하는 제 4 단계로 이루어진 것을 특징으로 하는 파라미터 상태 추적을 통한 웹 응용프로그램 취약점의 소스코드 분석 방법
|
8 |
8
제 7항에 있어서, 상기 제 3 단계에서, 함수 특성에 따른 상태 변화를 추적을 위해 데이터베이스로부터 변수에 입력을 받는 경우에 사용되는 함수의 목록인 입력 함수 목록, 변수의 값을 출력하는 함수의 목록인 출력 함수 목록, 변수의 값을 다른 변수에 대입되는 함수의 목록인 전이 함수 목록, 및 변수에서 특정 문자열을 제거하는 일을 하는 함수의 목록인 필터링 함수 목록을 참조하는 것을 특징으로 하는 파라미터 상태 추적을 통한 웹 응용프로그램 취약점의 소스코드 분석 방법
|
9 |
8
제 7항에 있어서, 상기 제 3 단계에서, 함수 특성에 따른 상태 변화를 추적을 위해 데이터베이스로부터 변수에 입력을 받는 경우에 사용되는 함수의 목록인 입력 함수 목록, 변수의 값을 출력하는 함수의 목록인 출력 함수 목록, 변수의 값을 다른 변수에 대입되는 함수의 목록인 전이 함수 목록, 및 변수에서 특정 문자열을 제거하는 일을 하는 함수의 목록인 필터링 함수 목록을 참조하는 것을 특징으로 하는 파라미터 상태 추적을 통한 웹 응용프로그램 취약점의 소스코드 분석 방법
|