Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Korisničko područje (login)!?

[es] :: PHP :: Korisničko područje (login)!?

Strane: 1 2

[ Pregleda: 991 | Odgovora: 21 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Wizard4U

Član broj: 178049
Poruke: 101
*.adsl.net.t-com.hr.



Profil

icon Korisničko područje (login)!?06.05.2008. u 20:19

Skinuo sam neke skripte jer mi se s tim stvarno neda zezat,tj. na to ću se vratiti kad ću imati više vremena!
Ali sad kad postavim tu skriptu ne znam kako da npr. stavim ili podesim ;
Za goste je;
http://www.mojastranica.com

A kad bi htjeli nešto mijenjati ili u forum se registrirati onda bi ih preusmjerilo na:
http://www.mojastranica.com/login/login.php

Ali sad neznma kako da podesim da mi netko može ući općenito u
http://www.mojastranica.com/login ili http://www.mojastranica.com/admin
samo putem http://www.mojastranica.com/login/login.php!
A ne da kopira npr. link => http://www.mojastranica.com/admin/index.php i pusti ga unutra!
Molio bih tu za malo objašnjenja i ako može link za početak za neku jednostavniju skriptu za skinuti.
Pretpostavljam da sam stvarno zakomplicirao stvar ali mislim da bi bilo dobro da se tako nešto objasni!
Hvala
80% Tinejdzera na svetu slusa/pocinje da slusa RAP. Ako si ti medju preostalih 20%, stavi ovo u svoj potpis
06.05.2008. u 20:19 

aXi_
admir dautovic
Rozaje

Član broj: 121845
Poruke: 52
77.222.2.*



Profil

icon Re: Korisničko područje (login)!?06.05.2008. u 20:47
nisam bash najbolje razumio sta zelish tacno ??

P.S. Evo bash sad pravim LogIn scriptu ... !
06.05.2008. u 20:47 

Wizard4U

Član broj: 178049
Poruke: 101
*.adsl.net.t-com.hr.



Profil

icon Re: Korisničko područje (login)!?06.05.2008. u 20:57
Skinuo sam jednu skriptu,ubacim je i instaliram ali ne znam kako da podesim da nitko ne može ući u .../admin tj. da ga preusmjeri na login.php i onda može biti u tom folderu,i da onda piše "Trenutno ste ulogirani kao("ime")
Skinuo sam ovu skriptu =>
http://www.roscripts.com/PHP_login_script-143.html
80% Tinejdzera na svetu slusa/pocinje da slusa RAP. Ako si ti medju preostalih 20%, stavi ovo u svoj potpis
06.05.2008. u 20:57 

Nemanja Avramović
PHP developer, Webinsane
Mladenovac, Srbija

Moderator
Član broj: 32202
Poruke: 3769
212.200.203.*

ICQ: 266136396
Sajt: www.avramovic.info


Profil

icon Re: Korisničko područje (login)!?06.05.2008. u 22:53
Ja upravo završavam jednu jednostavnu login skriptu. Treba još da napišem readme fajl čisto da objasnim kako koristiti sa bazom podataka odnosno bez baze pa ću objaviti ovde.
Moj sajt. Moj blog. Moj avatar. Moj grad. Moja frizura.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
06.05.2008. u 22:53 

Nemanja Avramović
PHP developer, Webinsane
Mladenovac, Srbija

Moderator
Član broj: 32202
Poruke: 3769
79.101.219.*

ICQ: 266136396
Sajt: www.avramovic.info


Profil

icon Re: Korisničko područje (login)!?07.05.2008. u 20:44
Pre svega se izvinjavam zbog duplog posta, ali prošao je skoro ceo dan od poslednje poruke, pa mislim da korisnici neće primetiti novost na temi ako samo uradim izmenu poslednje poruke.

Kao što sam i obećao, evo login skripte. Sklepao sam neki readme fajl (zašto ni jedan developer ne voli da piše dokumentaciju? ) pa verujem da ćete se snaći. Svi komentari su dobrodošli.

Obavezno pogledajte demo.php a za bilo kakvo naprednije korišćenje pročitajte docs/readme.txt

Ako imate nekih pitanja u vezi skripte, slobodno pitajte! Ako neko nađe neki propust nek brzo javlja, pa da ispravljam.
Moj sajt. Moj blog. Moj avatar. Moj grad. Moja frizura.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
07.05.2008. u 20:44 

Bagwell

Član broj: 169485
Poruke: 1
*.dynamic.sbb.rs.



Profil

icon Re: Korisničko područje (login)!?09.05.2008. u 13:09
Hvala, Nemanja, bas ovako nesto trazim :)
Ja se bas nesto slabo razumem u php i mysql..-Jel ova skripta sigurna? Mislim od injectiona i ostalih "dzidza-bidza"? :)


