DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   PHP (http://www.devprotalk.com/forumdisplay.php?f=9)
-   -   Potrebni testeri - svaki bug pivo! (http://www.devprotalk.com/showthread.php?t=1932)

Bojan Zivanovic 29. 11. 2006. 20:14

Link sa detaljima
A sad ozbiljno, zastitis se tako sto svaki parametar koji ubacujes u kveri prvo propustis kroz mysql_real_escape string ili neku drugu funkciju slicne namene ako koristis neku drugu bazu.
I ne zaboravi da skines djubre koje PHP automatski doda kada je magic_quotes ukljucen:
PHP kôd:

if(get_magic_quotes_gpc()) {
  
$_GET array_map('stripslashes'$_GET);
  
$_POST array_map('stripslashes'$_POST);
  
$_COOKIE array_map('stripslashes'$_COOKIE);


To stavis na vrh skripte i ne mislis..

Btw, baci oko na ovo.

I pre nego sto pitas, ne gotivim nesto puno pivo, al uvek moze nesto kratko (domaca kajsijevaca, tekila, itd..) :)

flash_back 29. 11. 2006. 21:19

Ako nastavim sa ovakvim pitanjima moracu ozbiljno da poradim na organizaciji budzeta :)

flash_back 30. 11. 2006. 22:01

E vidim da je bilo polemike da nudim maglu umesto pive :)

E pa ovako, dobitnici piva za sada su:

kaizen : XSS | nije se izjasnio

LiquidBrain : SQL injection | 1 tuborg

Bojan Zivanovic : get_magic_quotes_gpc | tekila

Pivo (i tekilu) mozete preuzeti veceras u Amnestia club IBIZA posle 24h... :) [063/7-535-823]

LiquidBrain 01. 12. 2006. 07:21

Jeeeee... dobio sam pivo.... nego josh uvek sam pijan od sinotj da bih trenutno bio radostan...

LiquidBrain 01. 12. 2006. 11:46

Ima josh jedna greshka ali gramaticka...

Citat:

neovlascen pristu, ......
problem je u pristu...

LoLz

flash_back 05. 12. 2006. 10:13

Security
 
Ma LiquidBrain pomogao si mi da se zastitim od SQL injectiona u samom loginu, mislim da bi te trebalo nominovati za gajbu piva :)

---

Zavrsavam pisanje adminovog panela (za sada 1388 redova, malo sada postaje konfuzno naci odredjen line koda) i zeleo bih da poboljsam opsti security koliko god je to moguce.. jer ne vredi mi puno 1388 redova koda u adminovoj stranici ako se u nju upada za manje od dva minuta ;)

Ukrato, sta mislite da predjem na sha1 umesto md5 hasa? Mozda da celu stvar malo i 'iskomplikujem' i da hash passa bude npr: pass+korisnicko_ime+email+datum_i_vreme_registraci je - sta mislite?

Malo sam istrazivao kako se razbija md5 has (da bi mogao da se zastitim moram da znam kako se napada ;)) i zanimljiva je stvar, ako imas tabelu i imena polja mozes da postavis script i da vadis vrednost po vrednost iz hasa.. nesto sada budzim da sve query greske zapisujem u jedan txt fajlic. Poenta je da skinem sa queria printovanje errora i slicno..

I recimo da ovde ostajem bez ideja.. :)

LiquidBrain 05. 12. 2006. 10:17

U R welcome... :)

sasvim je dovoljan samo md5 hash... nemoj da gubish vreme sa takvim stvarima...

flash_back 05. 12. 2006. 10:29

Ok, nego citao sam u novinama (juce ili prekjuce) kako je jedan Rumun iz 'dosade' razbio oko 150 americkih sigurnosnih sistema u veoma kratkom vremenskom intervalu :1064:

Siguran sam da bi isti probio moj menadzer za tri sekunde i upao u admin panel koji sam pisao 3 dana. Logicno je da se upitam dali mogu da uradim nesto vise po security pitanju. Nemam nekih 'bistrih' ideja za dalju zastitu pa ako moze neki savet nebi bilo lose :)

---
edit
---
U ovde sam se ocajno izrazio:

Citat:

