Hardveres trójai vírusok ASIC és FPGA áramkörökben

Hasonló dokumentumok
VIII. BERENDEZÉSORIENTÁLT DIGITÁLIS INTEGRÁLT ÁRAMKÖRÖK (ASIC)

Elvonatkoztatási szintek a digitális rendszertervezésben

III. Alapfogalmak és tervezési módszertan SystemC-ben

Alapkapuk és alkalmazásaik

10. EGYSZERŰ HÁLÓZATOK TERVEZÉSE A FEJLESZTŐLAPON Ennél a tervezésnél egy olyan hardvert hozunk létre, amely a Basys2 fejlesztőlap két bemeneti

Digitális eszközök típusai

Előadó: Nagy István (A65)

Programozás és digitális technika II. Logikai áramkörök. Pógár István Debrecen, 2016

Szárazföldi autonóm mobil robotok vezérlőrendszerének kialakítási lehetőségei. Kucsera Péter ZMNE Doktorandusz

Feszültségszintek. a) Ha egy esemény bekövetkezik akkor az értéke 1 b) Ha nem következik be akkor az értéke 0

Nagy Gergely április 4.

MIKROELEKTRONIKA, VIEEA306

1. DIGITÁLIS TERVEZÉS PROGRAMOZHATÓ LOGIKAI ÁRAMKÖRÖKKEL (PLD)

Kombinációs hálózatok és sorrendi hálózatok realizálása félvezető kapuáramkörökkel

LOGIKAI TERVEZÉS. Előadó: Dr. Oniga István

Mikroelektronikai tervezés

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

Alapkapuk és alkalmazásaik

Joint Test Action Group (JTAG)

Digitális Technika. Dr. Oniga István Debreceni Egyetem, Informatikai Kar

Integrált áramkörök/5 ASIC áramkörök

Laptop: a fekete doboz

Hobbi Elektronika. Bevezetés az elektronikába: Logikai kapuáramkörök

Logikai áramkörök. Informatika alapjai-5 Logikai áramkörök 1/6

DIGITÁLIS TECHNIKA. Szabó Tamás Dr. Lovassy Rita - Tompos Péter. Óbudai Egyetem Kandó Kálmán Villamosmérnöki Kar LABÓRATÓRIUMI ÚTMUTATÓ

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

CLEVER LIGHT RENDSZER/ Dinamikus kijáratmutatók

Digitális Technika. Dr. Oniga István Debreceni Egyetem, Informatikai Kar

Digitális áramkörök és rendszerek alkalmazása az űrben 3.

Perifériák hozzáadása a rendszerhez

2004 Xilinx, Inc. All Rights Reserved. EDK Overview Xilinx, Inc. All Rights Reserved

Gingl Zoltán, Szeged, :47 Elektronika - Műveleti erősítők

Témakiírások 2014/15. őszi félévben

11.2. A FESZÜLTSÉGLOGIKA

Mikrorendszerek tervezése

Robotot vezérlő szoftverek fejlesztése Developing robot controller softwares

XI. DIGITÁLIS RENDSZEREK FIZIKAI MEGVALÓSÍTÁSÁNAK KÉRDÉSEI Ebben a fejezetben a digitális rendszerek analóg viselkedésével kapcsolatos témákat

MIKRO MÉRETŰ PILÓTA NÉLKÜLI REPÜLŐK REPÜLÉSBIZTONSÁGI KÉRDÉSEI ELEKTROMOS TÁPELLÁTÁS BIZTONSÁGA

Integrált áramkörök/3 Digitális áramkörök/2 CMOS alapáramkörök Rencz Márta Ress Sándor

Digitális technika II. (vimia111) 5. gyakorlat: Tervezés adatstruktúra-vezérlés szétválasztással, vezérlőegység generációk

Digitális technika (VIMIAA02) Laboratórium 3

Foglalkozási napló a 20 /20. tanévre

Bev Be e v z e e z t e ő t az ISE re r nds nds e z r e használatához

8.3. AZ ASIC TESZTELÉSE

IRÁNYÍTÁSTECHNIKAI ALAPFOGALMAK, VEZÉRLŐBERENDEZÉSEK FEJLŐDÉSE, PLC-GENERÁCIÓK

LIN, BSS, PCM Protokollok (COM Interfész) Szeptember

ems2.cp04d [18010] Keriterv Mérnök Kft Programozható Automatikai állomás 14 multifunkcionális bemenet, 6 relé kimenet, 4 analóg kimenet DIGICONTROL

