linq-to-sql - Entity Framework 、LinqToSQL 和 sql 注入(inject)

标签 linq-to-sql entity-framework sql-injection

完全使用 LinqToSQL 或 Entity Framewok 的项目是否有可能遭受 SQL 注入(inject)的影响。

我认为这可能不是因为 ORM 生成的 SQL 应该是无 sql 注入(inject)的。但我不确定。

最佳答案

当您按预期使用这些框架时,即直接使用实体/表,则不会。所有字符串比较(即 where name = 'smith' )都是参数化的。

唯一的脆弱点是:

  • 任何字符串都可以直接针对上下文执行。 dbContext.ExecuteQuery();任何一种破坏性的字符串。
  • 使用给定的任何参数执行动态 SQL 的存储过程
  • 关于linq-to-sql - Entity Framework 、LinqToSQL 和 sql 注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3473841/

    相关文章:

    c# - 为什么在 LINQ 中使用 "select new "

    c# - 林克到 SQL : Insert data

    c# - Entity Framework : InvalidOperationException: Invalid operation. 连接已关闭

    mysql - ruby on rails sql 注入(inject) LIKE '%#{argument}% 易受攻击?

    ASP.net 4.0 实体数据模型 Mysql 未正确处理 Mysql 枚举

    linq - Linq-to-Sql 中是否缺少任何主要功能?

    c# - 在 Entity Framework 中保存实体的通用方法

    c# - Entity Framework Core InMemory 数据库测试在并行运行时会中断

    清理所有数据的 PHP 函数

    python - 在 Python influxdb_client 的 Flux 查询中使用参数