No a problém nastáva pri overení, napríklad niekto si môže skopčiť design toho panela a odchytávať hesla členov. Ako by sa dalo ,ale zabezpečiť to aby člen vedel ,že ide proste o origoš panel ,s ktorým majiteľ webu nič nerobil ? Napadá vás niečo ? Čo sa týka zdrojového kodu s tým to majiteľ webu nebude mať ľahké kedže prejde cez rôzne obsfucatori takže bude "krásny"
Pravosť...
Pravosť...
Zdravím, riešim momentálne menšiu dilemu s "pravosťou". Prejdem rýchlo k veci. Pracujem na panely určenom pre herné portály kde sa členovia lognu a zobrazia sa im isté veci. Ten "panel" respektíve ajaxová aplikácia komunikuje ,ale s mojim webom - databázou.
No a problém nastáva pri overení, napríklad niekto si môže skopčiť design toho panela a odchytávať hesla členov. Ako by sa dalo ,ale zabezpečiť to aby člen vedel ,že ide proste o origoš panel ,s ktorým majiteľ webu nič nerobil ? Napadá vás niečo ? Čo sa týka zdrojového kodu s tým to majiteľ webu nebude mať ľahké kedže prejde cez rôzne obsfucatori takže bude "krásny"
Ale ten design alebo ako to nazvať - jednoducho HTML / CSS sa dá rýchlo skopčiť a prispôsobiť...
No a problém nastáva pri overení, napríklad niekto si môže skopčiť design toho panela a odchytávať hesla členov. Ako by sa dalo ,ale zabezpečiť to aby člen vedel ,že ide proste o origoš panel ,s ktorým majiteľ webu nič nerobil ? Napadá vás niečo ? Čo sa týka zdrojového kodu s tým to majiteľ webu nebude mať ľahké kedže prejde cez rôzne obsfucatori takže bude "krásny"
Re: Pravosť...
Rovnako takto sa kopiruje FB, Pokec, internet banking a vsetko. Akym takym riesenim je SSL protokol a upozornenie navstevnikov, aby kontrolovali odkaz webu a aj to, ci je pouzity HTTPS.
Re: Pravosť...
Nechápem akoby niečomu takému mohlo pomôcť SSL / HTTPS, vždy sa to bude dať skopčiť a použiť. A čo sa týka odkazu to je dalšia vec ,ktorá asi nebude fungovať. Ked bude user na nejakom inom webe ,ktorý bude používať app. tak jedinú URL ,ktorú uvidí bude URL toho webu. Aplikácia je normálna integrovaná bez nejakých okien a taktiež neviem či by ti pomohol.
Koniec koncov, ochrana sa nenájde asi žiadna a je to čisto len na užívateľovi, dávať pozor..
// Ešte ma napadlo dať do apky niečo na štýl "Overiť", user by nato klikol a vyhodilo by mu malé okno a v ňom by si mohol skontrolvať pravosť podľa linku ,ktorý by sa mu zobrazil. No lenže to tiež je taká vec
Síce som sa s tým nejako zatiaľ nebavil ,ale nedá sa náhodou za pomoci Javascriptu zameniť URLka v okne ?
Prípadne ten "zlodej hesiel" by to mohol zriešiť tak ,žeby po kliknutí na link vyhodil userovi len nejaký obrázok okna, normálne by bolo plne funkčné ( drag and drop, dalo by a zrušiť atd... ). Pokiaľ by sedel štýl okna s nastavením userovho OS / prehliadača tak by si to asi ťažko ,ale všimol. Fakt je to na hovno
// Existuje nato nejaký zákon alebo niečo podobné, s čím by bolo možne obviniť daného "škodcu" ,ktorý by ukradol heslo a narušil tak súkromie usera ?
Koniec koncov, ochrana sa nenájde asi žiadna a je to čisto len na užívateľovi, dávať pozor..
// Ešte ma napadlo dať do apky niečo na štýl "Overiť", user by nato klikol a vyhodilo by mu malé okno a v ňom by si mohol skontrolvať pravosť podľa linku ,ktorý by sa mu zobrazil. No lenže to tiež je taká vec
Prípadne ten "zlodej hesiel" by to mohol zriešiť tak ,žeby po kliknutí na link vyhodil userovi len nejaký obrázok okna, normálne by bolo plne funkčné ( drag and drop, dalo by a zrušiť atd... ). Pokiaľ by sedel štýl okna s nastavením userovho OS / prehliadača tak by si to asi ťažko ,ale všimol. Fakt je to na hovno
// Existuje nato nejaký zákon alebo niečo podobné, s čím by bolo možne obviniť daného "škodcu" ,ktorý by ukradol heslo a narušil tak súkromie usera ?
Re: Pravosť...
Napadlo ma ... čo takto dať do panela iba políčko pre "username" a po odoslaní vrátiť "svoj" formulár pre "heslo", ale s tokenom, kde by "username" bolo zašifrované? Samozrejme je to iba o tom, že užívateľ by musel byť o tomto kroku informovaný, ako sa bezpečne prihlasovať na iných weboch a to ešte pred spustením panela. Resp., že prihlasovanie prebieha týmto spôsobom. Ale je možné, že aj toto sa dá obísť, len ma momentálne nenapadá, ako.
Re: Pravosť...
Neviem či som dobre pochopil to čo si napísal.
Čiže user odošle svoje meno a vráti sa mu nejaký hash. Ten hash sa mu zobrazí ? Pokiaľ áno tak to by bolo dobre keby bol jednoduchý a user by si ho vedel nejako overiť. Pokiaľ sa alg. toho hashu nebude dať prelomiť je to OK.
ALE
Byť útočníkom tak si viem v prehliadači čeknúť čo sa pri logovaní odosiela takže ked tam uvidím ,že sa odosiela meno do .../abc.php tak viem zrobiť svoj FORM odoslať meno a následne zobraziť userovi pekne jeho hash. Následne by user zadal heslo to by sa odoslalo dajme tomu do .../cba.php a to by tiež vedel útočník respektíve škoda obíjsť
// Jednoducho ako som napísal zdrojový kod pôjde do obsfucatora ,ale nijako sa nedá zabezpečiť aby sa nesledovali akcie prehliadača napríklad odosielanie / prijímanie či už ide o rôzne média alebo dáta - meno / heslo takže je to pekne v riti. No a zase nemôžem komplikovať userovi život ,ktorý si bude chcieť rýchlo čeknúť nejaké výsledky a bude musieť prejsť cez 150 krokov.
Ešte ma napadlo zrobiť aplikáciu v podobe Java appletu čo by sa ťažšie nahradzovalo a s tým kontrolovaním dát - neviem či by to bolo možne. Zatiaľ som to neskúšal a ani neriešil ,ale zrejme by to také ľahké nebolo. Tam ma ,ale zase odrádza kompatibilita s mobilnými platformami.
Čiže user odošle svoje meno a vráti sa mu nejaký hash. Ten hash sa mu zobrazí ? Pokiaľ áno tak to by bolo dobre keby bol jednoduchý a user by si ho vedel nejako overiť. Pokiaľ sa alg. toho hashu nebude dať prelomiť je to OK.
ALE
Byť útočníkom tak si viem v prehliadači čeknúť čo sa pri logovaní odosiela takže ked tam uvidím ,že sa odosiela meno do .../abc.php tak viem zrobiť svoj FORM odoslať meno a následne zobraziť userovi pekne jeho hash. Následne by user zadal heslo to by sa odoslalo dajme tomu do .../cba.php a to by tiež vedel útočník respektíve škoda obíjsť
// Jednoducho ako som napísal zdrojový kod pôjde do obsfucatora ,ale nijako sa nedá zabezpečiť aby sa nesledovali akcie prehliadača napríklad odosielanie / prijímanie či už ide o rôzne média alebo dáta - meno / heslo takže je to pekne v riti. No a zase nemôžem komplikovať userovi život ,ktorý si bude chcieť rýchlo čeknúť nejaké výsledky a bude musieť prejsť cez 150 krokov.
Ešte ma napadlo zrobiť aplikáciu v podobe Java appletu čo by sa ťažšie nahradzovalo a s tým kontrolovaním dát - neviem či by to bolo možne. Zatiaľ som to neskúšal a ani neriešil ,ale zrejme by to také ľahké nebolo. Tam ma ,ale zase odrádza kompatibilita s mobilnými platformami.
Re: Pravosť...
Ten hash by bol povedzme hidden v druhom form (samozrejme ho majiteľ webu, ktorý to má chuť urobiť aj uvidí). Myslel som to takto.
Prvý form - Username, po odoslaní vráti tvoj pravý form s Heslom a hashovaným Username.
Ak by to robil majiteľ webu a všetko by bežalo pod JS.
Jeho form s Username sa odošle, vrátiš ale po odoslaní svoj form s hashom a s políčkom pre heslo, ktoré užívateľ odosiela potom tebe. Ak by si urobil majiteľ webu vlastné 2 formuláre, nedokázal by užívateľa prihlásiť, pretože by mu chýbal hash.
Alebo ... namiesto formulára po kliknutí na "Prihlásiť" skok na tvoj web a po úspešnom prihlásení vrátiť užívateľa naspäť na web majiteľa stránky.
Prvý form - Username, po odoslaní vráti tvoj pravý form s Heslom a hashovaným Username.
Ak by to robil majiteľ webu a všetko by bežalo pod JS.
Jeho form s Username sa odošle, vrátiš ale po odoslaní svoj form s hashom a s políčkom pre heslo, ktoré užívateľ odosiela potom tebe. Ak by si urobil majiteľ webu vlastné 2 formuláre, nedokázal by užívateľa prihlásiť, pretože by mu chýbal hash.
Alebo ... namiesto formulára po kliknutí na "Prihlásiť" skok na tvoj web a po úspešnom prihlásení vrátiť užívateľa naspäť na web majiteľa stránky.
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: Pravosť...
keď si taký paranoik, tak deleguj zodpovednosť mimo svoju aplikáciu a sprav tam prihlasovanie cez facebook. Vo všeobecnosti tomu ale nezabrániš, lebo vždy sa nájde niekto hlúpi kto sa nechá nachytať, a tiež platí, že môžeš mať akokoľvek zabezpečený login keď bude chyba niekde inde
Re: Pravosť...
Ja vychádzam z toho, že má vlastný zoznam užívateľov. Ináč by som sa prikláňal k tomu FB API. Momentálne tak riešim jednu aplikáciu, ktorú robím a odpadáva mi práca s registráciou, overovaním a profilom.
-
harrison314
Hardcore addict
- Príspevky: 8223
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: Pravosť...
Ani zoznam uzivatelov ani cari-mari z hashami hesiel ani nic ine ty pri phisingu nepomoze.
Re: Pravosť...
Ak si velmi paranoidny, mozes nakodit aplikaciu pre mobil alebo pre PC, ktora bude sluzit ako authenticator a generovat unikatne hashe (pre jedneho usera) kazdych 30s na zaklade specialneho kluca. Bez toho sa nebude dat prihlasit. Riesi to tak napriklad Blizzard a podobne spolocnosti.
Re: Pravosť...
Numline1: Dík, to vyzerá byť celkom schopné len ma tam zasa serie tá "rýchlosť" proste ked to zrobím ako apku user si ju musí v prvom rade stiahnúť následne pri logovaní zapnúť a...
Facebook login neprípada do úvahy no napadla ma mometálne ešte jedna vec ,ktorou je rozšírenie pre prehliadač lenže tam vidím tri nevýhody
- Vývoj je potrebný pre viacero prehliadačov čo zaberie istý čas ,ale inač nejde o nič zložité ( HTML, JS... )
- User si musí rozšírenie nainštalovať <- to je ,ale aj menšie plus kedže si to nainštaluje oficiálne a nemalo by dojsť k inštalácii nejakej kktiny
- Najväčšie mínus je ,že sa týmto odpíše mobilná platforma
Ako rozšírenie by sa ,ale dal spraviť jednak spomínaní generátor hesiel alebo aj login. ( Zatiaľ som neriešil žiadne rozšírenie čiže neviem čo všetko je možne vyčarovať ,ale tak následna vec by mala fungovať ). Takže dané rozšírenie by bolo stále aktívne ,ak by užívateľ navštevoval weby tie by sa stále overovali - či je daný web regnutí u mňa a tým pádom je naňom umiestnený panel. Ak áno tak by sa dajme tomu logo rozšírenia rozžiarilo alebo by sa niečo vysunulo. Tam by sa potom user napríklad rovno prihlásil.
Žiaľ ,ale neviem ako sú natom rozšírenie s bezpečnosťou - či je tam možne tiež sledovať odoslaný form a podobne...
Facebook login neprípada do úvahy no napadla ma mometálne ešte jedna vec ,ktorou je rozšírenie pre prehliadač lenže tam vidím tri nevýhody
- Vývoj je potrebný pre viacero prehliadačov čo zaberie istý čas ,ale inač nejde o nič zložité ( HTML, JS... )
- User si musí rozšírenie nainštalovať <- to je ,ale aj menšie plus kedže si to nainštaluje oficiálne a nemalo by dojsť k inštalácii nejakej kktiny
- Najväčšie mínus je ,že sa týmto odpíše mobilná platforma
Ako rozšírenie by sa ,ale dal spraviť jednak spomínaní generátor hesiel alebo aj login. ( Zatiaľ som neriešil žiadne rozšírenie čiže neviem čo všetko je možne vyčarovať ,ale tak následna vec by mala fungovať ). Takže dané rozšírenie by bolo stále aktívne ,ak by užívateľ navštevoval weby tie by sa stále overovali - či je daný web regnutí u mňa a tým pádom je naňom umiestnený panel. Ak áno tak by sa dajme tomu logo rozšírenia rozžiarilo alebo by sa niečo vysunulo. Tam by sa potom user napríklad rovno prihlásil.
Žiaľ ,ale neviem ako sú natom rozšírenie s bezpečnosťou - či je tam možne tiež sledovať odoslaný form a podobne...
Re: Pravosť...
Tak ale ty potom ako čítam, potrebuješ riešiť dva problémy.
1 - aby si ktokoľvek neimplementoval tvoj form na stránku. / Môžeš kontrolovať odkiaľ prichádza požiadavka pri logovaní a zároveň uverejniť zoznam dôveryhodných webov.
2 - aby si vlastník stránky neupravoval form a nezachytával dáta. / Tu by som to riešil cez Iframe (AJAX) a s tým hashom na "Username".
Ako bolo vyššie spomínané, 100% nedosiahneš, ale aspoň to poriadne sťažíš. Nejakou aplikáciou navyše si myslím, že by si užívateľov iba odrádzal. Oni chcú mať žiaľ všetko jednoduché a neberú ohľad na to, čo trápi teba v rámci bezpečnosti ich účtov
1 - aby si ktokoľvek neimplementoval tvoj form na stránku. / Môžeš kontrolovať odkiaľ prichádza požiadavka pri logovaní a zároveň uverejniť zoznam dôveryhodných webov.
2 - aby si vlastník stránky neupravoval form a nezachytával dáta. / Tu by som to riešil cez Iframe (AJAX) a s tým hashom na "Username".
Ako bolo vyššie spomínané, 100% nedosiahneš, ale aspoň to poriadne sťažíš. Nejakou aplikáciou navyše si myslím, že by si užívateľov iba odrádzal. Oni chcú mať žiaľ všetko jednoduché a neberú ohľad na to, čo trápi teba v rámci bezpečnosti ich účtov
Re: Pravosť...
No nakoniec som si pozrel ten FB login, majú to zrobené na štýl vyskakovacieho okna, zrejme to považujú za bezpečné. Zrobím to tak asi aj, ja s tým ,že užívateľ pred registráciou oboznámim s tým nech si čekuje link v okne...
Všetkým dík za rady...
Všetkým dík za rady...