10K feet view: We present DABANGG (meaning fearless), a set of refinements that make flush-based cache attacks resilient to system noise. Dynamic Voltage & Frequency Scaling (DVFS) is ubiquitous in modern processors, which results in frequent frequency change in the cores of the processor. This results in variable execution latency for instructions, which renders a set of thresholds chosen to distinguish a cache hit from a miss useless. We build upon this dynamism in frequency to make robust, noise-resilient attacks that are highly potent and easy to mount, requiring no supervisor privileges.
DABANGG is a Hindi word, meaning “fearless”. In general Flush based attacks lose their effectiveness on a noisy system environment. It turns out the processor frequency controlled by the DVFS is the culprit. DABANGG is conscious of processor frequency and hence resilient to system noise.
DVFS stands for dynamic voltage and frequency scaling. To improve the power/performance tradeoff, DVFS controller controls the voltage and frequency (clock rate). As cache timing attacks rely on latency numbers which are dependent on the clock rate. It is necessary to make the cache attacks aware of DVFS effects.
No. CLKScrew is a fault based attack whereas DABANGG is a timing channel attack.
Yes, as Spectre uses a cache covert channel.
A Github link will be up by June 15 2020. Stay tuned.
No, it works seamlessly with AMD processors too.
Yes, it works with the macOS too.
This work is supported by the Semiconductor Research Consortium (SRC) grant SRC-2853.001.