# A Comprehensive Review and Assessment of Cybersecurity Vulnerability Detection Methodologies
## 4 Taxonomy of Vulnerability Detection Approaches and Findings Analysis
### Feature Modeling-Based Approach
#### 4.3.1 Feature Modeling-Based Approach Methods Description  
Method Based on CyberSPL  
A new contribution presented a Cyber Software Product Line (CyberSPL) solution [99]. It offers a way to assess cybersecurity policies based on possible configurations. To represent the configuration parameters of software systems, the modeling configurations are based on feature models tailored to specific cybersecurity domains [100]. These models outline a variety of requirements, relationships, and dependencies that must be adhered to ensure cybersecurity compliance. Next, CyberSPL uses Constraint Satisfaction Problems (CSP) to transform feature models into formal representations, verifying the model's satisfaction and figuring out the number of legitimate software products [101]. Following the verification process, CyberSPL uses analysis activities and reasoning techniques, notably ChocoSolver, to reason with feature models [102]. This approach diagnoses the system setup and identifies any non-compliant configurations. Therefore, this outcome continues to be an anticipatory cybersecurity measure to identify and fix vulnerabilities before exploitation by cyberattacks. For this purpose, the CyberSPL is designed to be updated against the latest cybersecurity policies. The Figure 20 below illustrates the global workflow of CyberSPL and outlines major outputs. Finally, CyberSPL, which is connected to the FAMA framework via an REST API, was evaluated to handle Apache Server Configuration, Linux Kernel Security, Android Security Settings, and SSL/TLS protocol settings [103]. Method Based on Attack Scenario  
Another work presented a study focusing on the integration of feature modeling to support security assessments by virtualizing attack scenarios for software systems [104]. In this context, the methodology starts with extracting security events from VDBs, linking them, and correlating dependencies between software systems. Next, a feature model is built to capture vulnerabilities and the relationships between them. At this step, actions are  
Figure 19: Features of FM-based approach. Figure 20: CyberSPL workflow. (Adapted from [99]. )carried out manually by pulling from the Metasploit Framework (MSF) and vulnerability databases to build records for each attack scenario into a vulnerability feature model [105]. For evaluating the presented work, the authors built the relationship between Firefox and operating systems using leaf features and 24 cross-tree constraints. The next step involves integrating the retrieved data to replicate vulnerable systems. The virtualized systems are then attacked using MSF scripts before evaluating the scenarios' effectiveness. This capability allows all security stakeholders the opportunity to identify pertinent attack scenarios and vulnerabilities for their purposes. Method Based on AMADEUS  
A recent solution unveiled a new FM approach called AMADEUS (AutoMAteD sEcU-rity teSting) [106]. This solution automates the examination and testing of cybersecurity vulnerabilities in feature-model-based configuration systems. The initial contribution is integrating vulnerability management with FMs. At this level, AMADEUS operates with two modes during the reconnaissance and enumeration phases: the custom mode allows users to provide a list of relevant keywords about a target system, while the input list is automatically extracted by the Nmap tool. Then, using the previous keyword, AMADEUS integrates a web scraper module to extract the CVE ID from NVD. These results are used to gather all possible vulnerable configurations (CPE) for each CVE ID. Following that, three methods are used to generate specific FMs: sub-FM/vendor, sub-FM/running configurations, and sub-FM/single FM tree. These algorithms link the configuration of the target system to the security events that are extracted from vulnerable repositories.