Криптографски, hardware и side-channel атаки

Атаки срещу реализацията, не срещу математиката — слаби алгоритми, странични канали и хардуерни дефекти.

Съвременната криптография рядко се проваля математически. Проваля се в реализацията: остарял алгоритъм, повторно използван nonce, ключ, оставен в паметта, или време за отговор, което издава част от тайната.

Страничните канали са особено неинтуитивни, защото не изискват грешка в кода — достатъчно е изчислението да отнема различно време или енергия в зависимост от данните.

19 атаки в това семейство

TLS/Protocol Downgrade

Принуждаване към по-стар TLS/protocol version или слаб cipher/mode.

SSL/TLS Stripping

TLS stripping се опитва да задържи жертвата на plaintext HTTP, докато attacker комуникира по HTTPS с истинския сайт.

Padding-Oracle Attack

Cryptographic oracle leak-ва дали padding/decryption result е валиден, което позволява iterative inference за ciphertext/plaintext.

Timing Side-Channel Attack

Timing attack извлича информация от разлики във времето за computation/validation.

Power-Analysis Side Channel

Извличане на secret information от power-consumption patterns на hardware по време на cryptographic operations.

Electromagnetic (EM) Side Channel

Наблюдение на electromagnetic emissions от device за infer-ване на processed data или keys.

Cache Side-Channel Attack

Използване на shared CPU cache behavior за infer-ване на memory access patterns на друга process/VM.

Spectre

Spectre е клас speculative-execution attacks, които могат да leak-нат data през microarchitectural side channels.

4 публикации в новините

Meltdown

Meltdown е speculative-execution vulnerability class, известен с bypass на certain memory isolation assumptions при засегнати CPUs.

Rowhammer

Rowhammer е DRAM disturbance атака, при която многократно access-ване на memory rows може да предизвика bit flips в съседни rows.

Cold-Boot Attack

Извличане на residual data, включително cryptographic keys, от RAM след power reset/physical access.

DMA Attack

Злоупотреба с Direct Memory Access от peripheral/interface, за да се чете или изменя system memory.

Fault Injection

Fault injection умишлено причинява hardware computation error чрез voltage, clock, laser, EM или други физически методи.

Weak Random Number Generator / Predictable Nonce

Cryptographic keys, session IDs, tokens или nonces са генерирани с недостатъчна entropy или повтарящ се state.

Nonce/IV Reuse

Повторна употреба на nonce/IV в mode/protocol, който изисква uniqueness.

Hash Collision/Birthday Attack

Търсене на две различни inputs със същия hash, използвайки birthday-bound свойства на hash space.

Private-Key Theft

Кражба на TLS, signing, SSH, code-signing или other cryptographic private key.

Rogue/Compromised Certificate Authority

Attacker получава способност да издава trusted certificates чрез compromised CA, subordinate CA или enterprise trust store.

Cryptographic Failure through Weak/Deprecated Algorithms

Използване на algorithm, key size, mode или protocol, който вече не предоставя нужната security margin .