我要投稿
  • 您当前的位置:365bet官方 -> 技术教程 -> 网络安全教程 -> 教程内容
  • [ 收藏本页教程 ]
  • 突破ip封锁登陆论坛系统

    教程作者:佚名    教程来源:不详   教程栏目:网络安全教程    收藏本页
        教育部的一纸文件,国内各大高校的bbs一夜之间都被设置成只允许校内发帖。我们学校论坛是采用bbsxp(破论坛系统),本来由于服务器带宽的原因,人气就很低。管理员哥哥又封了校外的ip,不能登陆发帖。好多斑竹都是在用校园里的铁通宽带上网,还有些毕业了的,我们电脑版的可爱的echo,都进不来....(废话一大堆)
    OK让我们开始。
    论坛过滤 ip是在setup.asp这个页,

    if Request.Cookies("username") <> empty then
    sql="select * from [user] where username='"&HTMLEncode(Request.Cookies("username"))&"'"
    Set Rs=Conn.Execute(SQL)
    if rs.eof then Response.Cookies("username")=""
    if Request.Cookies("userpass") <> rs("userpass") then Response.Cookies("username")=""
    membercode=rs("membercode")
    userface=""&rs("userface")&""
    newmessage=rs("newmessage")
    userlife=rs("userlife")
    set rs=nothing
    end if

    if Request.ServerVariables("HTTP_X_FORWARDED_FOR")=empty then
    remoteaddr=Request.ServerVariables("REMOTE_ADDR")
    else
    remoteaddr=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
    end if

    if badip<>empty then
    filtrate=split(badip,"|")
    for i = 0 to ubound(filtrate)
    if instr("|"&remoteaddr&"","|"&filtrate(i)&"") > 0 then response.redirect "inc/badip.htm"
    next
    end if

    if Request.Cookies("skins")=empty then Response.Cookies("skins")=style

    这段代码就是setup.asp里验证用户这块,先读下吧.如果cookies不为空,则读取数据库验证用户的密码是否正确,正确的话定义变量,把一些需要用到的变量全都用数据库里读出来的数据赋值。然后进行读ip.如果ip属于被封的,则导向badip.htm禁止发登陆。
    我们学校的系统和这个代码有出入,他们是自己改的代码。把校外的ip 全封掉,不过都是在这个基础上改的。他们的验证是另外写了一段代码验证的。应该是在登陆页做的封ip段代码,猜想是先判断cookies是否是真的,如果存在的话就直接跳过验证ip那段。如果为空的话,则用户没有登陆,然后才进行ip验证。他们的思路应该是这样。(没办法,不是我自己的系统,只能猜他们的封ip思路)导致过滤不严密。

    如果个人文件中有cookies,系统就认为用户已经登陆,而不再进行ip的验证。这个就是我们今天破解被锁ip登陆的关键之处。伪造cookies

    GET /images/closedfold.gif HTTP/1.1
    Accept: */*
    Referer: >http://bbs.glite.edu.cn/ShowForum.asp?forumid=31[/url]
    Accept-Language: zh-cn
    Accept-Encoding: gzip, deflate
    If-Modified-Since: Wed, 15 May 2002 07:17:34 GMT
    If-None-Match: "07b5995e0fbc11:17b1"
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon)
    Host: bbs.glite.edu.cn
    Connection: Keep-Alive
    Cookie: onlinetime=2005%2D5%2D28+14%3A43%3A04; addmin=60; ASPSESSIONIDACBSQCCT=LKFHJHECMPOOCDCPHEJIADHC; forumid=31; filename=%7C2005528131326%7C2005528134747; username=yuan8627; userpass=F1913EB31C9CA1F1341B1DC9DE069D8C; eremite=0

    抓包显示cookies内容,上线时间onlinetime 在线分钟数addmin,看这段 username=yuan8627; userpass=F1913EB31C9CA1F1341B1DC9DE069D8C;。我们不得不又一次骂bbsxp这个论坛垃圾,用户名和密码都是数据库中的,虽然经过md5加密。dvbbs中cookies里的密码和数据库中的密码不一样,分开验证,所以伪造cookies几乎不可能。bbsxp 中代码的安全考虑不够,还号称国内最安全....如果有用户而已劫持了斑竹或者是管理员的cookies,然后进行cookies伪造,前台的权限可以删除帖子,修改帖子,版块。后果不堪设想。这个只留给有心的人了。
    我们今天是要伪造个登陆过的cookies,然后突破ip封锁。

    不能进行登陆,所以不能用iecv.exe来进行编辑.cookies 修改的同时会修改目录下的 index.dat这个文件{IE的索引文件,浏览的网页越多暗藏的“index.dat”索引文件容量也就越大。此选项可以初始化index.dat文件。}我发现ie下有个导入导出cookies功能,所以先把自己的cookies导出,然后再用把用户名和密码替换成另外一个号的,然后再进行导入。发现成功了,cookies导入的同时修改了目录下的index.dat 文件
    所以,我们只需要自己把以前的cookies导出,然后在需要进入论坛的时候直接导入就可以自由的出入论坛了,再也没有ip的限制。
    我在铁通的校外网上测试成功。

    # Internet Explorer cookie file, exported for Netscape browsers.
    bbs.glite.edu.cn TRUE / FALSE 1149109143 username 请用你的用户名覆盖
    bbs.glite.edu.cn TRUE / FALSE 1149109143 userpass 请用你的经过加密的密码覆盖
    bbs.glite.edu.cn TRUE / FALSE 1149109143 eremite 0
    这个是导出的cookies文件内容,直接用自己的用户名和经过MD5加密的密码覆盖,用ie导入就可以进入论坛了。
    MD5是32加密,加密工具上网搜一下一大把。
    我要投稿   -   广告合作   -   关于本站   -   友情连接   -   网站地图   -   联系我们   -   版权声明   -   设为首页   -   加入收藏   -   网站留言
    Copyright © 2009 - 20012 www.www.ct131.com All Rights Reserved.365bet官方 版权所有