浅谈基于ASP与Access网站的安全隐患及对策

浅谈基于ASP与Access网站的安全隐患及对策


2024年6月21日发(作者:)

2013年第2期 福 建 电 脑 97 

浅谈基于ASP与Access网站的安全隐患及对策 

彭昕洋 

(汕尾市d_r-学校广东汕尾516000) 

【摘 要】:本文从ASP语言的特性和ACCESS数据库本身的特点出发,分析了ACCESS数 

据库应用在ASP中的主要安全隐患.并给出了相应的解决方法、措施。 

【关键词】:ASP;Access;安全防范 

ASP+Access是建设中小型Internet网站的主 

要技术手段。但是.该解决方案在为我们带来便捷 

的同时.也带来了严峻的安全问题。特别是近期随 

着微软一些安全漏洞的暴露.ASP与ACCESS数 

据库的不安全性.很多利用这些技术开发的网站 

与破解工具被黑客公布到网上.上网者可以很方 

便的下载它们.并利用他们攻击存在漏洞的ASP 

网站.轻则注人木马影响正常用户对网站的访问。 

重则破坏服务器上的数据。针对这种情况,文章对 

ASP+access网站的一些安全问题进行了分析.并 

提出了应对这些安全问题的解决方法 

关键技术分析 

l、ASP技术 

ASP是Active Server Page的缩写.意为“动态 

服务器页面”。ASP是微软公司开发的代替CGI脚 

本程序的一种应用.它可以与数据库和其它程序 

进行交互,是--一种简单、方便的编程工具。 

2、Access数据库 

Microsoft Omce Access是微软把数据库引擎 

的图形用户界面和软件开发工具结合在一起的一 

个数据库管理系统 ACCESS支持Visual Basic宏 

语言。它是一个面向对象的编程语言,可以引用各 

种对象,包括DAO。ActiveX数据对象 以及许多其 

他的ActiveX组件。可视对象用于显示表和报表. 

他们的方法和属性是在VBA编程环境下.VBA代 

码模块可以声明和调用WindoWs操作系统函数 

二、网站安全分析 

l、Access数据库的可能被下载 

数据库是网站运营的基础.网站的重要信息 

都存放在网站数据库中.如果非法用户通过各种 

方法获得或者猜到数据库 mdb)l ̄存储路径和文 

件名.则该数据库就可能通过地址“URL/数据库 

所在路径名/数据库名.mdb”被下载到本地 这 

样.网站中的许多重要信息会被一览无余.用户通 

过查询数据库中的数据表.就可以很轻易的获得 

网站的管理员用户名和密码.从而获得网站的后 

台管理后台权限并控制整个网站.安全后果不堪 

设想。 

2、Access数据库可能被解密 

由于Access数据库的加密机制非常简单.所 

以即使数据库设置了密码.解密也很容易。当数据 

库被下载后.该数据库系统通过将用户输人的密 

码与某一固定密钥进行异或来形成一个加密串. 

并将其存储在半.mdb文件中从地址“&H42”开始 

的区域内 由于异或操作的特点是“经过两次异或 

就恢复原值”.因此,用这一密钥与冰.mdb文件中 

的加密串进行第二次异或操作.就可以轻松地得 

到Access数据库的密码。基于这种原理。可以很 

容易地编制出解密程序 

3、ASP页面的安全性 

fl油于ASP程序采用非编译性语言,大大降 

低了程序源代码的安全性 任何用户只要进人站 

点.就可以获得ASP源代码:同时对于租用服务 

器的用户.因个别服务器出租商的职业道德问题, 

也会造成ASP应用程序源代码泄露 

f21程序设计中容易被忽视的安全性问题.ASP 

代码主要使用表单实现交互.而相应的内容会反 

映在浏览器的地址栏中.如果不采用适当的安全 

措施,只要记下这些内容.就可以绕过验证直接进 

入某一页面。 

三、应对网站安全问题的方法 

1、非常规命名法 

防止数据库被找到的简便方法是为Access 

数据库文件起一个复杂的非常规名字.并把它存 

放在多层目录下 比方可将“news.mdb”改成 

ya8q—g7j3wu.mdb”.再把它放在/asdfgs/yqzope/ 

98 福 建 电脑 2013年第2期 

hprmb/的目录下.当然.也可以将数据库的扩展 

有密码也是无法看到examp1.mdb的, 

名改为.asp.在写连接字符串的时候也要用类似 

database.asp的文件名,这样会被有效防止数据库 

4、把数据库进行MD5加密 

先从网上下载一个MD5-asp程序,作为加密 

