소스코드를 이용한 웹 응용 취약점 분석에 관한 연구

A Study on the Security of Web Application by Source Code Analysis

  • 김성열 (건국대학교 인터넷미디어공학부) ;
  • 정수은 (건국대학교 인터넷미디어공학부) ;
  • 박중길 (국가보안기술연구소) ;
  • 김상천 (국가보안기술연구소) ;
  • 한광택 (국가보안기술연구소)
  • 발행 : 2003.12.01

초록

기존의 고정적 웹 페이지에, 실시간적으로 변화하는 내용의 제공을 가능하게 하기 위해, 추가적으로 코드를 첨가할 수 있도록 만든 것이 웹 응용 프로그램이다. 그 예로는 cgi, php, jsp, java, python 등이 있다. 많은 수의 언어와 다수의 프로그램들이 빠른 속도로 개발됨에 따라 많은 수의 보안 문제점들이 발생하였고 실제로 대단히 많은 서버들이 침입의 대상이 되었다. 웹 응용 프로그램의 보안에 많은 문제점이 발생한 이유는 첫번째, 기존의 서버 응용 프로그램들에 비하여 웹 응용 프로그램은 휠씬 많은 수가 아주 빠르게 개발되었다는 점이다. 두 번째는 웹 응용 프로그램에서 발생한 새로운 종류의 보안 위험성을 들 수 있다. 기존의 서버 응용 프로그램에서 발생하는 위험성들은 서버프로그램의 버그를 이용한 것이었고, 이들은 외부 입력의 내용보다는 그 크기 등의 간단히 검사 가능한 특징에 의존하는 경우가 많았다. 하지만, 웹 응용 프로그램이 외부 입력의 내용을 코드의 일부로 사용하는 경우가 많음으로 인해서, 웹 응용 프로그램에서는 간단히 검사하기 어려운 특징인 입력의 내용에 의존하는 위험성들이 많이 발생한다. 본 논문에서는 이러한 새로운 방식의 위험성을 소스코드를 이용해서 어떻게 자동적으로 검사할 수 있을 지에 관해서 새로운 아이디어를 제시한다. 이 아이디어는 현재 구현 중에 있으며, 초기 실험 결과 기존의 검사 프로그램들이 찾아내지 못하는 취약점들을 찾아낼 수 있음이 확인되었다.

키워드