asp网站安全问题

 1,找到密码和账号是通过SQL注入找到的。虽然MD5加密的密码不能被逆向破解,但是存在SQL注入漏洞的话对方完全可以用代码直接将你的密码改为AAABBBCCCDDDEEEF,也就是密码为1。就可以直接登录了。所以最关键的问题在于如何防止SQL注入。
SQL注入方式已经太多资料了,我就不转载了。简单的说,SQL注入就是通过巧妙插入SQL代码,让系统执行,从得到的结果来一步步解开破解信息。而这个代码,只要是交互的地方都有可能被插入。例如字符串传递:XXX.asp?id=****,或者在用户名输入框,或者搜索框.......
因此,我们只要保证所插入的信息没有SQL代码就可以了。
例如,用户登录程序中,我们只要把
username=request.Form("username")
修改为
username=trim(request.Form("username"))
也就是去掉空格,这样SQL代码就没法用,就基本可以防范从用户登录界面进行SQL注入了。但是还不够,因为空格可以用unicode码代替,所以我们还要把unicode特有的字符%替换掉,就没问题了。
对于从字符串传递的参数,我们也可以同样处理,用trim()去除空格,然后用replace替换% 。这样还不够,还应再把()小括号替换掉,把单引号'替换掉。
如果是id之类纯数字,还应在用cint()强制转为数字,如果不是数字就会在这一步出错。

2,这个问题实际上和第一个问题是一样的,就是从防止SQL注入出发。

3,只要你的网站还有输入的地方,而且这个输入的地方会被诸如sql="select * from asdf where id="&id这样的语句执行,就必须防范SQL注入。Access+asp除了防范SQL注入,还要防范暴库,也就是被黑客用一些语句判断出你的数据库地址,把你整个数据库下载下来。。。。到时候还不是想怎么看就怎么看,想怎么玩就怎么玩!
防止数据库被下载,你可以在数据库里面新建一个表,表里面输入一个文本内容为<%asdfasdfasdf%>随便输,反正只要不能被执行就可以了。然后把数据库改名为.asp后缀,这样对方试图下载的时候就会提示:asp解析出错,第XX行。这样就不用怕暴库了。此外配置mdb文件解析对应,配置数据池等等方法都可以比较有效的防止暴库。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值