使用动态LINQ库(link),它是否容易受到注入攻击?如果是,如何防范?
一些来自Security Considerations (Entity Framework)的背景信息:
LINQ to Entities注入攻击: 虽然在LINQ to Entities中可以进行查询组合,但是它是通过对象模型API执行的。与实体SQL查询不同,LINQ to Entities查询不是通过字符串操作或连接进行组合的,因此不容易受到传统的SQL注入攻击。
由于动态SQL是使用字符串组成的,这是否意味着它可能容易受到注入向量的攻击?或者,基于Dynamic LINQ库中的底层数据类型,LINQ to SQL是否会自动处理参数化值?
还是说它完全安全,因为动态查询将在内存中执行,而不是针对SQL(从而抵消了任何来自SQL索引的好处)?
我一直在努力理解 DynamicLibrary.cs 代码,但我肯定可能会轻易地忽略某些东西。
由于这个问题涉及到 Dynamic LINQ Library 本身,所以这个问题可以被认为适用于 linq-to-sql 和 linq-to-entities(尽管上面提到了 Entity Framework)。
一些来自Security Considerations (Entity Framework)的背景信息:
LINQ to Entities注入攻击: 虽然在LINQ to Entities中可以进行查询组合,但是它是通过对象模型API执行的。与实体SQL查询不同,LINQ to Entities查询不是通过字符串操作或连接进行组合的,因此不容易受到传统的SQL注入攻击。
由于动态SQL是使用字符串组成的,这是否意味着它可能容易受到注入向量的攻击?或者,基于Dynamic LINQ库中的底层数据类型,LINQ to SQL是否会自动处理参数化值?
还是说它完全安全,因为动态查询将在内存中执行,而不是针对SQL(从而抵消了任何来自SQL索引的好处)?
我一直在努力理解 DynamicLibrary.cs 代码,但我肯定可能会轻易地忽略某些东西。
由于这个问题涉及到 Dynamic LINQ Library 本身,所以这个问题可以被认为适用于 linq-to-sql 和 linq-to-entities(尽管上面提到了 Entity Framework)。