3

我正在分析我的代码并遇到了这个安全问题:

CA2100 检查 SQL 查询是否存在安全漏洞 在“Add_item.loadgrid()”中传递给“SqlDataAdapter.SqlDataAdapter(string, SqlConnection)”的查询字符串可能包含以下变量“Login.dbName”。如果这些变量中的任何一个可能来自用户输入,请考虑使用存储过程或参数化 SQL 查询,而不是使用字符串连接构建查询。登录 Add_item.cs 64

这是突出显示的代码:

SqlDataAdapter da = new SqlDataAdapter("SELECT Newjob FROM [" + Login.dbName + "].newjob", connection. conn );
4

1 回答 1

3

这就是通常所说的 SQL 注入漏洞。您应该使用 sqlParameter 对象,而不是将值连接成一个字符串并将该字符串传递给 SQL Server。

于 2013-11-08T05:54:38.730 回答