A side-channel attack (SCA) is a security exploit that involves
collecting information about what a computing device does when it is performing
cryptographic operations and using that information to reverse engineer the
device's cryptography system. In computing, a side channel is any communication
channel that is incidental to another communication channel. Security researcher
Paul Kocher is credited with coining the term side-channel attack in the 1990s
when he discovered it was possible to reverse engineer security tokens by
monitoring a computer's power consumption and electromagnetic emissions.
Unlike many other types of security exploits, side-channel attacks are
hardware and software agnostic. Instead of targeting a software vulnerability
caused by a coding error or configuration drift, the attacker exploits the way
the device's operating system (OS) accesses the hardware upon which the OS
runs. Side-channel attacks can be launched against any operating system,
including Windows and Linux.
Types of Side-Channel Attacks
Side-channel attacks work by monitoring the emissions produced by
electronic circuits when the victim's computer is being used. In addition to
exploiting information about power consumption and electromagnetic fields, an
attacker may actually listen to the sounds a central processing unit (CPU)
produces and use that information to reverse engineer what the computer is
doing. This type of side-channel attack is called an acoustic cryptanalysis
attack. Other types of side-channel attack include:
- Cache attacks that exploit how and when cache is accessed in a physical system.
- Differential fault analysis attacks that seek to glean information from a system by introducing faults into the system's computations.
- Timing attacks that track the movement of data to and from a system's CPU and memory.
- Thermal-imaging attacks that use infrared images to observe the surface of a CPU chip and collect executed code.
- Optical side-channel attacks that collect information about hard disk activity by using an audio/visual recorder, such as a video camera.
- Van Eck phreaking is a form of eavesdropping that involves monitoring the electromagnetic fields produced by data as it moves through the computer.
How to Prevent Side-Channel Attacks
To prevent side-channel attacks, users have two choices: they must either
reduce the release of electromagnetic information that could be used to launch
an attack or they must make it impossible for an attacker to link information
about what the CPU is doing with specific compute operations. For example, a
computer engineer may want to change the order of operations used on data
within the system by using a process called randomization to make it more
difficult for an attacker to launch a side-channel attack.
Another preventative technique an engineer may use is to increase the
amount of noise in a channel. An increase in noise means an attacker will have
to collect more measurements than is needed and not all the information will be
relevant. Faraday cages can also be used to reduce electromagnetic leaks.
Comments
Post a Comment