Криптографски, 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.
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 .