本帖最后由 单身帝 于 2019-12-23 05:38 编辑
序言
写这篇帖子呢,主要是感叹又到了年底了连夜做项目赚点钱,一年估计就赚钱了七八天所以这一年基本上没赚什么钱,花了大笔的精力在学习钻研上,然后手贱是个撸迷。发这篇帖子算是对像我一样努力向上菜鸟的一次鼓励和支持吧。希望大家冷了有衣穿,饿了有饭吃,伤了有人陪,笑了有人乐,分了有人念,想了有人爱,努力路途上有同道共行,越来越多的共享精神被巨婴的伸手行为消失殆尽,忘自省。
正文
工具们
- 一款抓包工具(支持SSL抓包)
- 一款Hook框架(支持java层即可)
- 一款虚拟机(低配电脑用雷电哈)
- 一枚IDE
- 若干在线编码工具
- 肝
环境安装和设置(这个MD的插件标题标签有BUG啊)
模拟器安装
雷电海外版下载ldplayer.tw 版本今天最新就可
下载好直接NEXT安装,然后随手净化下模拟器系统的环境,删除不必要的app(日后减少杂项的xx包,省的又要过滤~我懒~)
备份好净化后的模拟器镜像包(净化后120M 真的好爽,估计没有ARM内核,不过现在好多APP都有x86内核,毕竟国产芯在国内发展了)
打开任务管理器 查看进程 打开adb.exe进程所在的目录(下文标注 目录1) 在此目录打开cmd 执行adb shell cat /proc/version 输出内核信息 记住内核的 位数
抓包环境安装
下载python3+ 安装(此处推荐电脑使用类Linux系统,各种方便 或者win10,它自带Linux虚拟机)
安装你的抓包软件
Hook环境安装
打开cmd 执行 python -m pip install --upgrade pip 升级下pip(这特么是个天坑,我懒~写了一个批处理方便一键部署所有环境,但是卡在包管理器版本上的错误我忽略了,钻坑钻了好久才知道是这个版本不合格)
安装 frida 执行 pip install frida
然后再执行 pip install frida-tools
注意输出的frida版本,然后去frida的开源仓库下载对应版本的frida-server 我这里是12.8.0 (这里是天坑,版本不匹配各种奇葩Bug)
我这里下载的是 frida-server-12.8.0-android-x86 解压到 目录1(因为adb在那嘛 我懒~)
在目录1 打开cmd 执行 adb push frida-server-12.8.0-android-x86 /data/local/tmp/frida-server
然后 adb shell chmod 777 /data/local/tmp/frida-server 给执行权限
然后 adb shell "/data/local/tmp/frida-server" 可以加&后台运行 没有&就是前台运行,或许用雷电默认内核会有警告提示,直接忽视 不是Error一般我不理会(任性)
最后转发下端口 adb forward tcp:27042 tcp:27042 和 adb forward tcp:27043 tcp:27043 验证下是否成功安装frida frida-ps -R 打印出进程列表就代表成功咯
可以放肆浪了~
正式抓包
模拟器安装App 发现不论是Charles 还是 Fiddler 或者 BurpSuite 什么的只要一开抓包就直接提示网络出小差、网络断开、服务器无响应之类的,很明显嘛证书被锁定了,你即使替换成了中间人的证书也是徒劳无功
此时我们需要在相对底层Hook掉SSL证书校验函数(或者读取/注册函数)或者你也可以Hook文件读取函数(把证书替换掉嘛)
我就直接给出大佬针对几个http请求类做的Hooker
[ DISCUZ_CODE_0 ]
保存为hook.js 执行 frida -U 包名 --no-pause -l hooks.js
然后请进行日常抓包流程,你就发现一切都是美好的
|