Academia.eduAcademia.edu

Outline

On the automation of vulnerabilities fixing for web application

2014

Abstract

Testing Web applications for detection and fixing of vulnerabilities has become an indispensable task in web applications’ development process. This task often consumes a lot of time, efforts and other resources. The research community have devoted considerable amount of efforts to address this problem by proposing many techniques for automated vulnerabilities detection and fix generation for web application. Many of these techniques can reliably detect vulnerabilities and generate fix(es), which can be applied to the web application’s code, by the developer, for possible fixing of the vulnerabilities. Hence, the actual code modifications that fix the vulnerabilities is not automated and has to be carried out manually. To the best of our knowledge, none of the existing automated techniques is able to do this, and hence the actual fixing of the vulnerabilities is left for the human developer to handle. In this paper, we propose a novel framework for automatic vulnerabilities fixing f...

References (29)

  1. D. Watson and U. K. H. Project, "Web application attacks," Journal of Network Security, vol. 2007, iss. 10, Oct. 2007, pp. 10-14, doi:10.1016/S1353-4858(07)70094-6.
  2. D. Gollmann, "Securing web applications," Information Security Technical Report, ELSEVIER, vol. 13, no. 1, Jan. 2008, pp. 1-9, doi:10.1016/j.istr.2008.02.002.
  3. A. Garg and S. Singh, "A review on web application security vulnerabilities," International Journal of Advanced Research in Computer Science and Software Engineering, (IJARCSSE), vol. 3, no. 1, 2003, pp. 222-226.
  4. OWASP, "OWASP top 10 project," https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project , [retrieved: May 2014].
  5. CWE, "CWE-SANS top 25 most dangerous software errors," Common Weakness Enumeration, Http://cwe.mitre.org/ top25/. (http://cwe.mitre. Org/top25/), [retrieved: May 2014].
  6. J. M. Chen and C. L. Wu, "An automated vulnerability scanner for injection attack based on injection point," Proc. IEEE International Computer Symposium, IEEE Press, Tainan, Dec. 2010, pp. 113-118, doi:10.1109/COMPSYM.2010.5685537.
  7. L. Luo, "Software testing techniques," Class Report for 17-939A, Institute for Software Research International, Carnegie Mellon University, USA. (http://mcahelpline.com/tutorials/testing/testing.pdf).
  8. J. Irena, "Software testing methods and techniques," The IPSI BgD Transactions on Internet Research, 2008, internetjournals.net.
  9. A. Arcuri, "Evolutionary repair of faulty software," Journal of Applied Soft Computing, ELSEVIER, vol. 11, iss. 4, June. 2011, pp. 3494- 3514, doi:10.1016/j.asoc.2011.01.023.
  10. A. Arcuri, "On search based software evolution," Proc. IEEE 1st International Symposium on Search Based Software Engineering, IEEE Press, Windsor, May. 2009, pp. 39-42, doi:10.1109/SSBSE.2009.12.
  11. A. Arcuri, "On the automation of fixing software bugs," Proc. ACM 30th International Conference on Software Engineering, ACM, Leipzig, Germany, May. 2008, pp. 1003-1006, doi:10.1145/1370175.1370223.
  12. A. Abraham, "Evolutionary computation: from Genetic Algorithms to Genetic Programming," in Genetic Systems Programming: Theory and Experiences, Ecological Studies 185, N. Nedjah and A. Abraham, Springer, 2005, pp. 1-20.
  13. R. G. S. ASTHANA, "Evolutionary Algorithms and Neural Networks," in Soft Computing and Intelligent Systems: Theory and Applications, A volume in Academic Press Series in Engineering, N. K. Sinha, M. M. Gupta and L. A. Zadeh, ELSEVIER Inc, 2000, pp. 111-136.
  14. J. Bau, E. Bursztein, D. Gupta and J. Mitchell, "State of the art: automated black-box web application vulnerability testing," Proc. IEEE Symp. Security and Privacy (SP), IEEE Press, Oakland, CA, May. 2010, pp. 332-345, doi:10.1109/SP.2010.27.
  15. F. Dysart and M. Sherriff, "Automated fix generator for SQL injection attacks," Proc. IEEE 19th International Symposium on Software Reliability Engineering, (ISSRE), IEEE Press, Seattle, WA, Nov. 2008, pp. 311-312, doi:10.1109/ISSRE.2008.44.
  16. Z. Djuric, "A black-box testing tool for detecting SQL injection vulnerabilities," Proc. IEEE Second International Conference on Informatics and Applications, (ICIA), IEEE Press, Lodz, Sept. 2013, pp. 216-221, doi:10.1109/ICoIA.2013.6650259.
  17. B. Qu, B. Liang, S. Jiang and C. Ye, "Design of automatic vulnerability detection system for web application program," Proc. IEEE 4th International Conference on Software Engineering and Service Science, (ICSESS), IEEE Press, Beijing, May. 2013, pp. 89-92, doi:10.1109/ICSESS.2013.6615262.
  18. G. Wassermann and Z. Su, "Static detection of Cross-Site Scripting vulnerabilities," Proc. ACM/IEEE 30th International Conference on Software Engineering, (ICSE), ACM/IEEE, Leipzig, May. 2008, pp. 171-180, doi:10.1145/1368088.1368112.
  19. A. Smirnov and T. Chiueh, "Automatic patch generation for Buffer Overflow attacks," Proc. IEEE Third International Symposium on Information Assurance and Security, (IAS), IEEE Press, Manchester, Aug. 2007, pp. 165-170, doi:10.1109/IAS.2007.87.
  20. B. Eshete, A. Villafiorita, K. Weldemariam and M. Zulkernine, "Confeagle: Automated analysis of Configuration vulnerabilities in web applications," Proc. IEEE 7th International Conference on Software Security and Reliability, (SERE), IEEE Press, Gaithersburg, MD, June. 2013, pp. 188-197, doi:10.1109/SERE.2013.30.
  21. F. Gauthier and E. Merlo, "Fast detection of Access Control vulnerabilities in PHP applications," Proc. IEEE 19th Working Conference on Reverse Engineering, (WCRE), IEEE Press, Kingston, ON, Oct. 2012, pp. 247-256, doi:10.1109/WCRE.2012.34.
  22. D. Huluka and O. Popov, "Root cause analysis of Session Management and Broken Authentication vulnerabilities," IEEE World Congress on Internet Security, IEEE Press, Guelph, ON, June. 2012, pp. 82-86.
  23. Y. Zheng and X. Zhang, "Path sensitive static analysis of web applications for remote code execution vulnerability detection," Proc. IEEE 35th International Conference on Software Engineering, (ICSE), IEEE Press, San Francisco, CA, May. 2013, pp. 652-661, doi:10.1109/ICSE.2013.6606611.
  24. V. Felmetsger, L. Cavedon, C. Kruegel and G. Vigna, "Toward automated detection of logic vulnerabilities in web applications," Proc. ACM 19th USENIX conference on Security, ACM, Berkeley, CA, USA, 2010, pp. 10-10.
  25. R. A. DeMillo, R. J. Lipton and F. Sayward, "Hints on test data selection: help for the practicing programmer," Computer, vol. 11, iss.
  26. IEEE Press, 2006, pp. 34-41, doi:10.1109/C-M.1978.218136.
  27. C. D. Rosin and R. K. Belew, "New methods for competitive coevolution," in Evolutionary Computation, vol. 5, iss. 1, MIT Press Cambridge, MA, USA, 1997, pp. 1-29.
  28. C. Zhou and P. Frankl, "JDAMA Java database application mutation analyser," ACM Journal of Software Testing, Verification & Reliability, vol. 21, iss. 3, Sept. 2011, pp. 241-263, doi:10.1002/stvr.462.
  29. W. B. Langdon, M. Harman and Y. Jia, "Efficient multi-objective higher order mutation testing with genetic programming," ELSEVIER Journal of Systems and Software, vol. 83, iss. 12, Dec. 2010, pp. 2416- 2430, doi:10.1016/j.jss.2010.07.027.