jestli bude možné lehce vygenerovat k md5 zdrojový řetězec, pak to bude pro mě dost velký problém, protože podle md5 ověřuji hesla :(
no nic budu muset vymyslet něco lepšího
Zrovna na overovani hesel nema prolomeni MD5 zadny vliv, respektive neprinasi zadne nebezpeci, ktere uz by tu nebylo driv. Problem to prinasi spis pro podepisovaci aplikace ("Tato distribuce Linuxu ma MD5 hash xyz", rozlisovani ruznych aplikaci v personal forewallech apod.)
jakto, že to nepřináší nebezpečí,
mám třeba heslo "111" které se zahešuje do nějakého md5 řetězce a pokud mi někdo nabourá server, stáhne si md5 řetězce a bude schopen podle těchto md5 řetězců vytvořit jiná hesla, která budou mít stejné md5 řetězce, tak se mi vpohodě přihlásí do systému
nejde o to, že ho nabourá, jde o to, že když ten systém pak budu chtít obnovit, tak všechno vrátím do původní podoby ale útočník už bude mít databázi md5 heshů hesel, které mu předtím byly k ničemu, teď ale podle nich si může vygenerovat svá hesla (je jasné, že nebudou stejná ale o to nejde, jde o to, že budou mít stejné md5 řetězce, protože script to heslo stejně nezná, zná jen jeho md5 hesh)
šlo mi o to, že jakýkoliv i fatální útok šlo řešit tím, že se přeinstaloval server a více se zabezpečil, teď už ale data uložená (třeba hesla) v md5 jsou takovým stylem ohrožena, nejde o to, aby někdo získal původní data (i když by mu o to šlo) jde o to, že si může podle hashů nadělat vlastní přístupové kódy, což je pěkně nanic
hesla, která jsou ve viditelné podobě samozřejmě měním, jde o to, že přes md5 jsem měl ochráněná hesla klientů, která ani po nabourání nemohl cracker nijak zjistit nebo obejít, teď, když ale zjistí md5 hash si může vyrobit jiné heslo
1) Vyzaduje to, aby se nekdo naboural do systemu natolik, aby si z databaze dokazal vytahnout ty hashe. Kdyz uz bude mit takovejhle pristup, k cemu by mu bylo generovani dalsich hesel?
2) I kdybychom pripustili, ze bod 1 neplati, porad je otazka, jak to utocnik udela. Jestli jsi cetl ten text od p. Klimy, tak vis, ze jeho utok umoznuje upravit zdrojovou zpravu tak, aby vysledek mel stejny hash. To, o cem ty mluvis, je utok opacnym smerem (k hashi vygenerovat zpravu) a ten, pokud vim, zatim uspesne proveden nebyl.
3) I kdyby nahodou neplatil ani bod 2, je tu otazka, proc by to prislusny narusitel delal tak slozite (generovani hesel odpovidajicich MD5 by prece jen nejakou dobu trvalo). Kdyz uz ma takovy pristup k serveru, ze se dostava k hashum, tak bych skoro povazoval za jednodussi, kdyby
a) upravil prihlasovaci skript tak, aby mu plaintextova hesla ukladal do nejakeho vhodneho mista (do souboru, do zvlastni tabulky, klidne i primo na jeho web pomoci GET requestu).
b) si vygeneroval par novych uzivatelu s predem pripravenym heslem a administratorskymi pravy.
c) si vysype databazi uzivatelu do souboru a pak se pokusi hesla zjistit pomoci slovnikoveho utoku, ktery je daleko snaz proveditelny i pro script kiddies a umoznuje zjistit skutecne puvodni heslo.
4) Hadani hesel uzivatelu by snad melo smysl jen tehdy, kdyby tu byl predpoklad, ze uzivatele maji stejne heslo na vice ruznych serverech, takze prolomenim jejich uctu treba na Zive by se dalo prihlasit treba do jejich posty na Seznamu. Coz o to, ten predpoklad u drtive vetsiny uzivatelu plati, ale porad tu zustava drobnost - z hashe se NEDA zjistit PUVODNI heslo. Da se zjistit NEJAKE heslo, ale to je pouzitelne pouze na tech webech, ktere pouzivaji presne stejnou hashovaci funkci jako napadeny web.
Protože tohle se neumí. Prolomení md5 spočívá v nalezení různých zpráva1 zpráva2 které mají stejnou hash, nikoli v tom, že by se k libolné hashi uměla rychle najít zpráva.
A i kdyby se uměla, situace ještě není katastrofální. V databázi hesel máte uložené hash(sůl, heslo),sůl. Sůl - náhodný řetězec. Takže ani nestačí umět najít "cokoli" co má stejnou hash. Potřebujete něco co má tvar (salt,něco) a má stejnou hash.
V dobře navrženém kryptosystému to tak funguje - i když selže jednotlivá vlastnost šifry, neznamemená to, že se to zhroutí celé - další komponenty ztíží útok tak, že máte rozumný čas na výměnu.
Praktický závěr: ví, se že md5 je rozbitá, a je ji potřeba vyměnit. Nicméně v téhle aplikaci nehrozí okamžité nebezpečí, a můžete počkat třeba na upgradu systému a hesla nechat vyměnit přirozenou obměnou.
Krome toho bych rekl, ze specialne u hesel (coz jsou typicky velice kratke textove retezce do rekneme dvaceti znaku), bude extremne tezke najit kolize. Z principu veci pocty kolizi narustaji s velikosti pomeru originalni zprava/hash.
z hashe nejde zpět dosta puvodni zprava. Je to pocetne narocne. Mnohem lepší je jet opačnou stranou:
zkoušet hashovat kombibnaci po kombinaci - hesla obyčejně nejsou tak dlouhá, aby se vyplatilo hledat kolizi.
Mnohem lepší je nají puvodní heslo.
Zahasjujete wordbook, slova do 5-6ti pismena a mate skoro 95% sanci se to naleznete.
Ted mi napada myslenka, jake budem dávat hesla až budeme mít rychlé PC tak, že 12ti písmená kombinace bude prolomena za pár hodin...:D