bybence
Kapcsolat
bybence

Felfedezés

Eszközök

Academy

Blog

Hírek

Kapcsolat

Academy

Webes biztonság

ByBence Academy

Webes biztonság

12 anyag

Biztonsági gondolkodás

Webes biztonság alapjaiOWASP Top 10:2025

Böngésző és bemenet

XSS – Cross-Site ScriptingCSRF – Cross-Site Request Forgery
SQL injection és paraméterezett lekérdezés
CORS és Same-Origin PolicyContent Security Policy (CSP)
Academy

/

Webes biztonság

/

Böngésző és bemenet

SQL injection és paraméterezett lekérdezés

Miért veszélyes SQL-sztringet építeni felhasználói inputból, és hogyan választja szét a paraméterezett query az adatot az utasítástól?

1 perc olvasás

Frissítve: 2026. szeptember 12.

Balogh Bence

Röviden

SQL injectionnél a nem megbízható adat a lekérdezés szintaxisának részévé válik. A biztonságos cél nem a „rossz karakterek” üldözése, hanem az, hogy a query szerkezete és a hozzá tartozó paraméterek külön csatornán maradjanak.

Mit jelent a sql injection és paraméterezett lekérdezés?

SQL injectionnél a nem megbízható adat a lekérdezés szintaxisának részévé válik. A biztonságos cél nem a „rossz karakterek” üldözése, hanem az, hogy a query szerkezete és a hozzá tartozó paraméterek külön csatornán maradjanak.

A lényeg vizuálisan

01

Használj paraméterezett lekérdezést vagy biztonságos query buildert.

02

Adatbázis-felhasználónak csak a szükséges jogosultságokat add.

03

Dinamikus oszlop- és táblaazonosítókhoz whitelistelt mapping kellhet.

04

A hibákból ne szivárogjon ki belső SQL vagy séma információ.

Hogyan működik a gyakorlatban?

A prepared statement vagy paraméterezett API előre meghatározza a lekérdezés szerkezetét, majd az értékeket adatként köti hozzá. ORM esetén is ellenőrizni kell, mely API-k paramétereznek és mely nyers query lehetőségek igényelnek extra figyelmet.

  • Használj paraméterezett lekérdezést vagy biztonságos query buildert.
  • Adatbázis-felhasználónak csak a szükséges jogosultságokat add.
  • Dinamikus oszlop- és táblaazonosítókhoz whitelistelt mapping kellhet.
  • A hibákból ne szivárogjon ki belső SQL vagy séma információ.

Paraméterezett lekérdezés

SQL / pszeudokód

SELECT id, email
FROM users
WHERE email = $1;

-- $1 értéke külön paraméterként érkezik

Gyakorlati fejlesztői szemlélet

A validáció hasznos üzleti szabály, de ne erre építsd az injection-védelmet. Egy email formátumának ellenőrzése és a SQL paraméterezése két külön kontroll.

Gyakori hibák és félreértések

  • Regexszel escape-elni minden idézőjelet.
  • Azt feltételezni, hogy ORM mellett injection lehetetlen.
  • Túl erős adatbázis-szerepkört használni az alkalmazás minden műveletéhez.

Források és szabványok

A technikai részletekhez elsődleges szabványokat és karbantartott hivatalos dokumentációt használok. Frameworkök, böngészők és webes API-k idővel változhatnak, ezért implementálás előtt mindig ellenőrizd az aktuális dokumentációt is.

OWASP Cheat Sheet Series

PostgreSQL Documentation

Kapcsolódó ByBence Academy

Kriptográfia AcademyHTTP és internetAdatbázisokByBence Tools

Előző

CSRF – Cross-Site Request Forgery

Következő

CORS és Same-Origin Policy

Ezen az oldalon

Mit jelent a sql injection és paraméterezett lekérdezés?Hogyan működik a gyakorlatban?Gyakorlati fejlesztői szemléletGyakori hibák és félreértések