[Ovu poruku je menjao Bagwell dana 09.05.2008. u 14:30 GMT+1]
09.05.2008. u 13:09 

Nemanja Avramović
PHP developer, Webinsane
Mladenovac, Srbija

Moderator
Član broj: 32202
Poruke: 3769
79.101.131.*

ICQ: 266136396
Sajt: www.avramovic.info


Profil

icon Re: Korisničko područje (login)!?09.05.2008. u 14:02
Pa ja sam je zaštitio koliko sam umeo da je zaštitim, a mislim da je dovoljno zaštićena od MySQL injection-a.
Kao što rekoh, ako neko primeti neki propust, nek' javlja.
Moj sajt. Moj blog. Moj avatar. Moj grad. Moja frizura.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
09.05.2008. u 14:02 

kazil
Robert Bašić
student, wannabe freelancer
Bačka Topola

Član broj: 120044
Poruke: 238
*.cable-3.sattrakt.net.

Jabber: kazil@elitesecurity.org
ICQ: 446475288
Sajt: www.vtssu.rs/~kazil


Profil

icon Re: Korisničko područje (login)!?09.05.2008. u 15:05
Nemanja, good job on this one :) mnogo fino odradjeno.

Iskoristio sam sve svoje znanje i umece, ali nikako nisam uspeo da odradim nista "lose" sa skriptom, tj. ili me je provalio ili me je samo iskulirao i ostavio na login formi. Mislim da je sasvim sigurna aplikacija.
And Your Books I Shall Forever Read...
Earth is but one country, and mankind its citizens...
09.05.2008. u 15:05 

dakipro
Dalibor Jovic
PHP Developer, SMDesign, Ciplex
Novi Sad

Moderator
Član broj: 31848
Poruke: 664
89.216.107.*



Profil

icon Re: Korisničko područje (login)!?09.05.2008. u 15:21
Pa naravno da je mnogo fino odradjeno!
Nepisano pravilo php foruma, "NIKAD ne sumnjaj u moderatora php foruma!"
Savet za sledecu verziju (if ever), dodaj jos jedno polje za pass_hash, cisto fazona radi. Iako, kome god bude bilo potrebno vise sigurnosti od ovoga (sto je ovde za sada odlicno), zna ce da se javi autoru
09.05.2008. u 15:21 

Wizard4U

Član broj: 178049
Poruke: 101
*.adsl.net.t-com.hr.



Profil

icon Re: Korisničko područje (login)!?09.05.2008. u 18:03
Ima jedan mala stvarčica ; jedna skripta koju sam skinuo sadrži functions.php i kad napišeš točan link do nje, možeš je otvoriti a mislim da bi mogli i malo veći hakeri zloupotrijebiti to!
Pokušao sam staviti redirekt ako netko nije ulogiran da ga preusmjeri ali onda mi ne radi svoju fuknciju pravilno!
Ima koje drugo rješenje?
80% Tinejdzera na svetu slusa/pocinje da slusa RAP. Ako si ti medju preostalih 20%, stavi ovo u svoj potpis
09.05.2008. u 18:03 

dakipro
Dalibor Jovic
PHP Developer, SMDesign, Ciplex
Novi Sad

Moderator
Član broj: 31848
Poruke: 664
89.216.107.*



Profil

icon Re: Korisničko područje (login)!?09.05.2008. u 18:13
Mislim da to ne bi moglo da se desi ako si lepo pratio uputstva koja pisu u uputstvu : "When you've uploaded script, open files you want to protect and add following lines at very beginning of each file..."
Da li taj fajl "functions.php" inkluduje ovu skriptu?
09.05.2008. u 18:13 

bild-studio
Zaimovic Tarik
IT Project Manager
Podgorica

