Jump to content
php.lv forumi

ezis

Reģistrētie lietotāji
  • Posts

    398
  • Joined

  • Last visited

Everything posted by ezis

  1. Netrauce esosais! Ja jaunais butu gana vienkars un nespiestu acis, tad kapec gan ne. Kaut ko anti-poke!
  2. Nomiršu, ielikšu mesidžu kkkur uz Marsa binārajā un varēsiet lasīt no zemes.
  3. ezis

    Nedaudz par SEO

    Tik labs mācību materiāls! :D
  4. Izvelc visus kēksiņus ;D no db, tad ar randomā samet viņus pa visu bildi.
  5. Nū ar jQuery pavisam vienkārši. Aizsūti savu mainīgo uz kādu php failu, kur tālāk ar viņu darīs visu ko Tev vajag.
  6. $result = mysql_query($add) or exit(mysql_error()); action='".$_SERVER['REQUEST_URI']."' Un tad paskaties, ko Tev izmet.. btw, baigi neforšs un "neloģisks" skripts :\
  7. Man kā nejēgai varbūt vari parādīt kādu savu piemēru? :? Un varbūt pastāstīt, kāpēc tā būtu labāk nekā savādāk?
  8. Mazāks juceklis kodā un vieglāk pēc tam operēt. Lietas ir atdalītas viena no otras.
  9. Arī var, bet ja es gribu ielikt random_shit vietā funkciju kādu nevis php.php? :D Netak, ir pa tēmu variants, tikai piesienos :D jo aiz "default" ir smuks komats! :D
  10. Kaut kā tā arī es tagad daru! Velku visu laiku līdzi iekš db user token (ip+user_agent) un pēctam tik čeko, ja šis nesakritīs, tad nebūs lietotāja pieeja :)
  11. Tas sprintf Tev tur neko nedod. ko tad teica Tavi logfaili?
  12. Kāpēc gan neizmantot veco labo switch?
  13. wtf? Tev maina failā skriptus? o0
  14. ezis

    Cookie

    Cōkies to me? :O Nav Tev tur ar sessijam šī problēma? Kūrā rindā jau aizsūtīts pirmais headeris? Kāda ir tā rinda un kas ir pēc tam.. :D Parādi skripteli? :?
  15. Gribēju uzzināt atbildi un iekritu azartā meklējot to! :D
  16. Kādā gadījumā nesakritīs sessijas tokens ar formas tokenu? Nū man ir +/- līdzīgi, ja sessijā ir lietotāja ip + user agents, kas sakrīt ar apmeklētāja ip + user agent datiem, tad turpina čekot tālāk utt.. btw, $_SESSION datus 3ša persona taču nekādi nevar iegūt? Kkur lasīju, ja ir register globals on, tad caur url var kkā mainīt $_SESSION datus vai kas tamlīdzīgs. Izklausās jau mazliet pēc wtf? ^_- hmm.. Cik sagūglēju, tad sesiju hijacking un fixation ir tā lielākā sāpē. Nū tad man liekas, ka esmu +/- pret to pasargāts.. Reģenerēju id, lai pasargātos no fixation un par to hijacking īsti nesaprotu :\ Sākt jukt viss kopa :@ Kā reāli tas notiek? http://phpsec.org/projects/guide/4.html Tēmā par Session Hijacking sanāk, ka sesija darbosies ar pieprasījumu no kkāda: GET / HTTP/1.1 Host: example.org User-Agent: Mozilla/5.0 Gecko Accept: text/xml, image/png, image/jpeg, image/gif, */* Cookie: PHPSESSID=1234 Un tad, ja ar tieši šādu pašu HTTP request (vai kā pareizi sakukt?) konektējos pie servera, tad man būs pieejama cita lietotāja sesija un šo visu procesu sauc par Session Hijacking? :D Kas tad īsti ir tas: GET / HTTP/1.1 Host: example.org User-Agent: Mozilla/5.0 Gecko Accept: text/xml, image/png, image/jpeg, image/gif, */* Cookie: PHPSESSID=1234 sessijas atstāts cepums? Bet pret to Session Hijacking esmu taču +/- pasargāts ar šo te $session_token = isset($_SESSION['stoken']) ? $_SESSION['stoken'] : false; $visitor_token = md5(getip() . $_SERVER['HTTP_USER_AGENT']); ja pareizi esmu sapratis kā tas viss notiek.. :? Kā sessija vispar zin, ka tas ir tas useris? Viņa atstaj kko lietotājam (cepumu?) un tad skatās vai tas ir tas pats? Vai ari glabā serverī kko no lietotāja puses.. Meklēju google kā darbojas sessijas, bet tracina, neatradu atbildi :O aa, doh! http://www.php.net/manual/en/intro.session.php otrā rindkopa ;D
  17. Atkal es. Nu, tad moku savu autorizēšanās sistēmu. Bet, jo vairāk meklēju info par to, jo vairāk saduros ar nepārliecību savam skriptam :\ Vēlētos noskaidrot vai man ar šo pietiktu? Kas man tur lieks un ko vēl vajadzētu? Kā būtu labāk.. jo cik dzirdēju, tagad jebkurš var nostopēt sessijas datus utt.. (Bija Alekseja rakstiņš forumā, kkas tāds..) Tāpēc tagad jāsāk vairāk baidīties ^^ function user_authentication(){ global $db; @session_start(); $user_id = isset($_SESSION['uid']) ? $_SESSION['uid'] : false; $session_token = isset($_SESSION['stoken']) ? $_SESSION['stoken'] : false; $visitor_token = md5(getip() . $_SERVER['HTTP_USER_AGENT']); if(is_numeric($user_id) AND $session_token == $visitor_token){ $uChData = $db->get_row(sprintf("SELECT ID, user_salt FROM " . DBP . "users WHERE ID = %d AND Ses_token = '%s'", si($user_id), si($session_token))); if(empty($uChData)){ //Session data belong to noone //Destroy useless token and user id unset($_SESSION['stoken']); unset($_SESSION['uid']); return false; }else{ //Proceed if we are authenticated //Set authentication data $this->uid = $uChData->ID; $this->user_salt = $uChData->user_salt; $this->loggedin = true; //updates last seen time $this->update_last_seen_time(); //Regenerate session ID to prevent session fixation attacks session_regenerate_id(); return true; } }else{ return false; } } http://shiflett.org/articles/session-hijacking šeit smēlos nedaudz informāciju, bet wtf? Es īsti nesaprotu par to pēdējo koda daļu, kāda jēga vienkārši sessijā uzģenerēt kkādu token? :O Ko pēc tam viņš ar viņu dara? Man token vairāk asociējas ar kko, kas identificē no lietotāja puses šajā gadījumā.. Kā būtu, ja katru reizi, kad lapa tiek atjaunota, tiktu izsniegts lietotājam jauns token cepumā? :?
  18. Ar konstantēm īpaši neaizraujos, tikai tik daudz cik galvenos settingus nodefinēt. Nu laikam jau viss skaidrs, vienkārši iepriekš darīju vienas klases ietvaros aptuveni šādi: $_SESSION[$this->sess_prefix . '_token'] Bet laikam darīšu kā rādīji, ar konstantēm.
  19. Nu jā, aptuveni. Bet man tagad viss griežās klasē ar privātajiem operātoriem un funkcijam. Mācos tagad oop un pie reizes taisu lietotāju cori.. Tur apakšā ir autentifikācija, iziešana no tiešsaistes utt..
  20. Piemēram $_SESSION['atsleega'] Atslēgas nosaukumam ir liela nozīme drošības ziņā? Varbūt tas maina ko citu.. Piemēram, ja ir viens kaut kāds API, kurš visu laiku izmanto $_SESSION['atsleega'], tad varētu rasties kāda problēma.. :? Par šādu gadījumu es kkur lasīju, kad centos noskaidrot atbildi uz šī topika tēmu ^^
  21. oukei, turēšos pie standartiem - loģiski saprotami Tabulu nosaukumi, kas sākas ar lielo burtu, gluži kā pilsētu un valstu nosaukumi ;D
  22. Izlasīju un neesmu pārliecināts vai ieguvu atbildi. Beigās vienīgais, kas nāca prātā bija "kā sabojāt gan savu, gan nākošo koda uzturētāju dzīvi", bet atdalīt kolonnu nosaukumus ir +/- svētīgi. :? Tāds jautrs raksts :D
  23. Nezinu kāpēc, bet šo es nevarēju sameklēt :\ Ir daudz visādu materiālu ar masīviem, bet ne gluži tas, ko man vajadzētu zināt.
×
×
  • Create New...