近来,《电脑报》等杂志都刊登了如何利用网页对我们的网站的SQL SERVER数据库进行注入式攻击的方法,而且十分简单。我们辛辛苦苦做出来的网站在黑客们的攻击下,10余分钟就被攻破了,实在是可气!!如果是数据库的因素致此,我们也没有办法,但现在,我们完全可以利用我们的技术来防止这种结果的发生。
而如何在ASP.NET下防止注入式攻击,以摆在了我们这些ASP.NET程序员的面前,欢迎大家讨论,这对大家都会有益的!希望大家多顶!!

解决方案 »

  1.   

    把'替换为'',url传值时不要使用整形,使用' '字符型…………
      

  2.   

    asp.net区里有,以前有人发过,你搜一下。用存储过程,加参数。
      

  3.   

    如果我在ASP.NET的网页的用户名中输入:
    a' or 1=1
    或者:
    a' or name like 'admin%';--同时,我的ASP.NET网页用的是参数,即:
    SqlDataAdapter my_query = new SqlDataAdapter("SELECT * FROM accounts 
    WHERE acc_user= @user AND acc_password=@pass", the_connection);
    SqlParameter userParam = my_query.Select_Command.Parameters.Add(
    "@user",SqlDb.VarChar,20);
    这种方式,可以避免这种攻击吗?
    谢谢
      

  4.   

    替换黑名词 '' or = ; and 等通过URL传递的参数try
    {
      strin id=Request.QueryString["id"];
      id=Convert.ToInt32(id)
    }
    catch
    {
    //非法操作
    }