Hogyan szokás egy szervert levédeni?
Ez elég összetett dolog, sok sok utánajárást igényel.
Csak néhány példa SQL-re: egyrészt a lehető leginkább le kell korlátozni a hozzáférést (ha egy gépen van a PHP motorral, akkor ne lehessen csak localhoston megszólítani, ha külön gépen van, akkor csak egy előre definiált port legyen nyitva, amin figyel és az ne az alapértelmezett legyen). Jelszavak erejéről gondolom nem kell beszélni...
Ezen kívül jó ha az alkalmazás védett pl az SQL injection ellen.
Vegyük például az adatbázisokat. Van egy nyers DB-d, amiben felhasználó neveket és jelszavakat tárolsz, például:
0. Jani12 jelszo1
1. Karcsi74 engedjbe
2. Gezu99 erosjelszo
Majd írsz hozzá egy egyszerű bejelentkezés scriptet PHP-ban:
SELECT * FROM mydb WHERE nev=' bemenet1 + ' AND jelszo=' + bemenet2
És ezt a lekérdezést futtatod le, hogy a bejelentkező adatait kinyerd. Na most, a bemenetet érdemes ellenőrizni, ugyanis valaki kódot juttathat be a nyers bemenettel. Képzeld, ha a névhez pl ezt írják:
bejutok' OR 1=1 --
Ezzel ezt futtatod le:
SELECT * FROM mydb WHERE nev='bejutok' OR 1=1 -- AND jelszo=''
SQL-ben a -- kommentet jelent, úgyhogy a lekérdezés csak az 1=1-ig tart. Amint látod, a felhasználó egész egyszerűen tud kódot csempészni a lekérdezésedbe (SQL injection). Ez nagyon veszélyes! A PHP tudja kezelni az ilyesmit, vannak beépített függvényei.
A védelem így sem garantált, érdemes minden felhasználónak külön egy jó hosszú, ún. sót generálni, és "felsózni" a jelszót. A só csak egy hosszú, random szám, és a sózás valamilyen algoritmussal történik (pl: SHA-256). Így a brute-force támadásokat is le lehet csökkenteni.
Van még az ún. XSS attack, ami nagyon hasonló az SQL injection-hoz, csak éppen javascriptet tudnak becsempészni a kódba. Pl: formoknál. A megoldás a html tag-ek kiszűrése, illetve bizonyos karakterek escapelése.
Ez a 3 fő dolog, ami most eszembe jutott.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!