Član broj: 138258
Poruke: 75
*.com
Via: [es] mailing liste

Sajt: www.bild-studio.com


Profil

icon Re: Korisničko područje (login)!?09.05.2008. u 18:24
Ima. Preko .htaccess mozes da zabranis pristum folderima, extenzijama
fajlova, jednostavno mozes da uradis securyti ludnica.
09.05.2008. u 18:24 

bild-studio
Zaimovic Tarik
IT Project Manager
Podgorica

Član broj: 138258
Poruke: 75
*.com
Via: [es] mailing liste

Sajt: www.bild-studio.com


Profil

icon Re: Korisničko područje (login)!?09.05.2008. u 18:27
A i slazem se sa dakipo nemoguce to jer server pre nego sto ti vrati skriptu
kompajlira php skriptu. Cisto sumnjam da si mogao da otvoris kod
functions.php.
09.05.2008. u 18:27 

Wizard4U

Član broj: 178049
Poruke: 101
*.adsl.net.t-com.hr.



Profil

icon Re: Korisničko područje (login)!?09.05.2008. u 18:37
Nisam otvorio nego velim da je bolje kad takve funkcijske fajlove uopče ne možeš dda otvoriš! Pod cpanel sam stavio pod lozinku taj file! Hvala na podsjetnici
80% Tinejdzera na svetu slusa/pocinje da slusa RAP. Ako si ti medju preostalih 20%, stavi ovo u svoj potpis
09.05.2008. u 18:37 

Nemanja Avramović
PHP developer, Webinsane
Mladenovac, Srbija

Moderator
Član broj: 32202
Poruke: 3769
79.101.131.*

ICQ: 266136396
Sajt: www.avramovic.info


Profil

icon Re: Korisničko područje (login)!?09.05.2008. u 18:48
Ako je sve u redu sa serverom i isti je lepo podešen, pristupanje fajlu secure-login.php prikazuje ovo:



Ako pukne PHP onda će izlistati sadržaj fajla. Zato je bolje koristiti md5 kriptovane šifre, bilo da ih držite u fajlu ili u bazi (bolje u bazi )

Daki, na šta si tačno mislio sa tim pass_hash poljem?

edit: Malo pre sam ispravio u skripti jedan mali bug pa molim sve koji su skinuli skriptu da to urade opet.

[Ovu poruku je menjao Nemanja Avramović dana 09.05.2008. u 23:12 GMT+1]
Moj sajt. Moj blog. Moj avatar. Moj grad. Moja frizura.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
Prikačeni fajlovi
09.05.2008. u 18:48 

Wizard4U

Član broj: 178049
Poruke: 101
*.adsl.net.t-com.hr.



Profil

icon Re: Korisničko područje (login)!?11.05.2008. u 16:59
Imam jedno pitanje koje nije vezano uz tu temu al je kratko pa bih ga ovdje postavio;
Ja sam preko jedne skripte pomoću INCLUDE preusmjerio korisnika na drugu stranicu ako nije logiran, ali kako bih glasilo najjednostavnije rješenje preko PHP-a preusmjerenje na drugu stranicu; npr. :
Netko otvori http://www.mojastranica.hr a preuasmjeri da na http://www.mojastranica.hr/login (ili neki drugi link,nema veze)!?
Hvala
80% Tinejdzera na svetu slusa/pocinje da slusa RAP. Ako si ti medju preostalih 20%, stavi ovo u svoj potpis
11.05.2008. u 16:59 

kazil
Robert Bašić
student, wannabe freelancer
Bačka Topola

Član broj: 120044
Poruke: 238
*.cable-3.sattrakt.net.

Jabber: kazil@elitesecurity.org
ICQ: 446475288
Sajt: www.vtssu.rs/~kazil


Profil

icon Re: Korisničko područje (login)!?11.05.2008. u 17:12
preusmeravanje ides preko:

Code:

header("Location:tu_me_prebaci.php");

And Your Books I Shall Forever Read...
Earth is but one country, and mankind its citizens...
11.05.2008. u 17:12 

dakipro
Dalibor Jovic
PHP Developer, SMDesign, Ciplex
Novi Sad

Moderator
Član broj: 31848
Poruke: 664
89.216.107.*



Profil

