【发布时间】:2019-12-27 18:25:24
【问题描述】:
我开发了一个工具,当我运行 fortify 时,我遇到了 6 个与 Db 连接字符串相关的关键问题,指出“将未经验证的输入连接到数据库连接可能允许攻击者覆盖请求参数的值。一个攻击者可能能够覆盖现有参数值、注入新参数或利用无法直接访问的变量。”
public bool sqlDbValidateUser(string databaseHostname, string databaseName, string databaseUsername, string databasePassword)
{
_logger.Info("starting sql DB validation");
string ConnectionString = "Data Source=" + databaseHostname + "; " +
"Initial Catalog=" + databaseName + ";" +
"User id=" + databaseUsername + ";" +
"Password=" + databasePassword + ";";
using (SqlConnection connection = new SqlConnection(ConnectionString))
{
try
{
connection.Open();
return true;
}
catch(Exception)
{
return false;
}
finally
{
if(connection !=null)
{
connection.Close();
}
}
}
}
【问题讨论】:
标签: string parameters connection fortify dbconnection