Skip to main content

Search-Based SQL Injection Attacks Testing Using Genetic Programming

  • Conference paper
  • First Online:
Genetic Programming (EuroGP 2016)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9594))

Included in the following conference series:

Abstract

Software testing is a key phase of many development methodologies as it provides a natural opportunity for integrating security early in the software development lifecycle. However despite the known importance of software testing, this phase is often overlooked as it is quite difficult and labour-intensive to obtain test datasets to effectively test an application. This lack of adequate automatic software testing renders software applications vulnerable to malicious attacks after they are deployed as detected software vulnerabilities start having an impact during the production phase. Among such attacks are SQL injection attacks. Exploitation of SQL injection vulnerabilities by malicious programs could result in severe consequences such as breaches of confidentiality and false authentication. We present in this paper a search-based software testing technique to detect SQL injection vulnerabilities in software applications. This approach uses genetic programming as a means of generating our test datasets, which are then used to test applications for SQL injection-based vulnerabilities.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Appelt, D., Alshahwan, N., Nguyen, C.D., Briand, L.C.: Black-box SQL injection testing. Technical report, University of Luxembourg and University College London (2014)

    Google Scholar 

  2. Boyd, S.W., Keromytis, A.D.: SQLrand: preventing SQL injection attacks. In: Jakobsson, M., Yung, M., Zhou, J. (eds.) ACNS 2004. LNCS, vol. 3089, pp. 292–302. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  3. Chan, W., Cheung, S., Tse, T.: Fault-based testing of database application programs with conceptual data model. In: Fifth International Conference on Quality Software, (QSIC ), pp. 187–196, September 2005

    Google Scholar 

  4. Ciampa, A., Visaggio, C.A., Di Penta, M.: A heuristic-based approach for detecting sql-injection vulnerabilities in web applications. In: Proceedings of the 2010 ICSE Workshop on Software Engineering for Secure Systems, SESS 2010, pp. 43–49. ACM, New York (2010)

    Google Scholar 

  5. Fossi, M., Turner, D., Mack, E.J.T., Adams, T., Blackbird, J., Entwisle, S., Graveland, B., McKinney, D., Mulcahy, J., Wueest, C.: Symantec global internet security threat report: trends for 2009. Technical report XV, Symantec, April 2010

    Google Scholar 

  6. Gudu Software: GSP: general SQL parser. http://www.sqlparser.com (Accessed 14 October 2015)

  7. Halfond, W.G.J., Orso, A.: AMNESIA: analysis and monitoring for neutralizing sql-injection attacks. In: Proceedings of the 20th IEEE/ACM International Conference on Automated Software Engineering, ASE 2005, pp. 174–183. ACM, New York (2005)

    Google Scholar 

  8. Forristal, J.: NT web technology vulnerabilities. Phrack Mag. 8(54), December 1998

    Google Scholar 

  9. Kosuga, Y., Kernel, K., Hanaoka, M., Hishiyama, M., Takahama, Y.: Sania: syntactic and semantic analysis for automated testing against SQL injection. In: Twenty-Third Annual Computer Security Applications Conference, ACSAC 2007, pp. 107–117, December 2007

    Google Scholar 

  10. Luke, S., Panait, L., Balan, G., Paus, S., Skolicki, Z., Bassett, J., Hubley, R., Chircop, A.: ECJ: a java-based evolutionary computation research system. https://cs.gmu.edu/ eclab/projects/ecj/ (Accessed 14 October 2015)

  11. McClure, R., Kruger, I.: SQL DOM: compile time checking of dynamic SQL statements. In: Proceedings of 27th International Conference on Software Engineering, ICSE 2005, pp. 88–96, May 2005

    Google Scholar 

  12. NIST: National vulnerability database: automating vulnerability management, security measurement and compliance checking. https://nvd.nist.gov (Accessed 14 October 2015)

  13. NIST: Structured Query Language (SQL) test suite. http://www.itl.nist.gov/div897/ctg/sql_form.htm (Accessed 14 October 2015)

  14. OWASP: OWASP Top 10–2010-the ten most critical web application security risks. the open web application security project (2010). https://www.owasp.org/images/0/0f/OWASP_T10_-_2010_rc1.pdf

  15. Shahriar, H., Zulkernine, M.: MUSIC: mutation-based SQL injection vulnerability checking. In: The Eighth International Conference on Quality Software, QSIC 2008, pp. 77–86, August 2008

    Google Scholar 

  16. Shin, Y., Williams, L., Xie, T.: Sqlunitgen: test case generation for SQL injection detection. Technical report NCSU CSC TR, 21:2006, North Carolina State University (2016)

    Google Scholar 

  17. Su, Z., Wassermann, G.: The essence of command injection attacks in web applications. In: Conference Record of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2006, pp. 372–382. ACM, New York (2006)

    Google Scholar 

  18. SugarCRM: SugarCRM. https://www.sugarcrm.com (Accessed 14 October 2015)

  19. SuiteCRM: SuiteCRM – CRM for the world. https://suitecrm.com (Accessed 14 October 2015)

  20. Thomas, S., Williams, L., Xie, T.: On automated prepared statement generation to remove SQL injection vulnerabilities. Inf. Softw. Technol. 51(3), 589–598 (2009)

    Article  Google Scholar 

  21. Tuya, J., Suárez-Cabal, M.J., De La Riva, C.: Mutating database queries. Inf. Softw. Technol. 49(4), 398–417 (2007)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Benjamin Aziz .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Aziz, B., Bader, M., Hippolyte, C. (2016). Search-Based SQL Injection Attacks Testing Using Genetic Programming. In: Heywood, M., McDermott, J., Castelli, M., Costa, E., Sim, K. (eds) Genetic Programming. EuroGP 2016. Lecture Notes in Computer Science(), vol 9594. Springer, Cham. https://doi.org/10.1007/978-3-319-30668-1_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-30668-1_12

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-30667-4

  • Online ISBN: 978-3-319-30668-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics