## Game of Threads: Enabling Asynchronous Poisoning Attacks

Session: Privacy and security in machine learning--In ML we trust???

Authors: Jose Sanchez Vicarte (University of Illinois at Urbana-Champaign); Benjamin Schreiber (University of Illinois at Urbana-Champaign); Riccardo Paccagnella (University of Illinois at Urbana-Champaign); Christopher Fletcher (University of Illinois at Urbana-Champaign)

As data sizes continue to grow at an unprecedented rate, machine learning training is being forced to adopt asynchronous algorithms to maintain performance and scalability. In asynchronous training, many threads share and update the model in a racy fashion to avoid costly inter-thread synchronization. This paper studies the security implications of these codes by introducing \emph{asynchronous poisoning attacks}. Our attack influences training outcome--e.g., degrades model accuracy or biases the model towards an adversary-specified label--purely by scheduling asynchronous training threads in a malicious fashion. Since thread scheduling is outside the protections of modern trusted execution environments (TEEs), e.g., Intel SGX, our attack bypasses these protections even when the training set can be verified as correct. To the best of our knowledge, this represents the first example where a class of applications loses integrity guarantees, despite being protected by enclave-based TEEs such as SGX. We demonstrate both accuracy degradation and model biasing attacks on the CIFAR-10 image recognition task, trained on Resnet-style DNNs using an asynchronous training code published by Pytorch. We also perform proof-of-concept experiments to validate our assumptions on an SGX-enabled machine. Our accuracy degradation attacks are capable of returning a converged model to pre-trained accuracy or to some accuracy in between. Our model biasing attack can force the model to predict an adversary-specified label up to $\sim40$\% of the time on the CIFAR-10 validation set (whereas the un-attacked model's prediction rate towards any label is $\sim10\%$).