.NET 中的 SQL 注入
大家好,我想知道是否有人知道一些详细介绍 .NET Web 应用程序 SQL 注入预防的好网站。 任何资源都将得到极大的利用,谢谢。
Hi I was wondering if anyone knew of some good websites detailing prevention for SQL injection for .NET web applications. Any resources would be greatly appricated, thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
我认为,如果您在 google 上搜索一下“防止 .NET 中的 sql 注入”,您会发现很多好的资源。 :)
不管怎样,一件非常重要的事情是不要使用字符串连接来构建查询。
相反,使用参数化查询。 ADO.NET 允许以非常简单的方式执行此操作:
I think that, if you google a bit on 'preventing sql injection in .NET', you'll find lots of good resources. :)
Anyway, one very important thing, is to not use string-concatenation in order to build your queries.
Instead, use parametrized queries. ADO.NET allows to do this, in a very easy way:
如果您使用 SqlCommand.Parameters 集合来传递参数并且从不将用户文本注入到 Sql 查询文本中,则没有风险。
If you use the SqlCommand.Parameters collection to pass parameters and never inject user text into you Sql query text, there's no risk.
首先要知道的是参数化你的查询或使用存储过程......
永远不要在代码中使用临时sql,你只附加值
只给出读和写权限(或者只读取那些不应该写的页面)
the first thing to know is to parameterize your queries or use stored procs....
Never use ad-hoc sql in code where you just append the value
give only read and write permissions (or only read for those pages that should not write)
MSDN 杂志文章 在 SQL 注入攻击阻止您之前阻止它们似乎是相当完整。
尽管包含有关您的具体问题的不太详细的信息,SDL 拥抱网络除了防止 SQL 注入攻击之外,这是您应该考虑的其他事情的一个很好的来源。
通常的免责声明适用,我不一定同意这些文章中提供的所有信息,但所提供的信息有望让您思考如何在公共网站上减轻 SQL 注入(和其他)攻击。
The MSDN Magazine article Stop SQL Injection Attacks Before They Stop You seems to be fairly complete.
While containing less detailed information about your specific question, SDL Embraces The Web is a good source of other things you should be thinking about in addition to preventing SQL injection attacks.
The usual disclaimers apply, I don't necessarily agree with all of the information presented in those articles, but the information presented will hopefully get you thinking about ways SQL injection (and other) attacks can be mitigated on a public website.