A preview of this full-text is provided by Springer Nature.
Content available from Automated Software Engineering
This content is subject to copyright. Terms and conditions apply.
Vol.:(0123456789)
https://doi.org/10.1007/s10515-024-00433-0
1 3
A systematic literature review onsoftware security testing
using metaheuristics
FatmaAhsan1· FaisalAnwer1
Received: 10 August 2023 / Accepted: 13 March 2024
© The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature
2024
Abstract
The security of an application is critical for its success, as breaches cause loss for
organizations and individuals. Search-based software security testing (SBSST) is the
field that utilizes metaheuristics to generate test cases for the software testing for
some pre-specified security test adequacy criteria This paper conducts a systematic
literature review to compare metaheuristics and fitness functions used in software
security testing, exploring their distinctive capabilities and impact on vulnerability
detection and code coverage. The aim is to provide insights for fortifying software
systems against emerging threats in the rapidly evolving technological landscape.
This paper examines how search-based algorithms have been explored in the context
of code coverage and software security testing. Moreover, the study highlights dif-
ferent metaheuristics and fitness functions for security testing and code coverage.
This paper follows the standard guidelines from Kitchenham to conduct SLR and
obtained 122 primary studies related to SBSST after a multi-stage selection pro-
cess. The papers were from different sources journals, conference proceedings,
workshops, summits, and researchers’ webpages published between 2001 and 2022.
The outcomes demonstrate that the main tackled vulnerabilities using metaheuris-
tics are XSS, SQLI, program crash, and XMLI. The findings have suggested several
areas for future research directions, including detecting server-side request forgery
and security testing of third-party components. Moreover, new metaheuristics must
also need to be explored to detect security vulnerabilities that are still unexplored
or explored significantly less. Furthermore, metaheuristics can be combined with
machine learning and reinforcement learning techniques for better results. Some
metaheuristics can be designed by looking at the complexity of security testing and
exploiting more fitness functions related to detecting different vulnerabilities.
Keywords SBSST· Meta-heuristic· Optimization algorithm· Evolutionary
algorithm· Software security testing· Code coverage· XSS· SQLI· XMLI·
Program crash
Extended author information available on the last page of the article
/ Pu blished on line : 23 M ay 20 24
Automated Software Engineering (2024) 31:44
Content courtesy of Springer Nature, terms of use apply. Rights reserved.