建设银官方网站,发布项目的平台,新手怎么做网站优化,免费的高清视频素材网站文章目录 前言Burpsuite抓包问题LPosedJustTrustMe 绕过 SSL Pining小程序的反编译APP脱壳#xff0c;反射大师、frida反射大师Frida 总结 前言
在进行渗透工作的时候#xff0c;遇到过的App、小程序也不少了#xff0c;有简单的#xff0c;也有加固的比较不错的#xff… 文章目录 前言Burpsuite抓包问题LPosedJustTrustMe 绕过 SSL Pining小程序的反编译APP脱壳反射大师、frida反射大师Frida 总结 前言
在进行渗透工作的时候遇到过的App、小程序也不少了有简单的也有加固的比较不错的但是自己也挖到了不少的高危不乏有越权的短信验证码可绕过、可爆破的存储泄露、敏感信息泄露等等各种但是在这些渗透过程中都需要用到强有力的工具。因此以下总结一下渗透App、小程序等移动端的东西的时候常用到的工具以免下次换电脑、换环境等又要从各种资料中寻找进行配置。
Burpsuite抓包问题
由于如今的应用已经逐渐对安卓应用的版本都在提高有部分应用已经只兼容来安卓9了不兼容安卓7因此刚开始的时候可能会发现模拟器能抓到浏览器的包但是抓不到App包的情况。这是因为安卓7以上默认已经不信任用户安装的证书了因此需要使用adb将证书导入系统进行安装以夜神模拟器安卓9为例。
首先从burpsuite中生成证书保存。 导出的证书是DER格式的需要转成PEM格式的证书可以使用kali自带的openssl直接进行转换并计算证书的MD5的值并将证书命名为MD5的值。
openssl x509 -inform DER -in cacert.der -out cacert.pem
openssl x509 -inform PEM -subject_hash_old -in cacert.pem 找到夜神模拟器的bin目录使用adb.exe输入以下命令上传证书
adb.exe devices 查看运行中的设备
adb.exe push 9a5ba575.0 /sdcard/ 将证书推入到sdcard中
adb.exe shell 进入shell交互模式
mount -o remount,rw /system 重新挂载写入system
cp /sdcard/9a5ba575.0 /system/etc/security/cacerts/ 将证书复制到系统安全目录
chmod 644 /system/etc/security/cacerts/9a5ba575.0 赋予证书读写权限
reboot 重启 burpsuite开启监听并设置代理服务器这里本机的ip地址为192.168.1.101。 抓包成功 LPosedJustTrustMe 绕过 SSL Pining
以上方式是最简单进行抓包的方式假如对方服务器启用了SSL Pinning机制那么可能依旧会无法捕捉到包因为当我们使用抓包工具抓包时抓包工具在拦截了服务端返回的内容并重新发给客户端的时候使用证书不是服务器端原来的证书而是抓包工具自己的抓包工具原来的证书并不是APP开发者设定的服务端原本的证书于是就构成了中间人攻击触发SSL Pinning机制导致链接中断所以我们无法直接抓到包这里使用低于安卓7版本的手机可能会没问题但是App不一定兼容因此要其它解决办法可以使用Lposed即以Xposed为基础的框架进行绕过以下是详细步骤。
安装Magisk这里我安装的是Magisk-delta 25.2版本下载地址如下
Magisk
下载好后直接将Magisk拖入夜神模拟器中点击本地安装在线安装需要翻墙才可以。 点击安装安装完成后会ti’s提示需要重启这里先不进行重启先将夜神模拟器设置的root权限关闭关闭重启即可将Magisk安装完成。 安装完成后打开Magisk点击右上角的设置允许Zygisk运行即可。 安装Lposed框架我下载的是zygisk版本的下载地址如下
Lposed
直接将下载好的zip压缩包拖入到夜神模拟器中然后打开Magisk选择模块本地安装然后选中Lposed的安装包加载完成后重启。 重启之后进入/data/adb/lspd 目录出现manager.apk包点中选择安装。 如果出现了解析包出现错误哪就直接从Lposed框架中解压出manager.apk,直接拖入模拟器中即可成功。 能够打开即安装成功。 下载JustTrustMe模块拖入到夜神模拟器中在Lposed的模块中启用即可成功绕过SSL Pining进行抓包。
在这里插入图片描述
小程序的反编译
在对小程序进行渗透时一般除了测试小程序的功能点之外最好的方式就是将小程序反编译查看一下源码特别是当小程序每一个数据包都会将小程序提交给后端的数据进行签名一并提交的时候就不得不反编译小程序查找签名的算法来进行伪造数据相当于前端的js进行了加密一样。
首先当你运行了小程序并且使用了各小程序的功能的时候小程序的打包文件其实就存储在了你的手机存储当中文件后缀为wxapkg只不过存在主包和分包的区别比如我的夜神模拟器的存储目录就是/data/data/com.tencent.mm/MicroMsg/e594472a09487567540796a08a51a24f/appbrand/pkg中中间很长那段e594472a09487567540796a08a51a24f可能为有所变化。 将这些生成的打包全部删除重新访问一个小程序把它的所有页面都走一遍就会发现有新出现的几个wxapkg包这几个包就是小程序的包进行解包即可解包使用wxappUnpacker进行解包需要node.js环境。
npm install
npm install esprima
npm install css-tree
npm install cssbeautify
npm install vm2
npm install uglify-es
npm install js-beautify
首先使用UnpackMiniApp(小程序包解密).exe查看一下小程序是否被加密。 然后使用wuWxapkg.js对小程序的主包进行解包如果解包出现错误可能这个包不是主包导致的当然经常会报错但是也会有小程序的代码出来可以自己判断是否找到自己想要的。 虽然这里我也报错但是反编译出来的小程序还算是完整的。 APP脱壳反射大师、frida
App也一样App如果逆向出来java代码就不说了这个可以上网搜也可以看我之前的文章重点是现在市面上的APP都会进行混淆和加壳操作一般都是加上诸如腾讯安全、阿里安全等壳会把很多代码信息都给隐藏掉影响人的正常查看因此需要把这个壳给脱掉观看到没加壳之前的App正常的Java代码。
这里关于App的扫描和反编译也有一个不错的平台可以直接使用自己也经常用来进行反编译至于它的漏洞扫描其实没有太大的作用但是它会把Activity、SERVICES、provides以及代码等各种都列出来并且会对一下permission的配置、XML的配置等进行检查列出危险程度也比较不错。
地址如下
APP扫描 反射大师
首先可以使用检测壳的工具检测是否加壳了诸如AppMessage等等工具。 下面提供两种方式进行直接脱壳首先是反射大师反射大师在安卓9已经不支持了安卓7安装XPosed框架以及反射大师后依旧可以使用这里以夜神模拟器安卓7版本进行演示。
首先直接在游戏中心中搜索Xposed即可进行安装下载安装后进行重启即可成功点击启动即可Xposed的作者已经不进去维护了因为不会再进行更新。 然后去网上找反射大师的apk文件到处都有至于官网在哪自己也不知道注意不要有后门即可拖入APK中打开反射大师即会提示未激活模块进入Xposed进行激活即可。 随后打开反射大师选中应用选择打开会有五角星把每个页面都跑一遍会有很多代码的acivity都出来选择进行保存即可。 点击五角星最上方可以选择对应的activity启动器点击当前Activity写出Dex再使用正常的反编译工具反编译成jar包后使用jd-gui打开即可。 Frida
反射大师不支持安卓9了意味着假如应用不兼容安卓7就无法使用了但是frida是个不错的解决方案。
首先需要下载frida-server以及frida-dexdump工具。
frida-dexdump可以直接使用python进行下载或者去github上下载
pip3 install frida-dexdump
pip install frida-tools
pip install frida
随后查看安装的frida版本我这里是16.1.4然后再查看对应安卓模拟器的处理器版本进而去github下载对应的安卓服务器 frida-server 再利用adbshell将下载的frida拖入到夜神模拟器中没报错即可运行成功。
adb.exe push frida-portal-16.1.4-android-x86_64.xz /data/local/tmp
adb.exe shell
cd /data/local/tmp
chmod 755 frida-portal-16.1.4-android-x86_64.xz
./frida-portal-16.1.4-android-x86_64.xz 随后在Windows中运行frida-hexdump命令即可查看到安卓模拟器正在运行的程序。 可以通过以下命令直接反编译出转储正在运行的应用程序或通过命令指定某个包。
frida-dexdump -FU
frida-dexdump -U -f com.app.pkgname 总结
当然了关于移动端的东西肯定不止这么点以后遇到了再学习到了再补上吧毕竟版本更替引起的话题是一个永恒不变的话题