48 research outputs found

    FPGA based remote code integrity verification of programs in distributed embedded systems

    Get PDF
    The explosive growth of networked embedded systems has made ubiquitous and pervasive computing a reality. However, there are still a number of new challenges to its widespread adoption that include scalability, availability, and, especially, security of software. Among the different challenges in software security, the problem of remote-code integrity verification is still waiting for efficient solutions. This paper proposes the use of reconfigurable computing to build a consistent architecture for generation of attestations (proofs) of code integrity for an executing program as well as to deliver them to the designated verification entity. Remote dynamic update of reconfigurable devices is also exploited to increase the complexity of mounting attacks in a real-word environment. The proposed solution perfectly fits embedded devices that are nowadays commonly equipped with reconfigurable hardware components that are exploited to solve different computational problems

    Trusted SoC Realization for Remote Dynamic IP Integration

    Get PDF
    Heutzutage bieten field-programmable gate arrays (FPGAs) enorme Rechenleistung und FlexibilitĂ€t. Zudem sind sie oft auf einem einzigen Chip mit eingebetteten Multicore-Prozessoren, DSP-Engines und Speicher-Controllern integriert. Dadurch sind sie fĂŒr große und komplexe Anwendungen geeignet. Gleichzeitig fĂŒhrten die Fortschritte auf dem Gebiet der High-Level-Synthese und die VerfĂŒgbarkeit standardisierter Schnittstellen (wie etwa das Advanced eXtensible Interface 4) zur Entwicklung spezialisierter und neuartiger FunktionalitĂ€ten durch DesignhĂ€user. All dies schuf einen Bedarf fĂŒr ein Outsourcing der Entwicklung oder die Lizenzierung von FPGA-IPs (Intellectual Property). Ein Pay-per-Use IP-Lizenzierungsmodell, bei dem diese IPs vor allen Marktteilnehmern geschĂŒtzt sind, kommt den Entwicklern der IPs zugute. Außerdem handelt es sich bei den Entwicklern von FPGA-Systemen in der Regel um kleine bis mittlere Unternehmen, die in Bezug auf die MarkteinfĂŒhrungszeit und die Kosten pro Einheit von einem solchen Lizenzierungsmodell profitieren können. Im akademischen Bereich und in der Industrie gibt es mehrere IP-Lizenzierungsmodelle und Schutzlösungen, die eingesetzt werden können, die jedoch mit zahlreichen Sicherheitsproblemen behaftet sind. In einigen FĂ€llen verursachen die vorgeschlagenen Sicherheitsmaßnahmen einen unnötigen Ressourcenaufwand und EinschrĂ€nkungen fĂŒr die Systementwickler, d. h., sie können wesentliche Funktionen ihres GerĂ€ts nicht nutzen. DarĂŒber hinaus lassen sie zwei funktionale Herausforderungen außer Acht: das Floorplanning der IP auf der programmierbaren Logik (PL) und die Generierung des Endprodukts der IP (Bitstream) unabhĂ€ngig vom Gesamtdesign. In dieser Arbeit wird ein Pay-per-Use-Lizenzierungsschema vorgeschlagen und unter Verwendung eines security framework (SFW) realisiert, um all diese Herausforderungen anzugehen. Das vorgestellte Schema ist pragmatisch, weniger restriktiv fĂŒr Systementwickler und bietet Sicherheit gegen IP-Diebstahl. DarĂŒber hinaus werden Maßnahmen ergriffen, um das System vor einem IP zu schĂŒtzen, das bösartige Schaltkreise enthĂ€lt. Das „Secure Framework“ umfasst ein vertrauenswĂŒrdiges Betriebssystem, ein reichhaltiges Betriebssystem, mehrere unterstĂŒtzende Komponenten (z. B. TrustZone- Logik, gegen Seitenkanalangriffe (SCA) resistente EntschlĂŒsselungsschaltungen) und Softwarekomponenten, z. B. fĂŒr die Bitstromanalyse. Ein GerĂ€t, auf dem das SFW lĂ€uft, kann als vertrauenswĂŒrdiges GerĂ€t betrachtet werden, das direkt mit einem Repository oder einem IP-Core-Entwickler kommunizieren kann, um IPs in verschlĂŒsselter Form zu erwerben. Die EntschlĂŒsselung und Authentifizierung des IPs erfolgt auf dem GerĂ€t, was die AngriffsflĂ€che verringert und es weniger anfĂ€llig fĂŒr IP-Diebstahl macht. Außerdem werden Klartext-IPs in einem geschĂŒtzten Speicher des vertrauenswĂŒrdigen Betriebssystems abgelegt. Das Klartext-IP wird dann analysiert und nur dann auf der programmierbaren Logik konfiguriert, wenn es authentisch ist und keine bösartigen Schaltungen enthĂ€lt. Die Bitstrom-AnalysefunktionalitĂ€t und die SFW-Unterkomponenten ermöglichen die Partitionierung der PL-Ressourcen in sichere und unsichere Ressourcen, d. h. die Erweiterung desKonzepts der vertrauenswĂŒrdigen AusfĂŒhrungsumgebung (TEE) auf die PL. Dies ist die erste Arbeit, die das TEE-Konzept auf die programmierbare Logik ausweitet. Bei der oben erwĂ€hnten SCA-resistenten EntschlĂŒsselungsschaltung handelt es sich um die Implementierung des Advanced Encryption Standard, der so modifiziert wurde, dass er gegen elektromagnetische und stromverbrauchsbedingte Leckagen resistent ist. Das geschĂŒtzte Design verfĂŒgt ĂŒber zwei Gegenmaßnahmen, wobei die erste auf einer Vielzahl unterschiedler Implementierungsvarianten und verĂ€nderlichen Zielpositionen bei der Konfiguration basiert, wĂ€hrend die zweite nur unterschiedliche Implementierungsvarianten verwendet. Diese Gegenmaßnahmen sind auch wĂ€hrend der Laufzeit skalierbar. Bei der Bewertung werden auch die Auswirkungen der Skalierbarkeit auf den FlĂ€chenbedarf und die SicherheitsstĂ€rke berĂŒcksichtigt. DarĂŒber hinaus wird die zuvor erwĂ€hnte funktionale Herausforderung des IP Floorplanning durch den Vorschlag eines feinkörnigen Automatic Floorplanners angegangen, der auf gemischt-ganzzahliger linearer Programmierung basiert und aktuelle FPGAGenerationen mit grĂ¶ĂŸeren und komplexen Bausteine unterstĂŒtzt. Der Floorplanner bildet eine Reihe von IPs auf dem FPGA ab, indem er prĂ€zise rekonfigurierbare Regionen schafft. Dadurch werden die verbleibenden verfĂŒgbaren Ressourcen fĂŒr das Gesamtdesign maximiert. Die zweite funktionale Herausforderung besteht darin, dass die vorhandenen Tools keine native FunktionalitĂ€t zur Erzeugung von IPs in einer eigenstĂ€ndigen Umgebung bieten. Diese Herausforderung wird durch den Vorschlag eines unabhĂ€ngigen IP-Generierungsansatzes angegangen. Dieser Ansatz kann von den Marktteilnehmern verwendet werden, um IPs eines Entwurfs unabhĂ€ngig vom Gesamtentwurf zu generieren, ohne die KompatibilitĂ€t der IPs mit dem Gesamtentwurf zu beeintrĂ€chtigen

    Chiffrement authentifié sur FPGAs de la partie reconfigurable à la partie static

    Get PDF
    Communication systems need to access, store, manipulate, or communicate sensitive information. Therefore, cryptographic primitives such as hash functions and block ciphers are deployed to provide encryption and authentication. Recently, techniques have been invented to combine encryption and authentication into a single algorithm which is called Authenticated Encryption (AE). Combining these two security services in hardware produces better performance compared to two separated algorithms since authentication and encryption can share a part of the computation. Because of combining the programmability with the performance ofcustom hardware, FPGAs become more common as an implementation target for such algorithms. The first part of this thesis is devoted to efficient and high-speed FPGA-based architectures of AE algorithms, AES-GCM and AEGIS-128, in order to be used in the reconfigurable part of FPGAs to support security services of communication systems. Our focus on the state of the art leads to the introduction of high-speed architectures for slow changing keys applications like Virtual Private Networks (VPNs). Furthermore, we present an efficient method for implementing the GF(2ÂčÂČ⁞) multiplier, which is responsible for the authentication task in AES-GCM, to support high-speed applications. Additionally, an efficient AEGIS-128is also implemented using only five AES rounds. Our hardware implementations were evaluated using Virtex-5 and Virtex-4 FPGAs. The performance of the presented architectures (Thr./Slices) outperforms the previously reported ones.The second part of the thesis presents techniques for low cost solutions in order to secure the reconfiguration of FPGAs. We present different ranges of low cost implementations of AES-GCM, AES-CCM, and AEGIS-128, which are used in the static part of the FPGA in order to decrypt and authenticate the FPGA bitstream. Presented ASIC architectures were evaluated using 90 and 65 nm technologies and they present better performance compared to the previous work.Les systĂšmes de communication ont besoin d'accĂ©der, stocker, manipuler, ou de communiquer des informations sensibles. Par consĂ©quent, les primitives cryptographiques tels que les fonctions de hachage et le chiffrement par blocs sont dĂ©ployĂ©s pour fournir le cryptage et l'authentification. RĂ©cemment, des techniques ont Ă©tĂ© inventĂ©s pour combiner cryptage et d'authentification en un seul algorithme qui est appelĂ© authentifiĂ©s Encryption (AE). La combinaison de ces deux services de sĂ©curitĂ© dans le matĂ©riel de meilleures performances par rapport aux deux algorithmes sĂ©parĂ©s puisque l'authentification et le cryptage peuvent partager une partie du calcul. En raison de la combinaison de la programmation de l'exĂ©cution de matĂ©riel personnalisĂ©, FPGA deviennent plus communs comme cible d'une mise en Ɠuvre de ces algorithmes. La premiĂšre partie de cette thĂšse est consacrĂ©e aux architectures d'algorithmes AE, AES-GCM et AEGIS-128 Ă  base de FPGA efficaces et Ă  grande vitesse, afin d'ĂȘtre utilisĂ© dans la partie reconfigurable FPGA pour soutenir les services de sĂ©curitĂ© des systĂšmes de communication. Notre focalisation sur l'Ă©tat de l'art conduit Ă  la mise en place d'architectures Ă  haute vitesse pour les applications lentes touches changeantes comme les rĂ©seaux privĂ©s virtuels (VPN). En outre, nous prĂ©sentons un procĂ©dĂ© efficace pour mettre en Ɠuvre le GF(2ÂčÂČ⁞) multiplicateur, qui est responsable de la tĂąche d'authentification en AES-GCM, pour supporter les applications Ă  grande vitesse. En outre, un systĂšme efficace AEGIS-128 est Ă©galement mis en Ɠuvre en utilisant seulement cinq tours AES. Nos rĂ©alisations matĂ©rielles ont Ă©tĂ© Ă©valuĂ©es Ă  l'aide Virtex-5 et Virtex-4 FPGA. La performance des architectures prĂ©sentĂ©es (Thr. / Parts) surpasse ceux signalĂ©s prĂ©cĂ©demment. La deuxiĂšme partie de la thĂšse prĂ©sente des techniques pour des solutions Ă  faible coĂ»t afin de garantir la reconfiguration du FPGA. Nous prĂ©sentons diffĂ©rentes gammes de mises en Ɠuvre Ă  faible coĂ»t de AES-GCM, AES-CCM, et AEGIS-128, qui sont utilisĂ©s dans la partie statique du FPGA afin de dĂ©crypter et authentifier le bitstream FPGA. Architectures ASIC prĂ©sentĂ©es ont Ă©tĂ© Ă©valuĂ©es Ă  l'aide de 90 et 65 technologies nm et prĂ©sentent de meilleures performances par rapport aux travaux antĂ©rieurs

    An End-to-End Bitstream Tamper Attack Against Flip-Chip FPGAs

    Get PDF
    FPGA bitstream encryption and authentication can be defeated by various techniques and it is critical to understand how these vulnerabilities enable extraction and tampering of commercial FPGA bitstreams. We exploit the physical vulnerability of bitstream encryption keys to readout using failure analysis equipment and conduct an end-to-end bitstream tamper attack. Our work underscores the feasibility of supply chain bitstream tampering and the necessity of guarding against such attacks in critical systems

    Virtualized Reconfigurable Resources and Their Secured Provision in an Untrusted Cloud Environment

    Get PDF
    The cloud computing business grows year after year. To keep up with increasing demand and to offer more services, data center providers are always searching for novel architectures. One of them are FPGAs, reconfigurable hardware with high compute power and energy efficiency. But some clients cannot make use of the remote processing capabilities. Not every involved party is trustworthy and the complex management software has potential security flaws. Hence, clients’ sensitive data or algorithms cannot be sufficiently protected. In this thesis state-of-the-art hardware, cloud and security concepts are analyzed and com- bined. On one side are reconfigurable virtual FPGAs. They are a flexible resource and fulfill the cloud characteristics at the price of security. But on the other side is a strong requirement for said security. To provide it, an immutable controller is embedded enabling a direct, confidential and secure transfer of clients’ configurations. This establishes a trustworthy compute space inside an untrusted cloud environment. Clients can securely transfer their sensitive data and algorithms without involving vulnerable software or a data center provider. This concept is implemented as a prototype. Based on it, necessary changes to current FPGAs are analyzed. To fully enable reconfigurable yet secure hardware in the cloud, a new hybrid architecture is required.Das GeschĂ€ft mit dem Cloud Computing wĂ€chst Jahr fĂŒr Jahr. Um mit der steigenden Nachfrage mitzuhalten und neue Angebote zu bieten, sind Betreiber von Rechenzentren immer auf der Suche nach neuen Architekturen. Eine davon sind FPGAs, rekonfigurierbare Hardware mit hoher Rechenleistung und Energieeffizienz. Aber manche Kunden können die ausgelagerten RechenkapazitĂ€ten nicht nutzen. Nicht alle Beteiligten sind vertrauenswĂŒrdig und die komplexe Verwaltungssoftware ist anfĂ€llig fĂŒr SicherheitslĂŒcken. Daher können die sensiblen Daten dieser Kunden nicht ausreichend geschĂŒtzt werden. In dieser Arbeit werden modernste Hardware, Cloud und Sicherheitskonzept analysiert und kombiniert. Auf der einen Seite sind virtuelle FPGAs. Sie sind eine flexible Ressource und haben Cloud Charakteristiken zum Preis der Sicherheit. Aber auf der anderen Seite steht ein hohes SicherheitsbedĂŒrfnis. Um dieses zu bieten ist ein unverĂ€nderlicher Controller eingebettet und ermöglicht eine direkte, vertrauliche und sichere Übertragung der Konfigurationen der Kunden. Das etabliert eine vertrauenswĂŒrdige Rechenumgebung in einer nicht vertrauenswĂŒrdigen Cloud Umgebung. Kunden können sicher ihre sensiblen Daten und Algorithmen ĂŒbertragen ohne verwundbare Software zu nutzen oder den Betreiber des Rechenzentrums einzubeziehen. Dieses Konzept ist als Prototyp implementiert. Darauf basierend werden nötige Änderungen von modernen FPGAs analysiert. Um in vollem Umfang eine rekonfigurierbare aber dennoch sichere Hardware in der Cloud zu ermöglichen, wird eine neue hybride Architektur benötigt

    Interdiction in Practice – Hardware Trojan Against a High-Security USB Flash Drive

    Get PDF
    As part of the revelations about the NSA activities, the notion of interdiction has become known to the public: the interception of deliveries to manipulate hardware in a way that backdoors are introduced. Manipulations can occur on the firmware or at hardware level. With respect to hardware, FPGAs are particular interesting targets as they can be altered by manipulating the corresponding bitstream which configures the device. In this paper, we demonstrate the first successful real-world FPGA hardware Trojan insertion into a commercial product. On the target device, a FIPS-140-2 level 2 certified USB flash drive from Kingston, the user data is encrypted using AES-256 in XTS mode, and the encryption/decryption is processed by an off-the-shelf SRAM-based FPGA. Our investigation required two reverse-engineering steps, related to the proprietary FPGA bitstream and to the firmware of the underlying ARM CPU. In our Trojan insertion scenario the targeted USB flash drive is intercepted before being delivered to the victim. The physical Trojan insertion requires the manipulation of the SPI flash memory content, which contains the FPGA bitstream as well as the ARM CPU code. The FPGA bitstream manipulation alters the exploited AES-256 algorithm in a way that it turns into a linear function which can be broken with 32 known plaintext-ciphertext pairs. After the manipulated USB flash drive has been used by the victim, the attacker is able to obtain all user data from the ciphertexts. Our work indeed highlights the security risks and especially the practical relevance of bitstream modification attacks that became realistic due to FPGA bitstream manipulations
    corecore