一、准备工具:

系统:XP
浏览器:IE8
抓包工具:HttpWatch(它可以查看url请求的数据包)

二、抓包思路:
浏览器上的任何获取数据的方式都符合http协议的请求,只要发送符合要求的数据就可以模拟任何操作,所以抓包重点就要找出服务器需要的数据,例如:模拟登录的话,就是找出那个是用户字段,密码字段,验证码字段,获取有需要的Cookie字段等信息,话不多说,下面演示一个列子把。
 
三、实践示列:
这次的抓包演示是模拟微信公众平台登录操作
 
(1)HttpWatch的基本使用
傻瓜式安装完HttpWatch以后,就打开浏览器-工具启动该软件:
 
(2)抓取登录操作请求包信息,确认需要发送的数据
以下是执行了登录操作,然后我们来查看下登录操作都访问了那些url地址,和这些url地址的数据:
1:这个就不用多说了,大家都是明白人,这个就是登录第一步访问的url地址
2:刚才忘了说,这个列表包括了请求和返回的全部数据包
3:post请求,以及访问该网站的路径地址,
4:这个微信网站用来防止外链登录的,一开始试登录的时候忘了加这个,然后总是奇怪登录不上,然后把head字段一个个试才知道是需要这个字段;
5:这个也必须得写上,因为有点网站禁止了一些随意的抓包,所以必须得模拟你所在的运行环境。不让服务器发送你是抓包;
6:这个是post的数据列表;
7:这个就是服务器那边需要在本地设置的cookie值,这个得缓存起来,然后在后面的操作发送给服务器,因为服务器有时会用到某些值,如果没有的话就不好办了, 你懂的;
8:这个就是登录操作返回过来的结果,具体的数据就要看自己分析了,这里的数据是一个json字符串,
ret:不清楚,
ErrMsg:跳转的url地址,
showVerifyCode:看字面意思吧,是否需要验证码
ErrCode:登录结果状态
 
关于登录结果状态,我再登录页面下的js相关文件看到了有一下内容,看了这个就应该很明白了:
 
(3)go on,接受到登录的结果以后,我们再看下它又跳到哪里去 了。
我们看到它跳转的url地址,恰好是登录返回过来的结果ErrMsg字段的值,所以结果就很清楚了,这个页面就是微信的主页。
 
简单的模拟微信登录抓包就到这里了,大家还可以自己尝试下获取好友列表,以及发送消息给好友的功能哦;

用简单的http抓包来实现微信公众网页如何模拟登录的更多相关文章

  1. 简单谈谈网络抓包,特别是thrift 接口

    按照惯例先谈谈最近情况,最近不是刚好跨年吗?看到很多人都在写年度总结,所以我也在写年度总结文章(其实之前我基本没有写过的,今年有点感触,也想记录一下),结果发现写起来有点多,之前还想着元旦前发出来,结 ...

  2. Wireshark简单协议的抓包分析

    一.实验目的 HTTP.TCP.UDP.ICMP.ARP.IP.FTP.TELNET查询分析 基本掌握查询命令的使用方法 二.实验环境 硬件环境:一台Windows7系统,一台XP系统 软件环境:VM ...

  3. Charles手机抓包设置&无法打开火狐网页设置

    1. Charles抓取手机上的网络包,需要安装证书(Charles的和手机的) 操作方法: https://blog.csdn.net/lea__dongyang/article/details/7 ...

  4. 使用IE11抓包,防止在网页跳转时抓包数据被清除的方法

    引:最近在研究使用python实现模拟登陆各大网站,在使用IE11进行抓包分析网站登陆的逻辑结构的时候,发现每次在抓包的时候,当网页跳转的时候,抓包数据会被清除,让我很是郁闷,最终在查阅相关资料以及自 ...

  5. [工具]Mac平台开发几个网络抓包工具(sniffer)

    Cocoa Packet Analyzer http://www.tastycocoabytes.com/cpa/ Cocoa Packet Analyzer is a native Mac OS X ...

  6. Python+Requests接口测试教程(1):Fiddler抓包工具

    本书涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容.刚买须知:本书是针对零基础入门接口测 ...

  7. java自动化测试-http请求结合抓包工具实际应用

    继上文我编写了java的get请求与post请求之后,我现在开始写一下实际操作 很多人有疑问,接口测试的代码是哪里来的,怎么来的呢?看得见吗?我来做一个简单的演示 我们这里简单介绍一下抓包工具,对于一 ...

  8. linux下抓包学习--tcpdump的使用

    一.为什么需要学这个 很多时候,开发环境上不会出现问题.但在测试或者现场时,总是会有很多莫名其妙的问题. 这时候,能在出问题的环境上,开启抓包,然后再去重现问题的话,这时候,就可以拿到第一手的资料了. ...

  9. win10笔记本用Fiddler对手机App抓包

    移动客户端项目有时需要针对手机app进行抓包,这时一般有两种办法:直接下个手机抓包工具的app,在手机上抓:pc机上装上抓包工具,pc和手机连接同一个无线,在pc机上抓.第一种比较简单,但抓包工具自然 ...

随机推荐

  1. js框架——angular.js(2)

    1. 模块的利用扩充 模块的名称也可以当做变量使用,例如: <body ng-app> <label><input type="checkbox" n ...

  2. sql 按时间二段排序

    业务需用为数据按倒序排序,当天数据排在以往日期前面,但当天数据需按小时进行升序排列 select *from( select vcTitle,dtBeginDate,case when dtBegin ...

  3. android经典开源代码集合

    一.依赖注入DI通过依赖注入减少View.服务.资源简化初始化,事件绑定等重复繁琐工作1. AndroidAnnotations(Code Diet) android快速开发框架项目地址:https: ...

  4. linux下执行scrapy的爬虫定时任务

    刚开始执行scrapy crawl zentaos可以完成扫描 但是通过linux的crontab任务,只执行了连接mongodb的操作,并创建了索引 也就是说scrapy crawl zentaos ...

  5. maven 教程一 入门

    摘要: (1)maven是项目管理工具,类似makefile.主要的生命阶段有 validate:验证工程是否正确,所有需要的资源是否可用.  compile:编译项目的源代码.    test:使用 ...

  6. 【项目笔记】拿宽高前measure(widthMeasureSpec, heightMeasureSpec)的使用技巧

    我们知道获取宽高一般写法是: view.measure(0, 0); view.getMeasuredHeight(); 拿宽高前什么时候可以直接用measure(0, 0);而什么时候不能用meas ...

  7. UVA699 dfs and map

    和书上的方法不一样... 因为我不知道节点,所以就直接用map来存左右了. #include<bits/stdc++.h> using namespace std; map <int ...

  8. How to install / setup /upgrade PHP 5.5.x on Ubuntu 12.04 LTS

    原文:http://www.dev-metal.com/how-to-setup-latest-version-of-php-5-5-on-ubuntu-12-04-lts/ 最近遇到了要在ubunt ...

  9. QWidget QMainWindow QDialog 三个基类的区别

    Qt类是一个提供所需的像全局变量一样的大量不同的标识符的命名空间.通常情况下,你可以忽略这个类.QObject和一些其它类继承了它,所以在这个Qt命名空间中定义的所有标识符通常情况下都可以无限制的使用 ...

  10. iOS开发中控制器切换方式Modal

    简介 在iPhone开发中 Modal是一种常见的切换控制器的方式 默认是从屏幕底部往上弹出,直到完全盖住后面的内容为止 在iPad开发中 Modal的使用频率也是非常高的 对比iPhone开发,Mo ...