Specialization IB - Question 2 (Attacks on cipher protocols) Flashcards
What is protocol?
A multi-party algorithm, defined by a
sequence of steps precisely specifying the
actions required of two or more parties in
order to achieve a specified objective
Utoky na hesla
Snazi se uhodnout hesla/
* Brute-force (optimized na ASIC, GPU)
* Slovnikovy utok
* Vzorce (slovnik + bruteforce)
* Rainbow tables
Jak se branit utokum na hesla?
- Volit silna hesla
- Zvysit cas hashovani -> zvysi cas bruteforce
= bcrypt stanovuje pocet kol, scrypt zvysuje narocnost na pamet = ztizeni pouziti ASIC/GPU
Utoky po siti
Souvisi se sitovou komunikaci
- Replay
- Authentication Reflection attack (challenge-response)
- Syn flood attack
- Reflection amplification attack (DOS - spoof source IP)
- Man in the middle
- Forced delay - dlouhy
Man in the middle
Jde o to, ze se eve stavi mezi dve komunikujici strany - Eve se vydava za Alici a Boba.
napr. ARP poisioning (na lokalni siti se snazi tvarit jako hub/gateway - aby komunikace s obeti sla pres nej)
Replay
Utocnik odchyti validni zpravu a preposle ji v jinem contextu
Obrana - predani nonce, session ID, timestamp
Reflection
Utok na challenge-response system
- Utocnik se chce autentizovat
- Server vrati challenge
- Utocnik vezme challenge a posle na server (nove spojeni)
- Server vraci response
- Utocnik posle response ze 4. serveru na challenge ze 2.
Obrana - identifikator. Pokud server dostane svuj identifikator, vratit
SYN flood attack
Zaplavi SYN pakety
Druh DOS
Utocnik posle SYN pakety ale uz dal nepokracuje v komunikaci
Za normalnich okolnosti:
1. E -> B SYN
2. E <- B SYN-ACK
3. E -> B ACK
Obrana proti DOS - pokud napr. najdem tachove chovani, blokujem IP addresy - pakety rovnou zahazujem
Side channels utoky
Sbiraji se postrani informace o behu programu/procesu
* Cas
* Power consumption
* Oracle utoky
* Cache timing
* Statistic analysis
* Meltdown and specter
Meltdown
Zranitelnost hardwaru krast data
dovoluje cist data ke kterym nema mit utocnik pristup. Vyuziva tzv. spekulativni pamet. Jde o cast pameti, do ktere je ulozen vysledek operace, ktera byla spekulativne vykonana (vykonana napred, nez mela)
Cas (timming)
Meri se cas exekuce programu/procesu
Analyzuje se, jestli pri urcitych argumentech/nastaveni se cas meni - resp. lze najit urcitou korelaci
Power consumption
Meri se spotreba energie pri exekuci programu/procesu
napr. kreditka kdysi - spatny pin ma vetsi spotrebu => lze odchytit
Oracle attack
Vyzaduje reakci serveru na dany text
Utocnik se snazi na bazi vybranych textu (challenges) ziskavat response, ze kterych by mohl neco zjistit.
Napr. server vyhodi chybu, pokud se text spatne desifruje (ma spatny padding)
Cache-timing
Rozdily mezi casy k pristupum k datum - na cachi a na disky
Utocnik zaplni mezipamet svymi daty, obet nasledne pristoupi ke svym datum -> utocnikovi se uvolni naka mezipamet pro obet. Utocnik nasledne zjisti, ktera pamet se obeti uvolnila.
Spectre
Jako meltdown s rozdilem, ze dovoluje i jinym procesum/podprocesum (tabum)