Programozó- készülék Kezelőkozol RT óra (pl. PC) Digitális bemenetek ROM memória Digitális kimenetek RAM memória Analóg bemenet Analóg kimenet

Tranziens EMC vizsgálat és hardvertervezés FPGA-val

1. A VHDL mint rendszertervező eszköz

Bevezetés az elektronikába

Integrált áramkörök/6 ASIC áramkörök tervezése

MOTOR HAJTÁS Nagyfeszültségű megszakító

HDL tervezés. Gábor Bata FPGA Developer Microwave Networks Ericsson Hungary Ltd.

Számítógép Architektúrák (MIKNB113A)

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

Moore & more than Moore

USB adatgyűjtő eszközök és programozásuk Mérő- és adatgyűjtő rendszerek

Arduino bevezető Szenzorhálózatok és alkalmazásaik

MIKROELEKTRONIKA, VIEEA306

Hobbi Elektronika. A digitális elektronika alapjai: Sorrendi logikai áramkörök 3. rész

Digitális technika (VIMIAA01) Laboratórium 4

József Attila Gimnázium és Eü. Szakközépiskola spec. mat.

1. Egy lineáris hálózatot mikor nevezhetünk rezisztív hálózatnak és mikor dinamikus hálózatnak?

Hobbi Elektronika. A digitális elektronika alapjai: További logikai műveletek

Digitális technika (VIMIAA02) Laboratórium 4

ISE makró (saját alkatrész) készítése

Digitális technika (VIMIAA02) Laboratórium 3

Digitális technika (VIMIAA02) Laboratórium 1

Hardver leíró nyelvek (HDL)

DIGITÁLIS TECHNIKA 7. Előadó: Dr. Oniga István

Digitális technika (VIMIAA02) Laboratórium 1

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

MIKROELEKTRONIKA, VIEEA306

LOGIKAI TERVEZÉS. Előadó: Dr. Oniga István Egytemi docens

Programmable Chip. System on a Chip. Lazányi János. Tartalom. A hagyományos technológia SoC / PSoC SoPC Fejlesztés menete Mi van az FPGA-ban?

Digitális technika (VIMIAA02) Laboratórium 4

OMRON FOTOELEKTROMOS KAPCSOLÓK E3NT

Programozható logikai vezérlő

PROGRAMOZHATÓ LOGIKAI ESZKÖZÖK. Elıadó: Dr. Oniga István Egytemi docens

Hobbi Elektronika. A digitális elektronika alapjai: Kombinációs logikai hálózatok 1. rész

Digitális Technika. Dr. Oniga István Debreceni Egyetem, Informatikai Kar

5.1. fejezet - Általános 32 bites mikrovezérlő/processzor alkalmazástechnikája A Freescale

Fizikai támadások HSM-ek ellen. Pintér Olivér

FPGA áramkörök alkalmazásainak vizsgálata

Számítógép összeszerelése

PAL és GAL áramkörök. Programozható logikai áramkörök. Előadó: Nagy István

MIKROELEKTRONIKA 7. MOS struktúrák: -MOS dióda, Si MOS -CCD (+CMOS matrix) -MOS FET, SOI elemek -MOS memóriák

MÉRÉS ÉS TESZTELÉS COBRA CONTROL. NATIONAL INSTRUMENTS Alliance Partner. GÖPEL ELECTRONIC és. DIGITALTEST disztribútor

Digitális rendszerek. Digitális logika szintje

MISKOLCI EGYETEM VILLAMOSMÉRNÖKI INTÉZET AUTOMATIZÁLÁSI TANSZÉK

Digitális hőmérő Modell DM-300

HSS60 ( ) típusú léptetőmotor meghajtó

Számítógép felépítése

Hardware minőségellenőrzése az elektronikai gyártási folyamat során Ondrésik Tamás, O0QUL3

DIGITÁLIS TECHNIKA II Dr. Lovassy Rita Dr. Pődör Bálint

Laborgyakorlat 3 A modul ellenőrzése szimulációval. Dr. Oniga István

Norway Grants. Az akkumulátor mikromenedzsment szabályozás - BMMR - fejlesztés technológiai és műszaki újdonságai. Kakuk Zoltán, Vision 95 Kft.

Digitális technika Xilinx ISE GUI használata

Autóipari beágyazott rendszerek CAN hardver

Átírás:

