Michal Špaček - Hesla - ukládání a lámání
Doporučení „hashovat“ je hezké, ale je to rada podobná jako „máte žízeň? pijte průhlednou tekutinu“. Jak hesla správně ukládat a proč, jak uživatelé vytváří hesla a jak toho pak využívají útočníci při lámání („crackování“) hesel. A k čemu se taková cracknutá hesla hodí?
Řekneme si i něco o upgrade na „lepší“ ukládání, vzpomeneme si i na správné obnovení hesla při jeho zapomenutí. A možná přijde i kouzelník v podobě správce hesel.
Navíc podobně jako hesla mají celkem omezený počet možností i IP adresy a další identifikátory, při ukládání je tedy nestačí jen „zahashovat“.
Dozvíte se: • Jaké jsou známé úniky hesel • Jak se kradou databáze • Co je to a jak probíhá lámání („crackování“) hesel • Jaká pravidla pro vytváření hesel uživatelé používají • Jak by se měla hesla ukládat v aplikacích • Řešení zapomenutých hesla • ... něco o ukládání dalších údajů jako např. IP adres
Michal o sobě: Vyvíjím webové aplikace (aktuálně report-uri.com, předtím Skype, Slevomat, Apiary.io), zajímá mě jejich bezpečnost. Nebojím se o tom mluvit veřejně, hledám hranice tak, že je posouvám. Chci naučit webové vývojáře stavět bezpečnější weby a aplikace. Pořádám školení na bezpečnost a bezpečný vývoj a o stejných tématech jsem také přednášel např. na WebExpu nebo (čtyřikrát za sebou) v Las Vegas. Více o mě na https://www.michalspacek.cz/
Odkazy použité ve videu:
Zkontrolujte si, jestli váš e-mail není v nějakém známém úniku dat: https://haveibeenpwned.com/
Nezapomeňte si nastavit notifikace (i na celou doménu): https://haveibeenpwned.com/NotifyMe https://haveibeenpwned.com/DomainSearch
Některé české úniky dat Nevyhazujto: https://www.lupa.cz/clanky/unik-dat-z-nevyhazujto-cz/ Czechia: https://www.lupa.cz/aktuality/hostingu-czechia-od-firmy-zoner-unikly-prihlasovaci-udaje-zakazniku/ Mall.cz: https://www.lupa.cz/aktuality/mall-cz-resetuje-hesla-k-casti-databaze-se-mohli-dostat-hackeri/ Jabbim: https://www.root.cz/zpravicky/jabbim-cz-byla-ukradena-uzivatelska-hesla/
Vyzkoušejte si SQL Injection: https://exploited.cz/sql/products.php Návod: https://www.michalspacek.cz/prednasky/webova-bezpecnost-gdgscl Zdroják: https://github.com/spaze/exploited.cz/blob/master/site/sql/products.php
Předpočítané tabulky hashů ke stažení, i k prohledání online: https://crackstation.net/
Přednáška o ukládání hesel s příkladem lámání pomocí CrackStation: https://www.michalspacek.cz/prednasky/zahashovat-heslo-ulozit-profit-develcz
Analýzy některých úniků: SkTorrent: https://gist.github.com/spaze/7d89613cc69d61e03eb4 XZone.cz: https://gist.github.com/spaze/44b252134c9350723c8611115aff3d93 Pomocí programu Pipal: https://digi.ninja/projects/pipal.php
Crackování hesel z Mallu: https://www.michalspacek.cz/crackovani-hesel-z-uniku-mall.cz
Programy na crackování hesel: hashcat: https://hashcat.net/ John the Ripper: http://www.openwall.com/john/
Firma stavějící crackovací servery a clustery https://sagitta.pw/
Wordlisty ke stažení: https://wiki.skullsecurity.org/Passwords
PRINCE generátor kandidátů: https://github.com/hashcat/princeprocessor
Jak na změnu hashování existujích hesel (z MD5 apod. na bcrypt např.): https://www.michalspacek.cz/zmena-hashovani-existujicich-hesel
Můj projekt na sledování způsobu ukládání hesel: https://pulse.michalspacek.cz/passwords/storages Způsob známkování: https://pulse.michalspacek.cz/passwords/storages/ratingPřednáška s představením toho projektu: https://www.michalspacek.com/talks/disclosing-password-hashing-policies-passwords
Správci hesel: 1Password: https://1password.com/ LastPass: https://www.lastpass.com/ KeePass: https://keepass.info/
O jednom úniku z LastPass: https://www.lupa.cz/clanky/co-se-stalo-lastpass-a-jak-vytvaret-silna-a-zapamatovatelna-hesla/ Diceware, metoda na generování zapamatovatelných a silných hesel: http://world.std.com/~reinhold/diceware.html
Seznam Twitter účtů, které se nějak věnují heslům: https://twitter.com/spazef0rze/lists/passwords
Knihovna na šifrování dat v PHP (používá libsodium, umí použít paragonie/sodium_compat): https://github.com/paragonie/halite
Další knihovna na šifrování (použijte jen pokud nemůžete použít halite/libsodium, méně výkonná, nepoužívá libsodium, výsledek nelze použít pro jiné platformy) https://github.com/defuse/php-encryption
Má školení bezpečnosti: https://www.michalspacek.cz/skoleni/bezpecnost-php-aplikaci https://www.michalspacek.cz/skoleni/https-pro-vyvojare-a-spravce
Twitter: https://twitter.com/spazef0rze Facebook: https://www.facebook.com/spaze Web: https://www.michalspacek.cz/