当前位置:首页
开发技术指南» 文章正文
    引言:

 ·input type问题    »显示摘要«
    摘要: <input type=image name=login value=登陆 src=images/shopping_image2.gif> 为什么我提交的时候$login传不过去 我验证的时候if(!empty($login))这句话总是不成立,我该怎么办? 但是只要把type改成submit就可以了 ......
 ·这样写dll为什么出错    »显示摘要«
    摘要: 以下问题敬请高手指点!!!! 问题1: 我琢磨着通过传递参数调用dll来完成表的查询,如下面的程序,编译能通过,但运行后计算机就会报错,说读写内存错误,然后死机。 问题2: 程序中我把函数的返回值定义为pchar类型,是因为windows的api函数不认string类型,关于delphi和windows的一些类型之间的差别转换我还不是太清楚,请高手指点! 程序段如下: function a......


这样写安全吗如果是你会怎么做

很简单的一个登陆界面:  
  一个输入用户名的输入框,一个输入密码的输入框,还有一个提交按钮  
   
  用户输入用户名和密码后,假设我在后台得到该用户名和密码,然后这样验证:  
  id   -   代表得到的用户名  
  password   -   代表得到的密码  
  sql语句这样写:  
  select   count(*)   from   表   where   用户名=   id   and   密码   =   password    
   
  然后根据返回值,如果是0就说明输入不合法,如果大于0就说明合法  
   
  大家觉得这样写会有什么问题吗,我在试验时发觉这样会有很大的安全问题  
   
  诸位知道如何破解这样的情况吗,还有如何加以改进  
   
   
 

NO.1   作者: buer

select   count(*)   from   表   where   用户名=   id   and   密码   =   password    
  别人可以输入相应的Sql语句得到你的返回数据:)直接在数据库写一个存储过程来判断  
  会好一些

NO.2   作者: lins

绝对的不安全。  
  在取到两个字符串后  
  1.对两个字符串进行验证,过滤掉非法字符  
  2.先验证user是否存在  
  3.验证pass是否正确

NO.3   作者: Talent2001k

数据库中的USER和PASS字段最好是加密的字符串,然后讲TEXTBOX里输入的字符也用同样方法加密再去SELECT,这样就不怕用户在TEXTBOX里动坏脑筋了

NO.4   作者: zytp

需要对用户名和密码框输入的字符进行过滤吧!

NO.5   作者: xinshaw

在取文本时,将一个替换成两个    
  如:   text1.Text.Replace("","")   可以有效的防止SQL语句攻击

NO.6   作者: cnlamar

首先验证用户名和密码的字符是否符合要求,然后使用参数的方式将值进入数据库  
   
  可以为你提供一个字符处理/验证类和数据访问层,请短信联系或者加我QQ889508记得说明来自CSDN

NO.7   作者: henryfan1

典型的问题  
  我在用户名输入  
  or   1=1   --  
  改用  
  select   count(*)   from   表   where   用户名=   @id   and   密码   =@password这种方法。  
   
   
 

NO.8   作者: xinshaw

呵呵,这是典型的注入式攻击,最好不要直接用SQL语句查数据库,加个密是个不错的办法,简单一点就是将替换成,或者直接不允许输入


    摘要: abcdefghijklmnop..... 一直打下去,显示出来时一下把表格撑的很大,如果解决使他像汉字一样自动回行呢? 最好是通用的,任何ie版本浏览器都可以看到正常的效果。 ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE