PhantomFetch: Obfuscating Loads against Prefetcher Side-Channel Attacks
Xingzhi Zhang, Buyi Lv, Yimin Lu, Kai Bu
TL;DR
The paper tackles leakage from IP-stride prefetcher side-channel attacks, notably AfterImage, by proposing PhantomFetch, a defense that obfuscates the impact of the victim's secret-dependent loads without hardware modifications. It introduces two schemes: PhantomFetch-vLI (OS-based load injection) and PhantomFetch-vLR (compiler-based load relocation), both achieving prefetching retention while being hardware-agnostic. The methods are evaluated showing negligible overhead for vLI (approximately 0.6%) and modest overhead for vLR (approximately 4%), demonstrating practical applicability on off-the-shelf devices. This work enables secure deployment of prefetching-enabled systems by breaking the exploitable coupling between trained prefetcher entries and secret-dependent loads without remanufacturing hardware.
Abstract
The IP-stride prefetcher has recently been exploited to leak secrets through side-channel attacks. It, however, cannot be simply disabled for security with prefetching speedup as a sacrifice. The state-of-the-art defense tries to retain the prefetching effect by hardware modification. In this paper, we present PhantomFetch as the first prefetching-retentive and hardware-agnostic defense. It avoids potential remanufacturing cost and enriches applicability to off-the-shelf devices. The key idea is to directly break the exploitable coupling between trained prefetcher entries and the victim's secret-dependent loads by obfuscating the sensitive load effects of the victim. The experiment results show that PhantomFetch can secure the IP-stride prefetcher with only negligible overhead.
