php biztonság
Sziasztok!!
php biztonságról szeretnék kérdezgetni.
Amit a felhasználó beküld azt lekéne valamivel védenem.
strip_tags(),htmlentities(),htmlspecialchars()
Melyikkel szokták??
és amit kilistázom vagy is a szerverről kapok azt is lekel védeni??
Ha tudtok még valamit ajánlani vagy tippet örömmel fogadom.
Tényleg most jutott eszembe felhasználó jelszót mivel szokták biztonságosan kódolni ?
pl én md5 használok de sztem van jobb.
■ php biztonságról szeretnék kérdezgetni.
Amit a felhasználó beküld azt lekéne valamivel védenem.
strip_tags(),htmlentities(),htmlspecialchars()
Melyikkel szokták??
és amit kilistázom vagy is a szerverről kapok azt is lekel védeni??
Ha tudtok még valamit ajánlani vagy tippet örömmel fogadom.
Tényleg most jutott eszembe felhasználó jelszót mivel szokták biztonságosan kódolni ?
pl én md5 használok de sztem van jobb.
attól függ
ja a sózás plusz karakter
jól tom?
pl felhasználó nevet,emailt adjak hozz?
chat falamba szeretném a karaktereket levédeni.hogy lehetne ?
MD5 helyett mindenképp
Ez a vudu security egy népszerű példánya. Semmilyen lényeges különbség nincs az md5 és a sha1 között biztonsági szempontból (egyik se túl biztonságos, mert gyorsan számolhatók és GPU-n/FPGA-n hatékonyan párhuzamosíthatóak).
Kicsi van azért
Kriszrap, ezt a remek cikkajánlót asszem már linkeltük neked (talán pont én). Kötelező olvasmány haladó szintig. Megtalálod benne a biztonsági kérdésekkel foglalkozó cikkeket is. Utána kérdezz, ha valami még "hibádzik".
Milyen 4294967296-os szorzó?
Gyanítom, az SHA1 és MD5
Jó, jó, korán volt még... a
Konkrétabban, a legmenőbb szuperszámítógépek 10 petaflops (10^16 művelet / sec) körüli teljesítményt tudnak, az durván 10^14 md5 teszt / sec, ami a 10^38 körüli állapotteret figyelembevéve mintegy tízbilliárd évnyi próbálgatást jelent, ha egy ügyes hacker ellopna egyet, és md5-öt akarna bruteforce-olni vele. Mivel mintegy százbillió éven belül kihunynak a csillagok és megfagy minden, nyugodtan kijelenthetjük, hogy ez a támadási modell nem plauzibilis.
Google
https://github.com/juuso/BozoCrack
És tényleg működik. :)
Megfelelő sózással
Amit a felhasználó beküld azt
strip_tags(),htmlentities(),htmlspecialchars()
Alapelv, hogy a bemeneten szűrsz, a kimeneten eszképelsz. Vagyis ami nem felel meg az elvárásoknak (pl. számot kell megadni, és nem csak 0-9 van benne), azt el sem mented, amit elmentesz, azt pedig nem kódolod át HTML-specifikus formátumra, mert ki tudja, milyen környezetben lesz majd rá szükséged (egész más eszképelés kell, ha HTML forrásban használod, mint ha URL-ben, vagy ha javascripnek akarod átadni).
A htmlentities és a htmlspecialchars között nincs lényeges különbség (szerintem az előbbi teljesen felesleges, csak a kompatibilitást rontja), a strip_tags nem igazán szerencsés, ha pl. ha matematikapéldát szeretne írni a felhasználó, és az
a^2 + b^2 < (a+b)^2
-nek csak a fele jelenik meg. A htmlspecialchars-nál fontos, hogy jól meg legyen adva a kódolás (és tényleg az legyen a kódolás), és hogy jólformált HTML-t használj.jól formált HTML? Mire
Főleg arra, hogy legyenek
Tényleg most jutott eszembe
pl én md5 használok de sztem van jobb.
Só + bors + valamilyen lassú (work factoros) és biztonságos hashfüggvény, tipikusan bcrypt vagy PBKDF2.
Kimaradt...
Na ez így egészen konkrétan
Például egy blog hozzászólásaiban valószínűleg megmaradnak a HTML kódok is, viszont megjelenítéskor mindenképpen konvertálni kell őket (ha jól emlékszem, html_special_chars függvénnyel vagy valami hasonlóval).
De valaki javítson ki, ha tévednék!
Igen, inputnál szűrsz,
Igen, pontatlanul fogalmaztam
Csak ez már nem input, valóban. A lényeg, hogy a Júzertől jön (jött).
A lényeg az, hogy az
Én mondjuk jobban szeretem,
Bármilyen információ
Az az adat, ami biztonságosan megjeleníthető HTML-ként tartalmazhat olyan kódot, ami káros PDF-ben.
Minél távolabb van egymástól