0x01

  先说总结:

  参照https://www.cnblogs.com/jiaoxiake/p/6818786.html 最后说的步骤,

  参考:https://www.52pojie.cn/thread-586058-1-1.html

  通过DexExtractor将加固后的apk还原odex,拖到jeb里面继续分析,odex-dex步骤没完成。

0x02:
  同事小哥在找分析一个apk,找里面一点逻辑,发现apk被梆梆加固了。
  正常apktool反编译无法找到清单文件里面注册的服务。

  找了下lib文件里,2个so文件,搜索发现和BANGBANG相关,顺带搜到了TUOKE的文章

  

0x03:

  参照教程,需要使用DexExtractor,有几种方式
  1.自己编译源码,修改dexFileParser函数,刷机
  2.找个4.4机器,ROOT掉,替换libdvm.so,重启
  3.找个4.4机器,刷system.img,重启

  源码在U里面,回去编译再刷,觉得有点麻烦,要是长期使用,可以考虑。
  手里有Nexus5,刷的lineageos,再折腾一边刷机觉得没必要,毕竟就一次~~
  a.然后选择,用模拟器,AVD里面选择SDK19 ARM CPU的模拟器,下载安装

  获得模拟器如上

  感谢前辈提供将已经编译好的system.img

  地址在百度云:https://pan.baidu.com/s/1jG3WQMU

  

  b.修改模拟器加载system.img地址,配置文件在 :hardware-qemu.ini

  配置文件地址在: C:\Users\xxxooo\.android\avd\Nexus5XAPI19-4.4.avd

  xxx为本机用户名,Nexus5XAPI19-4.4为你创建的模拟器名字 ,

  修改hardware-qemu.ini里面 disk.systemPartition.initPath,或者直接将百度云下载好的syste.img替换过去[提前备份]

  c.重启模拟器

  将加固后的apk文件安装到模拟器

  打开logcat,

  打开adb shell ,将sdcard 目录mount一下

  打开目标app,查看log日志 过滤 目标包名

  顺利的话会看到:

  

  看到已经生成n个dex文件,

  至于为什么是多个dex文件,这个没搞明白,不知道会不会是因为因为加固故意分割dex

  如果/sdcard/写入失败,会有log日志,

  我的操作是,重启模拟器,开机就adb shell 进去 su 然后mount sdcard 给777权限

  e.将生成后的dex文件pull到电脑,

  查看/sdcard/ 目录,只要文件名字包含目标包名的就是,全都pull出来,了,例如都放到 hack 目录

  下载git中的DexExtractor项目,使用其中的 Decode.jar 还原dex

  java -jar Decode.jar hack ,hack为从手机内pull出来的dex目录

  

  获得解密后的xxxx.read.dex

  这次获得的为odex格式,拖到WinHex 看透文件为 dey 036

  

  文件拖到jeb可以直接看,不过要点击 inner_dex

  

  如果想要直接看dex,还需要使用:baksmali ,这里我就没有操作,

  有个技巧,pull出来的dex有4个,通过jeb将每个都反编译,导出为java保存在不同文件夹。

  然后,通过notpad++全局查找需要找的代码,比如某个字符串(定义在string.xml的除外)或者代码

  定位到,再用jeb打开dex,可以查看调用关系,不然,导出为java后,导入studio或者eclipes调用关系很可能无法生成

  基本操作就这些

  同事小哥如愿找到了想要的,晚上加鸡腿

  后来发现 赵四前辈的 文章更详细,

  地址: http://www.wjdiankong.cn/apk%E8%84%B1%E5%A3%B3%E5%9C%A3%E6%88%98%E4%B9%8B-%E5%A6%82%E4%BD%95%E8%84%B1%E6%8E%89%E6%A2%86%E6%A2%86%E5%8A%A0%E5%9B%BA%E7%9A%84%E4%BF%9D%E6%8A%A4%E5%A3%B3/

  仅此记录下

  

  

