通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 my小屋
联系我们
设为首页
加入收藏

 

qq,asp,php,jsp,xml,sql,.net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | q q 专栏 | 建站经验 | 在线工具 | 站长club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 网络赚钱 | 网站地图 | 广告服务 | 服务
当前位置:首页>>网络安全>>安全防范>>正文 新版上线![旧版]
注:打开慢时请稍等
asp+access的安全隐患及对策

http://www.iyit.net  日期:2006-5-8 9:12:08  来源:转载  点击:
参加讨论】随着internet的发展,web技术日新月异。继通用网关接口(cgi)之后,“asp”(active server pages)作为一种典型的服务器端网页设计技术,被广泛地应用在网上银行、电子商务、搜索引擎等各种互联网应用中。同时access数据库作为微软推出的以标准jet为引擎的桌面型数据库系统,由于具有操作简单、界面友好等特点,具有较大的用户群体。因此asp+access成为许多中小型网上应用系统的首选方案。但asp+access解决方案在为我们带来便捷的同时,也带来了不容忽视的安全问题  asp+access的安全隐患  

  asp+access解决方案的主要安全隐患来自access数据库的安全性,其次在于asp网页设计过程中的安全漏洞。  

  1.access数据库的存储隐患  

  在asp+access应用系统中,如果获得或者猜到access数据库的存储路径和数据库名,则该数据库就可以被下载到本地。例如:对于网上书店的access数据库,人们一般命名为book.mdb、store.mdb等,而存储的路径一般为“url/database”或干脆放在根目录(“url/”)下。这样,只要在浏览器地址栏中敲入地址:“url/database/store.mdb”,就可以轻易地把store.mdb下载到本地的机器中。  

  2.access数据库的解密隐患  

  由于access数据库的加密机制非常简单,所以即使数据库设置了密码,解密也很容易。该数据库系统通过将用户输入的密码与某一固定密钥进行异或来形成一个加密串,并将其存储在*.mdb文件中从地址“&h42”开始的区域内。由于异或操作的特点是“经过两次异或就恢复原值”,因此,用这一密钥与*.mdb文件中的加密串进行第二次异或操作,就可以轻松地得到access数据库的密码。基于这种原理,可以很容易地编制出解密程序。  

  由此可见,无论是否设置了数据库密码,只要数据库被下载,其信息就没有任何安全性可言了。  

  3.源代码的安全隐患  

   由于asp程序采用的是非编译性语言,这大大降低了程序源代码的安全性。任何人只要进入站点,就可以获得源代码,从而造成asp应用程序源代码的泄露。  

  4.程序设计中的安全隐患    

  asp代码利用表单(form)实现与用户交互的功能,而相应的内容会反映在浏览器的地址栏中,如果不采用适当的安全措施,只要记下这些内容,就可以绕过验证直接进入某一页面。例如在浏览器中敲入“……page.asp?x=1”,即可不经过表单页面直接进入满足“x=1”条件的页面。因此,在设计验证或注册页面时,必须采取特殊措施来避免此类问题的发生。  
  提高数据库的安全性  

  由于access数据库加密机制过于简单,因此,如何有效地防止access数据库被下载,就成了提高asp+access解决方案安全性的重中之重。  

  1.非常规命名法  

  防止数据库被找到的简便方法是为access数据库文件起一个复杂的非常规名字,并把它存放在多层目录下。例如,对于网上书店的数据库文件,不要简单地命名为“book.mdb”或“store.mdb”,而是要起个非常规的名字,例如:faq19jhsvzbal.mdb,再把它放在如./akkjj16t/kjhgb661/acd/avccx55 之类的深层目录下。这样,对于一些通过猜的方式得到access数据库文件名的非法访问方法起到了有效的阻止作用。  

  2.使用odbc数据源  

  在asp程序设计中,应尽量使用odbc数据源,不要把数据库名直接写在程序中,否则,数据库名将随asp源代码的失密而一同失密。例如:  

  dbpath = server.mappath(“./akkjj16t/  

  kjhgb661/acd/avccx55/faq19jhsvzbal.mdb ”)  

  conn.open “driver={microsoft access driver (*.mdb)};dbq=” & dbpath  

  可见,即使数据库名字起得再怪异,隐藏的目录再深,asp源代码失密后,数据库也很容易被下载下来。如果使用odbc数据源,就不会存在这样的问题了:  

  conn.open “odbc-dsn名”  
  对asp页面进行加密  

  为有效地防止asp源代码泄露,可以对asp页面进行加密。一般有两种方法对asp页面进行加密。一种是使用组件技术将编程逻辑封装入dll之中;另一种是使用微软的script encoder对asp页面进行加密。笔者认为,使用组件技术存在的主要问题是每段代码均需组件化,操作比较烦琐,工作量较大;而使用script encoder对asp页面进行加密,操作简单、收效良好。script encoder方法具有许多优点:  

  1.html仍具有很好的可编辑性。script encoder只加密在html页面中嵌入的asp代码,其他部分仍保持不变,这就使得我们仍然可以使用frontpage或dreamweaver等常用网页编辑工具对html部分进行修改、完善,只是不能对asp加密部分进行修改,否则将导致文件失效。  

  2.操作简单。只要掌握几个命令行参数即可。script encoder的运行程序是screnc.exe,其使用方法如下:  

  screnc [/s] [/f] [/xl] [/l deflanguage ] [/e defextension] inputfile outputfile  

  其中的参数含义如下:  

  s:屏蔽屏幕输出;  

  f:指定输出文件是否覆盖同名输入文件;  

  xl:是否在.asp文件的顶部添加@language指令;  

  l:deflanguag指定缺省的脚本语言;  

  e:defextension 指定待加密文件的扩展名。  

  3.可以批量加密文件。使用script encoder可以对当前目录中的所有的asp 文件进行加密,并把加密后的文件统一输出到相应的目录中。例如:  

  screnc *.asp c:\temp  

  4. script encoder是免费软件。该加密软件可以从微软网站下载:http://msdn.microsoft.com/scripting/vbscript/download/x86/sce10en.exe。下载后,运行安装即可。  

  利用session对象进行注册验证  

  为防止未经注册的用户绕过注册界面直接进入应用系统,可以采用session对象进行注册验证。session对象最大的优点是可以把某用户的信息保留下来,让后续的网页读取。  

  设计要求用户注册成功后系统启动hrmis.asp?page=1页面。如果不采用session对象进行注册验证,则用户在浏览器中敲入“url/hrmis.asp?page=1”即可绕过注册界面,直接进入系统。利用session对象可以有效阻止这一情况的发生。相关的程序代码如下:  

  <%  

  ’ 读取用户输入的账号和密码  

  userid = request(“userid”)  

  password = request(“password”)  

  ’ 检查userid 及password 是否正确(实际程序可能会比较复杂)  

  if userid <>“hrmis” or password <>  

  “password” then  

  response.write “账号错误!”  

  response.end  

  end if  

  ’将session 对象设置为通过验证状态  

  session(“passed”) = true  

  %>  

  进入应用程序后,首先进行验证:  

  <%  

  ’如果未通过验证,返回login状态  

  if not session(“passed”) then  

  response.redirect “login.asp”  

  end if  

  %> 

