2021

[2]Georgios Michail Makrakis

1]Department of Computer Science, University of Idaho, 1031 N Academic Way,
Coeur d’Alene, 83814, ID, USA

[2]Department of Computer Science, University of Idaho, 1776 Science Center
Dr, Idaho Falls, 83402, ID, USA

3]National and Homeland Security, Idaho National Lab, 1955 N Fremont Ave,
Idaho Falls, 83402, ID, USA

4]Department of Computer Science, George Mason University, 4400 University Dr,
Fairfax, 22030, VA, USA

# Detecting Code Injections in Noisy Environments Through EM Signal Analysis
and SVD Denoising

Ekaterina Miller<EMAIL_ADDRESS><EMAIL_ADDRESS>Kurt A.
Vedros<EMAIL_ADDRESS>Constantinos Kolias<EMAIL_ADDRESS>Craig Rieger
<EMAIL_ADDRESS>Daniel Barbara<EMAIL_ADDRESS>[  *  [  [

###### Abstract

The penetration of embedded devices in networks that support critical
applications has rendered them a lucrative target for attackers and evildoers.
However, traditional protection mechanisms may not be supported due to the
memory and computational limitations of these systems. Recently, the analysis
of electromagnetic (EM) emanations has gathered the interest of the research
community. Thus, analogous protection systems have emerged as a viable
solution e.g., for providing external, non-intrusive control-flow attestation
for resource-constrained devices. Unfortunately, the majority of current work
fails to account for the implications of real-life factors, predominantly the
impact of environmental noise. In this work, we introduce a framework that
integrates singular value decomposition (SVD) along with outlier detection for
discovering malicious modifications of embedded software even under variable
conditions of noise. Our proposed framework achieves high detection accuracy
i.e., above 93% AUC score for unknown attacks, even for extreme noise
conditions i.e., -10 SNR. To the best of our knowledge, this is the first time
this realistic limiting factor, i.e., environmental noise, is successfully
addressed in the context of EM-based anomaly detection for embedded devices.

###### keywords:

cyber resilience; anomaly detection; side-channel analysis; cybersecurity;
industrial control systems.

##  1 Introduction

Today, embedded devices have become an indispensable component of a wide range
of heterogeneous applications. Such devices are deployed to support even
mission-critical tasks of Industrial Control Systems (ICS) within Critical
Infrastructures (CI). Therefore, it does not come as a surprise that embedded
devices have become targets of cyberattacks. Nonetheless, due to their limited
on-chip processing capabilities and reliance in proprietary OS and toolchains,
the installation of traditional means of protection such as anti-malware or
Host-based Intrusion Detection Systems (H-IDS) is deemed impractical. Because
of this, the applicability of external means of control-flow attestation has
attracted the interest of the research community. While several alternative
solutions have been considered, the monitoring of systems based on _side-
channel analysis_ has gained traction. Among the different types of side-
channels (power Liu . (2016) acoustic Anton . (2019), thermal Islam . (2017)),
the analysis of electromagnetic (EM) signals is preferable because it offers
high bandwidth and enables the monitoring of the Central Processing Unit (CPU)
activity at fast sampling rates Nazari . (2017),Han . (2017).

Previous work in the area Vedros . (2021) Nazari . (2017),Han . (2017)has
shown that it is possible to achieve high accuracy for detecting _significant_
violations in the execution flow of a monitored program under _controlled
laboratory environments_. However, minimal code injections of just a few
instructions may be more stealthy and challenging to detect especially in
noisy environments.

In this work, we propose a framework for reliably identifying code injection
attacks of _arbitrary_ lengths of code even under the influence of _variable_
levels of environmental noise. At the core of the framework lies a non-
destructive, noise-reduction technique that is based on the Singular Value
Decomposition (SVD) method. The analysis process is not based on supervised
Machine Learning (ML), but rather it is based on an outlier detection strategy
at the core of which lies the well-known Local Outlier Factor (LOF) Breunig .
(2000) method. This design decision renders the system capable of detecting
even _unseen/unknown attacks_ i.e. the injection of variable lengths of code
and alternative types of instructions, that have not been analyzed before.

##  2 Technical Background & Definitions

The execution of instructions by the CPU of a given device results in changes
in the flow of electric current inside the CPU’s circuitry. This change
produces a magnetic field that interacts with the electric field, resulting in
an EM field. Moreover, the components of the printed circuit board act as
antennas. Thus, the board unintentionally transmits EM signals that are highly
correlated to the instructions running at the CPU. These emanations can be
captured by placing a probe near the source of the signal Han . (2017). It is
generally accepted that it is possible to identify (at bare minimum) the
active _execution state_ of a program by analyzing such analog signals.

Figure 1: Comparison between a clean signal (red) and the noisy version of the
same signal (blue) for various SNR levels.

Code injection attacks start by exploring a target software for pre-existing
vulnerabilities that allow an attacker to inject malicious code. During the
exploitation step, the instructions that are injected change the original
logic of the program or forge a new (malicious) execution path, thus altering
the original control flow. Attacks based on _buffer overflows_ are examples of
such malicious activity.

EM signals obtained by the CPU are amplitude modulated according to
corresponding instruction, with a carrier signal that has a base frequency,
that the clock of the monitored CPU Khan . (2018). Therefore, different
instructions can theoretically be distinguished by observing the amplitude of
the signal across time. While previous research in the field has shown that is
possible to detect as little as one-instruction injection with an average AUC
rate of 98.7% for low noise environments Vedros . (2021), a decrease in the
detection rate should be expected when the noise level increases. Figure 1
displays the same signal at different noise levels. It is clear that important
signal artifacts get concealed behind noise for the low SNR conditions. At the
same time, the utilization of noise filtering might affect the anomaly
detection process due to the destructive nature of corresponding methods.

In this respect, previous work in the area Govindarajan . (2019), Vedros .
(2021) shows that SVD denoising is superior to other noise elimination
techniques. Briefly, SVD decomposes a 2-D matrix into three components
(matrices $U$, $\Sigma$, $V$). $\Sigma$ is a diagonal matrix where the values
along the main diagonal correspond to the singular values of the 2-D matrix.
In the context of noisy signals we assume that the 2-D matrix is the
composition of a clean signal and noise. Then each of the $U$, $\Sigma$, $V$
can still be expressed as the composition of two signal subspaces: the clean
signal and the noise. In order to denoise the signal, all singular values
corresponding to noise must be set to zero, thus creating a new approximation
of the singular matrix, $\Sigma_{new}$. Figure 2 (right) illustrates this
transformation. After this, a denoised version of the signal $X_{s}$ can be
obtained as the dot product of $U$, $\Sigma_{new}$, and $V^{T}$. More
specifically, this can be expressed as in Equation 1.

$\begin{split}X_{s}&=U\Sigma_{new}V^{T}=U\begin{bmatrix}\sigma_{s}&0\\\
0&\sigma_{n}=0\end{bmatrix}V^{T}\end{split}$ (1)

where $X_{s}$ is the clean signal, $U$ is the left singular matrix,
$\sigma_{s}$ are the singular values that correspond to the signal,
$\sigma_{n}$ are the singular values that correspond to noise and $V^{T}$ is
the right singular matrix transposed. One challenge with this approach is to
accurately pinpoint the number of singular values corresponding to the signal.
In other words, identifying the point in the $\Sigma$ matrix that accurately
partitions the signal and the noise subspaces. That point is referred to as
_Cutting Point_. Hassanpour et al. Hassanpour . (2012) identified this point
as the one where the slope of the curve of the corresponding singular values
changes drastically.

Figure 2: Position of the cutting point where the slope of the curve of the
corresponding singular values changes drastically. Noise reduction can be
achieved by zeroing out singular values after that point.

##  3 Proposed Framework

Our proposed framework specifies practices for: (a) obtaining the EM signals
from the subject device, (b) performing signal pre-processing to reduce noise
while maintaining important characteristics that correspond to anomalies, (c)
fingerprinting the morphology of EM signals corresponding to normal operations
(training), and finally (d) quantifying the level of disparity of these
signals versus the ones obtained on the field towards recognizing anomalous
operations.

Signal Acquisition: To obtain the signals, the antenna must be placed in close
proximity to the target device. The distance depends mainly on the size of the
CPU chip and the enclosure/chassis of the device. The collection of a large
number of samples that correspond to each potential execution path of
instructions (e.g., same loop) is needed to achieve efficient detection. From
empirical data, the number of signal-observations of the same operation,
should be at least the same as the number of samples in each signal-
observation during the fingerprinting phase. During the deployment phase, this
number should be double. According to Vedros et al. Vedros . (2021) high
sampling rates, i.e., around x16 the CPU clock speed (with higher sampling
rates providing diminishing returns), are ideal for anomaly detection
purposes, while at the same time they provide robustness against noise and can
reliably detect even small code injections.

Noise Reduction & Pre-processing: In this work, we apply a modification of the
SVD denoising as a preprocessing step to reduce the noise level in the
captured signals. The applied adaptations revolve around two axes. On the one
hand, the method is applied to _multiple examples_ (as opposed to a single)
describing the same phenomenon, i.e., the same execution path. This
significantly speeds up the denoising process and alleviates the need for
bringing individual observations to their Hankel Matrix representation as done
in Hassanpour . (2012), thus reserving memory. On the other hand, the signals
are denoised by considering a _higher-than-usual values for cutting points_.
Although this decision may appear counter-intuitive, the reader should keep in
mind that anomaly detection and not noise elimination is the main objective.
Therefore, since the only characteristic that distinguishes different
instructions is the difference in the amplitude of the signal, we must take
special care in preserving those differences during the denoising process.

1:function Detect(benign dataset $X$, test observation $q$)

2: $status_{q}\leftarrow 0$

3: for $\forall i\in X$ do

4: $s_{x_{i}}\leftarrow LOF(X,x_{i})$

5: $S_{i}\leftarrow s_{x_{i}}$

6: end for

7: $s_{q}\leftarrow LOF(X,q)$

8: for $\forall s_{xi}\in S$ do

9: if $s_{x_{i}}\geq s_{q}$ then

10: $n\leftarrow n+1$

11: end if

12: end for

13:
${p_{q}\leftarrow\frac{n+1}{\mbox{{}\rm\sf\leavevmode\hbox{}\hbox{}x\/}+1}$\par\lx@algorithmicx@@item\noindent\hskip
12.00002pt$\tau\leftarrow 1-confidence$\lx@algorithmicx@@item\noindent\hskip
12.00002pt\textbf{if}\ $p_{max}<=\tau$\
\textbf{then}\lx@algorithmicx@@item\noindent\hskip
20.40002pt$status_{q}\leftarrow 1$\lx@algorithmicx@@item\noindent\hskip
12.00002pt\textbf{end}\
\textbf{if}\par\textbf{return}{}{$status_{q}$}\par\lx@algorithmicx@@item\noindent\hskip
0.0pt\textbf{end}\ \textbf{function}\lx@algorithmicx@endlist}$

Algorithm 1 Anomaly Detection Algorithm

Anomaly Detection: Our EM signal anomaly detection strategy is a modification
of the transduction and hypothesis testing algorithm introduced by Barbara et
al. in Barbará . (). The basic assumption of this method is that benign
instances are easy to obtain in real-life conditions. Meanwhile, malicious
cases, while bearing differences compared to benign observations, are highly
unpredictable regarding the exact location, the morphology, and the extent of
the disparity. Thus, the anomalous cases that can be observed in real-life may
potentially be infinite. The latter is the primary reason why we chose to
approach the problem at hand as an outlier detection problem rather than a
classification problem. Transduction is carried out by placing an unknown
signal in a known sample distribution of data and then carrying out hypothesis
testing; it determines whether that instance is a good fit. The process
described above is given in Algorithm 3. In further detail, the proposed
approach requires that the following steps are executed:

_Step 1:_ Collect a population of normal signals. Here, we assume that during
the fingerprinting step all examples correspond to a benign operation and the
device is not infected. This will be the _baseline_ of signals.

_Step 2:_ Apply the LOF algorithm for each example in the baseline to quantify
the strangeness (i.e., the level of unfitness) of that signal with the rest.
The reader may recall that LOF has been proven to have superior discrimination
power over simpler methods like K-Nearest Neighbors (KNN) due to the fact that
it takes into consideration the density of the neighboring points relative to
the density of the point in consideration that is why it became the method of
choice. This will be the _baseline strangeness distribution._

_Step 3:_ During the deployment phase, obtain a signal we wish to test, and
compute its _unfitness score_ with respect to the baseline constructed in Step
1 by using LOF. Then, transduce that value against the baseline strangeness
distribution that was constructed in the previous step.

_Step 4:_ As a result of the previous step, one obtains a fraction of the
number of signals whose unfitness score is greater or equal to the unfitness
score of the test point to the total signals considered. This fraction can be
considered a _p-value_ for a statistical hypothesis test, where the _null
hypothesis_ is this point belongs to the baseline distribution (i.e., it can
be considered normal), while the alternative hypothesis is this point does not
fit the distribution, (i.e. it needs to be deemed an anomaly).

Figure 3: A graphical representation of described tank filling scenario.

##  4 Experimental Setup

To evaluate the proposed framework, we created an experimental setup
consisting exclusively of low-cost, off-the-shelf components. A simple control
process emulating a _tank filling system_ was used as the software-to-be-
monitored for malicious modifications (Figure 3). The control logic was
implemented in the AVR assembly language and installed in an Arduino Mega with
an ATmega2560 CPU clocked at 16MHz. The choice of language was made to have
better control over the actual instructions being executed at the CPU.

The two adversarial cases considered in this work include the injection of ADD
and JMP instructions, respectively. An ADD instruction consumes one CPU cycle,
while a JMP instruction takes three cycles. Naturally, the injection of these
malicious instructions causes a displacement of one and three cycles.

Observations: By comparing the amplitude of the signals we can verify that
there is a difference between the normal (expected CLR) and malicious
instructions (ADD and JMP) (Figure 4).

Figure 4: Zoom-in at the critical section where the injection occurred. The
reader should compare the difference amplitude for each instruction that was
injected vs the normal instruction.

Data Gathering: We used a near-field probe placed directly on top of the
device’s CPU. This was done to obtain EM readings that are virtually noise-
free. Later on, synthetic random noise having a Gaussian distribution was
added to each signal. We considered noise levels of 10 SNR, 5 SNR, 0 SNR, -5
SNR, and -10 SNR.

Evaluation: To evaluate the detection accuracy of the proposed system, we used
the ten-fold cross-validation method. More specifically, 90% of the normal
dataset was withheld and used for training, and 10% of the remaining normal
dataset, along with the same amount of anomalous signals, was used for testing
purposes in each of the folds. The average from the folds was calculated and
reported. The predictive accuracy was evaluated using the rea Under Curve
(AUC) score of the corresponding receiver operator characteristic (ROC) curve.

##  5 Experimental Evaluation

Four sets of experiments were conducted to evaluate the efficiency of our
framework. The reader should keep in mind that all experiments consider the
injection of a minimum number of instructions, i.e., one. Therefore, all
results presented in this section define a lower bound (minimum) of predictive
accuracy.

###  5.1 Considering No Pre-processing for Noise Reduction

Table 1: Performance of the detection algorithm without applying noise
reduction as pre-processing. In parentheses, the number of neighbors provided
as input to the anomaly detection algorithm.  Injection of ADD
---
SNR |  10 |  5 |  0 |  -5 |  -10
|  99.23%(3) |  98.74%(3) |  61.93%(3) |  31.72%(3) |  21.90%(3)
Injection of JMP
SNR |  10 |  5 |  0 |  -5 |  -10
|  99.40%(3) |  99.10%(3) |  39.36%(3) |  15.30%(3) |  9.97%(3)

As a first experiment, we wanted to identify the performance of the anomaly
detection algorithm when no noise elimination is applied. Table 1 contains the
results (AUC scores) of the experiments. The results indicate that the AUC
score is near-perfect when the system is deployed in a relatively clean
environment (i.e., 10 to 5 SNR). However, the predictive accuracy rapidly
drops to very poor levels (below 70%) when considering SNR below 5dB.

Conclusions: _A noise reduction step is necessary, especially when the system
is expected to operate at SNR levels below 5 dB._

###  5.2 Considering SVD with Traditional Cutting Points for Noise Reduction

Table 2: Performance of the detection algorithm (AUC score) considering SVD
with traditional choice of cutting points, as a noise reduction step.
Injection of ADD
---
SNR |  10 |  5 |  0 |  -5 |  -10
|  4.49% (1,1,3) |  5.06% (1,1,3) |  5.49% (1,1,3) |  4.91% (1,1,3) |  5.38% (1,1,3)
Injection of JMP
SNR |  10 |  5 |  0 |  -5 |  -10
|  4.46% (1,1,3) |  4.98% (1,1,3) |  5.49% (1,1,3) |  4.87% (1,1,3) |  5.60% (1,1,3)

As a next experiment, we introduced an additional pre-processing step aiming
at noise reduction. For this experiment we assumed that the noise levels
remain the same between fingerprinting and deployment phases. In this
experiment, the parameter _cutting point_ is chosen according to traditional
criteria i.e., where the slope of the curve in the corresponding singular
values graph changes drastically Hassanpour . (2012). Notice that based on the
chosen criteria in all of our experiments the value of the cutting point was
dictated to be $1$ (i.e., only on singular value is retained).

The results of this experiment are given in Table 2. In parentheses the value
of parameters (a) cutting point used in training phase, (b) cutting point used
in deployment phase, and (c) number of neighbors. Based on the results, the
application of SVD with traditional cutting points drastically degrades the
anomaly detection accuracy for all cases. Apparently, such an aggressive noise
reduction procedure eliminates important characteristics that are indicative
of the anomalies.

Conclusion: _The application of SVD for noise reduction as a pre-processing
step when using traditional cutting points, has a negative impact on the
anomaly detection process. Therefore, new criteria for choosing optimal
cutting points should be identified._

###  5.3 Statistically Inferring Cutting Points for Anomaly Detection

Table 3: Performance of the detection algorithm (AUC score) considering SVD
with alternative cutting points, as a noise reduction step. Injection of ADD
---
SNR |  10 |  5 |  0 |  -5 |  -10
|  99.54% (25,25,3) |  99.46% (15,15,3) |  98.84% (10,10,3) |  97.45% (6,6,5) |  92.20% (4,4,5)
Injection of JMP
SNR |  10 |  5 |  0 |  -5 |  -10
|  99.84% (25,25,3) |  99.51% (15,15,3) |  99.00% (10,10,3) |  97.47% (6,6,5) |  93.07% (4,4,5)

In the next set of experiments, we use a brute force approach to find the
optimal cutting points across all considered noise environments. By increasing
the value of the cutting point parameter, we are able to achieve a significant
increase in predictive accuracy. Nevertheless, a dichotomy exists.
_Discarding_ a lot of singular values may lead to the elimination of important
characteristics indicative to anomalies, while _retaining_ too many may result
in retaining noise that may conceal or distort these artifacts-of-interest.
Detailed results for each experiment, along with the chosen hyperparameters,
are given in Table 3.

An interesting observation is that the values for the cutting points and the
number of neighbors are the same, regardless of the types of injections. This
indicates that the identified parameters for a given type of injection at a
specific level of noise are potentially _transferable_ across different types
of injections. By plotting those values (Figure 5), we can statistically
derive an Equation 2 that estimates the value of the optimal cutting point
based on the active noise level. More specifically, the formula is given as:

$\widehat{\mathcal{T}}=9.7915\cdot e^{0.0916\cdot n}$ (2)

where $n$ is the noise level in the training and deployment environments;
$\widehat{\mathcal{T}}$ is the value for the cutting points that need to be
applied to reduce noise in the training and deployment environments. This is a
number of singular values that will be retained during SVD denoising.

Figure 5: Statistical analyses of cutting points based on the noise level.

Conclusions: _(a) SVD denoising with cutting points that lead to the retention
of more singular values provides high predictive accuracy even for minimal
code injections and for extremely high levels of environmental noise; (b) It
is possible to statistically infer a formula for identifying (near-optimal)
cutting points for anomaly detection, regardless of the type of injection; (c)
The cutting points identified through the formula achieved an appropriate
level of denoising regardless on the type of injection._

###  5.4 Evaluating Considering Variable Noise Levels

Table 4: AUC scores across different noise levels. Injection of ADD
---
test SNR |  10 |  5 |  0 |  -5 |  -10
|  10 |  99.54% (25,25,3) |  98.91% (25,15,3) |  97.92% (25,10,3) |  95.71% (25,6,3) |  86.25% (25,4,25)
|  5 |  - |  99.46% (15,15,3) |  98.02% (15,10,3) |  96.67% (15,6,5) |  86.88% (15,4,25)
|  0 |  - |  - |  98.84% (10,10,5) |  96.89% (10,6,5) |  87.17% (10,4,25)
|  -5 |  - |  - |  - |  97.45% (6,6,5) |  87.28% (6,4,51)
training SNR |  -10 |  - |  - |  - |  - |  92.20% (4,4,5)
Injection of JMP
test SNR |  10 |  5 |  0 |  -5 |  -10
|  10 |  99.84% (25,25,3) |  98.97% (25,15,3) |  98.12% (25,10,3) |  96.20% (25,6,3) |  88.37% (25,4,25)
|  5 |  - |  99.51% (15,15,3) |  98.33% (15,10,3) |  96.94% (15,6,5) |  88.72% (15,4,25)
|  0 |  - |  - |  99.00% (10,10,3) |  96.99% (10,6,5) |  88.90% (10,4,25)
|  -5 |  - |  - |  - |  97.47% (6,6,5) |  88.94% (6,4,51)
training SNR |  -10 |  - |  - |  - |  - |  93.07% (4,4,5)

The subsequent set of experiments aims to quantify the predictive accuracy of
our approach assuming that the noise levels have increased from the
fingerprinting to the testing phase. The results of this experiment are
provided in Table 4. In parentheses are the hyperapameters used to obtain the
results namely, the cutting point during the fingerpinting phase, the cutting
point during the deployment phase, and lastly the number of neighbors. The
reader may notice that different cutting points were used for the two phases.
All cutting points were derived automatically from Equation 2 without further
analysis. Utilizing the new strategy for inferring cutting points dramatically
increases the anomaly detection accuracy to levels higher than 95% (AUC score)
for the majority of the cases. The only exception to this rule is the case of
having an extremely noisy deployment environment i.e., -10SNR. In this case,
the best condition is to train the baseline in an equally noisy environment
which yields an AUC score of 92.20% and 93.07% respectively. For the cases
where the noise levels differ, an average of 86.89% for the ADD and 88.73% for
the JMP is expected. These results constitute a dramatic improvement over
applying SVD noise reduction with conventional cutting points.

Conclusions: _The proposed framework can achieve highly accurate anomaly
detection even if the noise levels drastically increase from fingerprinting to
deployment stage._

##  6 Conclusion

EM-based anomaly detection systems may be particularly advantageous in the
realm of embedded devices because they are able to detect modifications in
software such as the injection of foreign instructions, remotely, without
burdening the target system. However, the majority of works in the area, do
not consider the impact of environmental noise. In this work, we introduced an
EM-based anomaly detection framework that is robust against environmental
noise. Through experiments, we proved that the proposed system yields highly
accurate predictions i.e., 94-95% AUC score even in environments of extremely
high noise levels, by utilizing the SVD technique to achieve noise reduction.
Among the most important contributions of this work is an equation that can
infer values for the highly sensitive denoising hyperparameters (i.e., cutting
points).

Acknowledgments

Prepared as part of the Laboratory Directed Research and Development program
under DOE Idaho Operations Office Contract DE-AC07-05ID14517. We also
acknowledge the Resilient Control and Instrumentation Systems (ReCIS) program.

## References

  *   * Anton . (2019) anton2019discussingAnton, S.D.D., Lohfink, A.P. Schotten, H.D.  2019\.  Discussing the Feasibility of Acoustic Sensors for Side Channel-aided Industrial Intrusion Detection: An Essay Discussing the feasibility of acoustic sensors for side channel-aided industrial intrusion detection: An essay. Proceedings of the Third Central European Cybersecurity Conference Proceedings of the third central european cybersecurity conference ( 1–4).
  * Barbará . () Barbara06Barbará, D., Domeniconi, C. Rogers, J.  .  Detecting Outliers using Transduction and Statistical Testing Detecting outliers using transduction and statistical testing. Twelfth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Twelfth acm sigkdd international conference on knowledge discovery and data mining.  Philadelphia.
  * Breunig . (2000) breunig2000lofBreunig, M.M., Kriegel, HP., Ng, R.T. Sander, J.  2000\.  LOF: identifying density-based local outliers Lof: identifying density-based local outliers. Proceedings of the 2000 ACM SIGMOD international conference on Management of data Proceedings of the 2000 acm sigmod international conference on management of data ( 93–104).
  * Govindarajan . (2019) govindarajan2019partialGovindarajan, S., Subbaiah, J., Cavallini, A., Krithivasan, K. Jayakumar, J.  2019\.  Partial discharge random noise removal using Hankel matrix-based fast singular value decomposition Partial discharge random noise removal using hankel matrix-based fast singular value decomposition. IEEE Transactions on Instrumentation and Measurement6974093–4102.
  * Han . (2017) han2017watchHan, Y., Etigowni, S., Liu, H., Zonouz, S. Petropulu, A.  2017\.  Watch me, but don’t touch me! contactless control flow monitoring via electromagnetic emanations Watch me, but don’t touch me! contactless control flow monitoring via electromagnetic emanations. Proceedings of the 2017 ACM SIGSAC conference on computer and communications security Proceedings of the 2017 acm sigsac conference on computer and communications security ( 1095–1108).
  * Hassanpour . (2012) hassanpour2012timeHassanpour, H., Zehtabian, A. Sadati, S.  2012\.  Time domain signal enhancement based on an optimized singular vector denoising algorithm Time domain signal enhancement based on an optimized singular vector denoising algorithm. Digital Signal Processing225786–794.
  * Islam . (2017) islam2017exploitingIslam, M.A., Ren, S. Wierman, A.  2017\.  Exploiting a thermal side channel for power attacks in multi-tenant data centers Exploiting a thermal side channel for power attacks in multi-tenant data centers. Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security Proceedings of the 2017 acm sigsac conference on computer and communications security ( 1079–1094).
  * Khan . (2018) khan2018detailedKhan, H.A., Alam, M., Zajic, A. Prvulovic, M.  2018\.  Detailed tracking of program control flow using analog side-channel signals: a promise for iot malware detection and a threat for many cryptographic implementations Detailed tracking of program control flow using analog side-channel signals: a promise for iot malware detection and a threat for many cryptographic implementations. Cyber Sensing 2018 Cyber sensing 2018 ( 10630,  1063005).
  * Liu . (2016) liu2016codeLiu, Y., Wei, L., Zhou, Z., Zhang, K., Xu, W. Xu, Q.  2016\.  On code execution tracking via power side-channel On code execution tracking via power side-channel. Proceedings of the 2016 ACM SIGSAC conference on computer and communications security Proceedings of the 2016 acm sigsac conference on computer and communications security ( 1019–1031).
  * Nazari . (2017) nazari2017eddieNazari, A., Sehatbakhsh, N., Alam, M., Zajic, A. Prvulovic, M.  2017\.  Eddie: Em-based detection of deviations in program execution Eddie: Em-based detection of deviations in program execution. Proceedings of the 44th Annual International Symposium on Computer Architecture Proceedings of the 44th annual international symposium on computer architecture ( 333–346).
  * Vedros . (2021) vedros2021limitsVedros, K., Makrakis, G.M., Kolias, C., Xian, M., Barbará, D. Rieger, C.  2021\.  On the Limits of EM Based Detection of Control Logic Injection Attacks In Noisy Environments On the limits of em based detection of control logic injection attacks in noisy environments. 2021 Resilience Week (RWS) 2021 resilience week (rws) ( 1–9).