[ CRYPTOGRAPHIC_FAILURES ]

Kliknutím se vrátíš zpět.

Když "zámek" nefunguje

Dříve známé jako Sensitive Data Exposure. Tato kategorie se zaměřuje na chyby v implementaci šifer, které vedou k odhalení citlivých informací. V BBP hledáme data, která jsou sice "šifrovaná", ale díky slabým algoritmům nebo chybám v klíčích jsou v podstatě veřejná.

Hlavní technické nedostatky:

  • Insufficient Entropy: Generátory náhodných čísel (PRNG), které nejsou kryptograficky bezpečné, vedou k předvídatelným tokenům.
  • Hardcoded Secrets: API klíče, symetrické klíče (AES) nebo certifikáty natvrdo zapsané v kódu nebo v .git historii.
  • Lack of Salting: Hashe hesel bez unikátní "soli" (salt), umožňující bleskové dešifrování přes Rainbow Tables.

Typy šifer a jejich slabiny

Jako bug hunter musíš rozlišovat mezi tím, co je bezpečné a co je "legacy" (zastaralé).

Algoritmus Stav Riziko / Poznámka
MD5 / SHA-1BROKENKolize a extrémně rychlý brute-force.
DES / 3DESDEPRECATEDPříliš krátký klíč (56 bitů). Dnes prolomitelné za pár hodin.
AES-256SECUREStandard pro symetrické šifrování dat v klidu (At Rest).
Argon2 / bcryptSECUREModerní hashing pro hesla s nastavitelnou náročností (Work Factor).

Moderní vektory: MitM a Downgrade útoky

Útočníci se nesnaží "zlomit" AES-256. Místo toho se snaží donutit server k použití slabší verze protokolu.

TLS Downgrade

Vynucení použití TLS 1.0 nebo 1.1, které obsahují známé chyby (např. POODLE, BEAST). Cílem je dešifrovat session cookies.

Weak PRNG

Pokud resetovací token pro heslo používá Math.random() místo crypto.getRandomValues(), je predikovatelný.

Technická analýza: Salt & Pepper

Proč nestačí jen hashovat? Bez soli jsou stejná hesla u různých uživatelů uložena jako identické řetězce.

crypto_analysis — hashing_demo
# Špatně (MD5): 1a1dc91c907325c69271ddf0c944bc72 (heslo "123456")
# Správně (Argon2id + Salt):
$argon2id$v=19$m=65536,t=3,p=4$X0T... (unikátní pro každého)
# Výsledek: I stejné heslo vypadá v DB pokaždé úplně jinak.

Prevence: "Don't Roll Your Own Crypto"

Zlaté pravidlo kryptografie: Nikdy se nesnažte vymyslet vlastní šifrování. Používejte prověřené knihovny a standardy.

  • Vynucení HSTS: Hlavička Strict-Transport-Security zajistí, že prohlížeč nikdy nepoužije HTTP.
  • Key Rotation: Pravidelná obměna šifrovacích klíčů a jejich uložení v bezpečných úložištích (HSM, AWS KMS).
  • Perfect Forward Secrecy (PFS): Zajišťuje, že i když je v budoucnu ukraden soukromý klíč serveru, minulé nahrávky komunikace nelze dešifrovat.