APP下载

关于asp网站安全设置的一点思考

2013-06-25曾子睿

中国信息化·学术版 2013年3期
关键词:组件加密黑客

曾子睿

【摘 要】本文论述了当前大多asp网站存在的安全隐患和威胁,并从数据库安全、asp代码安全、iis安全、服务器系统安全等方面综合论述如何加强对asp网站的管理和维护。

【关键字】asp,网站,安全,维护

【中图分类号】IP393.08 【文献标识码】A 【文章编号】1672-5158(2013)03-0171-01

asp作为一种快速开发的脚本语言,在高级程序开发语言.net,php,jsp盛行的今天,其易用性和开发便捷性还是得到很多人的认同,目前国内大部分网站还是采用asp程序代码开发,由于asp是早期语言,程序的逻辑性和严密性不是很好,再加上难封装等客观原因,其语言的安全性相比.net、php、jsp而言要差些,但是只要我们做好一些必要的安全工作,asp网站一样能够很安全、稳定的运行,有些使用ASP语言的网站甚至比php、jsp等程序开发出来的网站更安全稳定,而且有易于管理和维护的特点。

1.首先我们先谈数据库安全,数据库的安全关系到整个网站的安全,asp网站常搭配两种数据库:一种是access,一种是sql,access出现的时间比sql要早,虽然access具备数据库文件小、使用容易、在虚拟主机上可以直接运行等优点,但是其安全性和性能比sql要差,容易被下载,但只要做好以下几方面,asp+access的网站一样可以很安全、稳定的运行,首先是对access数据库做防下载处理,通常处理方法如下:1.可以在数据库文件名前加#符号、或者在数据库文件名当中加入#符号,然后修改asp网站中的数据库连接文件(比如conn.asp,data.asp,sql.asp等等,也有的在index.asp主文件中)中的数据库连接地址,但数据库文件名应保持一致。还可以在数据库文件字串中加入些标点符号,比如,;号等,这是由于http协议会把这些符号解析成”%”号,所以即使有人看到你数据库的地址,也很难准确判断数据库文件地址进而下载数据库文件!

2.可以对数据库进行加密,具体操作如下,选择access菜单选项:工具——安全——加密/解密数据库选项,选择你所需加密的数据库名(比如:data.mdb),点确定,此时会出现另存为窗口,点击确定,这项操作能给数据库文件内容加上系统编码,防止无关人员随意查看数据库内容。接下来则是加密操作,打开相应的数据库文件,在窗口右下角选择框里选择独占方式,然后选择access菜单,依次点击上方的工具——安全——设置数据库密码选项,接着输入密码,这样数据库密码就设好了,给数据库安全多一重保障,但设置密码后切记在数据库连接文件中加上uid=***;pwd=***语句,建立数据库和网站文件的连接,这样网页才能正常访问!4.可以把数据库放到其它目录下,然后把数据库连接的相应地址改掉,数据库连接语句最好写成数据源ODBC连接格式,不过这种方法不适合虚拟主机用户使用。Sql数据库相对安全系数要高些,不过也要设置好密码、使用用户、文件权限等,还要删除掉一些危险的、使用不到的存储过程,比如cmdshell等,总的原则是密码越长越复杂越好,用户越低权限越好,使用文件权限也越低越好!

3.使用asp网站加密工具,对网站文件和数据库文件加密!

当然,iis作为运行asp程序的一项重要工具,其安全问题也应高度重视,具体可做一下操作,做好这些操作后,IIS的安全性将会大大提升,具体如下:

(1)给予IIS站点属性中的主目录以读取权限,执行选择纯脚本。

(2)在应用程序配置的调试选项卡中,不启用asp的服务端和客户端脚本调试,不向客户端发送详细的ASP错误消息,防止泄漏程序文件和数据库详细信息。此外,在应用程序配置的选项中记得勾选启用父路径。

(3)在控制面板——计算机管理——用户名和密码中新建一用户,隶属于guests组,把这个用户名对应的密码设置复杂点,然后在网站属性的身份验证方法中查看匿名访问用户名,选择刚才自己新建的用户,给自己新建的用户以最低权限,建议只给予读取和写入权限。

(4)网站的上传目录(比如images,softs)等文件和数据库文件(mdb,sql)等本身不需要运行asp程序,因此要把执行权限设置成无,给它们以基本的读取和写入权限即可。

(5)及时升级iis和打最新的微软操作系统补丁、数据库也要及时升级。

(6)可以对网站文件里的文件进行加密或进行防篡改处理。