icon Re: Korisničko područje (login)!?11.05.2008. u 17:40
Za ovakva banalna pitanja ubuduce prvo potrazi na google ili php manual, postovi ce ti biti brisani bez obrazlozenja.
Mislim, dal te nije mrzelo da cekas da ti neko na forumu odgovori kad bi pretragom pod "php redirection" (logican upit) odmah dobio resenje na google...
11.05.2008. u 17:40 

dakipro
Dalibor Jovic
PHP Developer, SMDesign, Ciplex
Novi Sad

Moderator
Član broj: 31848
Poruke: 664
89.216.107.*



Profil

icon Re: Korisničko područje (login)!?11.05.2008. u 18:21
@Nemanja,
pa ako samo radis md5 od passworda, prilikom proboja baze na serveru (recimo da se veoooma retko desava, ali se desava, pogotovo na jeftinijim shared hostinzima) ako dodjes do baze, mozes videti md5 pasworda svih usera. Nemoraju uvek hakeri da izvrse upad, znaju to biti i ljudi koji imaju neki nivo pristupa bazi, iz bilokog razloga, bilo dampu baze, bilo da dobiju email dumpa baze, neki buduci developeri, testeri, klijenti ili sta ti ja znam. Sto nije toliko strasno i ocigledno, ali se moze relativno lako reverse-engineeringom doci do izvorne sifre (jedan od manjih sajtova koji to radi passcracking.com, a postoji jos puno, da ne trazim sad).
Znaci md5('a') je uvek '0cc175b9c0f1b6a831c399e269772661' i tako dalje...
E sad, prava problematika. Prosecan korisnik koristi datume, imena ili neke ocigledne reci kao sifre, koje se lako mogu naci u bazi nekog od ovih sajtova. Takodje, vecina korisnika cesto koristi isti password za ostale sajtove, mail servere itd, a u istoj (provaljenoj) bazi 90% mozes naci i korisnikovu email adresu, pa eto radosti preuzimanja identiteta
Sad, dodatno komplikovanje se moze raditi na nekoliko nacina, meni najprostiji (a sa veeeelikim nivoom zastite) je dodavanje jos jednog polja recimo password_hash koji se koristi uz password polja. Princip rada je sledeci:
Code:

// ***** KREIRANJE KORISNIKA
//Uzmes neki random string, recimo sa datumima
$tmp = date('YmHdis')  . 'avram' . '_secret'; // nebitno sta dodas, stvar jedino koliko ti je dosadno u trenutku :)
$passwordHash=md5($tmp);  // vrednost dodatnog `password_hash` polja

//nakon toga, originalni password se edituje dovoljno da bude gotovo nemoguc za pronaci u nekoj od postojecih baza, ili da ne bude smislen ukoliko se i provali, ovde ne ide nista random
$password = md5('avramfd213' . $passwordFromPost. '12fds21dsavram' . $passwordHash);

Tako ubacen korisnik u bazu u polju `password` ne sadrzi ni pribliznu vrednost svoje unete sifre (dump pred md5 i videces sta je ustvari u tom polju). U polju `password_hash` takodje ne stoje podatci koji su ikako vezani sa sifrom korisnika. Cak i ako se dodje do tvog koda, opet se nikako ne moze naslutiti niti kod okrenuti da se povrati sifra (zato se uvek hash pravi kao random). Moze se provaliti recimo kako se ulogovati (ako i to cak moze), inace, to je to.

Provera da li je korisnikova sifra ispravna (prilikom redovnog logovanja na sajt) se vrsi:
Code:

