#002 - Ataki na procesory - PortSmash, TLBleed, Foreshadow

19 de dic. de 2018 · 1h 31m 42s
#002 - Ataki na procesory - PortSmash, TLBleed, Foreshadow
Descripción

W drugim odcinku przybliżamy wam techniczne aspekty ataków side-channel na procesory superskalarne, ujawnione w ostatnich miesiącach. Jest to niejako kontynuacja naszego wykładu ze stycznia w cyklu Barcampów gdzie omawialiśmy ataki...

mostra más
W drugim odcinku przybliżamy wam techniczne aspekty ataków side-channel na procesory superskalarne, ujawnione w ostatnich miesiącach. Jest to niejako kontynuacja naszego wykładu ze stycznia w cyklu Barcampów gdzie omawialiśmy ataki Spectre i Meltdown.

W naszej pracy często optymalizujemy kod różnych krytycznych części systemu, począwszy od procedur kryptograficznych po wysokowydajny kod sieciowy. Takie zadania poza oczywistym aspektem dostarczania całej masy satysfakcji, pozostawiają również cenną wiedzę o tym jak działają nowoczesne procesory. A my lubimy dzielić się wiedzą ;)

Dlatego też odcinek rozpoczynamy od szybkiego przeglądu podstawowych bloków funkcjonalnych występujących we wszystkich rodzinach procesorów znajdujących się obecnie na rynku. Następnie od ok. 19 minuty przechodzimy do omówienia genezy ataków "side channel". Od ok. 36 minuty omawiamy atak Foreshadow który w naszej ocenie jest przykładem całkowitego braku zabezpieczeń przed tą nową klasą ataków, w tym na rozwiązania celowo stworzone z myślą o zwiększonym bezpieczeństwie czyli enklawach (Intel SGX). W dalszej części podcastu omawiamy również ataki TLBleed oraz PortSmash w kontekście kryptografii z użyciem krzywych eliptycznych.

Prowadzący: Radosław Biernacki, Michał Stanek, Łukasz Bartosik, Wojciech Macek, Maciej Czekaj

### Linki (chcesz wiedzieć więcej?):

### Linki chronologicznie:

#0:30 - Barcamp “Ghostbusting Meltdown Spectre” - https://youtu.be/FBy2gZD3OUw

#10:30 - Tomasulo algorithm -
https://www.youtube.com/watch?v=PZZvhqnch5o
https://www.youtube.com/watch?v=D29BgTLHYbk
https://www.youtube.com/watch?v=I2qMY0XvYHA
cały kurs na Udacity - https://classroom.udacity.com/courses/ud007/lessons/3643658790/concepts/8736801430923

#25:26 - audio side channel na RSA - https://www.cs.tau.ac.il/~tromer/acoustic/

#27:45 - Mnożenie zabiera różną ilość cykli w zależności od ilości 1ek lub wielkości liczby tzw Early Termination -
https://eprint.iacr.org/2009/538.pdf
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.100165_0201_00_en/ric1414056333562.html
http://oldwww.nvg.ntnu.no/amiga/MC680x0_Sections/timstandard.HTML
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0337e/BABBCJII.html
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0210c/Chddggdf.html

#1:01:50 - PortSmash https://eprint.iacr.org/2018/1060.pdf
Krzywe eliptyczne - https://youtu.be/4M8_Oo7lpiA?t=742

#1:37:15 - Nowe instrukcje jako pseudo rozwiązanie Intel - https://newsroom.intel.com/wp-content/uploads/sites/11/2018/01/Intel-Analysis-of-Speculative-Execution-Side-Channels.pdf
Reakcja dev Linuxa - https://lwn.net/Articles/773118/

### Linki tematycznie:

#Side channel attacks on algorithms:
https://en.wikipedia.org/wiki/Exponentiation_by_squaring#Montgomery's_ladder_technique
http://cat.eyalro.net/
https://youtu.be/uQG_8TGcY84?list=PLbRoZ5Rrl5lew16BZO_C6wihpBkAYYaxi&t=190
http://www.cs.columbia.edu/~simha/spyjs.ccs15.pdf (javascript)
https://www.usenix.org/node/184416 and https://eprint.iacr.org/2013/448.pdf

#(FLUSH+RELOAD):
https://signal.org/blog/contact-discovery/ (SGX, side-channel proof hash table lookup)
https://signal.org/blog/private-contact-discovery/ (more detailed info)
https://www.bearssl.org/constanttime.html

#Timing atack:
https://en.wikipedia.org/wiki/Timing_attack

#Blinding - biekcja stosowana na klucz aby przeciwdziałać side channel:
https://en.wikipedia.org/wiki/Blinding_(cryptography)
Side-Channel Analysis of Cryptographic Software via Early-Terminating Multiplications - https://eprint.iacr.org/2009/538.pdf

#TLBleed:
TLBleed - https://www.vusec.net/wp-content/uploads/2018/07/tlbleed-author-preprint.pdf
https://youtu.be/LFvd0UaxL-0

#Notka od Redhata na temat TLBleed (również dobre wprowadzenie do side channel) https://www.redhat.com/en/blog/temporal-side-channels-and-you-understanding-tlbleed

#PortSmash:
https://eprint.iacr.org/2018/1060.pdf

#L1TF/Foreshadow:
https://foreshadowattack.eu/foreshadow.pdf
https://youtu.be/fEV6eA9o21o
https://www.youtube.com/watch?v=kqg8_KH2OIQ


#Elliptic curves for dummies:
https://youtu.be/4M8_Oo7lpiA?t=742

#SGX enclaves:
https://www.blackhat.com/docs/us-16/materials/us-16-Aumasson-SGX-Secure-Enclaves-In-Practice-Security-And-Crypto-Review.pdf
https://youtu.be/NP7f3M_saUs (pierwsze kilka min)

#Intel CAT:
https://software.intel.com/en-us/articles/introduction-to-cache-allocation-technology
https://lwn.net/Articles/694800/

#Historia side channel:
https://www.daemonology.net/papers/htt.pdf (2005, CACHE MISSING FOR FUN AND PROFIT)
https://cr.yp.to/antiforgery/cachetiming-20050414.pdf (2005, Cache-timing attacks on AES)
https://eprint.iacr.org/2007/336.pdf (2007, I-Cache RSA)
http://cryptome.org/sbpa.pdf (2007, Branch Prediction RSA)
https://pdfs.semanticscholar.org/b028/22567d583b89acc0b2bd5afa417ffa835d0a.pdf (2010, I-Cache, SMT, RSA, DSA)
https://2459d6dc103cb5933875-c0245c5c937c5dedcca3f1764ecc9b2f.ssl.cf2.rackcdn.com/sec14/yarom.mp4 (2013, FLUSH+RELOAD L3)
https://cyber.wtf/2017/07/28/negative-result-reading-kernel-memory-from-user-mode/ (2017)
mostra menos
Información
Autor Semihalf
Organización Semihalf
Página web -
Etiquetas

Parece que no tienes ningún episodio activo

Echa un ojo al catálogo de Spreaker para descubrir nuevos contenidos.

Actual

Portada del podcast

Parece que no tienes ningún episodio en cola

Echa un ojo al catálogo de Spreaker para descubrir nuevos contenidos.

Siguiente

Portada del episodio Portada del episodio

Cuánto silencio hay aquí...

¡Es hora de descubrir nuevos episodios!

Descubre
Tu librería
Busca