ado.net sqlserver 注入漏洞问题
2013-01-14 11:21
253 查看
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.SqlClient; namespace login1 { class Program { static void Main(string[] args) { Console.WriteLine("请输入用户名:"); string username = Console.ReadLine(); Console.WriteLine("请输入密码:"); string password = Console.ReadLine();//当输入1'or'1'='1时会形成注入漏洞 //连链数据库 using (SqlConnection conn = new SqlConnection (@"data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=D:\My Documents\Visual Studio 2008\Projects\ado.net\ado.net\Database1.mdf;User Instance=true")) { conn.Open(); using(SqlCommand cmd=conn.CreateCommand()) { //使用参数化的形式防止注入漏洞,不要使用字符并接(cmd.CommandText="select*from mytable1 where name='"+name+"',password='"+password+"'";) //@un :类似于占位符 cmd.CommandText = "select count(*) from mytable2 where username=@un and password=@p"; cmd.Parameters.Add(new SqlParameter("un",username)); cmd.Parameters.Add(new SqlParameter("p", password)); //cmd.ExecuteScalar()以object的形式返回搜索结果的第一行第一列 int i = Convert.ToInt32(cmd.ExecuteScalar()); if (i > 0) { Console.WriteLine("登录成功!"); } else { Console.WriteLine("用户名或密码错误!"); } } } Console.ReadKey(); } } }
相关文章推荐
- 第一次ADO.Net连接SQLserver测试时出现的问题-传智播客的ADO例子
- 关于SQL漏洞注入(Ado.Net)
- 黑马程序员--ADO.NET学习之SQL注入漏洞攻击
- 急救 各位仁兄 帮忙呀(ado.net问题)。。
- ADO.NET DataSet 常见问题目录
- ADO.net 3.0 Sample 数据库配置问题
- VS2008在做简单的ado.net连接数据库时出现的问题
- C#用ado.net访问EXCEL的常见问题及解决方法
- ADO.NET操纵Excel 标点符号 数字和字符混合问题! HDR=Yes;IMEX=1
- VS环境下 Ibatis .Net 连接sqlserver 2005 碰到的问题 Unable to open connection to "Microsoft SQL Server, provider V2.0.0.0 in framework .NET V2.0".
- Ado.Net读取Excel常见问题总结
- 使用ADO.NET访问SQLSERVER注意连接池的大小设定
- ADO.Net问题---DataAdapter Update 违反并发性
- 黑马程序员-自学笔记-SQLServer与ADO.Net(四)
- 【转】ADO.NET连接访问dbf数据库问题
- 如何防止ASP.NET应用程序中的SQL注入安全漏洞
- ADO.NET方式读取Excel 不完整问题
- IIS、ASP.NET和SQLServer的安全性问题
- ADO.NET Entity framework 中 实体的对应数据库中text类型的问题 (更新) :asp.net entity 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 3 ("@0"): 数据类型 0
- Ado.Net读取Excel常见问题总结