Még mindig az SQL-injekció a webes adatbázisok réme

#Adatbázisok 2026. 03. 23. 22:41 5 perc
Szerző
pap.mate Szerző
Röviden

Bár az SQL-injekció már több mint két évtizede ismert sérülékenység, a legfrissebb kiberbiztonsági jelentések szerint továbbra is a legsúlyosabb fenyegetések közé tartozik. A védekezés kulcsa nem a bonyolult tűzfalakban, hanem a tudatos programozásban rejlik.

Miért nem tűnik el ez a fenyegetés?

Az SQL-injekció lényege, hogy a támadó kihasználja az alkalmazás szoftverének hiányosságait: ha a rendszer nem szűri megfelelően a felhasználótól érkező adatokat, a beírt szöveg parancsként fut le az adatbázis-szerveren.
Hogyan működik a támadás?

Képzelj el egy egyszerű bejelentkezési felületet. Ahelyett, hogy egy valódi nevet írna be, a hacker egy speciális karakterláncot ad meg (például: ' OR '1'='1). Ha a kód nincs felkészítve erre, az adatbázis "igaznak" értékeli a feltételt, és jelszó nélkül is beengedi a támadót a rendszerbe.
A kockázatok mértéke

Egy sikeres SQLi támadás során a bűnözők:

Adatokat lophatnak: Felhasználói nevek, jelszavak és bankkártyaadatok kerülhetnek illetéktelen kezekbe.

Adatokat módosíthatnak: Egyenlegeket írhatnak át vagy adminisztrátori jogosultságokat adhatnak maguknak.

Teljes törlést végezhetnek: Egyetlen paranccsal megsemmisíthetik a cég teljes adatállományát.

A modern védekezés alapjai

A szakértők szerint a „hagyományos” szűrés ma már nem elég. A fejlesztőknek az alábbi technikákat kell alkalmazniuk:

Paraméterezett lekérdezések (Prepared Statements): Ez a legbiztosabb módszer, ahol az adat és a parancs elkülönül egymástól.

Input validáció: Csak olyan karaktereket engedélyezünk, amikre valóban szükség van (pl. egy telefonszám mezőbe ne lehessen idézőjelet írni).

A legkisebb privilégium elve: Az adatbázis-felhasználóknak csak annyi jogosultsága legyen, amennyi a feladatuk elvégzéséhez feltétlenül szükséges.