如何保护WinForms应用程序免受直接SQL攻击

时间:2010-03-04 20:07:05

标签: c# winforms sql-injection

我有一些WinForms应用程序(用于开发一些简单应用程序的框架),用C#编写。 我的框架稍后将用于开发win表单应用程序。其他开发人员经常,有时不使用参数 - 他们在代码中编写直接SQL。所以首先我需要以某种方式在C#中的框架基类中进行保护。 我有一些basse类,它执行所有SQL操作,所以我想在执行查询之前我可以在这里进行一些检查... 我如何在C#中获得针对直接SQL的保护..?一些例子非常有用。

1 个答案:

答案 0 :(得分:4)

如果您的同事正在编写他们的SQL语句,那么除了在所有查询中使用参数手动防止SQL注入之外,没有保证/现实的方法可以防止SQL注入。即使在你的框架中提供一种机制也不是一个完美的解决方案,因为你仍然可以通过忽略它(或忘记使用它)来绕过它。

不要滚动自己的框架,而是考虑使用诸如NHibernate之类的ORM,它会为您解决这个问题(并且您不必在大多数时间自己编写SQL语句)。