本篇介绍使用linux 虚拟机中mitmproxy获取夜神模拟器中的数据,就是获取的是app端的数据包,如果想获取PC网页端的数据,可以参考另一篇博客:
mitmproxy在windows和liunx平台上的安装,实现浏览器抓包的设置,这篇博客中包含了windows和linux中mitmproxy的具体安装过程。
windows7 64位 操作系统
VM ware Workstation
centos7
1.确定虚拟机中的网络配置是使用的桥接模式。
桥接模式的配置过程:
1) 在VMware Workstation中的 虚拟机选项 中选择设置那一项。
2)进入 设置项 界面选择 网络适配器选项。
3)进入虚拟机,查询需要的参数值,做备用:
1.查看ip:
ifconfig -a
2查看MAC地址:
ip addr
3.查看windows宿主机中的ip:
ipconfig /all
4.查看虚拟机网卡的UUID:
nmcli con | sed -n ‘1,2p’
或者:nmcli connection
如果想为网卡ens33重新生成一个UUID,命令如下:
uuidgen ens33
4)配置文件:
1.编辑/etc/sysconfig/network-script/ifcfg-ens33文件。
使用命令:
vim /etc/sysconfig/network-script/ifcfg-ens33
ifcfg-ens33文件的内容如下:
TYPE=Ethernen #网络类型 以太网
BOOTPROTO=static #设置成static 引导协议:自动获取、static静态、none不指定
DEFROUTE=yes #启用默认路由
IPV4_FAILURE_FATAL=no #不启用IPV4错误检测功能
IPV6INIT=yes # 启用IPV6协议
IPV6_AUTOCONF=yes # 自动配置IPV6地址
IPV6_DEFROUTE=yes # 启用IPV6默认路由
IPV6_FAILURE_FATAL=no # 不启用IPV6错误检测功能
NAME=ens33 # 网卡设备的别名
MAC=00:0c:29:55:c7:2c #查询自己虚拟机上的MAC地址 使用ip addr 命令查询
UUID=b20888fc-cf43-4b41-8f8f-580a3d5a87fb #网卡设备的UUID,唯一标识。 如果不知道,直接生成一个使用命令可以查看或者生成 查看网卡UUID: nmcli con show nmcli con | sed -n '1,2p' 查看网卡ens33的信息:nmcli device show ens33 为网卡ens33新生成一个网卡UUID: uuidgen ens33
DEVICE=ens33 #网卡的设备名称
ONBOOT=yes #开机自动激活网卡,设置成yes
PEERDNS=yes
PEERROUTES=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPADDR=192.168.5.119 #虚拟机的网卡IP地址,自己定义设置,注意必须和windows宿主机的ip处于同一个网段之下
NETMASK=255.255.255.0 #子网掩码:和宿主机设置成一样的。
GETWAY=192.168.5.1 #默认网关:和宿主机设置成一样的。
DNS1=192.168.5.1 #DNS域名解析服务器的ip地址:和宿主机设置成一样的。
2.编辑/etc/sysconfig/network ,添加网关。编辑命令为:
vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=xxxx #名字随便了
GATEWAY=192.168.xx.xx #默认网关和宿主机相同
3.在 etc/resolv.conf 文件添加DNS,编辑命令为:
vim /etc/resolv.conf
# Generated by NetworkManager
search lan
nameserver 192.168.xx.xxx #与本地宿主机的DNS值一样
5)查看网卡状态,激活ens33网卡,重启网卡。
1.查看网卡状态:
nmcli device status
2.激活网卡ens33:
nmcli d c ens33
3.重启网卡:
service network restart 或者 systemctl restart network
4.查看ens3网卡UUID:
查看网卡ens3的uuid: nmcli con show 或者 nmcli con | sed -n ‘1,2p’
查看网卡ens3配置文件中的uuid: cat /etc/sysconfig/network-scripts/ifcfg-ens33
6)测试网络连接是否正常。
1.访问虚拟机本机网卡ens33ip:
ping 虚拟机的ip
2.访问公共网络:
ping www.baidun.com
3.windows宿主机访问虚拟机网卡ens33ip:
ping 虚拟机网卡ens33ip
2.在夜神模拟器中配置代理服务ip和端口
1)配置夜神模拟器的网络桥接模式。
这里上面完成需要重启一下夜神模拟器。
2)配置网络代理服务器。
3)虚拟机中启动mitmproxy。
4)在夜神模拟器浏览器当中输入https://www.baidu.com回车。
5)当然,第一次配置连接需要下载安装证书。
夜神模拟器浏览器地址栏中输入:mitm.it 回车
如果安装不了,或者报错说不能读取数据。则按照下面的图示来安装:
这次再次在夜神模拟器浏览器当中输入https://www.baidu.com后则可以顺利连接并获取数据包。
到此,夜神模拟器连接mitmproxy成功。
1 )mitmproxy界面的使用。
1.上下键可以使数据宝前面的箭头指向正定的位置。
3.在某个具体的数据包的详情界面敲 q 键,会返回到数据列表界面,再次敲 q 键,会询问是否退出mitmproxy,如果要退出,则输入 y 键,否则输入 n 键 。
4.在某个具体的数据包的详情界面中进行request列,response列,detail列进行切换的时候,使用 tab 键。
5.删除数据列表中的所有数据包,使用 z 键。
6.过滤一些数据包的命令,键入 f ,进入过滤命令个窗口:
: set view_filter=~d baidu.com 回车,提取出域名为baidu.com数据包。
: set view_filter=!(~c 200)回车,提取出状态码不是200的数据包。
: set view_filter=~m get & ~u baidu.com 提取出url为百度且为get请求的数据包。
1 )mitmproxy断点调试。
1.请求前的断点设置。
1.键入 z 删除所有的数据包 。
2.键入 i 进入设置断点的命令窗口 。输入 : set intercept=~d baidu.com & ~m get 回车
3.夜神模拟器的浏览器当中输入:https://www.baidu.com回车
4.拦截到请求数据。
9.接着输入 e 进入修改界面,修改url。
10.命令输入修改后的url : flow.set @focus url https://xw.qq.com 回车
12.接着输入 a 键,观察夜神模拟器浏览器中的内容。
2.响应后的断点设置。
1.清空数据包列表,输入 z 键。
2.夜神模拟器的浏览器当中输入 http://www.baidu.com 。
3.还处于拦截模式当中,输入 回车 进入数据包详情页面。
4.输入 tab 键切换到response列,按 e 键 选择reponse body,回车。
5.自己任意输入响应的内容,按 esc 键,接着按 :键,输入 wq! 进行保存。
6.进入数据包详情界面,按 q 键退回到数据包列表界面,按 a键。
7.观察夜神模拟器浏览器当中最后响应的内容位子计修改的内容,说明断点调试成功。
2)
green 绿色
moss green 苔绿色
emerald green 鲜绿色
olive green 橄榄绿
blue 蓝色
turquoise blue 土耳其玉色
cobalt blue 钴蓝色, 艳蓝色
navy blue 藏青色, 深蓝色, 天蓝色
aquamarine blue 蓝绿色
red 红色
scarlet 绯红, 猩红
mauve 紫红
purple, violet 紫色
wine red 葡萄酒红
lavender 淡紫色
lilac 浅紫色
antique violet 古紫色
pansy 紫罗兰色
white 白色
off-white 灰白色
ivory 象牙色 象牙色
snowy white 雪白色
oyster white 乳白色
gray 灰色