被轻易下载.但是不会影响数据库的正常的读写 

数据库用.然后在用户登录页面最上边捅入这样 

操作。 

句:<!一~#includefile=”rod5.asp”一一>,接着在 

2、使用ODBC数据源 登录程序巾找到大概这样一句话:pass=request(” 

在ASP程序设计中.应尽量使用ODBC数据 

pass”),把它改成pass=md5(request(”pass”))。这样, 

源,不要把数据库名直接写在程序中,否则,数据 数据库即使被下载了.破解的难度也很大 

库名将随ASP源代码的失密而一同失密。例如: 

DBPath=Smwer.MapPath f‘‘./klklie45/hgty456/sdfre/ 

5、对ASP页面进行加密 

般有两种方法对ASP页面进行加密 一种 

a8q2g7j3wu.asp”1 

conn.Open“driver={Microsoft Access Driver .mdb)};dbq=” 

&DBPath 

是使用组件技术将编程逻辑封装入DLL之中:另 

种是使用微软的Script Enco(1er对ASP页面进 

使用组件技术存在的主要问题是每 

可见,即使数据库名字起得再怪异,隐藏的目 

行加密。但是.

操作比较烦琐,工作量较大; 

录再深,一旦ASP源代码被下载.数据库也很容 

段代码均需组件化,

ipt Encoder对ASP页面进行加密.操作 

易被下载下来。如果使用ODBC数据源.就不会存 

而使用Scr

简单、收效良好 

在这样的问题了 

6、利用Session对象进行注册验证 

3、使用ACCESS来为数据库文件编码及加密 

为防止未经注册的用户绕过注册界面直接进 

首先在选取“工具 安全 加密/解密数据 

sion对象进行注册验 

库”,选取数据库(如:examp.mdb),然后接确定,接 

入应用系统.可以采用Ses

着会出现“数据库加密后另存为”的窗口.存为:ex. 

证。Session对象最大的优点是可以把某用户的信 

让后续的网页读取.代码举例如下: 

amp1.mdb。接着examp.mdb就会被编码然后存 

息保留下来,

为examp1.mdb。要注意的是.以上的动作并不是对 

数据库设置密码.而只是对数据库文件加以编码 

目的是为了防止他人使用别的工具来查看数据 

库文件的内容。接下来我们为数据库加密,首先以 

if session(”aleaveII1=…’then 

response.redirect”login.asp” 

response.end 

end if 

四、结束语 

打开经过编码了的examp1.mdb.在打开时.选择 ASP+access网站相对脆弱的安全性使其成为 

“独占”方式 然后选取功能表的“工具 安全 黑客攻击的目标.网站的建设和管理人员要有很 

设置数据库密码”.接着输人密码即可 为examp1. 

强的安全意识.增大安全管理的投入.加强安全政 

mdb设置密码之后.接下来如果再使用ACCEES 

策、安全管理组织和技术培训.动态地运用多种安 

数据库文件时.则ACCESS会先要求输入密码.验 

全策略。在实际操作中做到防患于未然.在程序设 

证正确后才能够启动数据库 不过要在ASP程序 

计和安全配置方面做好网站的安全工作,增强 

中的connection对象的open方法中增加PWD的 

web服务器、数据库文件、ASP页面等的安全性, 

参数即可。例如: 

param=“driver={Microsoft Access Driver( .mdb)};Pwd 

yfdsfs” 

构建一个相对较为安全稳定的动态网站。 

参考文献: 

[1】陈伟,张伟编著.局域网组建实例与技巧,科学出版社 

param param&“:dbq ”&server.mappath rexamp1. 

mdb”) 

conn・open param 

[2]吕晓杨,计算机网络应用,广东科技出版社 

这样即使他人得到了examp1.mdb文件.没 

+一+-+一+-+-+-+-+・・+-+-+-+-+一-4---4-“+一+…-4-+-+-+-+一+-+-+-—+一-+--+-一+一+ 十一+-+-+-+-+--4--+-+-——卜-■一-—+一一—+一一--卜一— -+一一—-卜-—‘+一 

(上接第107页) 

[21向才昂.一种用于多变量卡诺图化简的新方法UJ.湘潭 

参考文献: 

(7):71—76.

大学自然科学学报,1994(3):61—64. 

1J],2008(12):31~34・ 

…刘天惠.多变量卡诺图的表示法.东南大学学报UJ,1993 【3j李碧芬.卡诺图法化简六变量逻辑函数.韶关学院学报 


发布者:admin,转转请注明出处:http://www.yc00.com/news/1718934372a2753664.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信