假如我的登陆接口不经过防范的话,用我上面的暴力破解程序破解会出现.如下的结果,如图6:
图5

图6

总结:
通过上面对暴力破解及单用户同时刻登陆次数这两个攻防问题的讨论,我想大家应该有一个大体的了解了,并且我觉得从代码上杜绝这几个漏洞现在成为可能――要做到这点,应该要遵循下面几点:
1、代码一定要规范化。要用post传递参数的时候就必须要用Request.Form("参数")来获取,而不是用request("参数")或者Request.QueryString(("参数"))来获取。我看过很多网站的代码,都没有很严格的遵循这点。
2、可以用
<%
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
if mid(server_v1,8,len(server_v2))<>server_v2 then
……………….(省略)
%>
语句来禁止从站点外部提交数据,并且为了节省服务器的资源,我建议把之放到文件的头部部分。
3、应用我在上面所提到的代码来防范,不过我在此提醒你:上面的代码你一定要做第二次开发,因为上面的代码不仅仅你知道,其他的朋友们也知道!
本文只做技术上的探讨,请勿将本文用于违法活动,否则后果自负。
最后想说的是:如果能在
攻击与防范之间寻得平衡,那更能体会到
编程的乐趣
上一页 [1] [2] [3]