编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:vbs脚本病毒特点及如何防范
下一篇:攻无不克决战网吧入侵
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
网络最经典命令行-网络安全工作者的必 刍议ipv6的安全问题 密码的安全设定
互联网安全:从花瓶到不可或缺 代挂qq,密码安全吗? 安全问答:网络钓鱼是什么意思
普遍存在的在线安全四个误区 入侵检测及网络安全发展技术探讨 网络安全特警2005评测报告
偷看asp原码的6种方法 网际网络安全技术分析和对策 电子政务的“安全观”
应用ipv6要考虑的五个安全问题 使用网络地址转换 增强网络安全 微软安全问题 源自os和ie中集成rss
网络高手眼中的网络安全  著名黑客kevin mitnick谈网络安全 命令提示符恢复本地安全策略小技巧
快下载!微软发布多个2月安全补丁 病毒pk网络安全厂商 浅析网络安全技术(二)
浅析网络安全技术(一) 修改注册表使电脑更安全  谈防火墙固有的安全与效率的矛盾
最新更新 热点排行 推荐新闻
服务器安全设置(七)
服务器安全设置(六)
服务器安全设置(五)
服务器安全设置(四)
服务器安全设置(三)
网站服务器通用和专用保护方法比较分析
网站服务器通用和专用保护方法比较分析
跨站式sql注入技巧
全面解析“网络钓鱼”式攻击
揭开网络钓鱼(phishing)秘密
google hacking的实现以及应用(下)
google hacking的实现以及应用(上)
网络最经典命令行-网络安全工作者的必
刍议ipv6的安全问题
鲜为人知的“windows 2000/xp受限”问
上网服务器步步建
网络安全问题的讨论和对策
ie浏览器再爆漏洞恐怖数据库成硬盘杀手
winxp漏洞可诱发dos攻击微软正在赶制补
操作系统被入侵后的修复过程
新开放qq免费挂级网站
免费在qq上看在线电影电视听音乐
免费把qq炫铃设为本机qq的系统提示音
qq珊瑚虫外挂4.0版本发布!
腾讯qq调整升级条件不再诱发网民“通宵
优秀公益广告作品欣赏(8)
java数据类型转换
流金岁月!cpu历史上最难忘的十个第一
qq挂机的n种快速方法
asp自动解压rar文件
操作系统被入侵后的修复过程
巧用photoshop图案工具
用photoshop制成浪漫的“珍珠项链”
第二十章 开发delphi对象式数据管理功
sql简明教程(1)
vbscript和javascript互相调用 
jsp教程(四)-jsp actions的使用
操作系统被入侵后的修复过程
五一别忘电脑防毒 养成良好上网习惯
google对ie浏览器将捆绑搜索功能表担忧
新版上线,今日正式开通!!!
 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
copyrights © 2004-2006 iyit.net all rights reserved.
网站合作、广告联系qq:147007642、466949678
易特网络技术 点击这里给我发消息