Dobry den,
zajimalo by me, zda je planovana podpora https pro jednotlive uzivatele. Zkousel jsem si naprogramovat a umistit na svych strankach (http://freez.wz.cz) skript, ktery by mel prenaset sifrovane heslo a take cookies.
Nefungovalo mi to se zpravou, ze nebyl nalezen zadny certifikat, cili tusim, ze wz.cz https nepodporuje. Je to tak? Bude ho nekdy podporovat?
Dekuji za odpoved, Cruz M.
HTTPS na WZ neni. A v nejblizsi dobe zrejme i nebude. Sifrovane stranky na freehostingu je az moc velky nadstandard.
Tomik: dekuji, ale ze by https bylo nadstandard? Dle meho nazoru je to v dnesni dobe uz naprosty standard, pokud se pracuje s hesly musi se odesilat pomoci https a v databazi hashovat, nikoliv pres md5, ale radeji pres SHA1, protoze md5 je totalne prolomeno.
Staci jen nekolik sekund a lze vylustit md5 hash (viz Rainbow Tables)
mimochodem ic.cz je take freehosting, je tam 250MB prostoru, https, pop3s, imaps. PHP 5.1.2, MySQL 4.1.11, PostgreSQL 7.4, ...
To je nadstandard?
<HTML>FReeZ: HTTPS se neplánuje, ale také nechápu, proč není (jsem jen moderátor, nemám tolik informací o WZ jako správci).
Co se týče MD5, divím se - zvláště u takové osoby, jako je --==[FReeZ]==-- (který se projevuje na SOOMu apod.) - jak někdo může tvrdit, že byla MD5ka prolomena. Lze najít spousty kolizí - ale k určení hesla ti budou k ničemu, protože ty kolizní řetězce jsou dlouhé a obsahují šílené znaky, které někdy nepatří do tisknutelného spektra. Je třeba si uvědomit, že každý trošku chytrý programátor omezí vstup například na 16 znaků - a všechny kolize se můžou jít houpat. S tím prográmkem, který využíval tunelování jsem si hrál dost - a heslo mi pochopitelně nenašel ;) Je to jasné, stačilo si o tom tunelování něco přečíst. MD5 se zatím dá stále luštit jen brutální silou, nebo hledáním v databázích známých hashů. Což jde samozřejmě u SHA1, takže jaký je rozdíl? Jedině v tom, že SHA1 databází moc není.
A k těm Rainbow tables - to jsou předšifrované hashe, ale co když použije daná osoba nějakou jinou kombinaci znaků, než byla pro vygenerování Rainbow tabulky zvolena (jinými slovy, mám v hesle znak, který pro generování tabulky nebyl použit)? He? He? Nehledě na to, že OPĚT lze mít Rainbow tabulky i na SHA1 ;)</HTML>
Nipal: co se tyce kolizi prilis jsem je nezkoumal, jde mi vsak o RainBow tables. Kdyz ma clovek dostatecne velky disk (napr. 250 GB), pak si muze vygenerovat tabulku, ve ktere budou vsechny znaky ASCII (0..255). Co se tyce napr. phpmyadmin, tam jsem omezeni vstupu nezaregistroval (ze by treba nebyly povolene jine znaky, nez a..z+0.9). Takze podle meho nazoru neni md5 uz dost bezpecny. Citliva data by se mela hashovat pomoci SHA, lze to rovnez vylustit, ale s daleko vetsi namahou.
Jinak prikladam link, kde je demonstrace zlomeni md5 hashu pomoci rainbow tables. http://www.antsight.com/zsl/rainbowcrack/demo_rainbowcrack_cfg6.zip v pripade zajmu se ten program da stahnout vcetne source code z http://www.antsight.com/zsl/rainbowcrack/ .
Generovani tabulek je casove pomerne narocne, ale pokud uz si ji nekdo vygeneruje, tak ji take pouziva a prumerne heslo typu "}m-6BRz*Cj=J}G" (bez uvozovek) se pak lusti zhruba minutu a pul, specialni znaky lze zadavat ALTem (to vsichni vime)
Ogare. Neco jineho je hash znat a neco jineho hash neznat. Pokud znas hash, tak je jen otazka casu zjistit k jakemu retezci odpovida. Pokud hash neznas, tak je ti tento postup k nicemu. Prece k tuto metodu nepouzijes k rozlusteni hesla k pristupu k urcite strance na WZ, nebo k FTP.
A rozhodne se neda rict, ze pouziti Rainbow tables, ci jakekoli preddefinovaneho seznamu, lze povazovat za prolomeni hesla. Toto je pouze metoda pokus omyl, a ne prolomeni hesla. Za prolomeni lze povazovat algoritmus, ktery je schopny sam pomoci vypoctu a metod zjistit puvodni retezec. A to se neda rict u MD5 ci SHA1. Jsou pouze jednosmerne. Zpetna cesta neexistuje. Krome kolizi, ale ty jsou stejne nepouzitelne.
Ale no taak, nebudeme se tu prece dohadovat clovece.
Za prolomeni lze povazovat algoritmus, ktery je schopny sam pomoci vypoctu a metod zjistit puvodni retezec.
Odpoved: Takovy algoritmus je napriklad program, ktery zjisti podle hashe jaky byl ten puvodni retezec, nemusi to byt vzdy 100% spolehlive, ale vetsinou to vyjde.
Za prolomeni hashe povazuji libovolne reveznuti, ktere nam poslouzi tak, dobre jako puvodni retezec. Pokud tedy hashujeme hesla, tak ja je budu brat za prolomena, kdyz si nekdo najde ke kazdemu z nich kolizi a pouzije ji. To, ze ty budes takovato hesla dal povazovat za nezlomena uz je opravdu velmi nelogicke =)
<HTML>Jenže stejně - už abys mohl louskat hashe v něčí databázi, musíš mít do ní přístup a ty hashe si z ní vytáhnout. Navíc programátor může ve skriptech udělat šikovné věci s výsledným MD5 hashem - stačí abys nevěděl např. o reverzi hashe a budeš louskat do aleluja. I když většinou když je přístup do DB, je i přístup k webovému prostoru, takže by nebyl problém to zjistit. V každém případě potřebuješ ten přístup. Čímž se opět dostáváme k získávání hesla, a já si myslím, že ať už jde o hesla hashovaná někde v DB, nebo heslo k DB, tak je jednodušší se na ta hesla prostě zeptat, což bys jako v tomhle oboru trošku vzdělaný a zkušený člověk mohl vědět.
Ale už jsme dost odbočili. Téma je HTTPS. Momentálně má administrátor mira úplně jiné starosti (mysql servery) a o tom, že by se uvažovalo o přidání podpory HTTPS, jsem žádnou zprávu nedostal.</HTML>
Doporučuju z SSL nedělat modlu (zvlášť třeba SSL 2.0 byla děravá) a z MD5 nebo SHA1 kolizí nedělat něco co to není.
Jak už tu bylo napsáno, je potřeba minimálně přístup k hashi - i proto jsou např. v Linuxu hashe uživatelů uloženy v shadow s root právy - a také je nutné např. znát salt - a pokud není nikde uložen, může se dotyčnej jít se všema tabulkama akorát tak klouzat.
A k SSL:
http://www.root.cz/zpravicky/4477/
http://www.actinet.cz/bezpecnost_informacnich_technologii/j1/l33/no1089/Apache_mod_ssl,_mozna_az_kompromitace.html
http://www.root.cz/clanky/odpocuvanie-sifrovanych-spojeni/
Stejně tak je děravý PHP i Apache. To, že tu neaktualizují a zůstávají tu pravěké verze je fakt, ale tapetovací thready tomu asi moc nepomůžou.
Nicméně já si kdysi vyžádal alespoň Auth Digest (btw, nativní podpora je konečně v PHP 5.1.0) :-)
... co se týče kolizí, výstižně je to tady:
http://www.root.cz/clanky/odpocuvanie-sifrovanych-spojeni/nazory/62468/vlakno/#o62496
Nipal:
1) Jenže stejně - už abys mohl louskat hashe v něčí databázi, musíš mít do ní přístup a ty hashe si z ní vytáhnout.
2) V každém případě potřebuješ ten přístup. Čímž se opět dostáváme k získávání hesla, a já si myslím, že ať už jde o hesla hashovaná někde v DB, nebo heslo k DB, tak je jednodušší se na ta hesla prostě zeptat, což bys jako v tomhle oboru trošku vzdělaný a zkušený člověk mohl vědět.
ad 1) to je snad samozrejme, proc mi to rikas?
ad 2) ze potrebuji pristup je take samozrejme, ale nedostavame se tim k ziskavani hesla a ani se nebudeme na heslo ptat, protoze to delaji jen tupi lameri, kteri si mysli ze jsou hackeri kdyz jim nejaky trouba vykeca sve password. (a nekdy takoveto lamy i o sobe rikaji, nebo nechaji napsat do novin ze jsou to haxori =))
Jde o to, ze v PHP/ASP je zhruba polovina programatoru dost lamerska, vubec nevi jak to funguje, jen odnekud z jinych stranek okopci/stahnou cizi kod + sablonu vcetne grafiky i stylu. Takovyto lameri ani netusi, ze staci jediny nezabezpeceny vstup, ktery je pouzit v SQL dotazu a muze prijit naradu SQL injection, nebo napr. kdyz idiot neosetri including tak muzeme zjistit heslo, nebo treba mu sdeletovat jeho pages.
Mluvim o takovych lamach, kteri kdyz neco uz naprogramuji, tak to ani neotestuji, zda to vubec funguje tak, jak by melo.
Cili clovek v tomto oboru zkuseny vi, ze lamy se ptaji na hesla, aby si mohli myslet ze jsou hackeri, znudeni typci pak hledaji chyby a deti popr. jini negramotni lide je nazyvaji hackery a pritom nemaji vubec predstavu o tom, kdo to byl hacker, kde se to slovo vzalo, atp. Nemaji svuj nazor, pouze tupe a porad dokola omilaji cizi nazory, jak uz to ostatne u negramotu byva... A cim vice omilaji cizi nazory tim si mysleji ze jsou chytrejsi oproti lidem, kteri maji nazor vlastni