Testing how computer systems behave under unusual stresses
In computer science, fault injection is a testing technique for understanding how computing systems behave when stressed in unusual ways. This can be achieved using physical- or software-based means, or using a hybrid approach.[1] Widely studied physical fault injections include the application of high voltages, extreme temperatures and electromagnetic pulses on electronic components, such as computer memory and central processing units.[2][3] By exposing components to conditions beyond their intended operating limits, computing systems can be coerced into mis-executing instructions and corrupting critical data.
In software testing, fault injection is a technique for improving the coverage of a test by introducing faults to test code paths; in particular error handling code paths, that might otherwise rarely be followed. It is often used with stress testing and is widely considered to be an important part of developing robust software.[4] Robustness testing[5] (also known as syntax testing, fuzzing or fuzz testing) is a type of fault injection commonly used to test for vulnerabilities in communication interfaces such as protocols, command line parameters, or APIs.
The propagation of a fault through to an observable failure follows a well-defined cycle. When executed, a fault may cause an error, which is an invalid state within a system boundary. An error may cause further errors within the system boundary, therefore each new error acts as a fault, or it may propagate to the system boundary and be observable. When error states are observed at the system boundary they are termed failures. This mechanism is termed the fault-error-failure cycle[6] and is a key mechanism in dependability.
^Moradi, Mehrdad; Van Acker, Bert; Vanherpen, Ken; Denil, Joachim (2019). "Model-Implemented Hybrid Fault Injection for Simulink (Tool Demonstrations)". In Chamberlain, Roger; Taha, Walid; Törngren, Martin (eds.). Cyber Physical Systems. Model-Based Design. Lecture Notes in Computer Science. Vol. 11615. Springer International Publishing. pp. 71–90. doi:10.1007/978-3-030-23703-5_4. ISBN 9783030237035. S2CID 195769468.
^Shepherd, Carlton; Markantonakis, Konstantinos; Van Heijningen, Nico; Aboulkassimi, Driss; Gaine, Clement; Heckmann, Thibaut; Naccache, David (2021). "Physical fault injection and side-channel attacks on mobile devices: A comprehensive analysis". Computers & Security. 111 (102471). Elsevier: 102471. arXiv:2105.04454. doi:10.1016/j.cose.2021.102471. S2CID 236957400.
^Bar-El, Hagai; Choukri, Hamid; Naccache, David; Tunstall, Michael; Whelan, Claire (2004). "The sorcerer's apprentice guide to fault attacks". Proceedings of the IEEE. 94 (2). IEEE: 370–382. doi:10.1109/JPROC.2005.862424. S2CID 2397174.
^J. Voas, "Fault Injection for the Masses," Computer, vol. 30, pp. 129–130, 1997.
^Kaksonen, Rauli. A Functional Method for Assessing Protocol Implementation Security. 2001.
^A. Avizienis, J.-C. Laprie, Brian Randell, and C. Landwehr, "Basic Concepts and Taxonomy of Dependable and Secure Computing," Dependable and Secure Computing, vol. 1, pp. 11–33, 2004.
In computer science, faultinjection is a testing technique for understanding how computing systems behave when stressed in unusual ways. This can be...
efficient methods which aid faultinjection to find critical faults in the system. Robustness (computer science) Faultinjection "Standard Glossary of Software...
detection schemes. A faultinjection attack involves stressing the transistors responsible for encryption tasks to generate faults that will then be used...
violation technique using web email forms Faultinjection, a software testing technique Network injection, an attack on access points that are exposed...
properties of a material, component or system without causing damage. Faultinjection: A testing technique which stress the system in an unusual way to examine...
Kreutz, Diego; Veríssimo, Paulo (2013). "Experiences with Fault-Injection in a Byzantine Fault-Tolerant Protocol". Middleware 2013. Lecture Notes in Computer...
Janschek, and Joachim Denil. "Exploring Fault Parameter Space Using Reinforcement Learning-based FaultInjection." (2020). John C. Knight, Elisabeth A....
in the program to be executed at least once) Faultinjection methods – intentionally introducing faults to gauge the efficacy of testing strategies Mutation...
Janschek, and Joachim Denil. "Exploring Fault Parameter Space Using Reinforcement Learning-based FaultInjection." (2020). "GUIDELINE ON GENERAL PRINCIPLES...
conventional security vulnerabilities, faultinjection attacks are on the rise and targeting IoT devices. A faultinjection attack is a physical attack on a...
Job-Site Level Fault Tolerance for Cluster and Grid environments IEEE International Conference on Cluster Computing (Cluster 2005) FaultInjection in Distributed...
isPositiveMutation2(number) { return !(number > 0); } Bebugging (or fault seeding) Sanity testing Faultinjection Richard A. DeMillo, Richard J. Lipton, and Fred G. Sayward...
related subject in business management Fall back and forward FaultinjectionFault tolerance Fault-tolerant computer system Grease (networking) Resilience...
Fabrizio (2017). "Low-Cost Setup for Localized Semi-invasive Optical FaultInjection Attacks: How Low Can We Go?". Constructive Side-Channel Analysis and...
malware detection, and attribution of hackers. He holds a patent on faultinjection methods for software testing, and fuzzy hashing for computer forensics...
underground injection.[citation needed] The column of water in a large and deep artificial lake alters in-situ stress along an existing fault or fracture...
remaining faults in a software system still to be detected by a particular test methodology. Bebugging is a type of faultinjection. Faultinjection Mutation...
in the program to be executed at least once) Faultinjection methods – intentionally introducing faults to gauge the efficacy of testing strategies Mutation...
satisfy branch coverage since neither case will meet the if condition. Faultinjection may be necessary to ensure that all conditions and branches of exception-handling...
University), Thomas E. Fuhrman (GM R&D): Experiences with a CANoe-based FaultInjection Framework for AUTOSAR, http://www.ece.cmu.edu/~planigan/research/lanigan-dsn10...
Accelerated Life Test Accelerated aging AFT model Cox model Fatigue testing Faultinjection Nelson, W. (1980). "Accelerated Life Testing - Step-Stress Models and...
removed from the die. The Tegra X1 was found to be vulnerable to a FaultInjection (FI) voltage glitching attack, which allowed for arbitrary code execution...