DZ论坛的登录POST数据分析

来源:互联网 发布:阿里云域名服务器地址 编辑:程序博客网 时间:2024/04/28 00:04

http://azhus.com/thread-16-1-1.html


如图所示,是两个登录方式的抓包截图(httpwatch是个非常好的抓包工具,各位可以在论坛搜索一下,有下载的)
注: DZ论坛的API接口都一样,如果你要修改本篇分析数据内容的话,只需要把 azhus.com改成其他论坛域名即可. (转载请著名出处啊..)

第一种方式,我是直接在论坛首页抓包.这种登录的好处是,如果帐号没有密保的话,一个POST就可以直接登录.

  1. POST地址: http://azhus.com/member.php?mod=logging&action=login&loginsubmit=yes&infloat=yes&lssubmit=yes&inajax=1

  2. POST数据:fastloginfield=username&username= + 【帐号】 + &password= + 【MD5加密(密码)】  + &quickforward=yes&handlekey=ls
复制代码
如果帐号没有密保的话,在登录成功的情况下会返回以下两种结果:
  1. <blockquote><?xml version="1.0" encoding="utf-8"?>
复制代码
如果返回上述两种其一,这样说明登陆成功了.若返回:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <root><![CDATA[<script type="text/javascript" reload="1">if(typeof errorhandle_ls=='function') {errorhandle_ls('', {'type':'1'});}</script><script type="text/javascript">showWindow('login', 'member.php?mod=logging&action=login&auth=***
复制代码
说明密码正确但需要密保了.此时就需要多次跳转了,比较麻烦.数据包1里面可以看到,当帐号有密保的时候,会多出一个GET.
  1. GET数据: http://azhus.com/member.php?mod=logging&action=login&auth= + 【auth】 + &referer=http%3A%2F%2Fazhus.com%2F&infloat=yes&handlekey=login&inajax=1&ajaxtarget=fwin_content_login
复制代码
上面这个GET中的auth是什么呢?通过测试数据包可以看到,其实就在第一个POST中返回的数据里面,设法取出来即可.

抓包数据中可以看到,当把密保问题和答案都填写完后,又有一个POST.如下
  1. POST地址: http://azhus.com/member.php?mod=logging&action=login&loginsubmit=yes&handlekey=login&loginhash= + 【loginhash】 + &inajax=1
复制代码
上面这个POST中, formhash可以从上一步的GET返回中取到,loginhash也是从GET返回数据里获取. auth就是第一步返回的,一直沿用即可.
至于最后一个参数【经过UTF8编码后的密保答案】,是有个规律的 ,我用"这个 +1a,"作为密保答案,测试出的规律为:空格替换为+号,中文和符号替换成UTF8编码,数字字母不替换.

好了,这样就可以登录成功了!


当然了,还有第二种登录方式:
我是从登录页面:http://azhus.com/member.php?mod=logging&action=login抓取的数据包,如图二和数据包2所示.
这里可以发现,这个页面的登录只有一个POST,其实是非常方便的.
  1. POST地址: http://azhus.com/member.php?mod=logging&action=login&loginsubmit=yes&loginhash= + 【loginhash】 + &inajax=1
复制代码
这个POST中的loginhash和formhash从哪里来么?其实只要通过GET地址:http://azhus.com/member.php?mod=logging&action=login,从返回的网页源码中取出即可.
只要一个POST ,就可以登录成功啦!

附录:
一.返回的数据中有以下几种:
    1. *** 欢迎您回来 ****现在将转入登录前页面       (这种属于登陆成功
    2. ***登录失败,您还可以尝试****次***                (这种属于密码错误
    3. ***请选择安全提问以及填写正确的答案***        (这种属于密码正确但有设置密保且密保答案填写错误
    4. ***密码错误次数过多,请 15 分钟后重新登录** (这个就不多做解释了,顾名思义
    5. ***抱歉,密码空或包含非法字符***                   (这个有的时候会因为网络错误什么的而出现,如果不是真的没填写密码,那肯定就是因为网络错误了
    6. <?xml version="1.0" encoding="utf-8"?><root><![CDATA[<script type="text/javascript" reload="1">window.location.href='http://azhus.com/./';</script>]]></root>  
                                                                                     (这个说明登录成功,如果是浏览器,这个会显示为欢迎页面.


0 0
原创粉丝点击