梆梆加固还原DEX文件的更多相关文章

  1. 如何做好移动安全(梆梆加固后的APK破解提取dex)

    智能手机的普及将移动互联网的发展推到了一个让所有人都为之兴奋的高度,我想即使是以商业眼光见长的“苹果教父”乔布斯也不会料想到短短几年时间,智能手 机就已经成为了所有人离不开的商业产品,各种商业应用层出 ...

  2. Andorid APK反逆向解决方案---梆梆加固原理探寻

    本文章由Jack_Jia编写,转载请注明出处.   文章链接:http://blog.csdn.net/jiazhijun/article/details/8892635 作者:Jack_Jia    ...

  3. android安全检测工具,梆梆安全 - 防止反编译|APP安全加固|应用加固|盗版监测

    android安全检测工具,梆梆安全 - 防止反编译|APP安全加固|应用加固|盗版监测https://dev.bangcle.com/ 业内专业的应用加固服务供应商 帮助数十万APP抵御破解风险,早 ...

  4. Android平台dalvik模式下java Hook框架ddi的分析(2)--dex文件的注入和调用

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/77942585 前面的博客<Android平台dalvik模式下java Ho ...

  5. 最新 梆梆安全java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.梆梆安全等10家互联网公司的校招Offer,因为某些自身原因最终选择了梆梆安全.6.7月主要是做系统复习.项目复盘.Leet ...

  6. IDA在内存中dump出android的Dex文件

    转载自http://drops.wooyun.org/tips/6840 在现在的移动安全环境中,程序加壳已经成为家常便饭了,如果不会脱壳简直没法在破解界混的节奏.ZJDroid作为一种万能脱壳器是非 ...

  7. Android应用安全之外部动态加载DEX文件风险

    1. 外部动态加载DEX文件风险描述 Android 系统提供了一种类加载器DexClassLoader,其可以在运行时动态加载并解释执行包含在JAR或APK文件内的DEX文件.外部动态加载DEX文件 ...

  8. sql server还原数据库文件(.bak)常见问题解决办法笔记

    还原的时候出现错误:备份集中的数据库备份与现有的数据库不同 SQL Server 2005数据库还原出错错误具体信息为:备份集中的数据库备份与现有的A数据库不同 具体操作如下:第一次:新建了数据库A, ...

  9. class 文件与dex文件区别 (dvm与jvm区别)及Android DVM介绍

    区别一:dvm执行的是.dex格式文件  jvm执行的是.class文件   android程序编译完之后生产.class文件,然后,dex工具会把.class文件处理成.dex文件,然后把资源文件和 ...

随机推荐

  1. CRM和C4C product category hierarchy的可编辑性控制逻辑

    CRM 从ERP导入到CRM系统的Product Hierarchy,在CRM系统切换成编辑模式时,会收到一条提示信息: Hierarchy XXX may only be changed in th ...

  2. Raknet—视频会议系统最佳的数据传输引擎

    RakNet是一个跨平台的C++和C#的游戏引擎,它主要是为高效的数据传输而设计,使用者可以通过它进行游戏和其他的程序的开发.RakNet虽然是一个游戏引擎,但同样也是一个非常好的视频会议系统传输引擎 ...

  3. Android(java)学习笔记64:Android权限大全

    访问登记属性 android.permission.ACCESS_CHECKIN_PROPERTIES读取或写入登记check-in数据库属性表的权限 获取错略位置 android.permissio ...

  4. Uva 11384 正整数序列

    题目链接:https://vjudge.net/problem/UVA-11384 题意:给定正整数 n,用最少的操作把序列 1,2,,,n 全部变成 0: 操作是:每次可以从序列中选择一个或者多个, ...

  5. http长链接

    之前说过http的请求是再tcp连接上面进行发送的,那么tcp连接就分为长连接 和 短连接这样的概念,那么什么是长链接呢?http请求发送的时候要先去创建一个tcp的连接,然后在tcp的连接上面发送h ...

  6. 剑指offer25 二叉树中和为某一直的路径

    先序遍历 class Solution { public: vector<vector<int> > FindPath(TreeNode* root,int expectNum ...

  7. python2.7 加密模块 解决各种坑

    1 Python27 安装crypto Windows安装 在Windows上安装的时候直接 pip install pycrypto会报错,参考:http://blog.csdn.net/teloy ...

  8. R 多线程和多节点并行计算

    一:R本身是单线程的,如何让其多线程跑起来,提高运算速度? 用Parallel和foreach包玩转并行计算 看完上面这篇文章就会了.说白了,要加载parallel包,再改写一下自己的代码就ok了. ...

  9. CSS font-size字体大小样式属性

    设置字体大小CSS单词与语法 基本语法结构: .divcss5{font-size:12px;}设置了文字大小为12px像素Font-size+字体大小数值+单位 单词:font-size语法:fon ...

  10. VisualSVN 4.0.10 破解版 附上破解过程

    VisualSVN一般情况下使用不需要破解,可以直接使用社区授权.但是社区授权不支持域用户. 如果要再域下面使用就需要破解了. 原版的VisualSVN和破解后的DLL已打包上传(仅供学习使用) 破解 ...