Formal Methods and Validation Techniques for Ensuring Automotive Systems Security
Abstract
:1. Introduction
- Related Surveys:
2. Challenges in Automotive System Security
2.1. Types of Networks and Communication Protocols in Automotive Systems
- Controller Area Network (CAN): CAN is a widely used network in vehicles that facilitates communication between electronic control units (ECUs). It was initially developed in the 1980s and has since become the de facto standard for in-vehicle communication. CAN is a robust, low-cost, and fault-tolerant network that supports real-time applications. It operates on a bus topology, where multiple ECUs are connected to a shared communication bus. CAN allows for reliable and efficient communication between various vehicle systems, such as the engine control unit, transmission control unit, and body control module.
- Local Interconnect Network (LIN): LIN is another network commonly found in automotive systems, primarily used for communication between less critical components. It provides a cost-effective solution for low-speed communication requirements, such as controlling window switches, door locks, and interior lighting. LIN operates on a master–slave architecture, where a master node communicates with multiple slave nodes. Compared with CAN, LIN has a lower bandwidth and is designed for simpler and less time-critical applications.
- Ethernet: Ethernet is increasingly being adopted in modern vehicles due to its high bandwidth capabilities. It enables communication between various ECUs and supports advanced applications such as infotainment systems, advanced driver-assistance systems (ADAS), and autonomous driving. Automotive ethernet is based on the ethernet standard but includes additional features to meet the specific requirements of automotive applications. It offers higher data rates, improved reliability, and the ability to prioritize different types of traffic.
- FlexRay: FlexRay is a deterministic, fault-tolerant network that provides high-speed communication in safety-critical automotive systems. It was developed to meet the stringent requirements of advanced driver-assistance systems and x-by-wire applications. FlexRay supports both time-triggered and event-triggered communication, allowing for precise and predictable transmission of data. It offers high bandwidth, fault tolerance, and synchronization capabilities, making it suitable for critical applications that require real-time communication.
- Media-Oriented Systems Transport (MOST): MOST is a network technology primarily used in automotive multimedia and infotainment systems. It enables the transmission of audio, video, and control data between different multimedia devices in the vehicle, such as head units, amplifiers, and displays. MOST supports high-speed data transfer and provides features like synchronous streaming, network management, and fault tolerance.
- Automotive Ethernet: Automotive ethernet is an extension of the ethernet standard specifically designed for automotive applications. It provides high-speed communication and supports the increasing bandwidth requirements of modern vehicles. Automotive ethernet enables the integration of various systems, such as infotainment, ADAS, and vehicle diagnostics, over a single network infrastructure. It utilizes ethernet protocols and technologies, such as Ethernet AVB (audio video bridging) and TSN (time-sensitive networking), to ensure reliable and deterministic communication.
- Wireless Networks: Wireless networks play an essential role in automotive systems, enabling connectivity with external devices and services. For example, Bluetooth is commonly used for hands-free calling, audio streaming, and wireless device connectivity. Wi-Fi can provide in-vehicle internet access, allowing passengers to connect their devices and access online services. Cellular networks, such as 4G LTE and 5G, enable vehicle-to-vehicle (V2V) and vehicle-to-infrastructure (V2I) communication, supporting features like remote diagnostics, over-the-air updates, and connected services.
- CAN-FD: CAN with Flexible Data-Rate (CAN-FD) is an extension of the traditional CAN protocol that allows for higher data rates and increased payload sizes. It addresses the growing demand for higher bandwidth in automotive systems, particularly for applications that require more extensive data transmission, such as high-resolution sensor data from cameras and radars. CAN-FD maintains backward compatibility with existing CAN networks, enabling a smooth transition to higher data rates.
- LIN Sub-bus: LIN Sub-bus is an extension of the LIN protocol that allows for the expansion of LIN networks to accommodate more devices. It enables the connection of additional slave nodes to an existing LIN bus, increasing the overall capacity and flexibility of the network. LIN Sub-bus is commonly used in automotive systems where the number of components exceeds the capacity of a single LIN bus, such as in complex door modules or instrument clusters.
2.2. Security Challenges
- Insecure Communication Channels [35,36]: Insufficient encryption or authentication procedures implemented in communication protocols possess the potential to compromise the confidentiality of sensitive data and facilitate illegal entry into vehicle functionalities. Attackers may intercept or manipulate communication messages, leading to unauthorized access or unauthorized control of critical vehicle systems.
- Weak Authentication and Authorization [37,38]: Insufficient or inadequately executed authentication and authorization measures have the potential to grant unauthorized access to vital vehicle systems, allowing attackers to assume control without proper authority. Weak authentication mechanisms may enable unauthorized individuals to bypass security barriers and gain unauthorized access to vehicle functions or sensitive data.
- Software Vulnerabilities [39,40]: The exploitation of vulnerabilities in software components, such as operating systems, infotainment systems, or car firmware, has the potential to influence or interrupt the functionality of vehicles. Software vulnerabilities can be exploited by attackers to gain control over critical systems, disrupt vehicle operations, or compromise the safety of vehicle occupants.
- Inadequate Secure Coding Practices [41,42,43]: The absence of compliance with secure coding principles in the process of software development has the potential to create several vulnerabilities, including but not limited to buffer overflows, SQL injection, and code injection attacks. Inadequate secure coding practices increase the risk of software vulnerabilities, which can be exploited by attackers to gain unauthorized access or execute malicious code within the vehicle’s systems.
- Physical Access Exploitation [44,45]: The security of the entire system can be compromised by individuals who have physical access to the vehicle and exploit flaws in diagnostic interfaces, onboard systems, or tamper-proofing features. Attackers with physical access can manipulate or tamper with the vehicle’s components, compromising the integrity and functionality of critical systems.
- CAN Bus Security: The widespread use of the controller area network (CAN) in automotive systems makes it an attractive target for cyber attacks. CAN lacks built-in security features, making it vulnerable to various threats, including message spoofing, replay attacks, and unauthorized access. Attackers can manipulate CAN messages to compromise critical vehicle functions, such as braking or steering. Securing the CAN bus requires implementing authentication, encryption, and intrusion detection mechanisms to prevent unauthorized access and ensure the integrity and confidentiality of the communication.
- Ethernet Security: Ethernet is increasingly being adopted in vehicles, especially for advanced applications like infotainment and ADAS. However, ethernet networks face security challenges similar to those in traditional IT networks. These include the risk of unauthorized access, data tampering, and denial-of-service attacks. Securing ethernet in automotive systems involves implementing robust access control mechanisms, encryption protocols, and network segmentation to isolate critical systems from non-critical ones.
- Wireless Network Security: Wireless networks, such as Bluetooth, Wi-Fi, and cellular networks, are susceptible to various security threats. For example, Bluetooth connections can be vulnerable to eavesdropping and unauthorized device pairing. Wi-Fi networks in vehicles may be targeted by attackers attempting to gain unauthorized access to the vehicle’s systems or steal sensitive data. Cellular networks can be exploited for remote attacks, such as compromising the vehicle’s telematics or infotainment systems. Securing wireless networks requires implementing strong authentication, encryption, and intrusion detection mechanisms to protect against unauthorized access and data breaches.
- FlexRay and LIN Security: While FlexRay and LIN are less commonly targeted by external attackers due to their limited external connectivity, they still face security challenges. These protocols may be vulnerable to physical attacks, such as tampering with the communication wires or injecting malicious signals. Securing FlexRay and LIN networks involves implementing physical security measures, such as tamper-resistant wiring and secure connectors, to prevent unauthorized access and tampering.
- Secure Software Updates: Many automotive systems rely on software updates to fix vulnerabilities and introduce new features. However, the process of updating software over the network introduces security risks. Attackers may attempt to exploit vulnerabilities in the update process to inject malicious code or tamper with the software. Secure software update mechanisms, such as code signing, secure boot, and secure update protocols, are essential to ensure the integrity and authenticity of software updates and prevent unauthorized modifications.
2.3. Other Possible Risks
2.4. Limitations of Classical Techniques
- Firewalls and Intrusion Detection Systems (IDS) [54,55,56,57]: Firewalls establish a barrier between internal and external networks, while IDS monitor network traffic for suspicious activities. However, these techniques have limitations in the context of automotive systems. They may not be able to detect attacks that exploit vulnerabilities within the vehicle’s internal network, such as compromised components communicating with each other. Additionally, they often struggle to keep up with the increasing complexity and sophistication of attacks, as attackers continuously find new ways to bypass or circumvent traditional network security measures.
- Encryption and Secure Communication Protocols [58,59,60,61,62]: Encryption and secure communication protocols are essential for protecting sensitive data transmitted between different components of an automotive system. These techniques ensure confidentiality and integrity of the communication. However, encryption alone cannot prevent attacks that exploit other vulnerabilities in the system. Moreover, the key management and distribution mechanisms in automotive systems can be challenging to implement securely, and if these mechanisms are compromised, the effectiveness of encryption can be severely undermined.
- Access Control and Authentication Mechanisms [63,64,65,66]: Access control and authentication mechanisms are used to restrict access to critical functions and resources within an automotive system. These techniques help prevent unauthorized control and manipulation of the vehicle. However, they rely on the assumption that the authentication mechanisms themselves are secure. Weak or improperly implemented authentication mechanisms can be exploited by attackers to gain unauthorized access. Furthermore, in complex automotive systems with numerous interconnected components, managing and enforcing access control policies can become increasingly challenging.
- Secure Software Development Practices [67,68,69,70]: Secure software development practices, such as secure coding guidelines and vulnerability scanning, are crucial for building robust and resilient automotive systems. These practices aim to eliminate common software vulnerabilities and reduce the attack surface. However, they cannot guarantee the absence of all vulnerabilities, especially in complex systems with numerous software components and interactions. Additionally, the incorporation of secure software development practices requires significant effort and expertise, and it can be challenging to enforce them consistently across all stages of the development process.
- Physical Security Measures [71,72,73,74]: Physical security measures, such as tamper-proofing mechanisms and secure diagnostic interfaces, are employed to protect automotive systems from physical access attacks. While these measures are important, they may not be sufficient to defend against sophisticated attackers with physical access to the vehicle. Determined attackers can bypass or manipulate physical security measures given enough time and resources. Additionally, physical security measures cannot address vulnerabilities that arise from software or network-based attacks, which are becoming increasingly prevalent in modern automotive systems.
3. Formal Methods for Analyzing Automotive System Security
3.1. Model Checking
- S is a finite set of states representing the possible configurations of the system.
- is the set of initial states from which the system execution begins.
- is the transition relation that specifies the possible state transitions of the system.
- is a set of atomic propositions representing the properties of interest that can hold in a state.
- is a labeling function that associates each state with the set of atomic propositions satisfied in that state.
3.2. Theorem Proving
3.3. Abstract Interpretation
3.4. Other Relevant Formal Methods
- Static Analysis [110,111,112]: Static analysis approaches involve the scrutiny of program code or system specifications without their execution, with the objective of identifying potential security vulnerabilities. By analyzing the structure of code, the flow of data, and the dependencies within a system, static analysis techniques can effectively detect common security problems, such as buffer overflows or incorrect data handling procedures. Through the examination of the code structure, static analysis possesses the capability to identify prospective coding faults, such as uninitialized variables or unverified input validation, which possess the potential to give rise to security vulnerabilities. Furthermore, static analysis has the capability to detect insecure data handling methods, such as the insecure storage of sensitive information or insufficient safeguards against information leakage. The analysis of data flows and dependencies enables statical analysis to detect potential security vulnerabilities that may arise from the interaction between various system components. These vulnerabilities include inadequate processing of user input and the transmission of unsafe data across different modules. Static analysis tools frequently utilize advanced algorithms to examine code on a broad scale, rendering them well-suited for intricate codebases in the automotive industry.
- Symbolic Execution [113,114,115,116,117]: Symbolic execution is a methodical methodology that entails the deliberate examination of several paths within a program’s code, while considering symbolic inputs. The objective of this approach is to identify vulnerabilities and generate test cases. Symbolic execution is a technique that allows for the exploration of various execution paths and the generation of inputs that can test different program behaviors. This is achieved by executing a program symbolically. This functionality enables the identification of possible attack pathways and can assist in the creation of targeted testing scenarios. Symbolic execution is capable of detecting inputs that can activate security vulnerabilities, such as path circumstances that result in buffer overflows or inputs that circumvent authentication measures. Symbolic execution is a valuable technique that can be employed to generate comprehensive test cases that encompass various program behaviors, encompassing edge cases and extraordinary scenarios. This approach has the potential to unveil concealed security issues. Nevertheless, the utilization of symbolic execution may encounter the issue of path expansion when confronted with intricate programs, hence presenting significant obstacles in terms of scalability. Different methodologies, including constraint solving and path trimming, are utilized to address these difficulties and enhance the feasibility of symbolic execution in the analysis of automotive systems.
- Security Protocol Analysis [118,119,120,121,122,123]: The main goal of security protocol analysis is to assess the cryptographic protocols utilized in automotive systems, in order to provide secure communication and data transmission. This methodology enables the identification of potential vulnerabilities in protocols, such as replay attacks or deficiencies in key exchange systems, thus helping with the improvement of communication security in the automotive system. The process of security protocol analysis entails the formal modeling of protocols and submitting them to rigorous analysis methodologies, such as formal verification or protocol-specific analysis. Academic verification approaches, such as model checking or theorem proving, can be utilized to ascertain the accuracy of protocol implementations and guarantee compliance with required security features. Protocol-specific analysis techniques primarily concentrate on the identification of vulnerabilities that are specific to cryptographic protocols. These techniques aim to find weaknesses in areas such as key lengths and cipher modes that may pose security risks. Through the process of analysing protocols, security protocol analysis has the capability to detect vulnerabilities that have the potential to result in unauthorized access, violations of data integrity, or breaches of privacy. This analysis has the potential to provide guidance for the development and execution of secure communication protocols that are specifically designed to meet the unique demands of automotive systems.
4. Validation Techniques for Ensuring Automotive System Security
4.1. Penetration Testing
4.1.1. Mathematical Definitions
- 1.
- 2.
- 3.
- Privilege Escalation [136]: The process of elevating user privileges within a system or network. It involves exploiting vulnerabilities to gain higher levels of access and control over the target system.
4.1.2. Examples of Penetration Testing Techniques
- 1.
- Network Scanning [137,138]: This technique involves scanning the target network to identify active hosts, open ports, and services running on those ports. Network scanning helps in identifying potential entry points and vulnerable systems. An example of network scanning code in Python is shown in Listing 1.
Listing 1. Network scanning code in Python. import~nmap def scan_network(target): nm = nmap.PortScanner() nm.scan(target, arguments=’-p 1-65535 -sV’) for host in nm.all_hosts(): print(f"Host: {host}") for port in nm[host][’tcp’]: print(f"Port: {port}, Service: {nm[host][’tcp’][port][’name’]}") - 2.
- Password Cracking [139,140]: This technique involves attempting to crack passwords to gain unauthorized access to user accounts or systems. It can be performed using various methods such as brute-force attacks, dictionary attacks, or rainbow table attacks. An example of brute-force password cracking script in Python is shown in Listing 2.
Listing 2. Brute-force password cracking script in Python. import itertools import string import~hashlib def crack_password(password_hash): salt = password_hash[:2] password_hash = password_hash[2:] for password_length in range(1, 9): for password in itertools.product( string.ascii_letters + string.digits, repeat=password_length ): password = ’’.join(password) hashed_password = hashlib.md5( (salt + password).encode() ).hexdigest() if hashed_password == password_hash: return~password return None - 3.
- SQL Injection [141,142]: This technique exploits vulnerabilities in web applications that use improper input validation. By injecting malicious SQL queries, an attacker can retrieve sensitive information or manipulate the database. An example of SQL injection attack in a web application is shown in Listing 3.
Listing 3. SQL injection attack in a web application. import~requests def exploit_sql_injection(url, payload): payload = f"’ OR {payload} -- " response = requests.get(url + "?username=" + payload) if "Welcome back" in response.text: return True else: return False
4.2. Fault Injection
4.2.1. Types of Fault Injection
- 1.
- Hardware Fault Injection [149]: This technique involves introducing faults directly into the hardware components of the system, such as microcontrollers, sensors, or communication interfaces. For example, injecting voltage spikes or electromagnetic interference can simulate faulty hardware conditions and assess the system’s resilience.
- 2.
- Software Fault Injection [150]: By injecting faults into the software components of the system, such as the operating system, middleware, or application software, the impact of software errors on system behavior can be evaluated. Examples include injecting random errors in data processing or triggering specific software vulnerabilities to test the system’s response.
- 3.
- Network Fault Injection [151,151]: This technique focuses on injecting faults at the network level to evaluate the system’s behavior under various network conditions. For instance, introducing packet loss, latency, or network congestion can assess the system’s ability to handle communication failures or adverse network conditions.
- 4.
- Timing Fault Injection [152,153]: Timing faults involve injecting errors related to timing and synchronization within the system. This technique aims to evaluate the system’s behavior when faced with timing violations or synchronization failures. For example, injecting delays or altering the timing of critical events can assess the system’s response and resilience to timing-related faults.
4.2.2. Example of Fault Injection Scenario
Listing 4. Example fault injection code for sensor fault. |
import~random |
def inject_sensor_fault(sensor_data): |
if random.random() < 0.1: # 10% chance of fault injection |
sensor_data *= random.uniform(0.5, 0.9) # Reduce sensor data by 50–90% |
return sensor_data |
4.3. Fuzz Testing
4.3.1. How Fuzz Testing Works
- 1.
- Input Generation: Fuzz testing involves generating a variety of input data that can potentially trigger unexpected behavior in the system. This can include malformed data, random inputs, or edge cases that are outside the normal range of valid inputs.
- 2.
- Input Mutation: The generated inputs are then mutated or modified to create additional variations. This helps explore different paths and uncover vulnerabilities that may be sensitive to specific input patterns.
- 3.
- Input Injection: The mutated inputs are injected into the system under test. This can be achieved by feeding the inputs directly to the system’s interfaces, such as APIs, command-line interfaces, or file parsers.
- 4.
- Monitoring and Analysis: During the execution of the system with the fuzzed inputs, monitoring and analysis tools are employed to detect any anomalies, crashes, or unexpected behavior. This information is then used to identify potential vulnerabilities or bugs.
- 5.
- Bug Reporting and Fixing: When a vulnerability or bug is discovered through fuzz testing, it is reported to the developers or security team responsible for the system. They can then investigate the issue, reproduce it, and apply appropriate fixes to enhance the system’s security and stability.
4.3.2. Example of Fuzz Testing Scenario
Listing 5. Example of fuzz testing code for file parser. |
import~random |
def fuzz_test_file_parser(file_parser, num_tests): |
for _ in range(num_tests): |
fuzzed_input = generate_fuzzed_input() |
try: |
file_parser.parse(fuzzed_input) |
except Exception as e: |
print("Crash detected:", e) |
4.4. Security Code Review
4.4.1. Benefits of Security Code Review
- Vulnerability Detection: By reviewing the source code, security experts can identify vulnerabilities and weaknesses that may not be easily detectable through other testing techniques. This allows for the early identification and mitigation of security risks before they can be exploited.
- Identification of Security Best Practices: Code reviews provide an opportunity to ensure that the codebase adheres to industry-standard security best practices. This includes verifying the proper use of cryptographic algorithms, secure input validation, and protection against common security vulnerabilities, such as injection attacks or XSS (cross-site scripting) vulnerabilities.
- Compliance and Regulatory Requirements: Automotive systems are often subject to regulatory requirements and industry standards related to security. Security code reviews help ensure compliance with these requirements, reducing the risk of penalties and legal consequences.
- Knowledge Sharing and Team Collaboration: Code reviews promote knowledge sharing and collaboration among development teams. They provide an opportunity for security experts and developers to exchange insights, address potential security concerns, and enhance their understanding of secure coding practices.
- Continuous Improvement: Conducting security code reviews as part of the development process facilitates a culture of continuous improvement. By actively seeking and addressing security weaknesses, the development team can enhance the security posture of the automotive system over time.
4.4.2. Approaches to Security Code Review
- Manual Code Review: In a manual code review, security experts carefully examine the source code, line by line, to identify security weaknesses. This approach requires expertise in secure coding practices and an understanding of potential vulnerabilities specific to automotive systems.
- Automated Code Analysis: Automated tools and scanners can be used to perform static code analysis and identify potential security flaws. These tools can quickly scan the codebase, check for common vulnerabilities, and provide a list of potential issues. However, they may also generate false positives or miss certain vulnerabilities that require human judgment.
- Combination of Manual and Automated Approaches: A combination of manual and automated code review approaches is often employed to maximize the effectiveness of the review process. Automated tools can quickly identify common vulnerabilities, while manual review allows for a deeper analysis and identification of complex security issues.
4.4.3. Best Practices for Security Code Review
- Establish Review Guidelines: Define clear guidelines and criteria for security code reviews to ensure consistency and focus. These guidelines can include secure coding practices, industry standards, and regulatory requirements.
- Involve Security Experts: Engage security experts with expertise in secure coding and automotive systems to perform or guide the code review process. Their knowledge and experience can greatly enhance the effectiveness of the review.
- Encourage Collaboration: Foster collaboration between security experts and developers during the code review process. This promotes knowledge sharing, enables discussions on potential vulnerabilities, and ensures that security concerns are understood and addressed by the development team.
- Prioritize High-Risk Areas: Focus on high-risk areas of the codebase, such as input validation, authentication mechanisms, and cryptographic implementations. These areas are more likely to contain vulnerabilities that can have severe consequences if exploited.
- Document and Track Findings: Document the findings of the code review process, including identified vulnerabilities, recommended fixes, and any discussions or decisions made. This documentation serves as a reference for future development and maintenance activities.
- Follow Up on Findings: Ensure that identified security weaknesses are appropriately addressed and fixed. Regularly follow up on the progress of remediation efforts to mitigate the identified vulnerabilities effectively.
4.5. Security Architecture Review
4.5.1. Importance of Security Architecture Review
- Identifying Design Flaws: By examining the system’s architecture, security experts can identify design flaws or weaknesses that could be exploited by attackers. Detecting and addressing these flaws early in the development process helps prevent potential security breaches and reduces the cost of remediation in later stages.
- Ensuring Proper Integration of Security Controls: A security architecture review ensures that security controls and measures are properly integrated into the system’s design. This includes access controls, authentication mechanisms, encryption protocols, and secure communication channels. Verifying the correct implementation of these controls helps protect sensitive data and mitigate security risks.
- Assessing Compliance with Standards and Regulations: Automotive systems are often subject to industry-specific security standards and regulatory requirements. Security architecture reviews help assess the system’s compliance with these standards, reducing the risk of non-compliance penalties and ensuring a higher level of security.
- Evaluating Resilience and Threat Mitigation: A comprehensive security architecture review evaluates the system’s resilience against various threats and potential attack vectors. It helps identify potential weaknesses in the architecture that could allow unauthorized access, data breaches, or service disruptions. By proactively addressing these vulnerabilities, the system’s overall security and availability can be improved.
- Aligning Security with Business Goals: Security architecture reviews ensure that security measures align with the business goals and objectives of the automotive system. By considering the specific requirements and risk appetite of the organization, the review helps strike a balance between security and usability, enabling secure and efficient operations.
4.5.2. Elements of a Security Architecture Review
- System Components and Interactions: Analyze the different components of the system and the interactions between them. This includes examining the data flow, communication channels, and interfaces exposed by the system.
- Access Control Mechanisms: Evaluate the design and implementation of access control mechanisms, including authentication, authorization, and user management processes. Verify that appropriate access controls are in place to protect sensitive resources and functionalities.
- Secure Communication Protocols: Review the communication protocols used within the system, including network protocols, API communication, and data exchange mechanisms. Verify that secure protocols and encryption are employed to protect data during transit.
- Threat Modeling and Risk Assessment: Conduct a threat modeling exercise to identify potential threats and attack vectors specific to the automotive system. Perform a risk assessment to prioritize the identified risks and allocate appropriate security measures.
- Resilience and Disaster Recovery: Assess the resilience of the architecture against potential disruptions, including natural disasters, system failures, or cyber attacks. Verify the presence of backup mechanisms, disaster recovery plans, and incident response procedures.
4.6. Threat Modeling
- 1.
- Identifying Assets: Begin by identifying the valuable assets within the automotive system. This includes not only the vehicle itself, but also the data it generates and processes, such as personal information, navigation data, and vehicle telemetry.
- 2.
- Creating a System Overview: Develop a comprehensive understanding of the system’s architecture, including hardware, software, and network components. This step involves mapping out the system’s various elements, their relationships, and the flow of information between them.
- 3.
- Identifying Threats: Once the system’s architecture is understood, systematically identify potential threats and vulnerabilities. This can be achieved by brainstorming potential attack scenarios, analyzing historical attack patterns, and leveraging industry best practices and security guidelines.
- 4.
- Assessing Impact: Evaluate the potential impact of each identified threat on the system and its assets. Consider factors such as the likelihood of the threat being exploited; the potential consequences of a successful attack; and the associated risks to safety, privacy, and financial aspects.
- 5.
- Prioritizing Countermeasures: Prioritize the identified threats based on their potential impact and likelihood of occurrence. This step helps allocate resources effectively, ensuring that the most critical vulnerabilities are addressed first. It is important to involve relevant stakeholders, including developers, engineers, and security professionals, in this process to gain diverse perspectives and expertise.
- 6.
- Developing Countermeasures: Once threats are prioritized, devise appropriate countermeasures to mitigate the identified risks. This may include implementing security controls, applying secure coding practices, conducting penetration testing, and establishing incident response plans. It is crucial to consider both technical and procedural countermeasures to ensure a holistic approach to security.
- 7.
- Continuous Monitoring and Improvement: Threat modeling is not a one-time process but rather an iterative and continuous effort. As new threats emerge and the system evolves, it is important to regularly reassess and update the threat model. This ensures that the system remains resilient against evolving security threats throughout its lifecycle.
4.7. Security Testing Frameworks
4.7.1. Importance of Security Testing Frameworks
- Comprehensive Testing: Security testing frameworks provide a comprehensive set of tools and techniques to assess the security of automotive systems. These frameworks cover a wide range of security aspects, including vulnerability scanning, penetration testing, code analysis, and security assessment. By utilizing these frameworks, organizations can conduct thorough security tests and identify potential vulnerabilities and weaknesses in the system.
- Automation and Efficiency: Security testing frameworks automate various security testing processes, enabling organizations to conduct tests more efficiently and effectively. These frameworks provide automated tools for vulnerability scanning, code analysis, and other security testing activities. Automation helps reduce manual effort, speeds up the testing process, and improves the accuracy of security assessments.
- Standard Compliance: Security testing frameworks often incorporate established security standards and best practices. They provide guidelines and checks to ensure adherence to these standards, such as the ISO 27001, NIST Cybersecurity Framework, or industry-specific security requirements. By using these frameworks, organizations can evaluate their compliance with relevant security standards and demonstrate their commitment to security.
- Risk Mitigation: Security testing frameworks help identify vulnerabilities and weaknesses in automotive systems, allowing organizations to proactively address them. By conducting regular security tests using these frameworks, organizations can identify and mitigate potential risks before they are exploited by attackers. This helps reduce the likelihood and impact of security breaches, protecting sensitive data and maintaining the overall integrity of the system.
- Continuous Improvement: Security testing frameworks facilitate a continuous improvement approach to security. They provide organizations with a structured and systematic way to evaluate the security posture of their automotive systems on an ongoing basis. By regularly utilizing these frameworks, organizations can identify emerging threats, address evolving vulnerabilities, and enhance the overall security of their systems over time.
4.7.2. Common Security Testing Frameworks
- NIST SP 800-115 [208]: The National Institute of Standards and Technology (NIST) Special Publication 800-115 provides guidance on information security testing and assessment. It covers topics such as penetration testing, vulnerability scanning, and security assessment methodologies.
- OSSTMM [209]: The Open Source Security Testing Methodology Manual (OSSTMM) is a framework that provides guidelines and methodologies for security testing. It covers areas such as network security, physical security, and operational security.
- PTES [210]: The Penetration Testing Execution Standard (PTES) is a framework that provides a standardized approach to conducting penetration testing. It includes a methodology and guidelines for performing thorough penetration tests on various systems and applications.
- ISSAF [211]: The Information Systems Security Assessment Framework (ISSAF) is a framework that provides guidance on security assessment and testing. It covers areas such as risk assessment, vulnerability assessment, and security auditing.
4.7.3. Integration with Development Lifecycle
4.8. Blockchain Techniques
4.8.1. Integrity and Traceability of Software Updates
4.8.2. Secure Agreements with Smart Contracts
4.8.3. Secure and Privacy-Preserving Data Sharing
4.9. Machine Learning Techniques
5. Integration of Formal Methods and Validation Techniques
5.1. Requirements Engineering Phase
5.2. Design Phase
5.3. Implementation Phase
5.4. Testing Phase
5.5. Distinctive Aspects of Formal Methods and Validation Techniques in Enhancing Automotive System Security
- 1.
- Complex and Safety-Critical Nature of Automotive Systems: Automotive systems are characterized by their complexity and safety-critical nature. They involve intricate interactions between various components, including sensors, actuators, control units, and communication networks. Formal methods and validation techniques need to address the unique challenges posed by the complexity of automotive systems, such as modeling the behavior of interconnected components, verifying safety properties, and ensuring the reliability and robustness of the system under different operating conditions.
- 2.
- Real-Time Constraints and Performance Requirements: Automotive systems operate in real-time environments, where timely and accurate responses are essential for ensuring safety and security. Formal methods and validation techniques for automotive systems must consider real-time constraints, including response times, latency, and timing requirements. Analyzing and verifying the timing behavior of automotive systems is crucial to prevent potential security vulnerabilities and ensure the system’s reliable operation.
- 3.
- Integration of Safety and Security Considerations: Unlike other systems, automotive systems require the integration of both safety and security considerations. While safety focuses on preventing accidents and minimizing harm to occupants and pedestrians, security addresses the protection of the system against malicious attacks and unauthorized access. Formal methods and validation techniques in the automotive domain need to encompass both safety and security aspects, ensuring that the system is resilient to both accidental failures and intentional attacks.
- 4.
- Automotive-Specific Threat Landscape: The automotive domain presents a unique threat landscape compared with other systems. Automotive systems are susceptible to a wide range of security threats, including remote exploits, unauthorized access to the vehicle’s network, tampering with electronic control units (ECUs), and compromising the integrity of sensor data. Formal methods and validation techniques for automotive system security must address these specific threats and vulnerabilities, considering the potential impact on safety, privacy, and the overall functionality of the vehicle.
- 5.
- Compliance with Industry Standards and Regulations: The automotive industry is subject to stringent safety and security standards and regulations. Formal methods and validation techniques must align with these industry-specific standards, such as ISO 26262 for functional safety and ISO/SAE 21434 for automotive cybersecurity. Adhering to these standards ensures that the application of formal methods and validation techniques in automotive systems meets the necessary requirements and guidelines for safety and security.
6. Benefits and Limitations of the Approaches
6.1. Scalability Considerations
6.2. Efficiency Considerations
6.3. Applicability to Real-World Automotive Systems
7. Current Research Trends and Open Research Questions
7.1. Literature Review
7.2. Emerging Trends
7.3. Open Research Questions
8. Conclusions
Funding
Data Availability Statement
Conflicts of Interest
References
- Rahim, M.A.; Rahman, M.A.; Rahman, M.M.; Asyhari, A.T.; Bhuiyan, M.Z.A.; Ramasamy, D. Evolution of IoT-enabled connectivity and applications in automotive industry: A review. Veh. Commun. 2021, 27, 100285. [Google Scholar] [CrossRef]
- Sadaf, M.; Iqbal, Z.; Javed, A.R.; Saba, I.; Krichen, M.; Majeed, S.; Raza, A. Connected and Automated Vehicles: Infrastructure, Applications, Security, Critical Challenges, and Future Aspects. Technologies 2023, 11, 117. [Google Scholar] [CrossRef]
- Gohoungodji, P.; N’Dri, A.B.; Latulippe, J.M.; Matos, A.L.B. What is stopping the automotive industry from going green? A systematic review of barriers to green innovation in the automotive industry. J. Clean. Prod. 2020, 277, 123524. [Google Scholar] [CrossRef]
- Sarfraz, M.S.; Hong, H.; Kim, S.S. Recent developments in the manufacturing technologies of composite components and their cost-effectiveness in the automotive industry: A review study. Compos. Struct. 2021, 266, 113864. [Google Scholar] [CrossRef]
- Almeaibed, S.; Al-Rubaye, S.; Tsourdos, A.; Avdelidis, N.P. Digital twin analysis to promote safety and security in autonomous vehicles. IEEE Commun. Stand. Mag. 2021, 5, 40–46. [Google Scholar] [CrossRef]
- Schmittner, C.; Macher, G. Automotive cybersecurity standards-relation and overview. In Proceedings of the Computer Safety, Reliability, and Security: SAFECOMP 2019 Workshops, ASSURE, DECSoS, SASSUR, STRIVE, and WAISE, Turku, Finland, 10 September 2019; Proceedings 38. pp. 153–165. [Google Scholar]
- Sommer, F.; Dürrwang, J.; Kriesten, R. Survey and classification of automotive security attacks. Information 2019, 10, 148. [Google Scholar] [CrossRef]
- Breuing, H.; Heil, L.; Vierling, B. It security for the entire automotive ecosystem. ATZelectronics Worldw. 2019, 14, 60–63. [Google Scholar] [CrossRef]
- Young, C.; Zambreno, J.; Olufowobi, H.; Bloom, G. Survey of automotive controller area network intrusion detection systems. IEEE Des. Test 2019, 36, 48–55. [Google Scholar] [CrossRef]
- Dobaj, J.; Macher, G.; Ekert, D.; Riel, A.; Messnarz, R. Towards a security-driven automotive development lifecycle. J. Softw. Evol. Process 2023, 35, e2407. [Google Scholar] [CrossRef]
- Huang, J.; Zhao, M.; Zhou, Y.; Xing, C.C. In-vehicle networking: Protocols, challenges, and solutions. IEEE Netw. 2018, 33, 92–98. [Google Scholar] [CrossRef]
- Yu, Z.; Khan, S.A.R.; Umar, M. Circular economy practices and industry 4.0 technologies: A strategic move of automobile industry. Bus. Strategy Environ. 2022, 31, 796–809. [Google Scholar] [CrossRef]
- Krichen, M. A Survey on Formal Verification and Validation Techniques for Internet of Things. Appl. Sci. 2023, 13, 8122. [Google Scholar] [CrossRef]
- Moghadasi, N.; Kulkarni, A.; Crayton, D.; Grissom, R.; Lambert, J.H.; Feng, L. Formal Methods in Unmanned Aerial Vehicle Swarm Control for Wildfire Detection and Monitoring. In Proceedings of the 2023 IEEE International Systems Conference (SysCon), Vancouver, BC, Canada, 17–20 April 2023; pp. 1–8. [Google Scholar]
- Krichen, M. Contributions to Model-Based Testing of Dynamic and Distributed Real-Time Systems. Ph.D. Thesis, École Nationale d’Ingénieurs de Sfax (Tunisie), Sfax, Tunisia, 2018. [Google Scholar]
- Zita, A.; Mohajerani, S.; Fabian, M. Application of formal verification to the lane change module of an autonomous vehicle. In Proceedings of the 2017 13th IEEE Conference on Automation Science and Engineering (CASE), Xi’an, China, 20–23 August 2017; pp. 932–937. [Google Scholar]
- Krichen, M.; Alroobaea, R. A New Model-based Framework for Testing Security of IoT Systems in Smart Cities using Attack Trees and Price Timed Automata. In Proceedings of the 14th International Conference on Evaluation of Novel Approaches to Software Engineering—ENASE 2019, Setubal, Portugal, 4–5 May 2019. [Google Scholar]
- Krichen, M.; Mechti, S.; Alroobaea, R.; Said, E.; Singh, P.; Khalaf, O.I.; Masud, M. A formal testing model for operating room control system using internet of things. Comput. Mater. Contin. 2021, 66, 2997–3011. [Google Scholar] [CrossRef]
- Maâlej, A.J.; Krichen, M. A Model Based Approach to Combine Load and Functional Tests for Service Oriented Architectures. In Proceedings of the VECoS, Tunis, Tunisia, 6–7 October 2016; pp. 123–140. [Google Scholar]
- Krichen, M. A formal framework for black-box conformance testing of distributed real-time systems. Int. J. Crit. Comput.-Based Syst. 2012, 3, 26–43. [Google Scholar] [CrossRef]
- Lamssaggad, A.; Benamar, N.; Hafid, A.S.; Msahli, M. A survey on the current security landscape of intelligent transportation systems. IEEE Access 2021, 9, 9180–9208. [Google Scholar] [CrossRef]
- Rumez, M.; Grimm, D.; Kriesten, R.; Sax, E. An overview of automotive service-oriented architectures and implications for security countermeasures. IEEE Access 2020, 8, 221852–221870. [Google Scholar] [CrossRef]
- Luo, F.; Jiang, Y.; Zhang, Z.; Ren, Y.; Hou, S. Threat analysis and risk assessment for connected vehicles: A survey. Secur. Commun. Netw. 2021, 2021, 1263820. [Google Scholar] [CrossRef]
- Halder, S.; Ghosal, A.; Conti, M. Secure over-the-air software updates in connected vehicles: A survey. Comput. Netw. 2020, 178, 107343. [Google Scholar] [CrossRef]
- Sun, X.; Yu, F.R.; Zhang, P. A survey on cyber-security of connected and autonomous vehicles (CAVs). IEEE Trans. Intell. Transp. Syst. 2021, 23, 6240–6259. [Google Scholar] [CrossRef]
- Pekaric, I.; Sauerwein, C.; Haselwanter, S.; Felderer, M. A taxonomy of attack mechanisms in the automotive domain. Comput. Stand. Interfaces 2021, 78, 103539. [Google Scholar] [CrossRef]
- Hbaieb, A.; Ayed, S.; Chaari, L. A survey of trust management in the Internet of Vehicles. Comput. Netw. 2022, 203, 108558. [Google Scholar] [CrossRef]
- Kim, K.; Kim, J.S.; Jeong, S.; Park, J.H.; Kim, H.K. Cybersecurity for autonomous vehicles: Review of attacks and defense. Comput. Secur. 2021, 103, 102150. [Google Scholar] [CrossRef]
- Pham, M.; Xiong, K. A survey on security attacks and defense techniques for connected and autonomous vehicles. Comput. Secur. 2021, 109, 102269. [Google Scholar] [CrossRef]
- Masood, A.; Lakew, D.S.; Cho, S. Security and privacy challenges in connected vehicular cloud computing. IEEE Commun. Surv. Tutor. 2020, 22, 2725–2764. [Google Scholar] [CrossRef]
- Bera, S.; Misra, S.; Vasilakos, A.V. Software-defined networking for internet of things: A survey. IEEE Internet Things J. 2017, 4, 1994–2008. [Google Scholar] [CrossRef]
- Said, S.B.H.; Cousin, B.; Lahoud, S. Software Defined Networking (SDN) for reliable user connectivity in 5G Networks. In Proceedings of the 2017 IEEE Conference on Network Softwarization (NetSoft), Bologna, Italy, 3–7 July 2017; pp. 1–5. [Google Scholar]
- Studnia, I.; Nicomette, V.; Alata, E.; Deswarte, Y.; Kaâniche, M.; Laarouchi, Y. Survey on security threats and protection mechanisms in embedded automotive networks. In Proceedings of the 2013 43rd Annual IEEE/IFIP Conference on Dependable Systems and Networks Workshop (DSN-W), Budapest, Hungary, 24–27 June 2013; pp. 1–12. [Google Scholar]
- Miller, C.; Valasek, C. A survey of remote automotive attack surfaces. Black Hat USA 2014, 2014, 94. [Google Scholar]
- Khuwaja, A.A.; Chen, Y.; Zhao, N.; Alouini, M.S.; Dobbins, P. A survey of channel modeling for UAV communications. IEEE Commun. Surv. Tutor. 2018, 20, 2804–2821. [Google Scholar] [CrossRef]
- Zeng, Y.; Zhang, R.; Lim, T.J. Wireless communications with unmanned aerial vehicles: Opportunities and challenges. IEEE Commun. Mag. 2016, 54, 36–42. [Google Scholar] [CrossRef]
- Khan, A.; Ahmad, A.; Ahmed, M.; Sessa, J.; Anisetti, M. Authorization schemes for internet of things: Requirements, weaknesses, future challenges and trends. Complex Intell. Syst. 2022, 8, 3919–3941. [Google Scholar] [CrossRef]
- Trnka, M.; Cerny, T.; Stickney, N. Survey of Authentication and Authorization for the Internet of Things. Secur. Commun. Netw. 2018, 2018, 4351603. [Google Scholar] [CrossRef]
- Hanif, H.; Nasir, M.H.N.M.; Ab Razak, M.F.; Firdaus, A.; Anuar, N.B. The rise of software vulnerability: Taxonomy of software vulnerabilities detection and machine learning approaches. J. Netw. Comput. Appl. 2021, 179, 103009. [Google Scholar] [CrossRef]
- Moiz, A.; Alalfi, M.H. A survey of security vulnerabilities in android automotive apps. In Proceedings of the 3rd International Workshop on Engineering and Cybersecurity of Critical Systems, Pittsburgh, PA, USA, 16 May 2022; pp. 17–24. [Google Scholar]
- Lopez, T.; Sharp, H.; Tun, T.; Bandara, A.; Levine, M.; Nuseibeh, B. “Hopefully We Are Mostly Secure”: Views on Secure Code in Professional Practice. In Proceedings of the 2019 IEEE/ACM 12th International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE), Montreal, QC, Canada, 27 May 2019; pp. 61–68. [Google Scholar]
- Gasiba, T.E.; Lechner, U.; Pinto-Albuquerque, M.; Fernandez, D.M. Awareness of Secure Coding Guidelines in the Industry-A first data analysis. In Proceedings of the 2020 IEEE 19th International Conference on Trust, Security and Privacy in Computing and Communications (TrustCom), Guangzhou, China, 29 December–1 January 2020; pp. 345–352. [Google Scholar]
- Meng, N.; Nagy, S.; Yao, D.; Zhuang, W.; Argoty, G.A. Secure coding practices in java: Challenges and vulnerabilities. In Proceedings of the 40th International Conference on Software Engineering, Gothenburg, Sweden, 27 May–3 June 2018; pp. 372–383. [Google Scholar]
- Barrère, M.; Hankin, C.; Nicolaou, N.; Eliades, D.G.; Parisini, T. Measuring cyber-physical security in industrial control systems via minimum-effort attack strategies. J. Inf. Secur. Appl. 2020, 52, 102471. [Google Scholar] [CrossRef]
- Dorbala, S.Y.; Bhadoria, R.S. Analysis for security attacks in cyber-physical systems. In Cyber-Physical Systems: A Computational Perspective; Chapman and Hall/CRC: Boca Raton, FL, USA, 2015; pp. 395–414. [Google Scholar]
- Subke, P.; Moshref, M.; Vach, A.; Steffelbauer, M. Measures to prevent unauthorized access to the in-vehicle e/e system, due to the security vulnerability of a remote diagnostic tester. SAE Int. J. Passeng. Cars-Electron. Electr. Syst. 2017, 10, 422–429. [Google Scholar] [CrossRef]
- Guerar, M.; Verderame, L.; Merlo, A.; Palmieri, F.; Migliardi, M.; Vallerini, L. CirclePIN: A novel authentication mechanism for smartwatches to prevent unauthorized access to IoT devices. ACM Trans. Cyber-Phys. Syst. 2020, 4, 1–19. [Google Scholar] [CrossRef]
- Onik, M.M.H.; Chul-Soo, K.; Jinhong, Y. Personal data privacy challenges of the fourth industrial revolution. In Proceedings of the 2019 21st International Conference on Advanced Communication Technology (ICACT), PyeongChang, Republic of Korea, 17–20 February 2019; pp. 635–638. [Google Scholar]
- Rustad, M.L.; Koenig, T.H. Towards a global data privacy standard. Fla. L. Rev. 2019, 71, 365. [Google Scholar]
- Sun, Y.; Jee, K.; Sivakorn, S.; Li, Z.; Lumezanu, C.; Korts-Parn, L.; Wu, Z.; Rhee, J.; Kim, C.H.; Chiang, M.; et al. Detecting malware injection with program-dns behavior. In Proceedings of the 2020 IEEE European Symposium on Security and Privacy (EuroS&P), Genoa, Italy, 7–11 September 2020; pp. 552–568. [Google Scholar]
- Ranjan, I.; Agnihotri, R.B. Ambiguity in cloud security with malware-injection attack. In Proceedings of the 2019 3rd International conference on Electronics, Communication and Aerospace Technology (ICECA), Coimbatore, India, 12–14 June 2019; pp. 306–310. [Google Scholar]
- Carreras Guzman, N.H.; Wied, M.; Kozine, I.; Lundteigen, M.A. Conceptualizing the key features of cyber-physical systems in a multi-layered representation for safety and security analysis. Syst. Eng. 2020, 23, 189–210. [Google Scholar] [CrossRef]
- Zhou, C.; Luo, H.; Fang, W.; Wei, R.; Ding, L. Cyber-physical-system-based safety monitoring for blind hoisting with the internet of things: A case study. Autom. Constr. 2019, 97, 138–150. [Google Scholar] [CrossRef]
- Ganesh, V.; Sharma, M. Intrusion Detection and Prevention Systems: A Review. In Inventive Communication and Computational Technologies: Proceedings of ICICCT 2020; Springer: Berlin/Heidelberg, Germany, 2021; pp. 835–844. [Google Scholar]
- Lenard, T.; Bolboaca, R. A statefull firewall and intrusion detection system enforced with secure logging for controller area network. In Proceedings of the European Interdisciplinary Cybersecurity Conference, Targu Mures, Romania, 10 November 2021; pp. 39–45. [Google Scholar]
- Sayeed, M.A.; Sayeed, M.A.; Saxena, S. Intrusion detection system based on Software Defined Network firewall. In Proceedings of the 2015 1st International Conference on Next Generation Computing Technologies (NGCT), Dehradun, India, 4–5 September 2015; pp. 379–382. [Google Scholar]
- Potluri, S.; Diedrich, C. High performance intrusion detection and prevention systems: A survey. In Proceedings of the ECCWS2016—The 15th European Conference on Cyber Warfare and Security, Munich, Germany, 7–8 July 2016; p. 260. [Google Scholar]
- Ferretti, L.; Marchetti, M.; Colajanni, M. Fog-based secure communications for low-power IoT devices. ACM Trans. Internet Technol. (TOIT) 2019, 19, 1–21. [Google Scholar] [CrossRef]
- Khan, N.A.; Jhanjhi, N.Z.; Brohi, S.N.; Nayyar, A. Emerging use of UAV’s: Secure communication protocol issues and challenges. In Drones in Smart-Cities; Elsevier: Amsterdam, The Netherlands, 2020; pp. 37–55. [Google Scholar]
- Nguyen, K.T.; Laurent, M.; Oualha, N. Survey on secure communication protocols for the Internet of Things. Ad Hoc Netw. 2015, 32, 17–31. [Google Scholar] [CrossRef]
- Dragomir, D.; Gheorghe, L.; Costea, S.; Radovici, A. A survey on secure communication protocols for IoT systems. In Proceedings of the 2016 international workshop on Secure Internet of Things (SIoT), Heraklion, Greece, 26–30 September 2016; pp. 47–62. [Google Scholar]
- Krichen, M.; Adoni, W.Y.H.; Mihoub, A.; Alzahrani, M.Y.; Nahhal, T. Security challenges for drone communications: Possible threats, attacks and countermeasures. In Proceedings of the 2022 2nd International Conference of Smart Systems and Emerging Technologies (SMARTTECH), Riyadh, Saudi Arabia, 9–11 May 2022; pp. 184–189. [Google Scholar]
- Alshahrani, M.; Traore, I. Secure mutual authentication and automated access control for IoT smart home using cumulative keyed-hash chain. J. Inf. Secur. Appl. 2019, 45, 156–175. [Google Scholar] [CrossRef]
- Nandy, T.; Idris, M.Y.I.B.; Noor, R.M.; Kiah, L.M.; Lun, L.S.; Juma’at, N.B.A.; Ahmedy, I.; Ghani, N.A.; Bhattacharyya, S. Review on security of internet of things authentication mechanism. IEEE Access 2019, 7, 151054–151089. [Google Scholar] [CrossRef]
- El Sibai, R.; Gemayel, N.; Bou Abdo, J.; Demerjian, J. A survey on access control mechanisms for cloud computing. Trans. Emerg. Telecommun. Technol. 2020, 31, e3720. [Google Scholar] [CrossRef]
- Behrad, S.; Bertin, E.; Tuffin, S.; Crespi, N. A new scalable authentication and access control mechanism for 5G-based IoT. Future Gener. Comput. Syst. 2020, 108, 46–61. [Google Scholar] [CrossRef]
- Moyón, F.; Almeida, P.; Riofrío, D.; Mendez, D.; Kalinowski, M. Security compliance in agile software development: A systematic mapping study. In Proceedings of the 2020 46th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), Portoroz, Slovenia, 26– 28 August 2020; pp. 413–420. [Google Scholar]
- Tahaei, M.; Vaniea, K. A survey on developer-centred security. In Proceedings of the 2019 IEEE European Symposium on Security and Privacy Workshops (EuroS&PW), Stockholm, Sweden, 17–19 June 2019; pp. 129–138. [Google Scholar]
- Ansari, M.T.J.; Pandey, D.; Alenezi, M. STORE: Security threat oriented requirements engineering methodology. J. King Saud Univ.-Comput. Inf. Sci. 2022, 34, 191–203. [Google Scholar] [CrossRef]
- Singleton, L.; Zhao, R.; Song, M.; Siy, H. Cryptotutor: Teaching secure coding practices through misuse pattern detection. In Proceedings of the 21st Annual Conference on Information Technology Education, Omaha, NE, USA, 7–9 October 2020; pp. 403–408. [Google Scholar]
- Shrivastava, R.K.; Singh, S.P.; Hasan, M.K.; Islam, S.; Abdullah, S.; Aman, A.H.M. Securing Internet of Things devices against code tampering attacks using Return Oriented Programming. Comput. Commun. 2022, 193, 38–46. [Google Scholar] [CrossRef]
- Shrivastava, R.; Singh, S.P.; Hasan, M.K. Code Tamper-Proofing Using Return Oriented Programming in IoT Devices. In Rising Threats in Expert Applications and Solutions: Proceedings of FICR-TEAS 2022; Springer: Berlin/Heidelberg, Germany, 2022; pp. 167–174. [Google Scholar]
- Sey, C.; Lei, H.; Qian, W.; Li, X.; Fiasam, L.D.; Kodjiku, S.L.; Adjei-Mensah, I.; Agyemang, I.O. VBlock: A Blockchain-Based Tamper-Proofing Data Protection Model for Internet of Vehicle Networks. Sensors 2022, 22, 8083. [Google Scholar] [CrossRef] [PubMed]
- Xu, Y.; Li, X.; Jin, M.; Lu, Y. A Trusted Distribution Mechanism of Tasks for the Internet of Vehicles Based on Blockchain. In Proceedings of the 2021 13th International Conference on Wireless Communications and Signal Processing (WCSP), Changsha, China, 20–22 October 2021; pp. 1–5. [Google Scholar]
- Rajabli, N.; Flammini, F.; Nardone, R.; Vittorini, V. Software verification and validation of safe autonomous cars: A systematic literature review. IEEE Access 2020, 9, 4797–4819. [Google Scholar] [CrossRef]
- Fremont, D.J.; Kim, E.; Pant, Y.V.; Seshia, S.A.; Acharya, A.; Bruso, X.; Wells, P.; Lemke, S.; Lu, Q.; Mehta, S. Formal scenario-based testing of autonomous vehicles: From simulation to the real world. In Proceedings of the 2020 IEEE 23rd International Conference on Intelligent Transportation Systems (ITSC), Rhodes, Greece, 20–23 September 2020; pp. 1–8. [Google Scholar]
- Domenici, A.; Fagiolini, A.; Palmieri, M. Integrated simulation and formal verification of a simple autonomous vehicle. In Proceedings of the Software Engineering and Formal Methods: SEFM 2017 Collocated Workshops: DataMod, FAACS, MSE, CoSim-CPS, and FOCLASA, Trento, Italy, 4–5 September 2017; Revised Selected Papers 15. pp. 300–314. [Google Scholar]
- Bérard, B.; Bidoit, M.; Finkel, A.; Laroussinie, F.; Petit, A.; Petrucci, L.; Schnoebelen, P. Systems and Software Verification: Model-Checking Techniques and Tools; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2013. [Google Scholar]
- Legay, A.; Delahaye, B.; Bensalem, S. Statistical model checking: An overview. In Proceedings of the International Conference on Runtime Verification, St. Julians, Malta, 1–4 November 2010; pp. 122–135. [Google Scholar]
- Clarke, E.M.; Henzinger, T.A.; Veith, H.; Bloem, R. Handbook of Model Checking; Springer: Berlin/Heidelberg, Germany, 2018; Volume 10. [Google Scholar]
- Choi, Y. Model checking trampoline OS: A case study on safety analysis for automotive software. Softw. Test. Verif. Reliab. 2014, 24, 38–60. [Google Scholar] [CrossRef]
- Yamaguchi, T.; Kaga, T.; Donzé, A.; Seshia, S.A. Combining requirement mining, software model checking and simulation-based verification for industrial automotive systems. In Proceedings of the 2016 Formal Methods in Computer-Aided Design (FMCAD), Mountain View, CA, USA, 3–6 October 2016; pp. 201–204. [Google Scholar]
- Marinescu, R. Model-Checking and Model-Based Testing of Automotive Embedded Systems: Starting from the System Architecture. Ph.D. Thesis, Mälardalen University, Västerås, Sweden, 2014. [Google Scholar]
- Baouya, A.; Mohamed, O.A.; Ouchani, S.; Bennouar, D. Reliability-driven automotive software deployment based on a parametrizable probabilistic model checking. Expert Syst. Appl. 2021, 174, 114572. [Google Scholar] [CrossRef]
- Mundhenk, P.; Steinhorst, S.; Lukasiewycz, M.; Fahmy, S.A.; Chakraborty, S. Security analysis of automotive architectures using probabilistic model checking. In Proceedings of the 52nd Annual Design Automation Conference, San Francisco, CA, USA, 7–11 June 2015; pp. 1–6. [Google Scholar]
- Kaliszyk, C.; Urban, J. Learning-assisted theorem proving with millions of lemmas. J. Symb. Comput. 2015, 69, 109–128. [Google Scholar] [CrossRef]
- Kovács, L.; Voronkov, A. First-order theorem proving and Vampire. In Proceedings of the International Conference on Computer Aided Verification, Saint Petersburg, Russia, 13–19 July 2013; pp. 1–35. [Google Scholar]
- Harrison, J. Theorem Proving with the Real Numbers; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2012. [Google Scholar]
- Loveland, D.W. Automated Theorem Proving: A Logical Basis; Elsevier: Amsterdam, The Netherlands, 2016. [Google Scholar]
- Harrison, J.; Urban, J.; Wiedijk, F. History of Interactive Theorem Proving. Comput. Log. 2014, 9, 135–214. [Google Scholar]
- Gogate, V.; Domingos, P. Probabilistic theorem proving. Commun. ACM 2016, 59, 107–115. [Google Scholar] [CrossRef]
- Bibel, W. Automated Theorem Proving; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2013. [Google Scholar]
- Cook, S.A. The complexity of theorem-proving procedures. In Logic, Automata, and Computational Complexity: The Works of Stephen A. Cook; ACM: New York, NY, USA, 2023; pp. 143–152. [Google Scholar]
- Abed, S.; Rashid, A.; Hasan, O. Formal analysis of unmanned aerial vehicles using higher-order-logic theorem proving. J. Aerosp. Inf. Syst. 2020, 17, 481–495. [Google Scholar] [CrossRef]
- Rashid, A.; Hasan, O. Formal analysis of linear control systems using theorem proving. In Proceedings of the Formal Methods and Software Engineering: 19th International Conference on Formal Engineering Methods, ICFEM 2017, Xi’an, China, 13–17 November 2017; pp. 345–361. [Google Scholar]
- Rashid, A.; Hasan, O.; Abed, S. Using an Interactive Theorem Prover for Formally Analyzing the Dynamics of the Unmanned Aerial Vehicles. In Mobile Robot: Motion Control and Path Planning; Springer: Berlin/Heidelberg, Germany, 2023; pp. 253–282. [Google Scholar]
- Lin, Q.; Mitsch, S.; Platzer, A.; Dolan, J.M. Safe and resilient practical waypoint-following for autonomous vehicles. IEEE Control Syst. Lett. 2021, 6, 1574–1579. [Google Scholar] [CrossRef]
- Sousa, M.; Rodríguez, C.; D’Silva, V.; Kroening, D. Abstract interpretation with unfoldings. In Proceedings of the Computer Aided Verification: 29th International Conference, CAV 2017, Heidelberg, Germany, 24–28 July 2017; Proceedings, Part II 30. pp. 197–216. [Google Scholar]
- Cousot, P.; Monerau, M. Probabilistic abstract interpretation. In Proceedings of the European Symposium on Programming, Tallinn, Estonia, 28–30 November 2012; pp. 169–193. [Google Scholar]
- Fähndrich, M.; Logozzo, F. Static contract checking with abstract interpretation. In Proceedings of the International Conference on Formal Verification of Object-Oriented Software, Paris, France, 28–30 June 2010; pp. 10–30. [Google Scholar]
- Cousot, P. Principles of Abstract Interpretation; MIT Press: Cambridge, MA, USA, 2021. [Google Scholar]
- Cousot, P.; Cousot, R. Abstract interpretation: Past, present and future. In Proceedings of the Joint Meeting of the Twenty-Third EACSL Annual Conference on Computer Science Logic (CSL) and the Twenty-Ninth Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), Vienna, Austria, 14–18 July 2014; pp. 1–10. [Google Scholar]
- Reps, T.; Thakur, A. Automating abstract interpretation. In Proceedings of the Verification, Model Checking, and Abstract Interpretation: 17th International Conference, VMCAI 2016, St. Petersburg, FL, USA, 17–19 January 2016; pp. 3–40. [Google Scholar]
- Brat, G.; Navas, J.A.; Shi, N.; Venet, A. IKOS: A framework for static analysis based on abstract interpretation. In Proceedings of the Software Engineering and Formal Methods: 12th International Conference, SEFM 2014, Grenoble, France, 1–5 September 2014; pp. 271–277. [Google Scholar]
- Beckett, R.; Gupta, A.; Mahajan, R.; Walker, D. Abstract interpretation of distributed network control planes. Proc. ACM Program. Lang. 2019, 4, 1–27. [Google Scholar] [CrossRef]
- Giacobazzi, R.; Ranzato, F. History of abstract interpretation. IEEE Ann. Hist. Comput. 2021, 44, 33–43. [Google Scholar] [CrossRef]
- Todorov, V.; Boulanger, F.; Taha, S. Formal verification of automotive embedded software. In Proceedings of the 6th Conference on Formal Methods in Software Engineering, Gothenburg, Sweden, 2 June 2018; pp. 84–87. [Google Scholar]
- Quante, J. Use Cases of a Generic Model Interpreter in an Automotive Software Setting. In Proceedings of the 2016 IEEE International Conference on Software Maintenance and Evolution (ICSME), Raleigh, NC, USA, 2–7 October 2016; pp. 539–542. [Google Scholar]
- Yamaguchi, T.; Brain, M.; Ryder, C.; Imai, Y.; Kawamura, Y. Application of abstract interpretation to the automotive electronic control system. In Proceedings of the Verification, Model Checking, and Abstract Interpretation: 20th International Conference, VMCAI 2019, Cascais, Portugal, 13–15 January 2019; pp. 425–445. [Google Scholar]
- Beller, M.; Bholanath, R.; McIntosh, S.; Zaidman, A. Analyzing the state of static analysis: A large-scale evaluation in open source software. In Proceedings of the 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER), Suita, Osaka, Japan, 14–18 March 2016; Volume 1, pp. 470–481. [Google Scholar]
- Midtgaard, J.; Møller, A. Quickchecking static analysis properties. Softw. Test. Verif. Reliab. 2017, 27, e1640. [Google Scholar] [CrossRef]
- Kaestner, D.; Schmidt, B.; Schlund, M.; Mauborgne, L.; Wilhelm, S.; Ferdinand, C. Analyze This! Sound Static Analysis for Integration Verification of Large-Scale Automotive Software. Technical Report, SAE Technical Paper. 2019. Available online: https://www.sae.org/publications/technical-papers/content/2019-01-1246/ (accessed on 11 August 2023).
- Kim, Y.; Lee, D.; Baek, J.; Kim, M. MAESTRO: Automated test generation framework for high test coverage and reduced human effort in automotive industry. Inf. Softw. Technol. 2020, 123, 106221. [Google Scholar] [CrossRef]
- Kurian, E.; Briola, D.; Braione, P.; Denaro, G. Automatically generating test cases for safety-critical software via symbolic execution. J. Syst. Softw. 2023, 199, 111629. [Google Scholar] [CrossRef]
- Ahmed, M.; Safar, M. Symbolic Execution based Verification of Compliance with the ISO 26262 Functional Safety Standard. In Proceedings of the 2019 14th International Conference on Design & Technology of Integrated Systems In Nanoscale Era (DTIS), Mykonos, Greece, 16–18 April 2019; pp. 1–6. [Google Scholar]
- Guo, S.; Wu, M.; Wang, C. Symbolic execution of programmable logic controller code. In Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering, Paderborn, Germany, 4–8 September 2017; pp. 326–336. [Google Scholar]
- Baldoni, R.; Coppa, E.; D’elia, D.C.; Demetrescu, C.; Finocchi, I. A survey of symbolic execution techniques. ACM Comput. Surv. (CSUR) 2018, 51, 1–39. [Google Scholar] [CrossRef]
- Siswantyo, S. Security Analysis and Improvement of Lighweight VANET Authentication Protocol (Case Study: Zhao et al. LVAP). J. Comput. Netw. Archit. High Perform. Comput. 2021, 3, 135–143. [Google Scholar] [CrossRef]
- Zelle, D.; Lauser, T.; Kern, D.; Krauß, C. Analyzing and securing SOME/IP automotive services with formal and practical methods. In Proceedings of the 16th International Conference on Availability, Reliability and Security, Vienna, Austria, 17–20 August 2021; pp. 1–20. [Google Scholar]
- Dong, W.; Wang, T.; Zhang, L.; Fan, H. Security protocol analysis based on run modes and Petri net. In Proceedings of the International Conference on Algorithms, Microchips and Network Applications, Zhuhai, China, 18–20 February 2022; Volume 12176, pp. 397–401. [Google Scholar]
- Lauser, T.; Zelle, D.; Krauß, C. Security analysis of automotive protocols. In Proceedings of the 4th ACM Computer Science in Cars Symposium, Feldkirchen Germany, 2 December 2020; pp. 1–12. [Google Scholar]
- Dhaya, R.; Kanthavel, R.; Venusamy, K. Cloud computing security protocol analysis with parity-based distributed file system. Ann. Oper. Res. 2021, 326, 1–20. [Google Scholar] [CrossRef]
- Cremers, C.; Jacomme, C.; Lukert, P. Subterm-based proof techniques for improving the automation and scope of security protocol analysis. In Proceedings of the 2023 IEEE 36th Computer Security Foundations Symposium (CSF), Dubrovnik, Croatia, 9–13 July 2023; pp. 200–213. [Google Scholar]
- Altulaihan, E.A.; Alismail, A.; Frikha, M. A Survey on Web Application Penetration Testing. Electronics 2023, 12, 1229. [Google Scholar] [CrossRef]
- Filiol, E.; Mercaldo, F.; Santone, A. A method for automatic penetration testing and mitigation: A red hat approach. Procedia Comput. Sci. 2021, 192, 2039–2046. [Google Scholar] [CrossRef]
- Johari, R.; Kaur, I.; Tripathi, R.; Gupta, K. Penetration testing in IoT network. In Proceedings of the 2020 5th International Conference on Computing, Communication and Security (ICCCS), Patna, India, 14–16 October 2020; pp. 1–7. [Google Scholar]
- Ebert, C.; Ray, R. Penetration Testing for Automotive Cybersecurity. ATZelectronics Worldw. 2021, 16, 16–22. [Google Scholar] [CrossRef]
- Schönhärl, S.; Fuxen, P.; Graf, J.; Schmidt, J.; Hackenberg, R.; Mottok, J. An Automotive Penetration Testing Framework for IT-Security Education. In Proceedings of the Cloud Computing 2022: The Thirteenth International Conference on Cloud Computing, GRIDs, and Virtualization, Special Track FAST-CSP, Barcelona, Spain, 24–28 April 2022; p. 10. [Google Scholar]
- Lahami, M.; Fakhfakh, F.; Krichen, M.; Jmaiel, M. Towards a TTCN-3 test system for runtime testing of adaptable and distributed systems. In Proceedings of the Testing Software and Systems: 24th IFIP WG 6.1 International Conference, ICTSS 2012, Aalborg, Denmark, 19–21 November 2012; pp. 71–86. [Google Scholar]
- Yurtseven, I.; Bagriyanik, S. A review of penetration testing and vulnerability assessment in cloud environment. In Proceedings of the 2020 Turkish National Software Engineering Symposium (UYMS), Istanbul, Turkey, 7–9 October 2020; pp. 1–6. [Google Scholar]
- Khera, Y.; Kumar, D.; Garg, N. Analysis and impact of vulnerability assessment and penetration testing. In Proceedings of the 2019 International Conference on Machine Learning, Big Data, Cloud and Parallel Computing (COMITCon), Faridabad, India, 14–16 February 2019; pp. 525–530. [Google Scholar]
- McKinnel, D.R.; Dargahi, T.; Dehghantanha, A.; Choo, K.K.R. A systematic literature review and meta-analysis on artificial intelligence in penetration testing and vulnerability assessment. Comput. Electr. Eng. 2019, 75, 175–188. [Google Scholar] [CrossRef]
- Maddala, S.; Patil, S. Agentless automation model for post exploitation penetration testing. In Proceedings of the Intelligent Computing, Information and Control Systems: ICICCS 2019, Madurai, India, 15–17 May 2020; pp. 529–539. [Google Scholar]
- Nhu, N.X.; Nghia, T.T.; Quyen, N.H.; Pham, V.H.; Duy, P.T. Leveraging Deep Reinforcement Learning for Automating Penetration Testing in Reconnaissance and Exploitation Phase. In Proceedings of the 2022 RIVF International Conference on Computing and Communication Technologies (RIVF), Ho Chi Minh City, Vietnam, 20–22 December 2022; pp. 41–46. [Google Scholar]
- Sweigert, D.; Chowdhury, M.M.; Rifat, N. Exploit Security Vulnerabilities by Penetration Testing. In Proceedings of the 2022 IEEE International Conference on Electro Information Technology (eIT), Mankato, MN, USA, 19–21 May 2022; pp. 527–532. [Google Scholar]
- Yi, J.; Liu, X. Deep Reinforcement Learning for Intelligent Penetration Testing Path Design. Appl. Sci. 2023, 13, 9467. [Google Scholar] [CrossRef]
- Zhang, Z.; Towey, D.; Ying, Z.; Zhang, Y.; Zhou, Z.Q. MT4NS: Metamorphic testing for network scanning. In Proceedings of the 2021 IEEE/ACM 6th International Workshop on Metamorphic Testing (MET), Madrid, Spain, 2 June 2021; pp. 17–23. [Google Scholar]
- Roy, I.; Sonthalia, S.; Mandal, T.; Kairi, A.; Chakraborty, M. Study on Network Scanning Using Machine Learning-Based Methods. In Proceedings of the International Ethical Hacking Conference 2019: EHaCON 2019, Kolkata, India, 17–25 August 2020; pp. 77–85. [Google Scholar]
- Kanta, A.; Coisel, I.; Scanlon, M. A survey exploring open source Intelligence for smarter password cracking. Forensic Sci. Int. Digit. Investig. 2020, 35, 301075. [Google Scholar] [CrossRef]
- Kanta, A.; Coisel, I.; Scanlon, M. PCWQ: A framework for evaluating password cracking wordlist quality. In Proceedings of the International Conference on Digital Forensics and Cyber Crime, Boston, MA, USA, 6–9 December 2021; pp. 159–175. [Google Scholar]
- Raman, R.H.A. Enhanced Automated-Scripting Method for Improved Management of SQL Injection Penetration Tests on a Large Scale. In Proceedings of the 2019 IEEE 9th Symposium on Computer Applications & Industrial Electronics (ISCAIE), Malaysia, 27–28 April 2019; pp. 259–266. [Google Scholar]
- Liu, M.; Li, K.; Chen, T. Security testing of web applications: A search-based approach for detecting SQL injection vulnerabilities. In Proceedings of the Genetic and Evolutionary Computation Conference Companion, Boston, MA, USA, 9–13 July 2019; pp. 417–418. [Google Scholar]
- Bandeira, V.; Rosa, F.; Reis, R.; Ost, L. Non-intrusive fault injection techniques for efficient soft error vulnerability analysis. In Proceedings of the 2019 IFIP/IEEE 27th International Conference on Very Large Scale Integration (VLSI-SoC), Cuzco, Peru, 6–9 October 2019; pp. 123–128. [Google Scholar]
- Eslami, M.; Ghavami, B.; Raji, M.; Mahani, A. A survey on fault injection methods of digital integrated circuits. Integration 2020, 71, 154–163. [Google Scholar] [CrossRef]
- Gangolli, A.; Mahmoud, Q.H.; Azim, A. A systematic review of fault injection attacks on iot systems. Electronics 2022, 11, 2023. [Google Scholar] [CrossRef]
- Su, P.; Chen, D. Using fault injection for the training of functions to detect soft errors of dnns in automotive vehicles. In Proceedings of the International Conference on Dependability and Complex Systems, Paris, France, 20–21 September 2022; pp. 308–318. [Google Scholar]
- Jha, S.; Banerjee, S.; Tsai, T.; Hari, S.K.; Sullivan, M.B.; Kalbarczyk, Z.T.; Keckler, S.W.; Iyer, R.K. Ml-based fault injection for autonomous vehicles: A case for bayesian fault injection. In Proceedings of the 2019 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), Portland, OR, USA, 24–27 June 2019; pp. 112–124. [Google Scholar]
- Oakes, B.J.; Moradi, M.; Van Mierlo, S.; Vangheluwe, H.; Denil, J. Machine Learning-Based Fault Injection for Hazard Analysis and Risk Assessment. In Proceedings of the International Conference on Computer Safety, Reliability, and Security, York, UK, 7–10 September 2021; pp. 178–192. [Google Scholar]
- Given-Wilson, T.; Jafri, N.; Legay, A. Combined software and hardware fault injection vulnerability detection. Innov. Syst. Softw. Eng. 2020, 16, 101–120. [Google Scholar] [CrossRef]
- Salih, N.K.; Satyanarayana, D.; Alkalbani, A.S.; Gopal, R. A survey on software/hardware fault injection tools and techniques. In Proceedings of the 2022 IEEE Symposium on Industrial Electronics & Applications (ISIEA), Langkawi Island, Malaysia, 16–17 July 2022; pp. 1–7. [Google Scholar]
- Cotroneo, D.; De Simone, L.; Natella, R. Thorfi: A novel approach for network fault injection as a service. J. Netw. Comput. Appl. 2022, 201, 103334. [Google Scholar] [CrossRef]
- Shuvo, A.M.; Pundir, N.; Park, J.; Farahmandi, F.; Tehranipoor, M. Ldtfi: Layout-aware timing fault-injection attack assessment against differential fault analysis. In Proceedings of the 2022 IEEE Computer Society Annual Symposium on VLSI (ISVLSI), Nicosia, Cyprus, 4–6 July 2022; pp. 134–139. [Google Scholar]
- Zhang, M.; Li, H.; Wang, P.; Liu, Q. Parity Check Based Fault Detection against Timing Fault Injection Attacks. Electronics 2022, 11, 4082. [Google Scholar] [CrossRef]
- Liu, X.; Li, X.; Prajapati, R.; Wu, D. Deepfuzz: Automatic generation of syntax valid c programs for fuzz testing. In Proceedings of the AAAI Conference on Artificial Intelligence, Honolulu, HI, USA, 27 January–1 February 2019; Volume 33, pp. 1044–1051. [Google Scholar]
- Lemieux, C.; Sen, K. Fairfuzz: A targeted mutation strategy for increasing greybox fuzz testing coverage. In Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering, Montpellier, France, 3–7 September 2018; pp. 475–485. [Google Scholar]
- Liang, J.; Wang, M.; Chen, Y.; Jiang, Y.; Zhang, R. Fuzz testing in practice: Obstacles and solutions. In Proceedings of the 2018 IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER), Campobasso, Italy, 20–23 March 2018; pp. 562–566. [Google Scholar]
- Klees, G.; Ruef, A.; Cooper, B.; Wei, S.; Hicks, M. Evaluating fuzz testing. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, Toronto, ON, Canada, 15–19 October 2018; pp. 2123–2138. [Google Scholar]
- Patki, P.; Gotkhindikar, A.; Mane, S. Intelligent fuzz testing framework for finding hidden vulnerabilities in automotive environment. In Proceedings of the 2018 Fourth International Conference on Computing Communication Control and Automation (ICCUBEA), Pune, India, 16–18 August 2018; pp. 1–4. [Google Scholar]
- Moukahal, L.J.; Zulkernine, M.; Soukup, M. Vulnerability-oriented fuzz testing for connected autonomous vehicle systems. IEEE Trans. Reliab. 2021, 70, 1422–1437. [Google Scholar] [CrossRef]
- Fowler, D.S.; Bryans, J.; Cheah, M.; Wooderson, P.; Shaikh, S.A. A method for constructing automotive cybersecurity tests, a CAN fuzz testing example. In Proceedings of the 2019 IEEE 19th International Conference on Software Quality, Reliability and Security Companion (QRS-C), Sofia, Bulgaria, 22–26 July 2019; pp. 1–8. [Google Scholar]
- Fowler, D.S.; Bryans, J.; Shaikh, S.A.; Wooderson, P. Fuzz testing for automotive cyber-security. In Proceedings of the 2018 48th Annual IEEE/IFIP International Conference on Dependable Systems and Networks Workshops (DSN-W), Luxembourg, 25–28 June 2018; pp. 239–246. [Google Scholar]
- Nyamdelger, T.; Batzorig, M.; Albhelil, E.A.; Koh, Y.; Yim, K. Fuzz Testing and Safe Framework Development for Vehicle Security Analysis. In Proceedings of the International Conference on Innovative Mobile and Internet Services in Ubiquitous Computing, Toronto, ON, Canada, 14–17 November 2023; pp. 103–111. [Google Scholar]
- Han, J.C.; Zhou, Z.Q. Metamorphic fuzz testing of autonomous vehicles. In Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops, Seoul, Republic of Korea, 27 June–19 July 2020; pp. 380–385. [Google Scholar]
- Zhang, H.; Huang, K.; Wang, J.; Liu, Z. CAN-FT: A Fuzz Testing Method for Automotive Controller Area Network Bus. In Proceedings of the 2021 International Conference on Computer Information Science and Artificial Intelligence (CISAI), Kunming, China, 17–19 September 2021; pp. 225–231. [Google Scholar]
- Werquin, T.; Hubrechtsen, M.; Thangarajan, A.; Piessens, F.; Mühlberg, J.T. Automated fuzzing of automotive control units. In Proceedings of the 2019 International Workshop on Secure Internet of Things (SIOT), Luxembourg, Luxembourg, 26 September 2019; pp. 1–8. [Google Scholar]
- Janičić, M.V.; Plavšić, O.; Brkušanin, M.; Jovanović, P. AUTOCHECK: A Tool For Checking Compliance With Automotive Coding Standards. In Proceedings of the 2021 Zooming Innovation in Consumer Technologies Conference (ZINC), Novi Sad, Serbia, 26–27 May 2021; pp. 150–155. [Google Scholar]
- Hicken, A. Mitigate Risk With Leveraging Automotive Development Standards. ATZelektronik Worldw. 2018, 13, 42–47. [Google Scholar] [CrossRef]
- Thompson, C.; Wagner, D. A large-scale study of modern code review and security in open source projects. In Proceedings of the 13th International Conference on Predictive Models and Data Analytics in Software Engineering, Toronto, ON, Canada, 8 November 2017; pp. 83–92. [Google Scholar]
- Paul, R. ASTOR: An Approach to Identify Security Code Reviews. In Proceedings of the 37th IEEE/ACM International Conference on Automated Software Engineering, Rochester, MI, USA, 10 October 2022; pp. 1–3. [Google Scholar]
- Oka, D.K. Building Secure Cars: Assuring the Automotive Software Development Lifecycle; John Wiley & Sons: Hoboken, NJ, USA, 2021. [Google Scholar]
- Braz, L.; Bacchelli, A. Software security during modern code review: The developer’s perspective. In Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Singapore, 14–18 November 2022; pp. 810–821. [Google Scholar]
- di Biase, M.; Bruntink, M.; Bacchelli, A. A security perspective on code review: The case of chromium. In Proceedings of the 2016 IEEE 16th International Working Conference on Source Code Analysis and Manipulation (SCAM), Raleigh, NC, USA, 2–3 October 2016; pp. 21–30. [Google Scholar]
- Assal, H. Collaborative security code review. In Proceedings of the 14th International Conference on Mobile and Ubiquitous Multimedia, Linz, Austria, 30 November–2 December 2015; pp. 439–444. [Google Scholar]
- Alfadel, M.; Nagy, N.A.; Costa, D.E.; Abdalkareem, R.; Shihab, E. Empirical analysis of security-related code reviews in npm packages. J. Syst. Softw. 2023, 203, 111752. [Google Scholar] [CrossRef]
- Damanik, V.N.N.; Sunaringtyas, S.U. Secure code recommendation based on code review result using owasp code review guide. In Proceedings of the 2020 International Workshop on Big Data and Information Security (IWBIS), Depok, Indonesia, 17–18 October 2020; pp. 153–158. [Google Scholar]
- Buttner, A.; Piazza, R.; Purohit, R.; Summers, A. A Secure Code Review Retrospective. In Proceedings of the 2020 IEEE Secure Development (SecDev), Virtual Conference, 28–30 September 2020; pp. 31–32. [Google Scholar]
- Lawless, W.F.; Mittu, R.; Moskowitz, I.S.; Sofge, D.A.; Russell, S. Cyber-(in) security, revisited: Proactive cyber-defenses, interdependence and autonomous human-machine teams (A-HMTs). In Adversary-Aware Learning Techniques and Trends in Cybersecurity; Springer: Berlin/Heidelberg, Germany, 2021; pp. 197–224. [Google Scholar]
- Fagbemi, D.D.; Wheeler, D.M.; Wheeler, J.C. The IoT Architect’s Guide to Attainable Security and Privacy; CRC Press: Boca Raton, FL, USA, 2019. [Google Scholar]
- Wang, Z.; Guo, G.; Liu, C.; Zhu, W. Research on Railway DevSecOps System Construction Based on “People-Process-Technology”. In Proceedings of the 2022 2nd International Signal Processing, Communications and Engineering Management Conference (ISPCEM), Montreal, ON, Canada, 25–27 November 2022; pp. 19–23. [Google Scholar]
- Asha, K.; Harshini, V.; Niroopama, K.; Singh, M.; Rajeshwari, R.; Gagan, B.; Suryanarayana, N.; Venkatesha, M. Analysis of Automotive Security Risk using Cyber Security. In Proceedings of the 2023 International Conference on Network, Multimedia and Information Technology (NMITCON), Bengaluru, India, 1–2 September 2023; pp. 01–07. [Google Scholar]
- Bokan, B.; Santos, J. Managing cybersecurity risk using threat based methodology for evaluation of cybersecurity architectures. In Proceedings of the 2021 Systems and Information Engineering Design Symposium (SIEDS), Virtual Conference, 29–30 April 2021; pp. 1–6. [Google Scholar]
- Oueslati, H.; Rahman, M.M.; ben Othmane, L. Literature review of the challenges of developing secure software using the agile approach. In Proceedings of the 2015 10th International Conference on Availability, Reliability and Security, Toulouse, France, 24–27 August 2015; pp. 540–547. [Google Scholar]
- Loft, P.; He, Y.; Yevseyeva, I.; Wagner, I. CAESAR8: An agile enterprise architecture approach to managing information security risks. Comput. Secur. 2022, 122, 102877. [Google Scholar] [CrossRef]
- Xiong, W.; Lagerström, R. Threat modeling–A systematic literature review. Comput. Secur. 2019, 84, 53–69. [Google Scholar] [CrossRef]
- Xiong, W.; Legrand, E.; Åberg, O.; Lagerström, R. Cyber security threat modeling based on the MITRE Enterprise ATT&CK Matrix. Softw. Syst. Model. 2022, 21, 157–177. [Google Scholar]
- Yeboah-Ofori, A.; Islam, S. Cyber security threat modeling for supply chain organizational environments. Future Internet 2019, 11, 63. [Google Scholar] [CrossRef]
- Zografopoulos, I.; Ospina, J.; Liu, X.; Konstantinou, C. Cyber-physical energy systems security: Threat modeling, risk assessment, resources, metrics, and case studies. IEEE Access 2021, 9, 29775–29818. [Google Scholar] [CrossRef]
- Khan, R.; McLaughlin, K.; Laverty, D.; Sezer, S. STRIDE-based threat modeling for cyber-physical systems. In Proceedings of the 2017 IEEE PES Innovative Smart Grid Technologies Conference Europe (ISGT-Europe), Torino, Italy, 26–29 September 2017; pp. 1–6. [Google Scholar]
- Johnson, P.; Lagerström, R.; Ekstedt, M. A meta language for threat modeling and attack simulations. In Proceedings of the 13th International Conference on Availability, Reliability and Security, Hamburg, Germany, 27–30 August 2018; pp. 1–8. [Google Scholar]
- Seeam, A.; Ogbeh, O.S.; Guness, S.; Bellekens, X. Threat modeling and security issues for the internet of things. In Proceedings of the 2019 Conference on Next Generation Computing Applications (NextComp), Mauritius, 19–21 September 2019; pp. 1–8. [Google Scholar]
- Karahasanovic, A.; Kleberger, P.; Almgren, M. Adapting threat modeling methods for the automotive industry. In Proceedings of the 15th ESCAR Conference, Hamburg, Germany, 15–16 November 2017; pp. 1–10. [Google Scholar]
- Hao, J.; Han, G. On the modeling of automotive security: A survey of methods and perspectives. Future Internet 2020, 12, 198. [Google Scholar] [CrossRef]
- Xiong, W.; Krantz, F.; Lagerström, R. Threat modeling and attack simulations of connected vehicles: Proof of concept. In Proceedings of the Information Systems Security and Privacy: 5th International Conference, ICISSP 2019, Prague, Czech Republic, 23–25 February 2019; pp. 272–287. [Google Scholar]
- Aydos, M.; Aldan, Ç.; Coşkun, E.; Soydan, A. Security testing of web applications: A systematic mapping of the literature. J. King Saud Univ.-Comput. Inf. Sci. 2022, 34, 6775–6792. [Google Scholar] [CrossRef]
- Peroli, M.; De Meo, F.; Viganò, L.; Guardini, D. MobSTer: A model-based security testing framework for web applications. Softw. Test. Verif. Reliab. 2018, 28, e1685. [Google Scholar] [CrossRef]
- Malik, J.; Pastore, F. An empirical study of vulnerabilities in edge frameworks to support security testing improvement. Empir. Softw. Eng. 2023, 28, 99. [Google Scholar] [CrossRef]
- Jeannotte, B.; Tekeoglu, A. Artorias: IoT security testing framework. In Proceedings of the 2019 26th International Conference on Telecommunications (ICT), Hanoi, Vietnam, 8–10 April 2019; pp. 233–237. [Google Scholar]
- Pfrang, S.; Meier, D.; Kautz, V. Towards a modular security testing framework for industrial automation and control systems: Isutest. In Proceedings of the 2017 22nd IEEE International Conference on Emerging Technologies and Factory Automation (ETFA), Limassol, Cyprus, 12–15 September 2017; pp. 1–5. [Google Scholar]
- Pekaric, I.; Sauerwein, C.; Felderer, M. Applying security testing techniques to automotive engineering. In Proceedings of the 14th International Conference on Availability, Reliability and Security, Vienna, Austria, 30 July–2 August 2019; pp. 1–10. [Google Scholar]
- Mahmood, S.; Fouillade, A.; Nguyen, H.N.; Shaikh, S.A. A model-based security testing approach for automotive over-the-air updates. In Proceedings of the 2020 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW), Porto, Portugal, 24–28 October 2020; pp. 6–13. [Google Scholar]
- Sommer, F.; Kriesten, R.; Kargl, F. Survey of Model-Based Security Testing Approaches in the Automotive Domain. IEEE Access 2023, 11, 55474–55514. [Google Scholar] [CrossRef]
- Luo, F.; Zhang, X.; Yang, Z.; Jiang, Y.; Wang, J.; Wu, M.; Feng, W. Cybersecurity testing for automotive domain: A survey. Sensors 2022, 22, 9211. [Google Scholar] [CrossRef] [PubMed]
- Kirk, R.; Nguyen, H.N.; Bryans, J.; Shaikh, S.A.; Wartnaby, C. A formal framework for security testing of automotive over-the-air update systems. J. Log. Algebr. Methods Program. 2023, 130, 100812. [Google Scholar] [CrossRef]
- Mahmood, S.; Nguyen, H.N.; Shaikh, S.A. Systematic threat assessment and security testing of automotive over-the-air (OTA) updates. Veh. Commun. 2022, 35, 100468. [Google Scholar] [CrossRef]
- Faschang, T.; Macher, G. An Open Software-Based Framework for Automotive Cybersecurity Testing. In Proceedings of the European Conference on Software Process Improvement, Grenoble, France, 30 August–1 September 2023; pp. 316–328. [Google Scholar]
- Mateo Tudela, F.; Bermejo Higuera, J.R.; Bermejo Higuera, J.; Sicilia Montalvo, J.A.; Argyros, M.I. On Combining Static, Dynamic and Interactive Analysis Security Testing Tools to Improve OWASP Top Ten Security Vulnerability Detection in Web Applications. Appl. Sci. 2020, 10, 9119. [Google Scholar] [CrossRef]
- Hagar, J.D. Security OWASP IoT Information Pointer and Logging Events. In IoT System Testing: An IoT Journey from Devices to Analytics and the Edge; Springer: Berlin/Heidelberg, Germany, 2022; pp. 209–215. [Google Scholar]
- NIST SP 800-115|NIST. Available online: https://www.nist.gov/privacy-framework/nist-sp-800-115 (accessed on 11 August 2023).
- The Open Source Security Testing Methodology Manual. 2010. Available online: https://www.isecom.org/OSSTMM.3.pdf (accessed on 11 August 2023).
- The Penetration Testing Execution Standard. Available online: http://www.pentest-standard.org/index.php/Main_Page (accessed on 11 August 2023).
- Information System Security Assessment Framework (ISSAF). Available online: https://www.futurelearn.com/info/courses/ethical-hacking-an-introduction/0/steps/71521 (accessed on 11 August 2023).
- Musa, H.S.; Krichen, M.; Altun, A.A.; Ammi, M. Survey on Blockchain-Based Data Storage Security for Android Mobile Applications. Sensors 2023, 23, 8749. [Google Scholar] [CrossRef] [PubMed]
- Dehshiri, S.J.H.; Emamat, M.S.M.M.; Amiri, M. A novel group BWM approach to evaluate the implementation criteria of blockchain technology in the automotive industry supply chain. Expert Syst. Appl. 2022, 198, 116826. [Google Scholar] [CrossRef]
- Krichen, M.; Ammi, M.; Mihoub, A.; Al-Haija, Q.A. Short Survey on Using Blockchain Technology in Modern Wireless Networks, IoT and Smart Grids. In Proceedings of the International Conference on Cybersecurity, Cybercrimes, and Smart Emerging Technologies. Springer International Publishing Cham, Riyadh, Saudi Arabia, 10–11 May 2022, pp. 163–173.Blockchain for the Internet of vehicles: How to use blockchain to secure vehicle-to-everything (V2X) communication and payment? IEEE Sens. J. 2021, 21, 15807–15823. [Google Scholar]
- Lopes, E.J.; Kataria, S.; Keshav, S.; Ikram, S.T.; Ghalib, M.R.; Shankar, A.; Krichen, M. Live video streaming service with pay-as-you-use model on Ethereum Blockchain and InterPlanetary file system. Wirel. Netw. 2022, 28, 3111–3125. [Google Scholar] [CrossRef]
- Dorri, A.; Steger, M.; Kanhere, S.S.; Jurdak, R. Blockchain: A distributed solution to automotive security and privacy. IEEE Commun. Mag. 2017, 55, 119–125. [Google Scholar] [CrossRef]
- Lahami, M.; Maâlej, A.J.; Krichen, M.; Hammami, M.A. A Comprehensive Review of Testing Blockchain Oriented Software. ENASE 2022, 182, 355–362. [Google Scholar]
- Jabbar, R.; Fetais, N.; Kharbeche, M.; Krichen, M.; Barkaoui, K.; Shinoy, M. Blockchain for the internet of vehicles: How to use blockchain to secure vehicle-to-everything (v2x) communication and payment. IEEE Sens. J. 2021, 21, 15807–15823. [Google Scholar] [CrossRef]
- Sharma, P.K.; Kumar, N.; Park, J.H. Blockchain-based distributed framework for automotive industry in a smart city. IEEE Trans. Ind. Inform. 2018, 15, 4197–4205. [Google Scholar] [CrossRef]
- Jabbar, R.; Krichen, M.; Shinoy, M.; Kharbeche, M.; Fetais, N.; Barkaoui, K. A model-based and resource-aware testing framework for parking system payment using blockchain. In Proceedings of the 2020 International Wireless Communications and Mobile Computing (IWCMC), Limassol, Cyprus, 15–19 June 2020; pp. 1252–1259. [Google Scholar]
- Reddy, K.R.K.; Gunasekaran, A.; Kalpana, P.; Sreedharan, V.R.; Kumar, S.A. Developing a blockchain framework for the automotive supply chain: A systematic review. Comput. Ind. Eng. 2021, 157, 107334. [Google Scholar] [CrossRef]
- Jabbar, R.; Krichen, M.; Fetais, N.; Barkaoui, K. Adopting formal verification and model-based testing techniques for validating a blockchain-based healthcare records sharing system. In Proceedings of the 22nd International Conference on Enterprise Information Systems, Online Streaming, 5–7 May 2020; pp. 261–268. [Google Scholar]
- Fraga-Lamas, P.; Fernández-Caramés, T.M. A review on blockchain technologies for an advanced and cyber-resilient automotive industry. IEEE Access 2019, 7, 17578–17598. [Google Scholar] [CrossRef]
- Jabbar, R.; Krichen, M.; Kharbeche, M.; Fetais, N.; Barkaoui, K. A formal model-based testing framework for validating an IoT solution for blockchain-based vehicles communication. In Proceedings of the 15th International Conference on Evaluation of Novel Approaches to Software Engineering, Prague, Czech Republic, 5–6 May 2020; pp. 595–602. [Google Scholar]
- Mollah, M.B.; Zhao, J.; Niyato, D.; Guan, Y.L.; Yuen, C.; Sun, S.; Lam, K.Y.; Koh, L.H. Blockchain for the internet of vehicles towards intelligent transportation systems: A survey. IEEE Internet Things J. 2020, 8, 4157–4185. [Google Scholar] [CrossRef]
- Krichen, M.; Lahami, M.; Al-Haija, Q.A. Formal methods for the verification of smart contracts: A review. In Proceedings of the 2022 15th International Conference on Security of Information and Networks (SIN), Sousse, Tunisia, 11–13 November 2022; pp. 01–08. [Google Scholar]
- Huang, X.; Ye, D.; Yu, R.; Shu, L. Securing parked vehicle assisted fog computing with blockchain and optimal smart contract design. IEEE/CAA J. Autom. Sin. 2020, 7, 426–441. [Google Scholar] [CrossRef]
- Rathee, G.; Sharma, A.; Iqbal, R.; Aloqaily, M.; Jaglan, N.; Kumar, R. A blockchain framework for securing connected and autonomous vehicles. Sensors 2019, 19, 3165. [Google Scholar] [CrossRef] [PubMed]
- Krichen, M. Strengthening the security of smart contracts through the power of artificial intelligence. Computers 2023, 12, 107. [Google Scholar] [CrossRef]
- Su, Z.; Wang, Y.; Xu, Q.; Fei, M.; Tian, Y.C.; Zhang, N. A secure charging scheme for electric vehicles with smart communities in energy blockchain. IEEE Internet Things J. 2018, 6, 4601–4613. [Google Scholar] [CrossRef]
- Javaid, U.; Aman, M.N.; Sikdar, B. DrivMan: Driving trust management and data sharing in VANETS with blockchain and smart contracts. In Proceedings of the 2019 IEEE 89th Vehicular Technology Conference (VTC2019-Spring), Kuala Lumpur, Malaysia, 28 April – 1 May 2019; pp. 1–5. [Google Scholar]
- Liu, H.; Zhang, Y.; Zheng, S.; Li, Y. Electric vehicle power trading mechanism based on blockchain and smart contract in V2G network. IEEE Access 2019, 7, 160546–160558. [Google Scholar] [CrossRef]
- Chen, C.; Xiao, T.; Qiu, T.; Lv, N.; Pei, Q. Smart-contract-based economical platooning in blockchain-enabled urban internet of vehicles. IEEE Trans. Ind. Inform. 2019, 16, 4122–4133. [Google Scholar] [CrossRef]
- Mihoub, A.; Krichen, M.; Alswailim, M.; Mahfoudhi, S.; Bel Hadj Salah, R. Road Scanner: A Road State Scanning Approach Based on Machine Learning Techniques. Appl. Sci. 2023, 13, 683. [Google Scholar] [CrossRef]
- Ali, E.S.; Hasan, M.K.; Hassan, R.; Saeed, R.A.; Hassan, M.B.; Islam, S.; Nafi, N.S.; Bevinakoppa, S. Machine learning technologies for secure vehicular communication in internet of vehicles: Recent advances and applications. Secur. Commun. Netw. 2021, 2021, 8868355. [Google Scholar] [CrossRef]
- Krichen, M. How artificial intelligence can revolutionize software testing techniques. In Proceedings of the International Conference on Innovations in Bio-Inspired Computing and Applications, Online Streaming, 15–17 December 2022; pp. 189–198. [Google Scholar]
- Alkhudaydi, O.A.; Krichen, M.; Alghamdi, A.D. A Deep Learning Methodology for Predicting Cybersecurity Attacks on the Internet of Things. Information 2023, 14, 550. [Google Scholar] [CrossRef]
- Aworka, R.; Cedric, L.S.; Adoni, W.Y.H.; Zoueu, J.T.; Mutombo, F.K.; Kimpolo, C.L.M.; Nahhal, T.; Krichen, M. Agricultural decision system based on advanced machine learning models for yield prediction: Case of East African countries. Smart Agric. Technol. 2022, 2, 100048. [Google Scholar] [CrossRef]
- Qayyum, A.; Usama, M.; Qadir, J.; Al-Fuqaha, A. Securing connected & autonomous vehicles: Challenges posed by adversarial machine learning and the way forward. IEEE Commun. Surv. Tutor. 2020, 22, 998–1026. [Google Scholar]
- Cedric, L.S.; Adoni, W.Y.H.; Aworka, R.; Zoueu, J.T.; Mutombo, F.K.; Krichen, M.; Kimpolo, C.L.M. Crops yield prediction based on machine learning models: Case of West African countries. Smart Agric. Technol. 2022, 2, 100049. [Google Scholar] [CrossRef]
- Krichen, M. Convolutional neural networks: A survey. Computers 2023, 12, 151. [Google Scholar] [CrossRef]
- Park, S.; Choi, J.Y. Malware detection in self-driving vehicles using machine learning algorithms. J. Adv. Transp. 2020, 2020, 1–9. [Google Scholar] [CrossRef]
- Mohseni, S.; Pitale, M.; Singh, V.; Wang, Z. Practical solutions for machine learning safety in autonomous vehicles. arXiv 2019, arXiv:1912.09630. [Google Scholar]
- Avatefipour, O.; Al-Sumaiti, A.S.; El-Sherbeeny, A.M.; Awwad, E.M.; Elmeligy, M.A.; Mohamed, M.A.; Malik, H. An intelligent secured framework for cyberattack detection in electric vehicles’ CAN bus using machine learning. IEEE Access 2019, 7, 127580–127592. [Google Scholar] [CrossRef]
- Berry, H.; Abdel-Malek, M.A.; Ibrahim, A.S. A machine learning approach for combating cyber attacks in self-driving vehicles. In Proceedings of the SoutheastCon 2021, Online Streaming, 10– 14 March 2021; pp. 1–3. [Google Scholar]
- Bendiab, G.; Hameurlaine, A.; Germanos, G.; Kolokotronis, N.; Shiaeles, S. Autonomous vehicles security: Challenges and solutions using blockchain and artificial intelligence. IEEE Trans. Intell. Transp. Syst. 2023, 24, 3614–3637. [Google Scholar] [CrossRef]
- Xun, Y.; Liu, J.; Kato, N.; Fang, Y.; Zhang, Y. Automobile driver fingerprinting: A new machine learning based authentication scheme. IEEE Trans. Ind. Inform. 2019, 16, 1417–1426. [Google Scholar] [CrossRef]
- Madhav, A.S.; Mohan, A.; Tyagi, A.K. IMPROVE: Intelligent Machine Learning based Portable, Reliable and Optimal VErification System for Future Vehicles. In Proceedings of the 2023 International Conference on Computer Communication and Informatics (ICCCI), Coimbatore, India, 23–25 January 2023; pp. 1–6. [Google Scholar]
- Challita, U.; Ferdowsi, A.; Chen, M.; Saad, W. Machine learning for wireless connectivity and security of cellular-connected UAVs. IEEE Wirel. Commun. 2019, 26, 28–35. [Google Scholar] [CrossRef]
- Uprety, A.; Rawat, D.B.; Li, J. Privacy preserving misbehavior detection in IoV using federated machine learning. In Proceedings of the 2021 IEEE 18th Annual Consumer Communications & Networking Conference (CCNC), Las Vegas, NV, USA, 9–12 January 2021; pp. 1–6. [Google Scholar]
- Ferdowsi, A.; Challita, U.; Saad, W.; Mandayam, N.B. Robust deep reinforcement learning for security and safety in autonomous vehicle systems. In Proceedings of the 2018 21st International Conference on Intelligent Transportation Systems (ITSC), Maui, HI, USA, 4–7 November 2018; pp. 307–312. [Google Scholar]
- Waheed, N.; He, X.; Ikram, M.; Usman, M.; Hashmi, S.S.; Usman, M. Security and privacy in IoT using machine learning and blockchain: Threats and countermeasures. ACM Comput. Surv. (CSUR) 2020, 53, 1–37. [Google Scholar] [CrossRef]
- Gyawali, S.; Qian, Y. Misbehavior detection using machine learning in vehicular communication networks. In Proceedings of the ICC 2019-2019 IEEE International Conference on Communications (ICC), Shanghai, China, 20–24 May 2019; pp. 1–6. [Google Scholar]
- Said, D.; Elloumi, M.; Khoukhi, L. Cyber-attack on P2P energy transaction between connected electric vehicles: A false data injection detection based machine learning model. IEEE Access 2022, 10, 63640–63647. [Google Scholar] [CrossRef]
- Sharmin, S.; Mansor, H. Intrusion detection on the in-vehicle network using machine learning. In Proceedings of the 2021 3rd International Cyber Resilience Conference (CRC), Langkawi Island, Malaysia, 29–31 January 2021; pp. 1–6. [Google Scholar]
- So, S.; Sharma, P.; Petit, J. Integrating plausibility checks and machine learning for misbehavior detection in VANET. In Proceedings of the 2018 17th IEEE International Conference on Machine Learning and Applications (ICMLA), Orlando, FL, USA, 17–20 December 2018; pp. 564–571. [Google Scholar]
- Abualsauod, E.H. A hybrid blockchain method in internet of things for privacy and security in unmanned aerial vehicles network. Comput. Electr. Eng. 2022, 99, 107847. [Google Scholar] [CrossRef]
- Tang, F.; Kawamoto, Y.; Kato, N.; Liu, J. Future intelligent and secure vehicular network toward 6G: Machine-learning approaches. Proc. IEEE 2019, 108, 292–307. [Google Scholar] [CrossRef]
- Handa, A.; Sharma, A.; Shukla, S.K. Machine learning in cybersecurity: A review. Wiley Interdiscip. Rev. Data Min. Knowl. Discov. 2019, 9, e1306. [Google Scholar] [CrossRef]
- Chai, H.; Leng, S.; Chen, Y.; Zhang, K. A hierarchical blockchain-enabled federated learning algorithm for knowledge sharing in internet of vehicles. IEEE Trans. Intell. Transp. Syst. 2020, 22, 3975–3986. [Google Scholar] [CrossRef]
Survey Paper | Year | Main Contribution | Limitations |
---|---|---|---|
Lamssaggad et al. [21] | 2021 | Analysis of existing solutions and challenges in securing intelligent transportation systems (ITS) | Limited focus on ITS, may not cover all aspects of automotive system security |
Rumez et al. [22] | 2020 | Overview and comparison of protocols and communication patterns for automotive architectures | Does not explore formal methods or validation techniques for security |
Luo et al. [23] | 2021 | Comprehensive overview of threat analysis and risk assessment (TARA) for connected vehicles | Primarily focuses on threat analysis, does not cover formal methods extensively |
Halder et al. [24] | 2020 | Thorough analysis of over-the-air (OTA) software upgrades in the automotive industry | Limited to OTA software upgrades, does not cover other security aspects |
Sun et al. [25] | 2021 | Overview of cybersecurity in the context of connected and autonomous vehicles (CAVs) | Primarily focuses on CAVs, may not cover all aspects of automotive system security |
Pekaric et al. [26] | 2021 | Construction of an extensive attack taxonomy for the automotive industry | Limited to attack taxonomy, does not explore formal methods or validation techniques |
Hbaieb et al. [27] | 2022 | Assessment of trust management within the Internet of Vehicles (IoV) ecosystem | Focuses on trust management, does not extensively cover formal methods or validation techniques |
Kim et al. [28] | 2021 | Systematic review and analysis of autonomous vehicle defenses and attacks | Primarily focuses on autonomous vehicles, may not cover all aspects of automotive system security |
Pham et al. [29] | 2021 | Examination of attacks and defense techniques for connected and autonomous vehicles (CAVs) | Primarily focuses on CAVs, may not cover all aspects of automotive system security |
Masood et al. [30] | 2020 | Study of security and privacy concerns associated with vehicular cloud computing (VCC) | Limited to vehicular cloud computing, does not cover other security aspects |
Our Paper | 2023 | Comprehensive overview of formal methods and validation techniques for automotive system security | N/A |
Phase | Summary |
---|---|
Requirements Engineering | Integration of formal methods (such as Z notation, Alloy, and UMLsec) for specifying security requirements. Validation techniques like threat modeling and risk analysis complement formal methods to refine security specifications. |
Design | Formal methods (e.g., model checking) used for exhaustive exploration of system behavior against security properties. Validation techniques (e.g., security architecture review, threat modeling) identify weaknesses and refine the security architecture. |
Implementation | Formal methods (e.g., theorem proving) ensure code compliance with specified security properties. Validation techniques (e.g., security code review and security testing frameworks) fortify the code against vulnerabilities. |
Testing | Formal methods (e.g., model checking, abstract interpretation) analyze system behavior and verify security properties. Validation techniques (e.g., penetration testing, fault injection, and fuzz testing) simulate real-world attacks and assess system resilience. |
Consideration | Benefits | Limitations |
---|---|---|
Scalability | Formal methods excel in handling complexity, allowing for comprehensive verification of security properties in large-scale automotive systems. | They may face scalability challenges with exceptionally large state spaces. |
Efficiency | Formal methods offer a systematic and exhaustive approach to security verification, reducing the likelihood of false negatives. | They can be computationally intensive, requiring careful balancing of precision and efficiency. |
Applicability to Real-World Automotive Systems | Formal methods and validation techniques effectively uncover security vulnerabilities in real-world automotive systems. | Their applicability may vary depending on system characteristics and the availability of skilled practitioners. |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the author. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Krichen, M. Formal Methods and Validation Techniques for Ensuring Automotive Systems Security. Information 2023, 14, 666. https://doi.org/10.3390/info14120666
Krichen M. Formal Methods and Validation Techniques for Ensuring Automotive Systems Security. Information. 2023; 14(12):666. https://doi.org/10.3390/info14120666
Chicago/Turabian StyleKrichen, Moez. 2023. "Formal Methods and Validation Techniques for Ensuring Automotive Systems Security" Information 14, no. 12: 666. https://doi.org/10.3390/info14120666
APA StyleKrichen, M. (2023). Formal Methods and Validation Techniques for Ensuring Automotive Systems Security. Information, 14(12), 666. https://doi.org/10.3390/info14120666