asp我对后台安全的一些做法
作者:gjr1 来源:经典论坛 发布时间:2011-09-01 19:22:09
加强ASP网站后台安全一些主要措施:
-------------------------------------------------------------------------------------------------
想想自己第一次做的网站,就遭到一个美国的IP不断功击(也并非全是坏事,因为这件事,使我从DW转向手写代码,呵呵,说来还得感谢这个人),前不久,最新完成的一个网站,不断有人直接访问备份数据库的后台文件,我为网站提供了更改管理文件夹名称的功能,但仍然马上被找到(我想他是用什么黑客软件扫描网站所有文件,并看那个文件名带有“db"字样吧),但均被踢出,我们网站仍然安然无事,现在这个网站后台功击者少了很多,也安静了。
1、使用IP或IP段,明确指定一个IP是最佳的,如果不行,可以用IP段来缩小可登入权限,
2、把管理员的帐号和密码写入页面,不要用数据库。
一般的教材通常都是教人在会员库做一个admin权限的会员,但是如果是AC数据库——特别是中小企业的网站,库被下载且密码被破,则也不存在安全;虽然现在不少服务器都能提供路径外存放数据库,也可以用#号之类的命名和改名数据库,但对于管理员权限,我认为都比不上直接用FSO把管理员的密码和帐号写到文件上,不要存在数据库。
3、为密码附加一个字串:
也许这招是多余的,但在防不胜防的情况下,我还是在用它,因为不花什么精力,
大家都知道,简单的密码易于破解,也听说有人破解过MD5密码,但现在最难也最易用的,可能还是MD5密码,那怎么加强?
对于有密码常识的人,可能会知道取一个各种组合的密码难被破解,但特别对于很多前台会员注册来说,一般人取的密码还是很简单的,也许当你的作品交付给客户时,他们的管理人员也会取个“123”的密码,如果MD5真有人破解,那也是这些简单的密码先“挂彩”。
不过可以在为这些会员以及后台管理员调一个“附加串”,如:
Dim pwd,pwdStr
pwdStr="02!adb@a2k" '就是这个串
pwd=trim(request.form("password"))
pwd=Md5(Md5(pwd&pwdStr)) '和字串组合后,用MD5加密。
这样,不管设的密码多么简单,在加强后都会变的复杂。
4、善用服务器。
网站安全,除程序严谨以外,服务器安全设置也是很重要,现在大服务器商安全方面都做的不错,但如果是自己的服务器,就要加强。
也要充分利用服务器提供的功能,比如:路径外保存数据库;将非法IP保存到服务器拒绝IP行列中等等。
5、给功击者一点彩色。
这招是我的一个台湾老师开玩笑说的,不过我觉得可以用(然而我自己到现在为止还没用上这招)——如果你不堪其烦时,为什么不反击呢?
给功击者增加难度或处理时间,或许也是双方解脱的一个办法,因为双方都很“烦”,“当两个人打的爬在地上时,这时调解是最容易的”。
比如:把确认为非法登入者导入到病毒网页,或者转到一个“疯狂+疯狂”弹窗的页面。或者,你还有更狠的绝招就使出来。
其它的,在安全方面加强,我觉得都没有以上前四点来的重要,如果要修补,也应优先从session着手,cookies则最好不用,也不要把后台的session或cookies命名与前台会员登入相同。对于http://bbs.blueidea.com/thread-2727974-1-1.html这个帖子来说,可能还存在未正确验证,就先输出cookies,而严格来说,应该在后台登入界面就已经开始着手验证了。
此外,“偷”个少输入帐号的麻烦,换来网站数据崩溃,是你的过错,没有任何良方可以让这么点小懒都想“偷”的人可以无后顾之忧。我个人的看法,当启用了IP限制后,才是考虑是否开放cookies,否则就免了吧。
猜你喜欢
- 这个分页使用的是0游标,也就是Rs.Open Sql,Conn,0,1。但是感觉也快不了多少,10万条数据的分页时间300多豪秒之间。风格A
- 最近 W3C 一口气推出 7 个 HTML 工作草案,涵盖了 HTML5,HTML RDF,HTML Microdata,HTM
- 1、首先在系统盘中查找scrrun.dll,如果存在这个文件,请跳到第三步,如果没有,请执行第二步。 2、在安装文件目录i386中找到scr
- CSS hack是指我们为了兼容各浏览器,而使用的特别的css定义技巧。这是国外摘来的一张CSS hack列表,显示了各浏览器对css ha
- 大致功能:$() 取得所有元素$("div") 取得所有DIV$("#a1") 取得ID为a1的元素
- 首先说明下范围用Javascript来开发WEB页面的动画效果该思路同时考虑页面效率、SEO,如果数据大,也可以缓解后端压力。这个是程序设计
- 好东西找起来很麻烦,好用的又不太容易找到,之前看到很多用JS写的,固定漂浮这种效果拖动时难免会产生抖动,自己对CSS还是蛮有好感的,找来找去
- <% On Error Resume Next Const uploadPath = "/uploads/"
- ACCESS有个BUG,那就是在使用 like 搜索时如果遇到日文就会出现“内存溢出”的问题,提示“80040e14/内
- 相对于 Ajax,服务端 XMLHTTP 就是在服务端使用 XMLHttpRequest 对象了。虽然说,在服务端使用异步请求是比较不方便的
- 当你的查询相对简单的时候,每次从头开始创建SQL语句也不费什么工夫,不过,复杂的查询就不同了,每次都从头来会产生很多开发错误。因此,一旦让S
- 毫无疑问,JavaScript 是一种非常灵活的脚本语言,有时候它像一只难以驯服的野马——你受益于它的灵活性的同时,也要时刻提防它变得失去控
- 原问题是这样的:如何用SQL语句(不是Oracle),求出下表每一行的5个字段中的最大值,最后生成一个新字段。例如:第一行最大值 -5.0
- SQL Server 2005的新功能为动态管理对象,它们是在指定时间返回某个数据库实例的特殊状态信息的数据库视图或函数。这些对象允许数据库
- 内容摘要:Microsoft建立了一种既灵活又强大的安全管理机制,它能够对用户访问SQL Server服务器系统和数据库的安全进行
- 这段时间常给来面试的同学用《 你是一个职业的页面重构工作者吗? 》中三个部分的不同阶段去做自测,发现很多人都自我感觉良好,给我的回答基本都是
- 随着PHP4.0和JSP技术的推出以及IIS中不断出现的重大的安全问题,MicroSoft的ASP的市场仿佛是变的狭窄了,但是 MicroS
- 在一些情况下,MySQL可以直接使用索引来满足一个 ORDER BY 或 GROUP BY 子句而无需做额外的排序。尽管 ORDER BY
- MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购。MySQL被广泛地应用在I
- 当然是可以的,而且非常简单,今天就教大家在ASP中不用模板生成HTML静态页的方法。这里假设有一个htmer.asp动态页面,你想把它生成为