android逆向学习
文章平均质量分 56
zhuanshenai
这个作者很懒,什么都没留下…
展开
-
关于反编译apk出现Exception in thread "main" java.lang.ClassCastException: ....
在反编译APK的时候:遇到这种情况> 正在反编译Apk... - 失败:Exception in thread "main" java.lang.ClassCastException: brut.androlib.res.data.value.ResFileValue cannot be cast to brut.androlib.res.data.value.ResScalarValue原创 2014-10-06 18:16:48 · 4365 阅读 · 0 评论 -
art hook 问题记录:RunProfileSaverThread
记录:在android 7上尝试全局hook某些系统函数会崩溃,定位原因:LoadedApk类的setupJitProfileSupport方法在应用启动后会,开启一个线程对profile进行更新。 profile存储了方法的热度,以指导 dex2oat 进程编译高热度方法。原因详细原因查看系统源码RunProfileSaverThread,调用过程:profile_saver.cc然...原创 2019-09-22 22:20:52 · 625 阅读 · 0 评论 -
jeb2 java 脚本插件
jeb1支持java脚本和python脚本.jeb2目前只支持python脚本. 就行写了插件支持下java脚本.不过还是有局限性,无法对ui进行操控原理通过插件对java脚本文件进行编译,动态加载执行run方法并传入参数IEnginesContext,通过这个参数可以拿到,不少东西,可以参考api File files=new File(PluginsContext.ScriptsPath);原创 2016-08-23 11:45:29 · 2327 阅读 · 2 评论 -
jeb 2 python scripts api skeleton
前言jeb 1 支持python,java脚本,jeb 2 现在的最新版只支持python脚本(也有可能我没发现如何使用的java脚本). jeb 2 提供了java版本的api(估计是为了开发插件用的), 而目前jeb2只能使用python的脚本,这就比较坑爹了,虽然说可以参考java的api写脚本.但是PyCharm的代码补全功能就没了.正文网上有说可以使用PyCharm的JythonHel原创 2016-08-20 23:15:05 · 1611 阅读 · 2 评论 -
如何hook dlopen和dlsym底层函数
如何hook dlopen和dlsym底层函数android 逆向分析过程有时候需要hook dlopen和dlsym函数,打印调用的库或者函数名。 利用cydia substrate的动态库,或者ThomasKing大大的ELF-ARM-HOOK-Library 两个都行,但是cydia 支持x86的hook,模拟器hook 比较方便(个人见解)。 我用的是cydia 实现的hook。具体如下原创 2016-06-24 14:32:01 · 11135 阅读 · 3 评论 -
android某加固脱壳(一)
先来一张图对比下:加固前和脱壳后dex文件比对: 对比结果发现:将原有的dex文件头抹除,保留其它区段。将一个新的将“壳”的dex文件放到抹除文件头部分,在修复dex文件校检相关参数。(没仔细研究这个壳给出的步骤直接从Ida中拿到修复后的文件。)首先查看:lib/armeabi/或x86文件夹下多了一个so文件libshella-0.0.0.so或libshellx-0.0.0.so:拖入I原创 2015-11-12 13:30:23 · 2226 阅读 · 0 评论 -
Android 方法调用跟踪
分析android 调用方法的时候可能要搜索多个文件,在有源码的情况下,eclipse调用快捷键(ctrl+alt+h)即可分析方法的哪里调用该方法或者属性 ;不过在某些情况下 要分析某个调用的流程 可以采用log打印调用信息下面是主要的方法:直接new对象调用就行了 public static void call() { Log.v("开始", "调用"); Throw原创 2015-03-29 22:36:15 · 1729 阅读 · 0 评论 -
安卓破解之log信息输出开关
前言首先是在鬼哥的群里听到好友淡然提起log打印信息的开关。淡然博客http://blog.csdn.net/zihao2012?viewmode=contents在分析安卓程序的时候,经常使用DDMS的logcat信息输出,来查看程序的信息输出。首先log信息输出可以很方便的查看软件执行的流程,或者软件在某个时刻执行到某个关键地点,这也是程序员在开发这种常用的的方法,但是程序在发布的时候原创 2014-11-25 21:58:27 · 1654 阅读 · 0 评论