(7)在主目录——配置——应用程序拓展选项中只保留asp、asa选项。

此外,关于服务器系统的安全维护有这样一句行话:“分配最小的权限+提供最少的服务=保障最大的安全”。操作系统的安全也是很重要的,试想如果操作系统有很多漏洞,黑客通过这些漏洞攻进操作系统,那岂不是网站文件都保不住了?所以正确配置好服务器系统和打好服务器补丁,及时升级杀毒软件,装网络防火墙都是必不可少的!除此之外,服务器的文件和用户名权限设置也是很重要的,直接关系到服务器和网站文件的安全,系统安全如果做得好,黑客很难攻入,反之黑客可以轻松操控整台服务器。文件和用户名权限设置步骤如下:

(8)禁用并给guest账户一个非常复杂的密码。

(9)删除或限制一些不必要的帐户使用,因为有些不必要的帐户给黑客入侵服务器提供了便利。

(10)把系统默认管理员帐户administrator改名,并匹配其很复杂的密码。

(11)新建一伪装用户,名称取为administrator(系统管理员账户),为其也匹配很复杂的密码。并分配给这个账户以最低的权限,这样黑客入侵的话就会白忙活一阵子,而且管理员也可以有足够时间来锁定黑客的相关信息。(即使黑客入侵成功,取得的也只是最低权限,控制不了服务器)。

(12)不要把任何共享文件的用户分配给系统用户“everyone”组。

4. 如果管理者不想让操作系统显示上次登录的用户名可以做如下操作:打开注册表“Software\Microsoft\Windows T\CurrentVersion\Winlogon\Dont-DisplayLastUserName”,把REG_SZ的键值改成1。

删除和禁止使用某些危险的asp组件也同样重要(这些组件一般情况下用不到,如需用重新运行此项组件即可),事实上,asp木马多通过Shell.Application、WScript.Shell、WScript.Network组件来运行,以下是具体的删除方法:(具体步骤是在开始运行命令执行中操作)

(1)删除WScript.Shell组件命令:regsvr32 WSHom.ocx /u(2)删除WScript.Network组件命令:regsvr32 wshom.ocx /u(3)禁止使用Shell.Application组件命令:cacls C:\WINNT\system32\

shell32.dll /e /d guests

(4)禁止guest用户使用shell32.dll组件命令:cacls C:\WINNT\

system32\Cmd.exe /e /d guests

最后是asp文件和数据安全,上文提到可以对网站文件里的文件进行加密或进行防篡改处理,还可以通过vb将asp代码封装成dll组件,还要对asp代码进行防注入过滤,过滤html语句,过滤网页间的传值,使用后台登录验证,防session猜解,密码md5加密(对md5加密的密码最好设置成14位以上,防止被破解),使用微软提供的URLScan Tool过滤非法url地址等,鉴于此块篇幅很大,此文不做一一详述,有兴趣的读者可通过上网或书籍查询相关内容。此外,定期备份网站文件和数据库(如果是sql数据库,笔者建议可以异地备份)至关重要,一旦网站出现问题可及时还原原始文件,保网站的持续运行。

参考文献:

[1]李世川. 浅析基于ASP的网站安全问题[J]. 科技资讯,2010.09[2]张帆. ASP网站的安全管理及措施[J]. 计算机安全,2008.08

[3]刘聪林.论基于ASP网站的安全管理[J]. 德州学院学报,2011.08

[4]庄小叶; 蒋西明; 李轲.基于ASP的网站安全性研究[J].山东纺织经济,2012.09

[5]张彩华. 浅析ASP网站中SQL注入的防范措施[J]. 黑龙江科技信息,2012.04

[6]贾玲. ASP网站安全问题探析 [J]. 濮阳职业技术学院学报,2009.05

[7]朱根良. 谈ASP网站的安全管理[J]. 科技信息,2011.01

[8]李世川. 浅析基于ASP的网站安全问题[J]. 科技资讯,2010.05

[9]尹玉霞. 基于ASP网站的安全性研究与实现[J]. 硅谷,2012.02

[10]姜朱磊.浅谈ASP网站的安全管理[J]. 农业科技与信息,2011.09

猜你喜欢

组件加密黑客
嘻哈动物帮
创建Vue组件npm包实战分析
光伏组件热斑对发电性能的影响
智能机械臂
保护数据按需创建多种加密磁盘
谷歌禁止加密货币应用程序
加密与解密
黑客传说
最黑客等3则
嵌入式组件技术的研究及应用