Pravosť...

Programovacie jazyky, rady, poradňa...
S-player
Light Star
Light Star
Príspevky: 277
Registrovaný: 23 júl 2011, 22:30

Pravosť...

Príspevok od používateľa S-player »

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" :D Ale ten design alebo ako to nazvať - jednoducho HTML / CSS sa dá rýchlo skopčiť a prispôsobiť...
test
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 5099
Registrovaný: 13 mar 2005, 5:20
Bydlisko: Doma

Re: Pravosť...

Príspevok od používateľa test »

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.
S-player
Light Star
Light Star
Príspevky: 277
Registrovaný: 23 júl 2011, 22:30

Re: Pravosť...

Príspevok od používateľa S-player »

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 ?
Dedusko
Amateur
Amateur
Príspevky: 15
Registrovaný: 15 jún 2012, 20:44

Re: Pravosť...

Príspevok od používateľa Dedusko »

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.
S-player
Light Star
Light Star
Príspevky: 277
Registrovaný: 23 júl 2011, 22:30

Re: Pravosť...

Príspevok od používateľa S-player »

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.
Dedusko
Amateur
Amateur
Príspevky: 15
Registrovaný: 15 jún 2012, 20:44

Re: Pravosť...

Príspevok od používateľa Dedusko »

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.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Pravosť...

Príspevok od používateľa audiotrack »

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
Dedusko
Amateur
Amateur
Príspevky: 15
Registrovaný: 15 jún 2012, 20:44

Re: Pravosť...

Príspevok od používateľa Dedusko »

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
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8223
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Pravosť...

Príspevok od používateľa harrison314 »

Ani zoznam uzivatelov ani cari-mari z hashami hesiel ani nic ine ty pri phisingu nepomoze.
Numline1
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 858
Registrovaný: 04 dec 2006, 18:04

Re: Pravosť...

Príspevok od používateľa Numline1 »

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.
S-player
Light Star
Light Star
Príspevky: 277
Registrovaný: 23 júl 2011, 22:30

Re: Pravosť...

Príspevok od používateľa S-player »

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...
Dedusko
Amateur
Amateur
Príspevky: 15
Registrovaný: 15 jún 2012, 20:44

Re: Pravosť...

Príspevok od používateľa Dedusko »

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 :/
S-player
Light Star
Light Star
Príspevky: 277
Registrovaný: 23 júl 2011, 22:30

Re: Pravosť...

Príspevok od používateľa S-player »

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...
Napísať odpoveď