• DocumentCode
    1806968
  • Title

    Pixy: a static analysis tool for detecting Web application vulnerabilities

  • Author

    Jovanovic, Nenad ; Kruegel, Christopher ; Kirda, Engin

  • Author_Institution
    Secure Syst. Lab., Tech. Univ. of Vienna
  • fYear
    2006
  • fDate
    21-24 May 2006
  • Lastpage
    263
  • Abstract
    The number and the importance of Web applications have increased rapidly over the last years. At the same time, the quantity and impact of security vulnerabilities in such applications have grown as well. Since manual code reviews are time-consuming, error-prone and costly, the need for automated solutions has become evident. In this paper, we address the problem of vulnerable Web applications by means of static source code analysis. More precisely, we use flow-sensitive, interprocedural and context-sensitive dataflow analysis to discover vulnerable points in a program. In addition, alias and literal analysis are employed to improve the correctness and precision of the results. The presented concepts are targeted at the general class of taint-style vulnerabilities and can be applied to the detection of vulnerability types such as SQL injection, cross-site scripting, or command injection. Pixy, the open source prototype implementation of our concepts, is targeted at detecting cross-site scripting vulnerabilities in PHP scripts. Using our tool, we discovered and reported 15 previously unknown vulnerabilities in three Web applications, and reconstructed 36 known vulnerabilities in three other Web applications. The observed false positive rate is at around 50% (i.e., one false positive for each vulnerability) and therefore, low enough to permit effective security audits
  • Keywords
    Internet; program diagnostics; security of data; software tools; PHP scripts; Pixy tool; Web application; alias analysis; context-sensitive dataflow analysis; cross-site scripting vulnerabilities; flow-sensitive dataflow analysis; interprocedural dataflow analysis; literal analysis; open source prototype implementation; program vulnerability detection; static analysis tool; static source code analysis; taint-style vulnerabilities; Communication channels; Costs; Data analysis; Data security; Information security; Java; Privacy; Protection; Prototypes; Time factors;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Security and Privacy, 2006 IEEE Symposium on
  • Conference_Location
    Berkeley/Oakland, CA
  • ISSN
    1081-6011
  • Print_ISBN
    0-7695-2574-1
  • Type

    conf

  • DOI
    10.1109/SP.2006.29
  • Filename
    1624016