前言

博客:http://2h0n9.com

分析

1、Charles抓包

一开始爬 美团外卖App 我是直接Charles上手就干的,但我抓了一天都没抓到有用的数据我就开始找资料,遗憾的是网上没有一篇关于 美团外卖App 抓包分析的文章,我是真的一篇都没看到(这里指的是移动app,不是网页)

不过好在在我查找资料的过程也并非无任何收获,我得知美团使用了一种叫 "移动长连接" 的技术导致我抓不到包;

接着我在网上找了关于该名词的解释以及mt发表的一篇文章:移动网络优化实践,用我所理解的话来说就是:打开APP的时候移动端和服务器建立起tcp连接后,这个连接就不断开了,后续的请求和接收都走该通道,这个tcp长连接一般都是会使用自定义的协议,而非http,所有普通的抓包软件都无法抓到这类请求(如有误请指正)

2、长连接分析

文章里有这么一段:“当TCP通道无法建立或者发生故障时,可以使用UDP面向无连接的特性提供另一条请求通道,或者绕过代理长连服务器之间向业务服务器发起HTTP公网请求”

也就是说,美团为了以防万一提供了降级方案,正是因为这个方案给了我们机会,既然tcp通道发生故障会切换到http请求,那么只要让这个条件成立就好了。这个可以通过屏蔽ip实现,随即有了一个新问题,怎么找到这个ip。

首先移动端长连接与服务器的通信肯定是TCP协议;然后由于是长连接,那么移动端肯定不会轻易的去断开这个连接,也就是不会发送fin包,有了这两个特征就可以开始筛选ip了。

3、ip筛选

>PC端

pc端的话用 wireshark 就完事了;

首先打开模拟器,然后打开wireshark,选择网卡就开始抓包了,然后打开美团外卖App,搜索一个关键字;

首先你搜索一个关键字肯定会得到很多结果,那么就可以断定返回的数据包应该比较大,而且根据上图还可以知道是加密过的,那么就很好找了,我这里找到了

接着就是屏蔽它了,Linux直接用iptables就行,我没linux但我可以提供命令:

iptable -A INPUT -s ***.**.***.181 -j DROP #屏蔽

iptable -D INPUT -s ***.**.***.181 -j DROP #解除屏蔽

这命令可以在安卓上直接生效,linux可能需要 service iptables save 来生效

Mac下没有iptables可以用 pfctl,首先写规则

sudo vim /etc/pf.conf

然后使其生效

sudo pfctl -evf /etc/pf.conf

接着就可以直接用 Charles 抓包了

>Android

接下来我要说的是 Android 上,我抓mt是为了写爬虫,我在电脑上抓到了请求的连接但那些参数加密我需要hook,所以不得不在手机上弄,所以我就需要在手机上屏蔽ip。我先说在手机上抓长连接ip,目前手机上能抓tcp的除了tcpdump以外好像就只有 httpcanary 了,主要是它能显示请求的协议;

找到ip后屏蔽即可,然后再次请求

其中有一条80多k的请求,而且这个host之前没见过,点进去看response就得知成功了

最后

就算你抓到了也没用,请求、POST参数一大堆,而且加密的有哪些还不太清楚,我试过直接照搬请求返回错误。。。所以你们慢慢分析或者等我下篇文章吧

wireshark 手机抓包_美团外卖抓包分析相关推荐

  1. wireshark怎么抓apk 包_图解如何抓取手机的数据封包「手机抓包技术详解」

    通常我们主要抓取手机等移动设备的三种数据封包:TCP.HTTP.HTTPS.本文我们主要通过图文详细讲解使用wireshark抓取手机的tcp数据包,使用Fiddler抓取手机的HTTP.HTTPS数 ...

  2. python抓取数据包_利用python-pypcap抓取带VLAN标签的数据包方法

    1.背景介绍 在采用通常的socket抓包方式下,操作系统会自动将收到包的VLAN信息剥离,导致上层应用收到的包不会含有VLAN标签信息.而libpcap虽然是基于socket实现抓包,但在收到数据包 ...

  3. 美团外卖uml流程图_美团外卖小哥手绘送餐流程图 追逐梦想要当产品经理

    原标题:美团外卖小哥手绘送餐流程图 追逐梦想要当产品经理 平日在网络上,外卖小哥深不见底的多边"技能"展示常常让大家拍手称赞.近日,有一位美团外卖小哥在现场徒手绘制外卖订餐流程图, ...

  4. python 抓数_使用python抓取并分析数据

    本篇文章是使用python抓取数据的第一篇,使用requests+BeautifulSoup的方法对页面进行抓取和数据提取.通过使用requests库对链家网二手房列表页进行抓取,通过Beautifu ...

  5. 红米3S解锁_解账号锁刷机包_(2016033-2016036-2016035)线刷包

    红米3S/3X解锁(2016033-2016036-2016035)解账号锁刷机包 百度云下载 链接:https://pan.baidu.com/s/1t9d8U5cpH1oS0NZD7yzVLQ  ...

  6. 打蚊子表情包_打蚊子表情包 - 打蚊子微信表情包 - 打蚊子QQ表情包 - 发表情 fabiaoqing.com...

    拍打蚊子GIF - 蚊子表情包_蚊子表情 夏天来了,打蚊子_蚊子_夏天表情 为什么蚊子只爱我 - 蚊子表情包_蚊子表情 采访蚊子 请问你为什么要咬我 - 蚊子表情包_蚊子表情 蚊子飞在屎上 - 打屎打 ...

  7. 英特奇android刷机,英特奇E88线刷刷机教程_英特奇E88线刷rom包_系统刷机包

    有关英特奇intki E88的刷机资料来分享一下了,说到刷机资料其实包括的挺多的,一般包括刷机包和root包以及相关的刷机教程了,今天在这里说的刷机包是线刷包了,一般线刷包是比较重要的一个资料,因为线 ...

  8. 蓝牙广播数据包_蓝牙BLE数据包格式汇总

    以蓝牙4.0为例说明: BLE包格式有:广播包.扫描包.初始化连接包.链路层控制包(LL层数据包).逻辑链路控制和自适应协议数据包(即L2CAP数据包)等: 其中广播包又分为:定向广播包和非定向广播包 ...

  9. ping网关丢包_网络/摄像机丢包的原因分析

    引文 不少人在使用网络和监控摄像系统的时候都有遇到过数据丢包的情况,数据丢包的原因是多种多样的,以下就为大家介绍一下网络数据丢包的原因及摄像机丢包的原因. 原因分析 摄像机丢包的原因1:路由错误 网络 ...

最新文章

  1. 【组队学习】10月份微信图文索引
  2. 数据预处理之独热编码(One-Hot Encoding)
  3. matlab表白_520新玩法!MATLAB大神教你画爱心
  4. [WinApi]邮槽通信C/S实例
  5. 10 Reasons Why Your Projects Should Use the Dojo
  6. CSS 外边距(margin)重叠及防止方法
  7. java 解析ppt动画_姜子牙口碑崩盘?我们为它做了这份炸裂的PPT!(领取源文件)...
  8. 【转】PHP的异常处理类Exception的使用及说明
  9. Python3的bytes/str之别
  10. linux下成功安装ffmpeg( 亲测有效 )
  11. Multi-thread--C++11中atomic的使用
  12. cmdb整体项目梳理(2)
  13. Redis zset(ziplist,skiplist)内部实现
  14. python2.7安装sqlite3模块
  15. java 两个list相等_java 怎么比较两个list是否相同
  16. 链表简介(一)——创建单向动态链表及输出单向链表内容
  17. vue分享卡住_【面经分享】华为测试工程师面经
  18. WebApp的自动测试工具: Jenkins
  19. 【Linux】Ubuntu18.04深度学习环境配置+Google+TIM+搜狗输入法等安装方法
  20. html 背景图片居中显示,CSS让背景图片居中显示的方法

热门文章

  1. 嵌入式分享合集117
  2. 关于网页版伪春菜橘花shell的加载方法研究
  3. Greendao多线程下载
  4. 问题 1431: [蓝桥杯][2014年第五届真题]分糖果 ——思维+模拟
  5. android p红米note2,红米Note2与魅族魅蓝note2详细对比 【图文介绍】
  6. μC/OS-III_与II的对比(邵贝贝)
  7. 正态分布均值μ的贝叶斯Bayes估计推导
  8. CC2540 内存结构分析
  9. 从tushare pro 获取上证指数的日线行情(上证指数:000001.SH)
  10. DeferShading + VSM + HDR + SSAO