Hardveres trójai vírusok és áramkörökben 1

Fogalmak Bevezető Fogalmak, rövidítések Miért kell a HTH-val foglalkozni? Hardveres trójai vírus : a hardver rosszindulatú megváltoztatása, amely speciális feltételek mellett a rendszer funkciójának megváltozását okozza 2

Fogalmak, rövidítések Miért kell a HTH-val foglalkozni? Rövidítések HTH: hardware trojan horse IP: intellectual property SoC: System on Chip Outsourcing: a vállalkozáson kívül elérhető erőforrások igénybevétele a vállalkozás feladatainak ellátásához 3

HTH beillesztése a HDL kódba Fogalmak, rövidítések Miért kell a HTH-val foglalkozni? 4

HTH beillesztése a HDL kódba Fogalmak, rövidítések Miért kell a HTH-val foglalkozni? 5

Miért kell a HTH-val foglalkozni? Fogalmak, rövidítések Miért kell a HTH-val foglalkozni? Elektronikus eszközök nagy szerepet játszanak életünkben Bizalmas adatok tárolása, továbbítása Különböző fontos (pl. orvosi berendezések) vezérlése Katonai alkalmazások Outsourcing miatt ki vagyunk szolgáltatva az integrált áramkört gyártó vállalatnak Report of the defense science board task force on high performance microchip supply. Defense Science Board, US DoD, Februar 2005 6

Félvezető gyártó üzemek Fogalmak, rövidítések Miért kell a HTH-val foglalkozni? Rank Company Foundry Type Country of origin Revenue (million $USD) 1 TSMC Pure-play Taiwan 14,600 2 UMC Pure-play Taiwan 3,760 3 Globalfoundries Pure-play United States 3,580 4 Samsung Semiconductor IDM South Korea 1,975 5 SMIC Pure-play China 1,315 6 TowerJazz Pure-play Israel 610 7 Vanguard (VIS) Pure-play Taiwan 519 8 Dongbu HiTek Pure-play South Korea 500 9 IBM IDM United States 445 10 MagnaChip IDM South Korea 350 11 SSMC Pure-play Singapore 345 12 Hua Hong NEC Pure-play China 335 13 Win Semiconductors Pure-play Taiwan 300 14 X-Fab Pure-play Germany 285 7

Foglalkozik-e vele valaki? Fogalmak, rövidítések Miért kell a HTH-val foglalkozni? 8

Foglalkozik-e vele valaki? Fogalmak, rövidítések Miért kell a HTH-val foglalkozni? 9

Digitális eszközök típusai Áramkörök tervezésének lépései 10

blokkdiagram és floorplan Áramkörök tervezésének lépései : helyszínen programozható logikai tömb 11

tervező környezet Áramkörök tervezésének lépései 12

Bitstream letöltése az -ba Áramkörök tervezésének lépései 13

Áramkörök tervezésének lépései floorplan (Intel Nehalem microarchitecture) : alkalmazásspecifikus integrált áramkör 14

Bitstream vs. GDSII Bevezető Áramkörök tervezésének lépései 15

Digitális áramkör tervezési lépési Áramkörök tervezésének lépései Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva 16

Digitális áramkör tervezési lépési Áramkörök tervezésének lépései Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva 17

Digitális áramkör tervezési lépési Áramkörök tervezésének lépései Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva 18

Digitális áramkör tervezési lépési Áramkörök tervezésének lépései Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva 19

Digitális áramkör tervezési lépési Áramkörök tervezésének lépései Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva 20

Digitális áramkör tervezési lépési Áramkörök tervezésének lépései Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva 21

Digitális áramkör tervezési lépési Áramkörök tervezésének lépései Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva 22

Áramkörök tervezésének lépései Tervezési és gyártási folyamat részletesebben 23

Áramkörök tervezésének lépései Tervezési fázis veszélyek Támadó hozzáfér az összes forrásfájlhoz Még, ha megbízható mérnök tervez, akkor is meg kell bízni 3rd party IP core (pl. Ethernet vezerlő) Tervező szoftverek Standard cellák (csak esetén: pl. NAND kapu valóban egy NAND kapu) 24

Gyártási fázis veszélyek Áramkörök tervezésének lépései Bitstream nem mindig titkosított Ha mégis az lenne: már publikáltak DPA technikán alapuló támadást Támadó módosítani tudja a maszk fájlokat gyártás előtt Logika hozzáadása (nehéz feladat) Adalékolás megváltoztatása (pl. inverter -> konstans VCC tápfeszültség) Gyártás után is módosítható az áramkör FIB-bel (Focused Ion Beam) 25

