这就给不怀好意的同学可乘之机,利用输入一些奇特的查询字符串,拼接成特定的SQL语 句,即可达到注入的目的。不仅可以获取数据库重要信息,权限没有设置好的话甚至可以删除掉整个表。因此,SQL注入漏洞还是相当的严重的。发现以前偶刚学 写的网站的时候也是靠拼接SQL语句吃饭滴……
示例
为了更好了学习和了解SQL注入的方法,做了一个示例网页,界面如下:
点击登陆这块的代码如下,注意第5行,我们使用了拼接SQL语句:
复制代码 代码如下:
private void Login()
{
string uname = tbName.Text;
string pwd = tbPassword.Text;
string sqlCmd = "select * from [Users] where UserName = '" + uname + "'";
string sqlCmdRep = sqlCmd.Replace("Users", "XXX").Replace("UserName", "XXX");
lbSQL.Text = sqlCmdRep;
try
{
DataTable dt = DataSQLServer.GetDataTable(sqlCmd);
gvResult.DataSource = dt;
gvResult.DataBind();
if (dt.Rows.Count == 1 pwd == dt.Rows[0]["Password"].ToString())
{
lbRes.Text = dt.Rows[0]["UserName"] + " Login Success!";
}
else if(dt.Rows.Count == 0)
{
lbRes.Text = uname + " not exist!";
}
else
{
lbRes.Text = "Login Fail!";
}
}
catch (Exception ex)
{
lbRes.Text = "Error: " + ex.Message;
}
}
123下一页阅读全文
您可能感兴趣的文章:- SQL注入中绕过 单引号 限制继续注入
- SQL注入绕过的技巧总结
- PHP中防止SQL注入实现代码
- PHP+MySQL 手工注入语句大全 推荐
- 利用SQL注入漏洞拖库的方法
- C#防SQL注入代码的三种方法
- SQL 注入式攻击的终极防范
- SQL数据库的高级sql注入的一些知识
- 防御SQL注入的方法总结
- 关于SQL注入绕过的一些知识点