您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

我可以从SELECT语句中获得SQL注入攻击吗?

我可以从SELECT语句中获得SQL注入攻击吗?

回答您的问题。

是的,您可以从任何 查询 获得sql注入攻击(即使您不使用平台使用提供的方法并通过sql调用来执行,也可以调用存储过程)。

我被要求提供一个示例,说明即使使用存储过程也可以进行注射。我看到开发的应用程序确实使用存储过程,但是这种方式是这样的:

// C# - DON'T DO THIS!
String regionName = assignedSomewhereElse();
sqlCommand sqlCmd = DatabaseConnection.CreateCommand();
sqlCommand sqlCmd.CommandText =
    String.Format("EXECUTE sp_InsertNewRegion '{0}'", regionName);

sqlCmd.ExecuteNonQuery();

显然,这不是调用存储过程的方法。您应该使用平台的抽象或参数化查询

sqlDataSource数据库的抽象层。它将为您创建SQL查询自动清除它们,以防止注入。

为了避免注入,可以执行以下任一操作:

SQLServer 2022/1/1 18:42:25 有343人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