Mentionsy

Poziom niżej
30.09.2019 09:08

#006 - Bezpieczeństwo w krzemie zaklęte

W szóstym odcinku przybliżamy wam tematykę zabezpieczeń nowoczesnych procesorów i SoC

W odcinku poruszamy szereg zagadnień bezpieczeństwa których bazą są sprzętowe rozwiązania zaszyte w nowoczesnych układach scalonych znajdujących się np w każdym smartfonie. Ten z pozoru prosty przedmiot codziennego użytku posiada wbudowaną technologię której nie są w stanie złamać nawet wyspecjalizowane komórki rządowych agencji bezpieczeństwa. Staramy się pokazać, jak ogromną zasługą w zachowaniu bezpieczeństwa i poufności zarówno naszej korespondencji jak i komunikacji np z bankiem, mają te małe płatki krzemu które są cichymi towarzyszami naszych codziennych połączeń poprzez publiczną sieć Internet.

Prowadzący: Radosław Biernacki, Michał Stanek, Jan Dąbroś, Konrad Dulęba

Hashtag: ArmTrustZone, ATF, ArmTrustedFirmware, Android, Security, Trusty, TEE, OP-TEE, SecureBoot, VerifiedBoot, Firmware

### Plan odcinka

# 0:08 - Wstęp
# 1:25 - Kim jesteśmy
# 5:40 - Dlaczego rozwiązania sprzętowe są podstawą modelu bezpieczeństwa
# 9:17 - Czym są enklawy kryptograficzne
# 10:48 - Reverse engineering krzemu
# 14:45 - Arm Trust Zone
# 22:22 - Trusted Platform Module
# 24:47 - Jak i po co łączyć ATZ i TPM
# 26:18 - Czy do budowy enklawy konieczny jest element zewnętrzny
# 30:29 - Android jako modelowy przykład bezpiecznego systemu operacyjnego
# 30:50 - UID jako podstawa dla sandbox
# 32:09 - TEE (Trusty) jako podstawa enklawy kryptograficznej
# 35:30 - Full Disk Encryption
# 36:40 - File Based Encryption
# 39:03 - API do kryptografii bazowane na enklawie
# 41:00 - Luki bezpieczeństwa w TEE
# 42:16 - Enklawy jako podstawa dla DRM ;(
# 44:05 - SGX od Intela
# 48:47 - Verified Boot i Secure Boot
# 54:45 - Dlaczego nie powinno się “root’ować” smartfona
# 58:48 - Trusted Platform Module - detale działania
# 1:00:15 - TPM + Bitlocker
# 1:02:00 - Atestacja serwerów przy pomocy TPM
# 1:02:58 - Czy TPM chroni przed atakami fizycznymi? Czyli dlaczego nie szyfruj Bitlocker`em bez hasła ;)
# 1:06:45 - Czym jest Yubikey i dlaczego jeszcze go nie używasz?
# 1:09:10 - PSD2 vs Yubikey vs Smartfon
# 1:10:11 - Protected Confirmation
# 1:11:59 - Czy nadal używasz PC do przelewów?
# 1:15:32 - Zakończenie

### Linki

Trustzone TEE
https://www.trustkernel.com/uploads/pubs/TZResearch_GetMobile2018.pdf
https://www.arm.com/files/pdf/20160701_A04_ATF_Taiwan_I-Wei_Lin.pdf

TEE, Secure & Measured Boot for Samsung Pay
https://developer.samsung.com/tech-insights/pay/device-side-security

Basics of TBSA
https://www.arm.com/files/pdf/20160628_A01_ATF_Korea_Udi_Maor.pdf

Apple TouchID
https://hackernoon.com/demystifying-apples-touch-id-4883d5121b77

(Programista 2017, numer 63, artykuł Jana Dąbrosia) - tzw. Biblia Arm TrustZone :P
https://drive.google.com/drive/u/0/folders/0BwLtsK2HpuELallaSFcxb2RtR3c

Extracting ECDSA
Keys from Qualcomm’s TrustZone:
https://www.nccgroup.trust/globalassets/our-research/us/whitepapers/2019/hardwarebackedhesit.pdf

Google IO Android Security
https://www.youtube.com/watch?v=0uG_RKiDmQY
https://www.youtube.com/watch?v=r54roADX2MI

Verified Boot
https://www.chromium.org/chromium-os/chromiumos-design-docs/verified-boot (grep TPM)
https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/42038.pdf
https://source.android.com/security/verifiedboot/dm-verity
https://www.youtube.com/watch?v=kdpZC9jFzZA

Trusty (TEE)
https://source.android.com/security/trusty

TPM is SW
https://pdfs.semanticscholar.org/42e5/216f57b17bb7dba13a2b73e36b4c057a6c96.pdf

Google Titan
https://android-developers.googleblog.com/2018/10/building-titan-better-security-through.html
https://developer.android.com/training/articles/keystore#HardwareSecurityModule

Applowy secure chip (jak Titan)
https://www.apple.com/mac/docs/Apple_T2_Security_Chip_Overview.pdf

Porównanie Titan’a i TPMa:
https://harry.uno/post/google-titan.html

Yubikey w srodku
http://www.hexview.com/~scl/neo5/

iOS Security
https://inst.eecs.berkeley.edu/~cs261/fa18/scribe/11_14_revised.pdf
https://www.apple.com/business/docs/site/iOS_Security_Guide.pdf (grep Secure Enclave)

Blackhat Demystifying TPM
https://www.blackhat.com/docs/us-16/materials/us-16-Mandt-Demystifying-The-Secure-Enclave-Processor.pdf
https://www.bleepingcomputer.com/news/security/tpm-chipsets-generate-insecure-rsa-keys-multiple-vendors-affected/

Blackhat 2010 Semiconductor Security Awareness Today and yesterday
https://www.youtube.com/watch?v=WXX00tRKOlw

SGX
https://hackernoon.com/adventures-of-an-enclave-sgx-tees-9e7f8a975b0b
https://news.ycombinator.com/item?id=17463687
https://lwn.net/Articles/786487/
https://software.intel.com/sites/default/files/managed/f1/b8/intel-sgx-support-for-third-party-attestation.pdf
https://software.intel.com/en-us/blogs/2018/12/09/an-update-on-3rd-party-attestation
https://medium.com/golem-project/graphene-v1-0-has-been-released-cca5443f0887

Private contact discovery for Signal
https://signal.org/blog/private-contact-discovery/

Ataki na file based encryption w Android 7
https://delaat.net/rp/2016-2017/p45/report.pdf

Widevine DRM on OPTEE
https://www.slideshare.net/linaroorg/las16406-android-widevine-on-optee

W ostatnich czasach można zauważyć trend wzrostowy zastosowań smartfonu do realizacji tzw. modelu dwuskładnikowego uwierzytelniania. Czyli uwierzytelniania czymś co znamy, np. hasło i dodatkowo czymś co posiadamy, przedmiotem którego nie da się skopiować ani podrobić. Tylko jak zapewnić, aby przedmiotu takiego jak smartfon nie dało się sklonować? Jak to też zrobić, aby nie było konieczne zanoszenie smartfona do banku celem jego rejestracji i sprawdzenia pod kątem bezpieczeństwa? I jak t...

Search in Episode Content

Enter a search term to find specific content in this episode's transcription