分享背景
最近在开发一款小程序,老是有人说有一个小功能的数据不正确,但是自己测试几个账号都是正确的,无法判断是前端的问题还是后端的问题,为了像开发web应用一样调试,便找到了这个款抓包神器。其实还是第一次,感觉是蛮神奇的一个东西。
Charles主要的功能是什么
说的简单通俗一点,就是通过将我们的调试设备与该软件建立在同一个网络下,该软件能记录下来我们所有的请求和返回信息。如下示例图。
工具原理
在未使用该工具时:
在使用该工具时:
可以看得出,使用了该工具之后,所有的网络请求都得通过该工具,因此我们能够像调试web应用一样调试小程序开发。
如何使用
关于该工具的使用,网络上面也已经有很多类似的文章了,就不再重新造轮子了。https://www.jianshu.com/p/12ab7f45818a, 这篇文章就是自己当时使用这工具看到的。
问题解决
1.不过在使用中遇到两个坑,就是手机在安装证书的时候,发现输入网址之后,不提示我安装证书,这时候需要用iOS自带的Safari浏览器打开。打开之后会提示安装,接下来就需要在系统设置->通用->描述文件中去点击房产下载的证书进行安装。
2.https不能抓取内容,显示unknown。这需要在系统设置->通用->关于本机->证书信任设置->开启刚才安装的证书信任。
Flidder
Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一 。它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是web调试的利器。学习链接如下:http://blog.csdn.net/ohmygirl/article/details/17846199 http://blog.csdn.net/ohmygirl/article/details/17849983 http://blog.csdn.net/ohmygirl/article/details/17855031
Hping
Hping是最受欢迎和免费的抓包工具之一。它允许你修改和发送自定义的ICMP,UDP,TCP和原始IP数据包。此工具由网络管理员用于防火墙和网络的安全审计和测试。
HPing可用于各种平台,包括Windows,MacOs X,Linux,FreeBSD,NetBSD,OpenBSD和Solaris。下载Hping: http://www.hping.org
Scapy
Scapy是另一种不错的交互式数据包处理工具。这个工具是用Python编写的。它可以解码或伪造大量协议的数据包。Scapy是一个值得尝试的工具。您可以执行各种任务,包括扫描,跟踪,探测,单元测试,网络发现。下载Scapy: http://www.secdev.org/projects/scapy/
Libcrafter
Libcrafter非常类似于Scapy。这个工具是用C ++编写的,使得更容易创建和解码网络数据包。它可以创建和解码大多数一般协议的数据包,捕获数据包和匹配请求或回复。这个工具可以多线程执行各种任务。下载Libcrafer: https://code.google.com/p/libcrafter/
Yersinia
Yersinia是一个强大的网络渗透测试工具,能够对各种网络协议进行渗透测试。如果你正在寻找抓包工具,你可以试试这个工具。下载yersinia: http://www.yersinia.net/
packETH
packETH是另一个数据包处理工具。它是一个Linux GUI的以太网工具。它允许你快速创建和发送数据包序列。与此列表中的其他工具一样,它支持各种协议来创建和发送数据包。你还可以设置数据包数量和数据包之间的延迟,还可以在此工具中修改各种数据包内容。
下载packETH: http://packeth.sourceforge.net/
Colasoft Packet Builder
Colasoft Packet Builder也是一个用于创建和编辑网络数据包的免费工具。如果你是网络管理员,你可以使用此工具来测试你的网络。它适用于所有可用版本的Windows操作系统。下载 Colasoft Packet Builder:http://www.colasoft.com/download/products/downloadpacketbuilder.php
Libtins
Libtins也是一个很好的工具,用于制作,发送,嗅探和解析网络数据包。这个工具是用C++编写的。C++开发人员可以扩展此工具的功能,使其更强大,更有效地执行其任务。
下载Libtins: http://libtins.github.io/
Netcat
Netcat也是一个流行的工具,可以在TCP或UDP网络中读取和写入数据。它可以创建几乎所有种类的网络连接与端口绑定。这个工具最初被称为Hobbit,并于1995年发布。