A továbbiakban Bevezető Áramkörök tervezésének lépései Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva Általánosan a HTH-ról Taxonómia Aktivitás Triggerelési mechanizmus Tervezési és gyártási folyamat során Implementáció Detektálás Megelőzés 26

HTH taxonómia Bevezető 27

HTH aktivitás Funkció módosítás Logikai hozzáadása, törlése Pl. hibadetektáló modul olyan bemeneteket is elfogad, melyeket egyébként elutasítana Titkosítás során egyes lépések kihagyása 28

HTH aktivitás Információ szivárogtatás RF, optikai, termikus úton Esetleg soros porton, JTAG-en vagy akár interneten keresztül A szivárogtatás során a küldés tipikusan rejtve marad (adott zajszint alatt marad az érték) Pl. RF esetében spread spectrum segítségével 29

HTH aktivitás Bevezető Denial of Service Szűkös erőforrások kimerítése SoC busz folyamatos foglalása Számítási kapacitás Akkumulátor (egyes modulokat nem hagyunk sleep módba jutni vagy felesleges meghajtó áramköröket helyezünk le) Fizikai elváltozás Hot Carrier Injection(HCI) Oxide Breakdown (OB) (nagy elektromos mező miatt a FET-ek gate alatti oxid rétegének átütése következik be, ami rövidzárt okoz) Negative Bias Temperature Instability (NBTI) Electron-Migration (EM) 30

HTH triggerelési mechanizmus Áramkörön belüli trigger Egyszerű esetben pl. egy buszra kiadott címet figyelünk Bonyolultabb esetben állapotgép segítségével egy megadott szekvenciára várunk Sokkal nagyobb állapotteret kell megvizsgálni, ha detektálni akarjuk, így ez hatékonyabb 31

HTH triggerelési mechanizmus On-chip termikus kommunikáció 32

HTH triggerelési mechanizmus Trigger feltétele valamilyen külső input Szenzoroktól származó értékek Hőmérséklet Feszültség Páratartalom stb Egyéb Soros porton beérkező adat 33

Bemutató: saját hardveres trójai áramkör implementáció 34

Verilog forrásfájlok Bevezető 35

RTL szintű modell Bevezető 36

Kapuszintű modell Bevezető 37

Rendszertani besorolása Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva 38

HTH implementáció Bevezető Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva 39

típusok Bevezető Xilinx + Altera + Lattice (+ SiliconBlue) > 90 % piaci részesedés Microsemi (+Actel) 40

SRAM Bevezető 41

nem titkosított bitstream 42

nem titkosított bitstream módosítás 43

titkosított bitstream módosítás 44

titkosított bitstream módosítás On the Vulnerability of Bitstream Encryption against Power Analysis Attacks Extracting Keys from Xilinx Virtex-II s Differential Power Analysis 45

HTH implementáció Bevezető Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva 46

Standard cellás - basic floorplan 47

adalékanyag maszk módosítás 48

CMOS inverter Bevezető 49

adalékanyag maszk módosítás 50

adalékanyag maszk módosítás 51

HTH detektálás Bevezető Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva 52

HTH detektálás Pásztázó elektronmikroszkóp (SEM) segítségével Apró eltéréseket nehéz észrevenni 53

HTH detektálás Funkcionális tesztelés Gyártás után történik Adott bemenetre a várt kimenetet kapjuk-e Nem kimerítő keresés 54

HTH detektálás Bevezető Side-channel comparison 55

HTH megelőzés Bevezető Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva Tervezés során, ha nem megbízható CAD rendszert használunk, az elkészített terveket érdemes saját fejlesztésű (megbízható) programmal megvizsgálni. 56

HTH megelőzés Bevezető Specifikáció Magas szintű programnyelv HDL Tervezés Kapcsolási rajz Áramkör Gyártás Terjesztés Szöveges leírás C++ és SystemC VHDL és Verilog Kapcsolási rajz szimbólumok Tranzisztorok Bitstream Floorplan Áramkör kész, betokozva Újraprogramozható logika beiktatása egyes helyekre, így a támadó nem tudja, hogy a maszkot hogyan módosítsa, mivel csak később fog a tényleges funkcionalitás eldőlni. Logika duplikálása, adatok keverése (scrambling). 57

HTH megelőzés Bevezető 58