frida-unpack

基于Frida的脱壳工具

0x0 frida环境搭建

frida环境搭建,参考frida官网:frida。

0x2 原理说明

利用frida hook libart.so中的OpenMemory方法,拿到内存中dex的地址,计算出dex文件的大小,从内存中将dex导出。
ps:查看OpenMemory的导出名称,可以将手机中的libart.so通过adb pull命令导出到电脑,然后利用:
nm libart.so |grep OpenMemory命令来查看到出名。

0x3 脚本用法

  • 在手机上启动frida server端
  • 执行脱壳脚本

    1

    ./inject.sh 要脱壳的应用的包名 OpenMemory.js

  • 脱壳后的dex保存在/data/data/应用包名/目录下

0x4 脚本测试环境

此脚本在以下环境测试通过

  • android os: 7.1.2 32bit (64位可能要改OpenMemory的签名)
  • legu: libshella-2.8.so
  • 360: libjiagu.so

0x5 参考链接

  • frida

0x06 python脚本支持

python frida_unpack.py 应用包名

0x07 相关技巧

  • 利用c++filt命令还原C++ name managling之后的函数名

    1

    2

    3

    4

    c++filt _ZN3art7DexFile10OpenMemoryEPKhjRKNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEjPNS_6MemMapEPKNS_10OatDexFileEPS9_

    输出:

    art::DexFile::OpenMemory(unsigned char const*, unsigned int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, unsigned int, art::MemMap*, art::OatDexFile const*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*)

源码见github链接:https://github.com/dstmath/frida-unpack

https://bbs.pediy.com/thread-229604.htm

[原创]基于frida的脱壳工具相关推荐

  1. 3. Android逆向-基于Frida的工具Objection

    文章目录 Objection安装使用 安装 使用 Ubuntu 连接测试 Windows 问题 Objection安装使用 在开始熟悉Frida时,接触的示例是需要frida-server在一个roo ...

  2. 基于frida的几种安卓脱壳工具

    frida工具在Android脱壳的应用 在上篇文章中,提供了frida安装教程,本篇内容是利用frida对安卓应用进行脱壳,提供了几种方法. 学习笔记,非原创,下面的学习参考文章在每一种方法会单独列 ...

  3. objection - 基于frida的命令行hook工具食用手册

    0x1 介绍&安装Objection objection是基于frida的命令行hook工具, 可以让你不写代码, 敲几句命令就可以对java函数的高颗粒度hook, 还支持RPC调用 目前只 ...

  4. ART模式下基于Xposed Hook开发脱壳工具

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/78092365 Dalvik模式下的Android加固技术已经很成熟了,Dalvik ...

  5. 基于dalvik模式下的Xposed Hook开发的某加固脱壳工具

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/77966109 这段时间好好的学习了一下Android加固相关的知识和流程也大致把A ...

  6. 脱壳工具:frida-dexdump的使用详解

    一. frida-dexdump概述 frida-dexdump:是基于frida开发的脱壳工具,代码开源且操作简单.在内存中转存dex文件,能脱大部分的壳. github地址:https://git ...

  7. Android加密通信防抓包,[原创]基于Taintdroid思想的android ssl\tsl保密通信抓包研究(未成功,分享一下思路)...

    [旧帖] [原创]基于Taintdroid思想的android ssl\tsl保密通信抓包研究(未成功,分享一下思路) 0.00元 2014-5-12 22:07 1565 [旧帖] [原创]基于Ta ...

  8. Frida-Dexdump 脱壳工具下载使用以及相关技术介绍

    Frida-Dexdump 脱壳工具下载使用以及相关技术介绍 文章目录 Frida-Dexdump 脱壳工具下载使用以及相关技术介绍 前言 一.查壳.反编译.APK工具推荐 二.查壳 1.方式1 2. ...

  9. 安卓基于Frida HOOK传感器 实现虚拟运动跑步

    安卓基于Frida HOOK传感器 实现虚拟运动跑步 (本文运行环境:WIN10 + Pythom 3.6) 众所周知,安卓HOOK是十分厉害的的,所以有一天,我突发奇想能不能动态HOOK安卓的传感器 ...

最新文章

  1. 29、C++ Primer 4th 笔记,异常处理
  2. 模式扩展 ——简单工厂+配置文件解除耦合 *****
  3. 【项目实战】:基于python的p2p运营商数据信息的特征挖掘
  4. 在linux、optee、ATF中的中断异常向量表
  5. php图片上传报502,PHPStrom上传文件报502错误原因,_PHP教程
  6. Screen Saver(屏幕保护设置) in Cocoa
  7. split和explode有什么区别?
  8. [NOIP2016]愤怒的小鸟
  9. 编译」(compile),与「反编译」(decompile)..哪些语言容易被反编译.
  10. 微信小程序源码获取(附工具的下载)
  11. 一文带你搞懂pandas中的时间处理(详细)
  12. [翻译]CryEngine3中ClothShader详解
  13. 商协社团汕头发展-全国工商联·万祥军:企业家论坛研究转型
  14. 周涨粉超30w B站UP主非非宇Fay粉丝增长密码是什么?
  15. iftop工具(网卡流量监控软件)的使用
  16. 测试开发之路:英雄迟暮,我心未老
  17. 国家级荣誉!烽火参建的这个项目荣获“鲁班奖”
  18. python及格率公式_用Python编写成绩管理分析系统(故事升级版)
  19. 《Verilog数字系统设计教程》夏宇闻 第四版思考题答案(第3章)
  20. objdump使用方法

热门文章

  1. EntityFramework4.5使用Expression类创建动态查询及动态查询导航属性
  2. (学)咱们换一种说法!
  3. 风讯dotNETCMS源码分析—数据存取篇
  4. 网络模型的保存和读取
  5. Python学习笔记:Day15 部署Web App
  6. 详解const和#define
  7. python 新闻分析系统 源码_python 源码分析之类型系统
  8. Temporal Segment Networks(TSN)实验及错误日志
  9. 论文阅读:Network In Network
  10. [云炬创业学笔记]第一章创业是什么测试4