Přeskočit na obsah
_CORE
AI & agentní systémy Podnikové informační systémy Cloud & Platform Engineering Datová platforma & integrace Bezpečnost & compliance QA, testování & observabilita IoT, automatizace & robotika Mobilní & digitální produkty Bankovnictví & finance Pojišťovnictví Veřejná správa Obrana & bezpečnost Zdravotnictví Energetika & utility Telco & média Průmysl & výroba Logistika & e-commerce Retail & věrnostní programy
Reference Technologie Blog Know-how Nástroje
O nás Spolupráce Kariéra
CS EN DE
Pojďme to probrat

SQL Injection prevence — kompletní průvodce

23. 03. 2024 Aktualizováno: 27. 03. 2026 1 min čtení intermediate

SQL injection je stará přes 25 let, ale stále patří mezi top zranitelnosti. Každý vývojář by měl vědět, jak se bránit.

Prepared statements v různých jazycích

Python + psycopg2

cursor.execute(“SELECT * FROM users WHERE email = %s”, (email,))

Node.js + pg

const result = await pool.query(‘SELECT * FROM users WHERE email = $1’, [email]);

Java + JDBC

PreparedStatement stmt = conn.prepareStatement(“SELECT * FROM users WHERE email = ?”); stmt.setString(1, email);

Go + database/sql

row := db.QueryRow(“SELECT * FROM users WHERE email = $1”, email)

C# + Dapper

var user = conn.QueryFirst(“SELECT * FROM users WHERE email = @Email”, new { Email = email });

ORM vrstva

SQLAlchemy

user = session.query(User).filter(User.email == email).first()

Prisma

const user = await prisma.user.findUnique({ where: { email } });

Entity Framework

var user = context.Users.FirstOrDefault(u => u.Email == email);

Defense in Depth

  1. Prepared statements (primární obrana)
  2. ORM s parametrizací
  3. Input validace (whitelist)
  4. Least privilege DB účty
  5. WAF pravidla
  6. SAST skenování

Klíčový takeaway

Prepared statements jsou nepřekonatelná obrana. Používejte je vždy, ve všech jazycích, bez výjimky.

securitysql injectiondatabase
Sdílet:

CORE SYSTEMS tým

Stavíme core systémy a AI agenty, které drží provoz. 15 let zkušeností s enterprise IT.