[网鼎杯 2020 青龙组]bang 复现--frida-dexdump安卓脱壳工具的使用

news/2025/1/16 3:45:14/

一.前言

在NSSCTF练习安卓逆向,第一次遇到安卓脱壳题
大佬的题解只有一句话"frida-dexdump一把嗦"
听起来容易做起来难,还遇到了安卓虚拟机的玄学bug,折磨了我很久,好在最终使用真机成功dump并得到flag
题目来源:[网鼎杯 2020 青龙组]bang
如果直接用jadx打开会发现点击MainActivity没有反应

二.准备

1.安装AndroidStudio并将SDK目录添加至环境变量

这个操作主要是为了方便后续使用adb调试手机

2. 一台root的手机或者安卓虚拟机

建议用真机,虚拟机有可能会导致奇怪的bug
在这里插入图片描述

3. 安装firda-dexdump

安装frida工具
pip install frida
pip install frida-tools
pip install frida-dexdump

4. 下载firda-server并推送至手机运行

1. 查看手机架构

adb shell getprop ro.product.cpu.abi
在这里插入图片描述

2. 下载frida-server

项目地址:frida
根据手机或虚拟机架构下载对应安装包并解压
在这里插入图片描述

3. 推送frida-server至手机

adb push frida-server-16.0.19-android-arm64 /data/local/tmp

4. 运行frida-server

adb shell		//进入shell
su				//获取root权限
cd /data/local/tmp	//进入tmp目录
chmod 777 frida-server-16.0.19-android-arm64 //给予可执行权限
./frida-server-16.0.19-android-arm64 	//运行程序

注意这里运行之后并不会有回显,光标会卡在那
在这里插入图片描述

5. 使用frida-dexdump脱壳

使用frida-ps -Ua命令查看手机正在运行的程序以及PID和包名等信息

在这里插入图片描述

或者使用adb shell pm list package显示包名

在这里插入图片描述

脱壳命令

指定App的应用名称:frida-dexdump -U -n how_debug
指定App的应用进程ID:frida-dexdump -U -p 29575
指定App的应用包名:frida-dexdump -U -f com.example.how_debug

前两种方式需要提前运行程序,第三种不需要,frida-dexdump会自动运行程序,不过前提是知道包名(可以通过一些其他工具查看apk的包名)
frida-dexdump -U -f com.example.how_debug

在这里插入图片描述

然后运行该命令的文件夹便会输出脱壳后的文件

在这里插入图片描述

选中这些文件拖到jadx中打开

在这里插入图片描述

然后就可以找到MainActivity了

在这里插入图片描述

这题的逻辑也并不复杂,分别输入用户名:admin密码:pass71487
成功登录后会输出flag{borring_things}

请添加图片描述

三.参考文章

  1. Android Spider Frida-Dexdump 脱壳工具下载使用以及相关技术介绍
  2. adb shell 查看CPU架构
  3. 每天一个adb命令:pm 命令详解
  4. frida-dexdump 真机&模拟器 一键安装+执行

http://www.ppmy.cn/news/69157.html

相关文章

wss socket.io 长连接 连接后 服务器自动断开提示“io server disconnect”如何解决

如果你在使用WebSocket Secure (WSS) 进行socket.io长连接时,连接建立后服务器立即自动断开并提示 “io server disconnect”,可能有以下几种原因和解决方法: 证书问题:WSS需要使用有效的SSL证书来确保安全连接。确保你的服务器上…

【嵌入式烧录刷写文件】-1.3-删除/修改Motorola S-record(S19/SREC/mot/SX)文件中指定地址范围内的数据

案例背景(共6页精讲): 有如下一段S19文件,如何“自动”地完成地址范围0x9110-0x9113数据的删除或修改。 S0110000486578766965772056312E30352EA6 S123910058595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F70717273747576775B…

基于回归模型(贝叶斯岭回归、XGB、SVR等)销售额预测

博主在之前也写过较多的预测模型的文章,主要是基于LSTM,见下: 使用 Conv1D-LSTM 进行时间序列预测:预测多个未来时间步【优化】 使用 Conv1D-LSTM 进行时间序列预测:预测多个未来时间步 LSTM-理解 Part-1(R…

初识HTML的基础知识点!!!

初识HTML!!! 一、系统构架 1.B/S构架 (1)B/S构架(Browser / Server) 就是(浏览器/服务器的交互形式) Browser支持HTML、CSS、JavaScript (2)优缺点 优点…

Spring 初始导读

1.Spring初始 1. 为什么要学框架 学习框架相当于从"小作坊"到"工厂"的升级 , 小作坊什么都要做 , 工厂是组件式装配 , 特点就是高效. 2.框架的优点展示(SpringBoot Vs Servlet) 使用SpringBoot 项目演示框架相比 Servlet 所具备的以下优点: 无需配置 …

中断与freeRTOS任务进行同步

S32K144在做CAN通信时,通过FlexCAN中断接收CAN数据,并希望让freeRTOS 的CAN处理任务拿到CAN数据并进行数据处理。因此就需要找到能够满足中断与freeRTOS任务进行同步的方式方法。 遇到这个问题,第一时间想到的就是查找freeRTOS手册《FreeRTO…

非极大值抑制(non maximum suppression, NMS)介绍

在最近几年常见的物体检测算法(包括rcnn、sppnet、fast-rcnn、faster-rcnn等)中均使用了NMS,下面就从几个方面进行介绍: 为什么要NMS? 在进行目标检测时一般会采取窗口滑动的方式,在图像上生成很多的候选框…

【Wi-Fi】802.11/802.11b/802.11g/802.11n/802.11a/802.11ac/802.11ax/802.11be

WiFi发展历史 IEEE 802.11 Protocol Release Date Frequency Band Bandwidth Max Throughput 802.11-1997 1997 2.4GHz 22MHz 2Mbps 802.11b 1999 2.4GHz 22MHz 11Mbps 802.11a 1999 5GHz 20MHz 54Mbps 802.11g 2003 2.4GHz 20MHz 54Mbps 802.11n (W…