c#-使用存储过程从复选框切换布尔值是否有任何安全益处
作者:互联网
我在SQL Server数据库中存储了一个布尔变量值.这是在ASP.NET网页上作为复选框显示给最终用户的.切换复选框自然会更新数据库中的值.
我打算删除后面用C#代码以纯文本形式编写的SQL查询,并用存储过程替换它,以通过防止SQL注入攻击来提高安全性.我对注入攻击的理解是有限的,但是可以肯定的是,不能从不安全的复选框输入中触发攻击吗?还是可以?
解决方法:
好吧,通常,您应该始终使用存储过程或参数化的sql.您可以通过单击复选框来做到吗?确实,这完全取决于代码的编写方式.表面上,我会说不,但是有很多可能性可能会影响这一点.
请记住,页面发布时实际上是在向服务器发送文本值.有人可以发送SQL注入攻击而不是复选框值.现在,asp.net非常擅长处理此问题,但这并不意味着如果编写代码以绕过asp.net检查等,便不会发生.
我从编程中学到的一件事是,每当我想到“这不可能完成”时.通常我被证明是错误的.我总是走最安全的路线.
标签:sql-injection,c,net,sql-server,checkbox 来源: https://codeday.me/bug/20191209/2097603.html