工具:charles, firebug, wireshark, burpsuite

fiddler

https://www.telerik.com/download/fiddler

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# 配置Fiddler Options (配置完后记得要重启Fiddler)
Capture HTTPS CONNECTS # 截获HTTPS
Allow remote computers to connect # 是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来,移动端
# 过滤
Filters tab
# 各种解码与加解密
decode TextWizard
# 重发请求
composer
# 设置断点修改请求request
1. 用浏览器打开登录界面 
2. 打开Fiddler, 在命令行中输入bpu URL(rules-auto breakpoint-before breakpoint)https://xueqiu.com/snowman/login
3. 输入错误的用户名和密码点击登录
4. Fiddler 能中断这次会话,选择被中断的会话,点击Inspectors tab下的WebForms tab 修改用户名密码,然后点击Run to Completion 如下图所示。
5. 结果是正确地登录了
# 设置断点修改Response
第一种:
打开Fiddler 点击Rules-> Automatic Breakpoint  ->After Response  (这种方法会中断所有的会话)
消除:点击Rules-> Automatic Breakpoint  ->Disabled
第二种:
在命令行中输入命令:  bpafter www.xueqiu.com   (这种方法只会中断www.xueqiu.com)
消除:在命令行中输入命令 bpafter,
# AutoResponder tab(修改会话拖到AutoResponder tab下)
1. 打开首页,把的图片保存到本地,并且对图片做些修改。
2. 打开Fiddler 找到一个图片的会话拖到AutoResponer Tab下
3. 选择Enable automatic reaponses 和Unmatched requests passthrough
4. 在下面的Rule Editor 下面选择 Find a file... 选择本地保存的图片.  最后点击Save 保存下。
5. 再首页清除缓存, 你会看到首页的图片用的是本地的
# 弱网
Rules → Performances → Simulate Modem Speeds
# 证书
浏览器打开代理地址 FiddlerRoot certificate

操作可参考:https://mp.weixin.qq.com/s?__biz=MzA5NzgzODI5NA==&mid=2454040445&idx=1&sn=d89068f8364fb20a42aed499255138cb&chksm=872bbac4b05c33d226c4c76fd9e803c44c507e77cf4e60816ae40178f172fd5de0a96d73445c&mpshare=1&scene=1&srcid=&sharer_sharetime=1582602447184&sharer_shareid=9f552d705e74f07c1d8c9ac2eea73bc9&key=0a2ec05589e15d483f615813291876556a0940749b209e06b13f3ba0ecf1cd6b1497d7399626902e039223df48ac2ca1bcb4460155711cd07890482f71ba7b512907ffc5219d5ab081010d771814dd9c&ascene=1&uin=Mjg1MzY3NzIyMA%3D%3D&devicetype=Windows+10&version=62080079&lang=zh_CN&exportkey=ATpRN0jDHMGmvtTm0OANNLk%3D&pass_ticket=ZBoOawavfdCpscbTzY2mOurA9YuvdXXtCl52c5%2BABJ2uG1VA3pHleAw7QL9XVJsz

Charles

特性 :

代理,限速,重写请求和响应,⿊⽩名单,组建请求,重复请求

下载安装

下载:https://www.charlesproxy.com/download/

补丁:https://www.zzzmode.com/mytools/charles/

默认替换路径:

macOS:/Applications/Charles.app/Contents/Java/charles.jar
Windows: C:\Program Files\Charles\lib\charles.jar

抓取Http请求包:https://blog.csdn.net/abc6368765/article/details/81101976

抓取Https请求包:https://blog.csdn.net/abc6368765/article/details/81103002

question

1
2
3
1.Charles 打不开 HTTPS ,显示您的连接不是私密连接
将Charles的SSL Certificates添加到受信任根证书列表中,需要将证书添加到受信任根证书列表中
重启电脑
⽹络模型与常见协议

image-20200917000053060

http

target
url: protocol host port
request
request method:
get post put head
resource path
protocol version
header: host cookie user-agent
get query
post body:json xml form

get&post

http的method字段
post可以附加body
通⽤server nginx apache默认不记录post body数据

server -> set-cookie -> cookie -> request with cookie
server ->token -> set-cookie token / query -> request

1
2
3
4
5
6
7
8
9
10
# ⽹络嗅探
TcpDump + WireShark
# Proxy
fiddler 、AnyProxy 、mitmproxy、charles、burpsuite
# 分析⼯具与协议客户端⼯具:
curl 最常使⽤的http请求⼯具
postman 调试⼯具
Chrome DevTool
nc 接近于编程⽅式
burpsuite http操纵的⿊客级别⼯具
1
2
3
4
5
6
7
8
# ⽹络嗅探
TcpDump + WireShark
# Proxy
fiddler 、AnyProxy 、mitmproxy、charles、burpsuite
# 分析⼯具与协议客户端⼯具:
curl
postman
Chrome DevTool

tcpdump

1
tcpdump port 443 -v -w tcp.lg

移动端代理抓包

开启代理端口
设置⼿机代理:Android 6.0以上需要修改包属性https://developer.android.com/training/articles/securityconfig.html
安装证书
(从Android Nougat(7.0)开始,应⽤程序默认不会信任⽤户证书,开发⼈员可以通过配置应⽤程序AndroidManifest.xml⽂件的networkSecurityConfig属性来选择接受⽤户证书)

数据拦截修改

修改请求,修改响应,断点,重写

⾃定义代理解析特殊协议

流量转发
协议解包
协议封包
原理是tcp proxy或者http proxy
参考⼯具 em-proxy nc