-
Notifications
You must be signed in to change notification settings - Fork 52
环境搭建
Lost-MSth edited this page Sep 12, 2020
·
6 revisions
本服务端只在Windows 10平台上进行过测试,尚不清楚能否在Linux以及macOS上运行
Python 3的安装及环境变量配置在此略去
程序在Python 3.7下成功运行
使用Python自带的pip进行安装即可
pip install flask
仅中文: 因为网络问题,无法从国外下载模块,则可以使用国内镜像源,比如使用清华镜像
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ flask
为了让网址重定向,有多种办法,包括DNS劫持,中间人攻击之类的,这里给出一种可行的方案,利用Charles进行操作
我使用的是Charles 4.5.6,需要破解请自行寻找
下面需要进行的操作和在移动端抓包所需操作几乎一致
- 打开Charles后,在上面Proxy中找到Proxy Settings,设置端口(默认为8888),选中Enable transparent HTTP proxying
- 打开CMD,输入
ipconfig
查看本机IP地址 - 确保手机可以和电脑使用同一个WiFi,或者手机使用电脑的共享WiFi。在手机WLAN界面修改你所连接的WiFi,在高级选项中选择手动代理,服务器主机名写入刚才查到的电脑IP地址,服务器端口写入8888(如果你刚刚没改的话),保存以重新连接WiFi
- 在Charles上面Help-SSL Proxying中点击Install Charles Root Certificate,安装证书,在证书导入向导中选择将所有的证书都放入下列储存(P),选择受信任的根证书颁发机构
- 在Help-SSL Proxying中点击Install Charles Root Certificate on a Mobile Device or Remote Browser,按照提示在手机浏览器上访问chls.pro/ssl,下载安装并信任证书
- 在Charles上面Proxy中找到SSL Proxy Settings,勾选Enable SSL Proxying,在Include中添加,Host和Port都填入*,然后保存
至此手机抓包部分设定完毕,可以参考:CSDN-利用charles进行数据抓包和手机APP数据测试(中文)
这里有一个问题,安卓7以上,只有系统证书才会被信任,SSL抓包将不再成功,这种情况有一些解决办法:
- 降低Arcaea的targetSdkVersion到22,这需要APK编辑器,也是最推荐的办法
- 使用Xpoesd的JustTrustMe模块来信任所有的证书,这需要root权限
- 换手机,保证安卓版本低于7
- 使用模拟器、虚拟空间,保证安卓版本低于7
- 把Charles证书,放入到安卓系统信任证书里面去,这需要root权限
可以参考:简书-Android 系统各个版本上https的抓包(中文)
- 在Charles上面Tools中找到Map Remote Settings,选中Enable Map Remote,在下面添加,Map From里面,第一行选择https,第二行填入arcapi.lowiro.com,第三行填入443;*Map To**里面,第一行选择http,第二行填入本机IP地址,第三行随便,但不可使端口冲突,建议填入80或者81或者8080,其余设置不管,保存即可
至此,网址重定向部分设定完毕