学校ASP网站漏洞及防范_第1页
学校ASP网站漏洞及防范_第2页
学校ASP网站漏洞及防范_第3页
学校ASP网站漏洞及防范_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学校 ASP 网站漏洞及防范摘要 目前浏阳的很多学校都建立了自己的网站,但都是基于 ASP 和 Access 的 , 很多的网站是直接从网上下载的,有着很多网站的注入通病。关键词 浏阳 网站 数据库 攻击由于 ASP 的方便易用, 越来越多的网站后台程序都使用 ASP 脚本语言。 但是, 由于 ASP 本身存在一些安全漏洞,稍不小心就会给攻击者提供可乘之机。目前 ASP+ACCESS网站的主要安全隐患来自 Access 数据库的安全性, 其次在于 ASP 网 页设计过程中的安全漏洞,也就是没有把很多关键词进行过滤。一、 漏洞解析1、 用户名与口令被破解用户名与口令,往往是攻击者们最感兴趣的东西

2、,如果被通过某种方式看到 源代码,后果是严重的 , 我们的网站很快就会被攻击者占据。2、 ASP木马有些网站允许用户上传文件,但必需对这些上传文件十分小心, 为什么论坛程序被攻破后主机也随之被攻击者占据。原因就在于可能存在 ASP 木马,它能把一个文件随便放到你论坛的程序中,进而整个网站被攻击者占据。 3、 inc文件泄露问题当存在 ASP 的主页正在制作且没有进行最后调试完成以前,可以被某些搜索 引擎机动追加为搜索对象。如果这时候有人利用搜索引擎对这些网页进行查找, 会得到有关文件的定位, 并能在浏览器中查看到数据库地点和结构的细节, 并以 此揭示完整的源代码。4、 特殊字符 输入框是黑客利

3、用的一个目标, 他们可以通过输入脚本语言 等对用户客户端造成损坏; 如果该输入框涉及数据查询, 他们会利用特殊查询语 句,得到更多的数据库数据,甚至表的全部。因此必须对输入框进行过滤。但如 果为了提高效率仅在客户端进行输入合法性检查,仍有可能被绕过。5、 Access数据库的存储隐患 在 ASP +Access 应用系统中,如果获得或者 猜到 Access 数据库的存储路径和数据库名,则该数据库就可以被下载到本地。 例如:对于网上书店的 Access 数据库,人们一般命名为 book.mdb 、 store.mdb 等,而存储的路径一般为“ URL/database”或干脆放在根目录(“ UR

4、L/”下。 这样,只要在浏览器地址栏中敲入地址:“ URL/database/store.mdb”,就可以 轻易地把 store.mdb 下载到本地的机器中。二、 防范对策1、 防止泄露源代码 涉及用户名与口令的程序最好封装在服务器端, 尽量少 在 ASP 文件里出现, 涉及与数据库连接的用户名与口令应给予最小的权限。 出现 次数多的用户名与口令可以写在一个位置比较隐蔽的包含文件中。 如果涉及与数 据库连接, 在理想状态下只给它以执行存储过程的权限, 千万不要直接给予该用 户修改、插入、删除记录的权限。2、 限制上传文件格式为了防止 ASP 木马被上传到服务器,3、 加密 inc 文件程序员应

5、该在网页发布前对它进行彻底的调试还必需加固 ASP 文件以便外部的用户不能看到它们。 首先对 .inc 文件内容进行加密, 其次也 可以使用 .asp 文件代替 .inc 文件使用户无法从浏览器直接观看文件的源代码。 inc 文件的文件名不要使用系统默认的或者有特殊含义容易被用户猜测到的名 称,尽量使用无规则的英文字母。4、 屏蔽某些特殊的语名和字符在处理类似留言板、 BBS 等输入框的 ASP 程 序中,最好屏蔽掉 HTML 、 JavaScript 、 VBScript 语句,如无特殊要求,可以限 定只允许输入字母与数字,屏蔽掉特殊字符。同时对输入字符的长度进行限制。 对输入的字符不但要在

6、客户端进行输入合法性检查, 同时要在服务器端程序中进 行类似检查。5、 提高数据库的安全性由于 Access 数据库加密机制过于简单, 因此, 如何 有效地防止 Access 数据库被下载 , 就成了提高 ASP +Access 解决方案安全性的重 中之重。非常规命名法防止数据库被找到的简便方法是为 Access 数据库文件起一个复杂的非常规 名字,并把它存放在多层目录下。例如,对于网上书店的数据库文件,不要简单 地命名为“ book.mdb ”或“ store.mdb ”,而是要起个非常规的名字,例如: d34ksfslf.mdb , 并把它放在如 ./kdslf/i44/studi/的几层

7、目录下。 这样, 对于 一些通过猜的方式得到 Access 数据库文件名的非法访问方法起到了有效的阻止 作用。使用 ODBC 数据源在 ASP 程序设计中,应尽量使用 ODBC 数据源,不要把数据库名直接写在程 序中,否则,数据库名将随 ASP 源代码的失密而一同失密。例如:MyPath = Server.MapPath(“ ./kdslf/i44/studi/d34ksfslf.mdb ” myconn.Open “ driver=Microsoft Access Driver (*.mdb;dbq=” & myPath 可见,即使数据库名字起得再怪异,隐藏的目录再深, ASP 源代

8、码失密后,数据 库也很容易被下载下来。6、 利用 Session 对象进行注册验证 为防止未经注册的用户绕过注册界面 直接进入应用系统,可以采用 Session 对象进行注册验证。 Session 对象最大的 优点是可以把某用户的信息保留下来,让后续的网页读取。 设计要求用户注 册成功后系统启动 hrmis.asp?page=1页面。如果不采用 Session 对象进行注册 验证,则用户在浏览器中敲入“ URL/hrmis.asp?page=1”即可绕过注册界面,直 接进入系统。 利用 Session 对象可以有效阻止这一情况的发生。 相关的程序代码 如下:<%' 读取用户输入的

9、账号和密码 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 %>由此可见,编程人员也必 须在某些安全细节上注意

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论