解读ASP编程菜鸟易犯的一个错误(2)_ASP教程
教程Tag:暂无Tag,欢迎添加,赚取U币!
缂備礁娲﹂埅绀慹deCMS閻熸瑥妫濋。鍫曞极濞嗘垟鏌�濞戞梹澹嗛埞鏍⒒閿燂拷 缂佸鍠愬﹢鍥礉閳ヨ櫕鐝� 闂侇偄顦辩紞澶屾兜閺囨氨闉嶉柤杈ㄦ缁憋拷 闁哄啰濮撮崪鏍博濞嗘挻姣愮€规悶鍎遍崣锟�,闁谎勫劤鐎规娊寮堕崘顔兼濞戞挴鍋撻梺娆惧枛閸欏繘寮婚敓锟�!
推荐:解析ASP连接MSSQL的错误: 拒绝访问
在一次ASP程序中不能正常连接MSSQL出现出错信息如下:
以下为引用的内容:
HTTP/1.1 200 OK Server: Microsoft-IIS/5.1 Date: Sun,
以下为引用的内容: SUB.asp程序 <% 接收表单中的数据 user=request.from("UserID") 检察表单提交的数据是否为空(表单页面可能你用JAVASCRIPT OR VBSCRIPT控制了,但这里也不要忘记控制! if user="" then 转到出错提示页面! response.redirect "err1.htm" 这一句可能没用,但加上为好! response.end end if pass=request.from("Pass") if pass="" then response.redirect "err2.htm" response.end end if 联接数据库 file=server.mappath("你的数据库") set conn=server.createobject("adodb.connection") dr="driver={microsoft access driver (*.mdb)};dbq="&file conn.open dr set rs=server.createobject("adodb.recordset") 关键是这里的SQL语言 sql="select * from 表 where user= "&user&" and pass= "&pass&" " rs.open sql if not rs.eof then 找到的话就进入管理页面 reponse.redirect "login.asp" else 没找到就进入错误页面 response.write "err3.htm" end if %> |
大家感觉以上代码应该没问题啊,但是这里有一个严重的安全隐患:
我如果想登录管理员的话可以在SUb.htm表单输入框中输入:
第一个文本框中输入:a or 1 = 1 或 OR =
第二个文本框中输入:a or 1 = 1 或 OR =
提交,大家会看到...“呜,听我说完好不好,砖头一会再丢过来..."
"a " 和“1”为任意字符
有人会问为什么你输入这些字符会以管理员身份进入呢??
分享:如何在Asp中设计跨越域的Cookie
Cookie简介
首先,我们对Cookie做一个简单的介绍,说明如何利用ASP来维护cookie。
Cookie是存储在客户端计算机中的一个小文件,这就意味着每当一个用户访问你的站点,你就可以秘密地

相关ASP教程:
- 相关链接:
- 教程说明:
ASP教程-解读ASP编程菜鸟易犯的一个错误(2)
。