[defcon russia #29] Александр Ермолов - safeguarding rootkits: intel boot guard....

66

Upload: defconrussia

Post on 11-Apr-2017

71 views

Category:

Internet


2 download

TRANSCRIPT

Page 1: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II
Page 2: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

2

Page 4: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

4

Page 5: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

5

Skylake

DMI 3.0

PCI-E 3.0

SATA3

PCI-E + SMLink

USB 3.0

TPM 1.2\TPM 2.0

NIC PHY

HDD

DisplayCPU

PCH

DRAM

DDR4

Flash memory

SPI

ACPI EC

eSPIUSB

LPC

Page 6: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

6

Flash Descriptors

GbE

ME

ACPI EC

BIOS

Page 7: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

7

Skylake

Page 8: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

8

Page 9: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

9

Page 10: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

10

IntelCPU

Intel chipset

NIC PHY

DRAM

SPI flash memory

NIC MAC

ME

NIC MAC

ME UMAME FWMEI (HECI)

BIOS

IMC

DMI

DDR

PCI-E

SPI

Page 11: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

11

Page 12: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

12

Page 13: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

13

Page 14: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

14

Page 15: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

15

Page 16: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

16

Page 17: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

17

Page 18: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

18

SPI flash memory

RESETIntel CPU

boot ROMIBB BIOS OS

Intel BG startup

ACM

A RESET-vector

HDD

Page 19: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

19

Page 20: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

20

Page 21: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

21

SVN

OEM Root public key

hash

Signature

SVN

IBBM public key

hash

Signature

KEYM IBBMChipset fuses

(FPFs)

hashIBB

SPI flash

BIOS

If the OEM Root private key is compromised, there is no way to replace/revoke it (as long as it s hash is in permanent storage)

The unique IBBM public key can be used for different product lines

So in case of one IBBM private key is compromised, it affects only one product line until this key is replaced

Page 22: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

22

Page 23: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

23

Page 24: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

24

Page 25: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

25

Page 26: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

26

Page 27: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

27

Page 28: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

28

Page 29: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

29

Page 30: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

30

Page 31: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

31

Page 32: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

32

Page 33: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

33

Page 34: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

34

Page 35: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

35

SVN

OEM Root public key

hash

Signature

SVN

IBBM public key

hash

Signature

KEYM IBBM

Page 36: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

36

Page 37: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

37

SVN

IBBM public key

hash

Signature

IBBM

IBB

SPI flash

BIOS

Page 38: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

38

Page 39: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

39

Page 40: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

40

Page 41: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

41

Page 42: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

42

Page 43: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

43

Page 44: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

44

Page 45: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

45

Page 46: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

46

Page 47: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

47

FIT

SPI flash

Intel CPU

Intel CPU boot ROM

RESET

Intel BIOS ACMIntel BG

startup ACM

FPFs

Intel ME

KEYM

IBBM

BIOS

IBB

0xFFFFFFC0

IBB

Page 48: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

48

Page 49: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

49

Flash Descriptors

GbE

IFWI = TXE + BIOS

Page 50: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

50

Page 51: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

51

Page 52: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

52

Page 53: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

53

Page 55: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

55

Page 56: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

56

Page 57: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

57

Page 58: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

58

Page 59: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

59

Page 60: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

60

Page 61: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

61

Page 62: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

62

Page 63: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

63

Page 64: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

64

Page 65: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

65

Page 66: [Defcon Russia #29] Александр Ермолов - Safeguarding rootkits: Intel Boot Guard. Part II

66