//izvuci iz baze hash i password, radi provere
$passwordHashFromDb = $db['password_hash]; 
$passwordValueFromDb = $db['password'];

//provera gore pomenutog kriptovanja sa trenutnom vrednoscu u bazi 
if (md5('avramfd213' . $passwordFromPost. '12fds21dsavram' . $passwordHashFromDb) == $passwordValueFromDb){
// Sifra se poklapa sa kombincijom hasha i passworda iz baze, uloguj korisnika




Sad, jedino sto ovaj metod zaista zasticuje je ustvari kradja sifara, taj ko je dosao do tvoje baze, moze haos da napravi aplikaciji (naravno, ako provali sa privilegijama editovanja baze), ali ne moze doci do nijedne prave sifre korisnika
S'obzirom da sam ja jako paranoican sto se sigurnosti oupsteno tice, uvek koristim nesto slicno ovome za sifre. Ako jos neko ima ideju oko logovanja uopste, neka pise slobodno.

Ovo sam ustvari video kod flyLord-a, a sad odakle njemu, to samo on zna
11.05.2008. u 18:21 

kazil
Robert Bašić
student, wannabe freelancer
Bačka Topola

Član broj: 120044
Poruke: 238
*.cable-3.sattrakt.net.

Jabber: kazil@elitesecurity.org
ICQ: 446475288
Sajt: www.vtssu.rs/~kazil


Profil

icon Re: Korisničko područje (login)!?11.05.2008. u 19:38
Pa-pa-paranoja :D

Ili uvek mozes koristiti sha1 algoritam koji je, kako kazu, sigurniji od md5. Ili jos u igru ubacis IP adresu korisnika, pa ako je doslo do promene IP adrese, hash-evi nece odgovarati.

Pre sam jos nesto cackao kriptovanje, moze se i sa tim nesto postici :)

Code:

// BLowfish algoritam, CFB mod

// Ovo cemo da kriptujemo
$string = "Wao sto imam jaku sifru!";

// Tajni kljuc
$key = "somebadasssecretkey";

// Ajmo ga jos malo zastiti
$sha1_key = sha1($key);

$iv_size = mcrypt_get_iv_size(MCRYPT_BLOWFISH,MCRYPT_MODE_CBC);
$iv = mcrypt_create_iv($iv_size,MCRYPT_RAND);

// Kriptovan string
$ciphered_string = mcrypt_encrypt(MCRYPT_BLOWFISH, $sha1_key, $string, MCRYPT_MODE_CBC, $iv);
// Ima gomilu nekih ludih karaktera, pa ga encode-ujemo...
$ciphered_string = base64_encode($ciphered_string);

// Na kriptovani string treba nalepiti $iv, jer je on uvek random, a treba nam kod dekriptovanja
// Pa ovaj slepljeni upisujemo u bazu, stavljamo u cookie...
$ciphered_string_with_iv = $iv.$ciphered_string;

/* Dekriptovanje. Odavde bi trebalo da je u drugom fajlu... */

// Tajni kljuc
$key = "somebadasssecretkey";

// Ajmo ga jos malo zastiti
$sha1_key = sha1($key);

// Opet uzimamo velicinu IV-a
$iv_size = mcrypt_get_iv_size(MCRYPT_BLOWFISH, MCRYPT_MODE_CBC);

// Skidamo IV
$iv = substr($ciphered_string_with_iv, 0, $iv_size);

// Ovo je kriptovani string koji smo dobili, bez IV-a
$ciphered_string_again = substr($ciphered_string_with_iv, $iv_size);

// Dekodujemo string
$ciphered_string_again = base64_decode($ciphered_string_again);

// Dekriptovanje...
$deciphered_string = mcrypt_decrypt(MCRYPT_BLOWFISH, $sha1_key, $ciphered_string_again, MCRYPT_MODE_CBC, $iv);

echo "
Key: $key
<br />
Sha1 key: $sha1_key
<br />
String: $string
<br />
Ciphered string: ".base64_encode($ciphered_string)."
<br />
Ciphered string with IV: ".base64_encode($ciphered_string_with_iv)."
<br />
Deciphered string: $deciphered_string
";


Ovde $ciphered_string i $ciphered_string_with_iv nikada nece imati istu vrednost, uvek dolazi do nekog random kriptovanja, tako da passcracking.com fore padaju u vodu.
$key moze biti neogranicene duzine (u svakom slucaju jako dug).
Napadac mora da zna algoritam kriptovanja (ima ih dosta: http://www.php.net/manual/en/mcrypt.ciphers.php), mod kriptovanja (http://www.php.net/manual/en/mcrypt.constants.php), $iv i naravno $key, koji se moze drzati u samom skriptu, nekom externom fajlu ili bazi.

Al' kanda je ovo malo preterano za login sistem :)
And Your Books I Shall Forever Read...
Earth is but one country, and mankind its citizens...
11.05.2008. u 19:38 

[es] :: PHP :: Korisničko područje (login)!?

Strane: 1 2

[ Pregleda: 991 | Odgovora: 21 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.