美文网首页
使用fiddler和WireShark进行网络抓包

使用fiddler和WireShark进行网络抓包

作者: KevinCool | 来源:发表于2016-05-25 20:31 被阅读4359次
    • WireShark

      1. 打开WireShark,开启网卡混杂模式,抓包。
      2. 对数据包进行过滤,命令如下 http.request.method== "POST"
      3. 接下来,点击POST事件那一行,然后右击选择“Follow TCP Stream”
      4. 分析报文内容.
    • fiddler
      fiddler更加好用,直接打开fiddler,然后运行浏览器打开网站,它就会自动分析所有的get与post请求的详细信息。
      凭借这个软件,成功的分析出来了一个网站的登录的跳转url。当时看网站源代码的时候也没有看出来跳转到那里了,因为都是JavaScript的代码,比较难找到。通过这个软件,只需几分钟就能找到。

    登录post.png

    如图,可以清楚的获取到网站的headers信息,以及登录的时候发送的post请求是什么形式,这个网站的post还是相当简单的只有username和password两项。

    因此如下的代码就可以实现登录:

    postDict = {
                "username":self.username,
                "password":self.password
            }
    postData = urllib.urlencode(postDict).encode()
    response = opener.open(self.logUrl,postData)```
    
    下面是添加headers和处理Cookie的代码:
    

    headers = {
    "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36",
    "Referer":"https://mbsdisclosure.fanniemae.com/PoolTalk2/index.html",
    "Connection":"keep-alive",
    "Accept-Encoding":"gzip, deflate",
    "Accept-Language":"zh-CN,zh;q=0.8",
    "Accept":"application/json, text/javascript, /",
    "X-Requested-With":"XMLHttpRequest"
    }
    cookie = cookielib.CookieJar()
    handler = urllib2.HTTPCookieProcessor(cookie)
    opener = urllib2.build_opener(handler)
    header = []
    for key,value in headers.items():
    elem = (key,value)
    header.append(elem)
    opener.addheaders = header```

    相关文章

      网友评论

          本文标题:使用fiddler和WireShark进行网络抓包

          本文链接:https://www.haomeiwen.com/subject/zhltdttx.html