Sql 简单用户输入消毒

Sql 简单用户输入消毒,sql,sql-server,sql-injection,user-input,javascript-injection,Sql,Sql Server,Sql Injection,User Input,Javascript Injection,我正在使用Server.HttpEncode()和HttpDecode()来清理用户表单输入,并在检测到“潜在危险”输入时让服务器引发异常 (然后将数据保存到MSSQL数据库) 这是否足以阻止SQL/Javascript注入和类似操作?可能,但几乎肯定不会 不,这根本不能阻止它。正如微软所解释的,它更多地用于防止XSS攻击。阅读Stackoverflow问题,了解有关防止SQL注入的一些想法 根据您所处的环境,我会使用实体框架或NHibernate之类的技术来阻止SQL注入,因此,您甚至不必担心

我正在使用
Server.HttpEncode()
HttpDecode()
来清理用户表单输入,并在检测到“潜在危险”输入时让服务器引发异常

(然后将数据保存到MSSQL数据库)


这是否足以阻止SQL/Javascript注入和类似操作?

可能,但几乎肯定不会

不,这根本不能阻止它。正如微软所解释的,它更多地用于防止XSS攻击。阅读Stackoverflow问题,了解有关防止SQL注入的一些想法


根据您所处的环境,我会使用实体框架或NHibernate之类的技术来阻止SQL注入,因此,您甚至不必担心它。

您没有提到如何从用户输入构建sql字符串,但请确保您没有使用字符串连接,而是使用参数化查询。如果您想全面了解SQL注入的整个主题,请阅读这篇优秀的文章:抱歉,数据正在传递到存储过程。这些存储过程是如何形成的?很抱歉投了反对票,但这不是一个特别有用的答案@根据你提供的信息,这就是答案。很明显,你更喜欢回答“是的,绝对是的。去吧,把它放在那里”,那么为什么还要问呢?