【asp源码栏目提醒】:网学会员,鉴于大家对asp源码十分关注,论文会员在此为大家搜集整理了“如何防止黑客进入ASP空间网站 - 互联网”一文,供大家参考学习!
如何防止黑客进入
ASP空间网站
Asp程序以其操作简单方便易用的网站后台管理模式受到更多的站长和编程人员的喜欢。
但是
ASP程序本身有一些漏洞很容易导致黑客乘虚而入。
其实网站安全不仅仅是网管的事情编程人员也必须注意在写程序代码时某些安全的细节一定要注意养成良好的安全意识和习惯就可以避免给网站埋下安全隐患的种子。
目前尽管
ASP空间程序有很多这样那样的安全漏洞但是如果在编程过程中注意的话这些都是可以避免的。
一般的漏洞问题大概有几类这里总结下 1、用户名与口令被破解 攻击原理用户名与口令往往是黑客们最感兴趣的东西如果被通过某种方式看到源代码后果是严重的。
防范技巧涉及用户名与口令的程序最好封装在服务器端尽量少在
ASP空间的程序文件里出现涉及与数据库连接的用户名与口令应给予最小的权限。
出现次数多的用户名与口令可以写在一个位置比较隐蔽的包含文件中。
如果涉及与数据库连接在理想状态下只给它以执行存储过程的权限千万不要直接给予该用户修改、插入、删除记录的权限。
2、验证被绕过 攻击原理现在需要经过验证的
ASP程序大多是在页面头部加一个判断语句但这还不够有可能被黑客绕过验证直接进入。
防范技巧需要经过验证的
ASP空间页面可跟踪上一个页面的文件名只有从上一页面转进来的会话才能读取这个页面。
3、inc文件泄露问题 攻击原理当存在
ASP的空间主页正在制作且没有进行最后调试完成以前可以被某些搜索引擎机动追加为搜索对象。
如果这时候有人利用搜索引擎对这些网页进行查找会得到有关文件的定位并能在浏览器中查看到数据库地点和结构的细节并以此揭示完整的源代码。
防范技巧程序员应该在网页发布前对它进行彻底的调试安全专家则需要加固
ASP文件以便外部的用户不能看到它们。
首先对.inc文件内容进行加密其次也可以使用.
asp文件代替.inc文件使用户无法从浏览器直接观看文件的源代码。
inc文件的文件名不要使用系统默认的或者有特殊含义容易被用户猜测到的名称尽量使用无规则的英文字母。
4、自动备份被下载 攻击原理在有些编辑
ASP程序的工具中当创建或者修改一个
ASP空间文件时编辑器自动创建一个备份文件比如UltraEdit就会备份一个.bak文件如你创建或者修改了some.
asp编辑器会自动生成一个叫some.
asp.bak文件如果你没有删除这个bak文件攻击者可以直接下载some.
asp.bak文件这样some.
asp的源程序就会被下载。
防范技巧上传程序之前要仔细检查删除不必要的文档。
对以BAK为后缀的文件要特别小心。
5、特殊字符 攻击原理输入框是黑客利用的一个目标他们可以通过输入脚本语言等对用户客户端造成损坏如果该输入框涉及数据查询他们会利用特殊查询语句得到更多的数据库数据甚至表的全部。
因此必须对输入框进行过滤。
但如果为了提高效率仅在客户端进行输入合法性检查仍有可能被绕过。
防范技巧在处理类似留言板、BBS等输入框的
ASP程序中最好屏蔽掉HTML、javaScript、VBScript语句如无特殊要求可以限定只允许输入字母与数字屏蔽掉特殊字符。
同时对输入字符的长度进行限制。
而且不但要在客户端进行输入合法性检查同时要在服务器端程序中进行类似检查。
6、数据库下载漏洞 攻击原理在用Access做后台数据库时如果有人通过各种方法知道或者猜到了服务器的Access数据库的路径和数据库名称那么他也能够下载这个Access数据库文件这是非常危险的。
防范技巧 1为你的数据库文件名称起个复杂的非常规的名字并把它放在几层目录下。
所谓非常规打个比方说比如有个数据库要保存的是有关书籍的信息可不要给它起个book.mdb的名字而要起个怪怪的名称比如d34ksfslf.mdb并把它放在如./kdslf/i44/studi/的几层目录下这样黑客要想通过猜的方式得到你的Access数据库文件就难上加难了。
2不要把数据库名写在程序中。
有些人喜欢把DSN写在程序中比如 DBPathServer.MapPathcmddb.mdb conn.OpendriverMicrosoftAccessDriver.mdbdbqDBPath 假如万一给人拿到了源程序你的Access数据库的名字就一览无余了。
因此建议你在ODBC里设置数据源再在程序中这样写 conn.openshujiyuan 3使用Access来为数据库文件编码及加密。
首先在工具→安全→加密/解密数据库中选取数据库如employer.mdb然后按确定接着会出现数据库加密后另存为的窗口可存为employer1.mdb。
要注意的是以上的动作并不是对数据库设置密码而只是对数据库文件加以编码目的是为了防止他人使用别的工具来查看数据库文件的内容。
接下来我们为数据库加密首先打开经过编码了的employer1.mdb在打开时选择独占方式。
然后选取功能表的工具→安全→设置数据库密码接着输入密码即可。
这样即使他人得到了employer1.mdb文件没有密码他也是无法看到employer1.mdb中的内容。
还有一点就是免费程序不要真的就免费用既然你可以共享原码那么攻击者一样可以分析代码。
如果在细节上注意防范那样你站点的安全性就大大的提高了。
即使出现了SQLInjection这样的漏洞攻击者也不可能马上拿下你的站点。