我试图在节点mysql库中进行一些SQL注入。
我有一个使用Nodejs编写的插入查询,它通过执行以下操作:
pool.query(`Insert into orders(orderType,CustomerID,storeNumber,stageNumber) Values('${orderType}',${customerID},'${storeNumber}','${stageNumber}')`,function(err,rows,fields){
if(err){
console.log(err)
}
var orderID=rows.insertId
}
我使用
req.body
收到的所有变量均以表格形式出现在形式而不是我正在编写的storeNumber的stageNumber字段中:
'); Delete from orderDetail;
这没有从我的表中删除任何内容
从我的console.log(err)我得到
错误:ER_PARSE_ERROR:您的SQL语法有错误;校验
与您的MySQL服务器版本相对应的手册
在'从orderDetail ;;'删除'附近使用的语法
我想不出一种删除
')'
的方法,但是我知道它来自哪里。甚至可以在Node MySQL库中进行SQL注入吗? 最佳答案
你已经尝试过了吗
'); Delete from orderDetail; --
这将忽略任何字符发布-并且在这种情况下应该可以正常工作。