Originalno napisao flash_back
Mozda da celu stvar malo i 'iskomplikujem' i da hash passa bude npr: pass+korisnicko_ime+email+datum_i_vreme_registraci je

---
Mislio sam da napravim neki 'sigurnosni_kod' polje i kada pravim klijenta u to polje upisem has vrednosti iz polja pass+korisnicko_ime+email+datum_i_vreme_registraci je. E sad, kada se klijent konektuje prvi put posaljem mu cookie sa hasom polja 'sigurnosni_kod'!

Na loginu kod svake sledece konekcije ako je us i pass ok neradim odmah redirect, vec zahtevam cookie za proveru sigurnosti. Ako cookie ne postoji stavim step za ubacivanje sigurnosnog koda..

I npr: kada klijent radi izmenu emaila ili passa samo osvezim zapis sa hasom od -> novi_pass+korisnicko_ime+email+datum_i_vreme_izmen e i posaljem novi sigurnosni kod na mail!
---

Poenta je da i ako se neko docepa vredosti polja us i pass i dalje nemoze da se loguje. Mana je sto ako nema cookia ispada jedan smoren korak, a svako ko barem malo istrazuje po opcijama browsera stavi da se cookes brisu prilikom zatvaranja..


Mislim da ovo ima neku logiku, al me interesuje i sta drugi misle... Ili mozda ubacim ovaj step samo ako je u pitanju admin?

zark0vac 05. 12. 2006. 12:01

Citat:

Originalno napisao flash_back
Ok, nego citao sam u novinama (juce ili prekjuce) kako je jedan Rumun iz 'dosade' razbio oko 150 americkih sigurnosnih sistema u veoma kratkom vremenskom intervalu :1064:

Siguran sam da bi isti probio moj menadzer za tri sekunde i upao u admin panel koji sam pisao 3 dana. Logicno je da se upitam dali mogu da uradim nesto vise po security pitanju. Nemam nekih 'bistrih' ideja za dalju zastitu pa ako moze neki savet nebi bilo lose :)

"Iz dosade.." :1042: I nije jedan rumun, vec ekipa koju on predvodi, zato ce samo on da zaglavi. Inace taj sistem se odvija tako sto ili pronadju vuln nekog daemona kojim rootaju server, ili iskoriste neki public ili otkupe 0day exploit koji iskoriscava odredjenu ranjivost u nekom daemonu, servisu, web aplikaciji, etc. Najcesci metod je pronalazenjem RFI buga u web aplikaciji koja se vrti na serveru na kom je sajt koji ti je cilj napada. Zatim se pokrece php shell i dize nc. Onda sledi rootanje servera i editovanje logova. Sto znaci da taj sajt za koji pravis tu skriptu ukoliko nije na zasebnom serveru vec na shared hostingu moze biti ownan cak i ako ti napravis ekstra sigurnu tu aplikaciju.

Inace sto se tice zastite procitaj ceo security deo na online manualu php.net-a, imas temu na ovom forumu "Kako se zastititi od hakovanja" ili slicno, potrazi. Evo ti jedan jednostavan tekst na temu hashovanja http://phpsec.org/articles/2005/password-hashing.html

Posebno obrati paznju na terimine: XSS, RFI (Remote File Inclusion), SQL Injection, pa na kraju kada se zastitis od svih navedenih ukoliko taj menadzer nudi neke mogucnosti korisnicima koji bi oni mogli da iskoriste (zloupotreba poverenja korisnika) prouci CSRF napade i sisteme zastite od istih.

Ukoliko filtriras svaki upit, http server ti je pravilno podesen, i odradis vecinu stvari po predlozima iz pomenute teme (Kako se zastititi od hakovanja), ti si sa svoje strane zavrsio.

Kada odradis sve ovo, javi pa da istestiramo ;)

flash_back 10. 12. 2006. 02:02

Biznis je u knaufu :)
 
E drugari, picim danas za budvu ('upalo' mi je krljanje knaufa) pa reko da vas zamolim da 'ne krljate' menadzer narednih nedelju dana dok se ne vratim :)

Nisam stigao da zakrpim sve rupe, prebacio sam se malo na kontakt stranu i tu izgubio fokus stvari.. No dobro, poz svima i budite dobri dok se ne vratim :)


Vreme je GMT +2. Trenutno vreme je 18:27.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.