Mysql
 sql >> Datenbank >  >> RDS >> Mysql

SQL-Injection in JavaScript / Node.js verhindern

Verwenden Sie dazu am besten vorbereitete Anweisungen oder Abfragen (Link zur Dokumentation für NPM mysql Modul:https://github.com/mysqljs/mysql#preparing-queries )

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

Wenn vorbereitete Anweisungen keine Option sind (ich habe keine Ahnung, warum dies nicht der Fall sein sollte), besteht die Methode eines armen Mannes, SQL-Injection zu verhindern, darin, alle Benutzereingaben zu maskieren, wie hier beschrieben:https://www.owasp.org/index.php/SQL_Injection_Prevention_Cheat_Sheet#MySQL_Escaping