假设我有一个充满健康记录和ASP.NET MVC应用程序的数据库。 假设某人使用URL“/ api / medicalRecords?$ filter = id gt 0”来调用Ajax请求。 在我看来,这对于SQL注入是开放的 - 就像10 - 15年前一样......
这是否意味着它是通过标准的SQL注入开放,还是依赖于服务器端(我使用IQueryable结果和实体框架4)?
我知道认证机制是必要的 - 但是为了这个问题,假设没有可用的认证机制......
答案 0 :(得分:6)
尝试阅读此博客文章,其中提供了有关OData和SQL注入的详细信息:
http://kscottmorrison.com/tag/sql-injection/
... OData当然是数据源连接,因此注入不是 问题 - 刚开始掌握它就足够了。所以呢 对OData来说至关重要的是严格管理这个 连接能够......
答案 1 :(得分:5)
WCF数据服务将参数化过滤器中的值,从而消除了SQL注入的可能性。
我建议查看在数据库探查器中执行的实际SQL查询。