UC San Diego
Exploring security implications of the AMD STREAM PROCESSOR
- Author(s): Lee, Seung-won
- et al.
Since its invention, the graphics card has become one of the most important components of a computer system. In early days of computer architecture, the CPU was responsible for performing most of the computations needed for the transfer of the image data from the software state onto the screen, while the graphics card's role was limited to determining where the resulting image was to be placed on the screen. However, recently developed graphics cards not only can handle manipulating and displaying images, but are also making computational inroads into some of the tasks formerly performed by the CPU due to their fast, highly-parallel embedded graphics processing unit (GPU). Modern, high-end GPUs have faster computation rates compared to CPUs when dealing with heavy floating- point computations, and their usage has spread into a variety of fields, such as computing complex algorithms in Artificial Intelligence, Bioinformatics, etc. ATI Technologies has recently developed the AMD Stream Processor (also known as the AMD FireStream) that uses a modified stream processor to allow a General Purpose Computing on Graphics Processing Units (GPGPU). The stream processing hardware comes with Close-to-Metal (CTM), a hardware interface that exposes the GPU architecture to provide direct communication to the device. The CTM allows the developer to directly access the instruction set, along with the memory space used by the AMD graphics card. The developer not only can allocate and access resources in the GPU local memory, but also has the ability to control resources in the CPU system memory. In this thesis, we particularly focus on the CTM's ability to allow developers to directly allocate and access memory space in the CPU. The core of our research aims to understand how the AMD Stream Processor writes to the system memory, including whether it writes to the system memory independent of the CPU, and whether a malicious user can inject malicious code through the GPU without being noticed by any anti-virus program