Technical Reports (CIS)


FPGA Viruses

Document Type

Technical Report

Date of this Version

January 1999


University of Pennsylvania Department of Computer and Information Science Technical Report No. MS-CIS-99-06.


Programmable logic is widely used, for applications ranging from field-upgradeable subsystems to advanced uses such as reconfigurable computing platforms which are modifiable at run-time. Users can thus implement algorithms which are largely executed by a general-purpose CPU, but may be selectively accelerated with special purpose hardware. In this paper, we show that programmable logic devices unfortunately open another avenue for malicious users to implement the hardware analogue of a computer virus.

We begin this paper with an outline of the general properties of FPGAs that create risks. We then explain how to exploit these risks, and demonstrate through directed experiments that they are exploitable even in the absence of detailed layout information. We prove our point by demonstrating the first known FPGA virus and its effect on the current absorbed by the device, namely that the device is destroyed. We close by outlining possible methods of defense and point out the similarities and differences between FPGA and software viruses.



Date Posted: 31 October 2006