DOI QR코드

DOI QR Code

Development of a String Injection Vulnerability Analyzer for Web Application Programs

웹 응용 프로그램의 문자열 삽입 보안 취약성 분석기 개발

  • 안준선 (한국항공대학교 항공전자및정보통신공학부) ;
  • 김영민 (삼성전자) ;
  • 조장우 (동아대학교 컴퓨터공학과)
  • Published : 2008.06.30

Abstract

Nowadays, most web sites are developed using dynamic web pages where web pages are generated and transmitted by web application programs. Therefore, the ratio of attacks injecting malevolent strings to vulnerable web applications is increasing. In this paper, we present a static program analyzer which analyzes whether a web application program has vulnerabilities to the SQL injection attack and the cross site scripting(XSS) attack. To analyze programs using abstract interpretation framework, we designed an abstract domain which models potential string set along with excluded strings and developed an abstract interpreter for the PHP language. Also, based on them, we implemented a static analyzer. According to our experiments, our analyzer has competitive analysis speed and accuracy compared with related research results.

오늘날 대부분의 웹사이트는 웹 응용 프로그램이 적절한 웹 페이지를 생성하여 전송하는 형태인 동적 웹페이지를 사용하고 있다. 이에 대하여, 취약한 웹 응용 프로그램에 악의적인 문자열을 전달하는 공격의 형태가 증가하고 있다. 본 논문에서는 대표적인 문자열 삽입 공격인 SQL 삽입(SQL Injection) 공격과 크로스 사이트 스크립팅(Cross Site Scripting, XSS) 공격에 대하여 웹 응용 프로그램내의 보안 취약성을 자동으로 찾아 주는 프로그램 정적 분석기를 개발하였다. 요약 해석을 사용한 프로그램 분석을 위하여 가능한 문자열 값을 제외 문자열들과 함께 표현하는 요약 자료 공간과 PHP 언어의 요약된 의미 규칙을 설계하였으며, 이를 기반으로 분석기를 구현하였다. 또한 개발된 분석기가 기존의 연구 결과와 비교하여 경쟁력 있는 분석 속도와 정밀도를 가짐을 실험을 통하여 보였다.

Keywords

References

  1. Curphey, M., Endler, D., Hau, W., Taylor, S., Smith, T., Russell, A., McKenna, G., Parke, R., McLaughlin, K., Tranter, N., Klien, A., Groves, D., By-Gad, I., Huseby, S., Eizner, M., McNamara, R. “A Guide to Building Secure Web Applications,” The Open Web Application Security Project, v.1.1.1, Sep., 2002
  2. D. Turner, S. Entwisle, “Symantec Internet Security Threat Report Vol. IX Trends for July 05-December 05,” Symantec, March, 2006
  3. Scott, D., Sharp, R. “Abstracting Application-Level Web Security,” Proc. 11th Int'l Conf. World Wide Web (WWW2002), pp.396-407, May, 17-22, 2002
  4. Scott, D., Sharp, R. “Developing Secure Web Applications,” IEEE internet Computing, Vol.6, No.6, pp.38-45, Nov., 2002 https://doi.org/10.1109/MIC.2002.1067735
  5. Sanctum Inc. “AppShield 4.0 Whitepaper,” http://www.sanctuminc.com, 2002
  6. Kavado, Inc. “InterDo Version 3.0,” Kavado Whitepaper, 2003
  7. Huang, Y. W., Huang, S. K., Lin, T. P., Tsai, C. H. “Web Application Security Assessment by Fault Injection and Behavior Monitoring,” In Proc. 12th International World Wide Web Conference (WWW2003), pp.148-159, May, 21-25, 2003
  8. Aske Simon Christensen, Anders Møller, and Michael I. Schwartzbach, “Precise Analysis of String Expressions,” 14th International Static Analysis Symposium (SAS '03), pp.1-18, June, 2003
  9. Minamide, Y., “Static Approximation of Dynamically Generated Web Pages,” 14th International World Wide Web Conference(WWW 2005), pp.432-441, May, 2005
  10. Tae-Hyoung Choi, Oukseh Lee, Hyunha Kim, Kyung-Goo Doh, “A Practical String Analyzer by the Widening Approach,” Asian Symposium on Programming Languages and Systems, pp.374-388, November, 2006 https://doi.org/10.1007/11924661_23
  11. Yichen, X., Alex, A., “Static Detection of Security Vulnerabilities in Scripting Languages,” 15th USENIX Security Symposium, 2006
  12. Wassermann, Zhendong Su., “Sound and Precise Analysis of Web Applications for Injection Vulnerabilities,” In Proceedings of PLDI 2007, pp.32-41, San Diego, CA, June, 10-13, 2007
  13. Gagnon, E. M., Hendren, L. J., “SableCC, an Object-Oriented Compiler Framework,” In Proc. 1998 Conf. Technology of Object-Oriented Languages and Systems (TOOLS-98), pp.140-154, Santa Barbara, California, Aug., 3-7, 1998