逆向篇一
2018-08-17 本文已影响2人
平安喜乐698
目录
1. 抓包
2. 安装itunes12.6.3
3. Charles+itunes12.6.3 下载AppStore中App的旧版本
4. 从越狱设备下载app
1. 抓包
Charles青花瓷软件 (一款拦截网络请求的工具)
下载地址(见以前文章)
、、、监听手机、、、
1、手机
设置 | 无线局域网(需和电脑在同一Wifi下) | HTTP代理 选择手动(填写电脑本地IP,端口如:8888)
2、Charles
更改端口(和手机保持一致)
Proxy | Proxy Settings | Port
、、、监听电脑、、、
Proxy | Proxy Settings | macOS 勾选 Enable macOS proxy
Allow
设置支持https(否则无法拦截https相关请求,会有个小锁标志):
Help | SSL Proxing
| Install Charles Root Certificate 钥匙串 | 证书 | Charles Proxy CA (x号,双击 | 信任)
| Install Charles Root Certificate on a mobile Device
Proxy | SSL Proxing Settings | 勾选Enable 添加*
手机浏览器输入:chls.pro/ssl 安装证书
选择Allow
查看本地IP(和手机保持一致)
Help | Local IP Address
或者 终端 | ifconfig
或者 系统偏好设置 | 网络 | Wifi
钥匙串中的证书不被信任时(有x号),双击证书|信任
2. 安装itunes12.6.3
1、可安装ipa(本地、AppStore)到手机
1、下载itunes12.6.3安装后。按住option并单击itunes->选择创建资料库。
2、编辑菜单->添加应用选项
3、选择应用|选择AppStore|搜索应用并下载
查看应用部分信息
使用压缩软件解压缩下载的ipa包 | 进入Payload文件夹 | 显示包内容(可以直白地看到,info.plist、直接放在项目下的图片---不是在Assets中、nib、其他资源文件、加密可执行文件)
搜索应用
资料库
ipa包所在位置
ipa包内容
Payload中文件内容
3. Charles+itunes12.6.3 下载AppStore中App的旧版本
1、获取应用ExternalIdentifier号(用于下载旧版本)
方式一(依上方方法,在ipa包内容的iTunesMetadata.plist的softwareVersionExternalIdentifiers字段下查看该应用的所有版本)
方式二(使用Charles+断点)
Charles | Proxy | 选择 macOS proxy
下载应用
在Charles中查找类似于https://p47-buy.itunes.apple.com/WebObjects/MZBuy.woa/wa/buyProduct的请求,打上断点。
在资料库中删除应用,重新下载。
进断点后,点击Execute执行,再进断点后,选择Session选项卡 | 展开https://p47...buyProduct | Contents | XML Text(看下图)
2、替换
在资料库中删除应用,重新下载。
进断点后
点击Edit Request | 修改appExrVrsId的值为上方查到的版本之一
然后一直Execute执行
查找ExternalIdentifier
替换ExternalIdentifier
查看最近的ExternalIdentifier和版本号
1、iTunes | 应用 | 复制下载链接 | 拿到id
2、https://api.unlimapps.com/v1/apple_apps/id放入此处/versions
4. 从越狱设备下载app
1、越狱手机查看Wifi详情获取本地IP
2、MAC终端 ssh root@192.168.0.11
3、越狱手机运行应用
4、手机终端ps aux,找到/var/mobile/Containers/Bundle/Application/开头的,复制位置(如果是中文,cd到该目录下,复制应用名)
5、MAC终端
跳转到指定目录后,scp -P 22 -r root@ 192.168.0.11:/var/mobile/Containers/Bundle/Application/08CC923E-2411-4BB6-9F15-1D03F26E18EE/?????????.app/ ./