【发布时间】:2016-08-18 20:04:07
【问题描述】:
我正在查看 Node 的 MSSQL 模块中内置的 SQL 注入保护:
https://www.npmjs.com/package/mssql#injection
但我并没有完全了解他们如何为我的查询清理值的示例。我猜request.input('myval', sql.VarChar, '-- commented') 语句会针对被注释掉的其余查询清理“myvar”。
如果我也想针对其他东西进行消毒怎么办?比如drop table语句等。
谁能帮帮我?
【问题讨论】:
-
凹凸。帮助任何人? :)
-
为什么还要尝试实施黑名单?这是一场失败的战斗……输入验证应该使用白名单方法来实现。如果您仍然坚持将黑名单作为一种附加防御机制,请不要尝试自己实现,使用 Imperva、F5 或 ModSecurity(免费)等 WAF,或者如果您想实现它在数据库级别,使用数据库防火墙(Sentrigo 或 GreenSQL-hexatier)。
标签: sql-server node.js sql-injection