sql >> Database >  >> RDS >> Mysql

Voorkom SQL-injectie in JavaScript / Node.js

De beste manier is om voorbereide statements of queries te gebruiken (link naar documentatie voor NPM mysql module:https://github.com/mysqljs/mysql#preparing-queries )

var sql = "SELECT * FROM table WHERE userid = ?";
var inserts = [message.author.id];
sql = mysql.format(sql, inserts);

Als voorbereide verklaringen geen optie zijn (ik heb geen idee waarom dat niet het geval zou zijn), is de manier waarop een arme man SQL-injectie voorkomt, te ontsnappen aan alle door de gebruiker verstrekte invoer zoals hier beschreven:https://www.owasp.org/index.php/SQL_Injection_Prevention_Cheat_Sheet#MySQL_Escaping



  1. Hernoem kolom SQL Server 2008

  2. FORCE INDEX in MySQL - waar plaats ik het?

  3. Slaapstand op Oracle:tekenreekseigenschap toewijzen aan CLOB-kolom

  4. Kan geen verbinding maken met de Oracle-database met behulp van JDBC als het wachtwoord speciale tekens heeft