Mysql
 sql >> база данни >  >> RDS >> Mysql

Кои знаци трябва да бъдат екранирани, за да се предотвратят (My)SQL инжекции?

Предположение относно символа за връщане назад:Представете си, че ви изпращам имейл „Здравейте, ето заявката за актуализиране на вашата DB, както искате“ и прикачен текстов файл с

INSERT INTO students VALUES ("Bobby Tables",12,"abc",3.6);

Изглеждате файла, виждате, че е наред, и просто прехвърляте файла към MySQL. Това, което не знаехте обаче е, че аз поставих

DROP TABLE students;\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b

преди INSERT STATEMENT, който не сте виждали, защото на изхода на конзолата, backspaces го презаписаха. Бам!

Но само предположение.

Редактиране (не можах да устоя):



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Върнете само един ред от най-дясната таблица за всеки ред в най-лявата таблица

  2. Какъв е еквивалентът на LEN() в MySQL?

  3. Заключване на ниво ред в Mysql

  4. PDO + MySQL и счупено UTF-8 кодиране

  5. Предупреждение:mysqli::mysqli():(HY000/1045):Достъпът е отказан за потребител 'database'@'localhost' (използвайки парола:NO) в