精华内容
下载资源
问答
  • android脱壳思路.png

    2020-05-06 13:15:23
    记录了市面上移动端安卓一代壳的脱壳主要思路:针对dvm模式和art模式脱壳方法进行了一系列总结,希望对初学者有帮助
  • android 脱壳视频教程

    2018-09-27 10:04:07
    方法2:ESP定律手动脱壳 0040E8C0 N> 60 pushad //停在这里了,我们F8单步 0040E8C1 BE 15B04000 mov esi,NOTEPAD.0040B015 //ESP突现,0012FFA4 dd 0012FFA4回车, 断点--硬件访问--WORD,F9运行,直接来到这里 ...
  • Android脱壳工具整理

    千次阅读 2021-12-22 14:52:55
    现在开源的脱壳工具比较多,今天我们来分享几款比较常见的脱壳工具,有刷入定制系统的脱壳机方式的,有Xpose模块hook关键函数的,也有Frida工具hook脱壳的,各有优缺点,小伙伴们可以自由搭配使用。 FART 这款脱壳...

    现在开源的脱壳工具比较多,今天我们来分享几款比较常见的脱壳工具,有刷入定制系统的脱壳机方式的,有Xpose模块hook关键函数的,也有Frida工具hook脱壳的,各有优缺点,小伙伴们可以自由搭配使用。

    FART

    这款脱壳工具是寒冰大佬写的,是通过刷入大佬定制的系统,进而在程序运行中动态脱壳。

    具体介绍可见大佬的github:https://github.com/hanbinglengyue/FART
    原理介绍:[原创]FART:ART环境下基于主动调用的自动化脱壳方案-Android安全-看雪论坛-安全社区|安全招聘|bbs.pediy.com

    有些人可能觉得刷机麻烦,同时大佬也提供了Frida版的,可以直接使用frida hook脚本动态脱壳。



    我们解压该文件后,将lib文件夹中的fart.sofart64.so拷贝到/data/app目录下,并使用 chmod 777 提权,接下来就可以正常使用frida hook脚本脱壳了

    frida -U -f [包名] frida_fart_hook.js --no-pause

    Youpk

    一款基于ART的主动调用的脱壳机,针对Dex整体加固+各式各样的Dex抽取的脱壳机

    具体介绍可见大佬的github:https://github.com/youlor/unpacker
    原理介绍:[原创]Youpk: 又一款基于ART的主动调用的脱壳机-Android安全-看雪论坛-安全社区|安全招聘|bbs.pediy.com

    这款工具的缺点就是只有pixel 1的刷机包,没有该手机就只能说拜拜了。

    这款脱壳机在使用时还需要在我们的手机上扔一个配置文件,里面写的就是我们要脱壳的程序的包名cn.aaa.bbb。
    adb shell "echo cn.aaa.bbb >> /data/local/tmp/unpacker.config"
    脱下来的dex文件和修复要用的bin文件都在我们的本地包名下/data/data/cn.aaa.bbb/unpacker

    FUPK3

    这款是较上面两款早一点的脱壳机,目前只支持Nexus5 hammerhead手机,其他手机也可根据F8LEFT大佬github指示进行源码修改和编译。

    具体介绍可见大佬的github:https://github.com/F8LEFT/FUPK3
    原理介绍:[原创]Android通用脱壳机FUPK3-Android安全-看雪论坛-安全社区|安全招聘|bbs.pediy.com

    这款是要配合手机端安装的FUpk3程序来脱壳,脱下来的dex放在/data/data/pkgname/.fupk3目录下

    FDex2

    这款是基于Xposed开发的,通过Hook ClassLoader的loadClass方法,反射调用getDex方法取得Dex(com.android.dex.Dex类对象),再将里面的dex写出。

    具体可查看:https://bbs.pediy.com/thread-224105.htm

    这款是脱比较早期一点的壳,类抽取的没办法,不过也可以脱下来看看方法名之类的,然后再配合frida hook。

    FRIDA-DEXDump

    这款基于frida的脱壳工具是葫芦娃大佬写的,看了一下最近更新尽然是6月份,那还是比较新鲜的,可以使用哦。
    github地址:https://github.com/hluwa/FRIDA-DEXDump

    我们可以直接用pip命令安装:
    pip3 install frida-dexdump
    使用:
    frida-dexdump

    or

    git clone https://github.com/hluwa/FRIDA-DEXDump
    cd FRIDA-DEXDump/frida-dexdump
    python main.py -h

    BlackDex

    BlackDex是一个运行在Android手机上的脱壳工具,支持5.0~12,无需依赖任何环境任何手机都可以使用,包括模拟器。只需几秒,即可对已安装包括未安装的APK进行脱壳。

    github:https://github.com/CodingGay/BlackDex

    直接在我们的非越狱手机安装32位和64位的包即可,然后打开32位或者64位的选择我们要脱壳的app即可等待脱壳了。

    优点很明显,就是不用root,不用root,不用root,自然也不用什么Xposed、面具、frida,更不用刷机,直接就能脱壳,强,很强。
    缺点就是针对一些运行中加载的类和方法可能就脱不到了,因为这脱壳完全不会运行程序。

    展开全文
  • Android类加载器: 类加载器在dex整体加壳与脱壳中起到了重要的作用。 网上有很多的文章介绍Java中的类加载器,因此我这里就不写了,这里主要说的是Android里边关于dex加载的"类"加载器。 类加载器可以在运行的时候...

    二.判断壳的类型:

    判断App是不是加壳很简单,使用jadx打开Apk以后,查看App的四大组件类,如果组件类找不到实现,那么就是整体加壳了。
    比如这里只能看到qihoo相关的壳代码,App的代码被隐藏了:

    2021-05-14_10-54.png

    判断是不是函数抽取型壳就是看函数体是不是有意义的代码,比如下面就是一个抽取型壳,可以看到函数体都是nop指令:

    2021-05-14_10-58_1.png

    2021-05-14_10-58.png

    判断是不是dex2C/VMP壳,就是要看是不是有Java方法被native化了,至于到底是dex2C还是VMP则需要更一步的判断,比如native函数注册地址是否相同:

    2021-05-14_11-02.png


    三. 加壳角度来看整体型壳

    整体壳需要解决如下几个问题:
    1.如何将原始的dex文件加密隐藏起来
    2.壳代码如何在执行前获取控制权并可访问到被隐藏加密的dex从而可以解密dex文件
    3.如何动态加载解密后的dex文件并且让虚拟机可以识别到dex文件中的四大组件

    问题1:
    可以将原始的dex文件加密添加到壳dex文件的末尾,并且更新壳dex文件的checksum,signature和file_size反映出这些变化,因为在dex文件的头部信息中会保留这些值来检查dex文件格式的正确性:

    2021-05-14_11-16.png 修改了这三个值以后,壳dex文件的末尾就可以添加一些和dex格式定义中无关的信息,比如原始dex文件的个数,大小以及加密以后原始dex文件的内容。然后将壳d

    《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

    【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享

    ex替换掉原始的dex文件对Apk进行重打包即可。

    问题2:
    壳代码会将自己的Application类替换掉原来的Application类,因此壳的Application类的onCreate()attachBaseContext()会在App进程启动的时候率先执行拿到控制权。而访问被隐藏加密的dex可以通过getApplicationInfo().sourceDir来获取apk的路径,解压apk得到壳dex文件从而解密出壳dex文件里边附带的原始dex文件。

    问题3:
    通过Android中的类加载器动态加载解密后的dex文件,为了让四大组件可以正常走生命周期函数,还需要对类加载器进行修正,修正的方式大概有两种方式,下面的内容中会详细的描述。


    四. Android类加载器:

    类加载器在dex整体加壳与脱壳中起到了重要的作用。
    网上有很多的文章介绍Java中的类加载器,因此我这里就不写了,这里主要说的是Android里边关于dex加载的"类"加载器。
    类加载器可以在运行的时候加载在编译时未知的类,对于c/c++来说也有类似的功能dlopen与dlsym,而Android里边的BaseDexClassLoader可以实现在运行的时候加载在编译时未知的dex文件,经过此加载器的加载,ART虚拟机内存中会形成相应的数据结构,对应的dex文件也会由mmap映射到虚拟内存当中,通过此加载器的loadClass(String className, boolean resolve)方法就可以得到类的Class对象,从而可以使用该类。
    对于壳来说,它解密出来的dex文件也是编译时未知的,因此需要通过类加载器来加载dex文件,系统提供的BaseDexClassLoader可以满足要求,也可以自定义ClassLoader来实现。

    通过打印测试可以看到JDK API中的类如java.lang.String,以及Android系统提供的核心类如android.app.Activity(位于/system/framework/framework.jar中)都是由同一个类加载器java.lang.BootClassLoader所加载的。
    而由应用程序开发者自己所编写的代码由dalvik.system.PathClassLoader加载器加载,打印出来的信息如下:

    dalvik.system.PathClassLoader[DexPathList[[directory “.”],nativeLibraryDirectories=[/system/lib64, /vendor/lib64, /system/lib64, /vendor/lib64]]]

    查看源码可以看到PathClassLoader是继承自BaseDexClassLoader的,而PathClassLoader还有另外两个兄弟: InMemoryDexClassLoader以及DexClassLoader,而壳程序很多都使用了这两个类加载器来加载解密后的dex文件。其中InMemoryDexClassLoader是Android8.0以后新增的类,可以实现所谓的"不落地加载"。
    总结一下,主要有如下几个ClassLoader:

    1. BootClassLoader: 加载系统核心类的加载器,由系统创建
    2. BaseDexClassLoader: 加载dex文件的基类加载器
    3. PathClassLoader: 加载应用程序开发者自己编写的代码的加载器,比如四大组件类,它继承自BaseDexClassLoader
    4. DexClassLoader: 从源码中可以看到几乎和BaseDexClassLoader没有区别,它继承自BaseDexClassLoader,一般用于实现插件化和加壳
    5. InMemoryDexClassLoader: 通过ByteBuffer数组来加载dex的加载器,它继承自BaseDexClassLoader
    6. 自定义ClassLoader: 可以实现想实现的任何功能

    前面说过壳加载完原始的dex以后还需要对ClassLoader进行修正,否则加载组件类运行的时候会报ClassNotFoundException,为什么会报这种错误呢? 这就涉及到了组件类的创建过程,比如对于Activity来说,应用程序的Activity对象是在ActivityThread类的performLaunchActivity()方法中通过调用mInstrumentation.newActivity()创建出来的,这个函数的实现逻辑为:

    2021-05-14_16-36.png 可以看到是通过ClassLoader先加载Activity类,再通过newInstance()来实现化类对象。
    这个方法传递进来的ClassLoader是加载应用程序的ClassLoader,它所加载的dex为应用程序的主体的dex,对应的DexPathList是没有原始的dex路径的,因此会报ClassNotFoundException。这里也可以看出,一个BaseClassLoader对应着其实是一个Dex文件的列表,如果尝试让BaseClassLoader加载不在这个列表中的类,就会报ClassNotFoundException
    为了解决上面的问题,可以有两种解决方案:

    1. 替换系统组件类加载器为我们的DexClassLoader,同时设置DexClassLoader的parent为系统组件类加载器
    2. 打包原有的双亲关系,在系统组件类加载器和BootClassLoader的中间插入我们的DexClassLoader,即加载原始dex的DexClassLoader作为PathClassLoader的parent

    第一种解决方案是将系统组件类替换,这样通过mInstrumentation.newActivity()试图加载类的时候,就能找到相应的类。
    第二种解决方案将ClassLoader的继承关系修改为: BootClassLoader --> DexClassLoader --> PathClassLoader,由于双亲委派机制的存在,当PathClassLoader找不到动态加载的原始dex时,它会请求parent即DexClassLoader加载,因此可以加载成功。
    还有一些壳是通过对PathClassLoader中的Elements数组进行合并来达到目的,这样的好处是当你试图用Frida枚举ClassLoader对象的时候,看不到额外的ClassLoader对象,也就无法轻易的得到Dex文件加载的路径。


    五. 通用整体脱壳方法:

    从上面的内容可以得知,加载Dex有很多种实现方式,每种壳的实现都不一定相同,如果想实现一个比较通用的整体脱壳方法,就必须寻找一个壳绕不开的方式来实现。这个关键的数据结构就是art虚拟机中定义的类art::DexFile,它的定义位于art/runtime/dex_file.h文件中。
    这个类有两个成员变量,分别代表着dex文件加载到内存当中的起始地址以及大小,得到这两个信息以后通过内存dump的方式就可以轻轻松松的将dex文件dump下来。
    这就表示一个事实: 在某个时机点内存当中一定会有解密后的完整dex存在。

    2021-05-14_17-26.png

    art::DexFile是加载dex绕不开的类,不论是使用BaseClassLoader,还是自定义类加载器,最终都需要art::DexFile,这一结论可以通过查阅class_linker.cc文件中的函数得到,像ClassLinker::DefineClassClassLinker::LoadMethodClassLinker::LoadClassMembers这些重量级函数都需要以DexFile对象做为参数:

    2021-05-14_17-34.png

    2021-05-14_17-34_1.png

    2021-05-14_17-34.png

    通过BaseDexClassLoader来加载类会执行art/runtime/native/dalvik_system_DexFile.ccDexFile_defineClassNative函数,这个函数的实现就是遍历Java层的DexFilemCookie对象所表示的native层的art::DexFile,因为这个art::DexFile对象代表了dex文件在内存中的结构,所以可以通过类名在art::DexFile列表中查找到DexFile::ClassDef结构,才能继续调用ClassLinker::DefineClass()函数,最终才能得到一个虚拟机实现中的Class对象表示mirror::Class*,因此这个流程仍然离不开虚拟机中的art::DexFile类。

    2021-05-14_17-46.png

    这还会引发出一个问题:
    art虚拟机执行smail指令可以解释执行,这种模式叫Interpreter模式(很显然解释模式下需要dex文件存在于内存当中才能解释执行)
    也可以执行oat以后elf文件中的本地机器指令,这种模式叫quick code模式。
    在quick code模式中,dex编译出来的机器指令包含在dex2oat生成出来的oat文件中(对于app来说,oat文件以.odex结尾),那么对于quick code模式是否还需要dex文件呢?如果不需要dex文件,是不是就无法在内存中dump出dex文件了?

    事实上quick code模式内存中也是会有原始的dex文件存在的,具体的执行逻辑在Runtime的GetOatFileManager().OpenDexFilesFromOat()函数中,在这个函数中如果走dex2oat流程的话就会执行oat_file_assistant.MakeUpToDate()调用dex2oat命令生成odex和vdex文件,并生成OatFile类的对象,这个类就代表着dex2oat以后oat文件在内存中的映射表示,oat文件其实就是可执行文件,只不过它有特殊的几个符号:oatdata,oatlastword,oatbss,oatbsslastword等,OatFile类中的成员变量oat_dex_files_storage_是个std::vector<const OatDexFile*>类型的变量,而OatDexFile类表示的是这个oat文件所对应的dex文件的信息(列表),通过OatDexFiledex_file_pointer_即可以找到对应的art::DexFile对象的地址。
    在android8.0以后,oat文件存放着dex文件编译出来的可执行指令,而原始的dex内容其实存放在vdex文件中,这一点可以在后面的dump程序中看到。
    在quick code模式下也需要原始dex的存在的原因是dex文件还存放着类相关的信息,如class_def_item,method_id_item,对于类方法的执行还离不开这些信息。

    六. 整体脱壳实践:

    既然知道虚拟机中的art::DexFile类是dex在内存中的表示,那么得到这个对象就可以dump出dex文件。
    接下来就是寻找一个合适的点可以得到art::DexFile对象,得到对象以后通过hook的方式或者修改源码的方式都可以dump下来了。
    下面是脱函数抽取型壳fart的作者寒冰大佬所提出的办法:
    找到libart.so文件中所有导出函数中带有art::DexFile参数或者返回值的函数,那么这就是一个可以脱壳的点
    我写了一个命令可以查找满足这种条件的函数:

    arm64-readelf -s libart.so -W | tr -s ’ ’ | cut -f9 -d ’ '| c++filt | grep “art::DexFile”

    比如在art/runtime/dex_file.ccDexFile::OpenCommon或者DexFile::DexFile中添加如下代码即可脱壳:

    pid_t pid = getpid();
    char dexfilepath[100] = {0};
    sprintf(dexfilepath,"/sdcard/drdump_%d_%d_DexFile.dex",(int)size,(int) pid);
    int fd = open(dexfilepath, O_CREAT | O_RDWR , 666);
    if (fd > 0){
    int number = write(fd,base,size);
    if(number > 0){
    }
    close(fd);
    }

    这种是修改源码的方式来脱壳。


    还有一种方式是通过frida hook来脱壳,它的优点是简单有效,不需要重新编译rom。
    它的原理如下:
    对于通过使用BaseDexClassLoader来加载的程序来说,DexFile.java类的mCookie变量在native层的表现其实是一个jlong类型的指针的数组,数组的个数为此ClassLoader加载的dex文件个数 + 1,第一个元素类型为OatFile*,剩余的元素为对应的art::DexFile*,因此可以通过获取mCookie变量来得到art::DexFile*列表,并且通过art::DexFile的begin_和size_来dump。
    代码如下:

    function hasOwnProperty(obj, name) {
    try {
    return obj.hasOwnProperty(name) || name in obj;
    } catch (e) {
    return obj.hasOwnProperty(name)
    }
    }

    function getHandle(object) {
    var result = null;
    if (hasOwnProperty(object, "KaTeX parse error: Expected '}', got 'EOF' at end of input: …esult = object.handle;
    if (result) {
    return result;
    }
    }
    if (hasOwnProperty(object, "KaTeX parse error: Expected '}', got 'EOF' at end of input: … return object.h;
    }

    return null;
    }

    function dump_dex(packagename, dexfilebegin, dexfilesize) {
    var dexfile_path = “/sdcard/my_frida_dump_” + packagename + “_” + dexfilesize + “.dex”;
    var dexfile_handle = new File(dexfile_path, “w”);
    if (dexfile_handle && dexfile_handle != null) {
    var dex_buffer = ptr(dexfilebegin).readByteArray(dexfilesize);
    dexfile_handle.write(dex_buffer);
    dexfile_handle.flush();
    dexfile_handle.close();
    }
    }

    function dealwithClassLoader(classloaderobj, packagename) {
    if (Java.available) {
    Java.perform(function () {
    try {
    var dexfileclass = Java.use(“dalvik.system.DexFile”);
    var BaseDexClassLoaderclass = Java.use(“dalvik.system.BaseDexClassLoader”);
    var DexPathListclass = Java.use(“dalvik.system.DexPathList”);
    var Elementclass = Java.use(“dalvik.system.DexPathList$Element”);
    var basedexclassloaderobj = Java.cast(classloaderobj, BaseDexClassLoaderclass);
    var tmpobj = basedexclassloaderobj.pathList.value;
    var pathlistobj = Java.cast(tmpobj, DexPathListclass);
    console.log(“pathlistobj->” + pathlistobj);
    var dexElementsobj = pathlistobj.dexElements.value;
    pobj = basedexclassloaderobj.pathList.value;
    var pathlistobj = Java.cast(tmpobj, DexPathListclass);
    console.log(“pathlistobj->” + pathlistobj);
    var dexElementsobj = pathlistobj.dexElements.value;

    展开全文
  • Android脱壳工具

    2018-12-19 15:08:30
    drizzledumper Android逆向脱壳工具,百分百能脱360壳,时间2018年,以后不保障
  • 一款惊艳的Android脱壳工具

    千次阅读 2020-11-13 14:22:16
    有加密就有解密,Android的App也是如此。市面上有很多加壳工具,比如梆梆、爱加密、乐固等,有收费的也有免费的,还有就是公司自己研发的给公司内部App使用的加密工具.

    我的新书《Android App开发入门与实战》已于2020年8月由人民邮电出版社出版,欢迎购买。点击进入详情

    GitHub严选:每天推荐一个GitHub优质开源项目

    人生得一知己足矣,斯世当以同怀视之。

    大家好,我是严选哥。

    今天给大家带来的项目是:dumpDex-Android脱壳

    有加密就有解密,Android的App也是如此。市面上有很多加壳工具,比如梆梆、爱加密、乐固等,有收费的也有免费的,还有就是公司自己研发的给公司内部App使用的加密工具。

    我们今天介绍的是怎么给加了壳的App脱壳,这里用到的工具是dumpDex。

    插件需要在xposed环境中使用,支持市面上大多数加密壳,软件仅供学习用,请勿用于其他用途,项目不是成品,可能会引起软件崩溃.

    编译环境
    Android Studio 3.0

    无法脱壳,请在 PackerInfo.java文件中,将应用的包名加到packages字段里,编译安装即可,欢迎提交Pull Requests,让软件更加全面。

    支持设备
    大多数xposed环境的手机,暂不支持模拟器

    apk 下载
    https://github.com/WrBug/dumpDex/releases
    https://github.com/WrBug/DeveloperHelper 推荐下载

    易开发已集成dumpdex功能

    分支
    develop 开发分支

    master 稳定分支

    使用方式
    下载源码编译或者下载apk包并安装,应用xposed模块后重启,运行加固的应用后,插件会自动将dex文件dump到 /data/data/包名/dump 目录

    apk文件不会实时更新,获取最新apk请自行编译源码

    源码编译
    将源码下载或者clone到本地,使用android studio打开,编译成功后,安装apk,将 lib/armeabi-v7a/libnativeDump.so 复制到 /data/local/tmp/libnativeDump.so ,权限 设置为777,arm64机型还需要将将 lib/arm64-v8a/libnativeDump.so 复制到 /data/local/tmp/libnativeDump64.so可以通过文件管理器操作,也可以使用如下adb shell命令

    仅适用于32位手机
    adb shell
    su
    cp /data/data/com.wrbug.dumpdex/lib/libnativeDump.so /data/local/tmp
    chmod 777 /data/local/tmp/libnativeDump.so
    配置完成后激活xposed重启即可

    项目地址: https://github.com/WrBug/dumpDex

    欢迎关注我的技术公众号:国民程序员,我们的目标:输出干货

    1. 每天分享原创技术文章
    2. 海量免费技术资料和视频学习资源
    3. 分享赚钱门道,带领程序员走向财务自由
    图片名称
    展开全文
  • Android app 脱壳工具.zip

    2019-12-23 16:05:13
    内含两个工具,分别是drizzleDumper和jadx。其中,drizzleDumper有32位和64位2个版本。
  • android 脱壳工具

    千次阅读 2017-12-23 22:19:22
    现在分享一款工具,用于脱壳。 下载地址为: 用法为: 注意设备是root过的 1、解压压缩包 armeabi 是针对arm镜像的(或者实体机) x86是针对虚拟机x86的 2、针对你的设备选择对应目录下的drizzleDumper文件 (1...

    现在的apk,很多都加了壳,例如360加壳、邦邦加壳

    现在分享一款工具,用于脱壳。

    下载地址为:

    http://download.csdn.net/download/feixiangsmile/10170908


    用法为:

    注意设备是root过的

    1、解压压缩包

    armeabi 是针对arm镜像的(或者实体机)

    x86是针对虚拟机x86的

    2、针对你的设备选择对应目录下的drizzleDumper文件

    (1)将drizzleDumper通过adb push 命令传输到设备的有关目录下,执行如下命令

    adb push drizzleDumper data/local/tmp

    (2)然后通过adb shell进入到手机data/local/tmp

    (3)最后通过以下命令使drizzleDumper运行起来,运行前(或者后)需要运行你要脱壳的apk

             ./drizzleDumper apk包名

    注意:如果上面不能运行,则需要通过执行 chmod 775 drizzleDumper  赋予drizzleDumper可执行的属性


    3、可以通过   http://download.csdn.net/download/feixiangsmile/9900467 中的jadx进行查看dex文件

    展开全文
  • dumpDex-Android脱壳 插件需要在xposed环境中使用,支持市面上大多数加密壳,软件可以学习用,不要使用其他用途,项目不是成品,可能会引起软件崩溃 编译环境 Android Studio 3.0 无法脱壳,请在文件中,将应用的包...
  • 一、情景分析 程序猿一般都很孤独,特别是总是和代码相伴,比如像我这种穷屌丝,一到周末就闲着没事刷各种应用,看看想看的,无意中发现一款封面看着挺诱人的约友神器,下来来...二、逆向脱壳分析 这种app找入口就...
  • TUnpacker, TUnpacker是一款Android脱壳工具
  • Android脱壳圣战---360脱壳与修复

    万次阅读 热门讨论 2018-11-23 12:16:25
    市场上的360脱壳神器 drizzleDumper 大家好 最近360壳不太友好,老是出现在各种东西里 所以我从github上找到了一个还行的工具drizzleDumper 首先这个工具是在虚拟机上用的 不会配置那些,加上电脑太垃圾了 我...
  • 一种多层次的自动化通用Android脱壳系统及其应用.pdf
  • android 脱壳常用软件

    2018-07-08 22:53:54
    包含apktool,AndroidKiller_v1.3.1,ApkScan-PKID查壳工具,APKsign,ArscEditor,dex2jar-2.0,drizzleDumper-master,jadx_jb51,jd-gui-windows-1.4.0,smali_baksmali
  • 鬼哥的android脱壳视频

    2018-11-25 13:22:07
    android脱壳视频,鬼哥的,非常好的例子。
  • 一、情景分析 程序猿一般都很孤独,特别是总是和代码相伴,比如像我这种穷屌丝,一到周末就闲着没事刷各种应用,看看想看的,无意中发现一款封面看着挺诱人的约友神器,下来来...二、逆向脱壳分析 这种app找入口就...
  • Android终极脱壳

    2017-09-27 13:48:03
    The Terminator to Android Hardening Services Outline Background DexHunter Analysis of major products Related work Dex File Java source code -> Java class -> dex Java class: each file ...
  • Android万能脱壳

    2021-05-26 13:59:21
    很多人觉得Android加固很牛逼,试着用各种方法去研究,然后弄个脱壳机,牛不牛逼咱不知道,写个脱壳机还是可以的。Android加固分为Dex加固和so加固,我这里只给出脱dex的方法,本人声明仅用于学习交流目的,你们不要...
  • 可惜并没有公开修改android源码部分,这让深入理解脱壳方案或者定制化自己的脱壳方案存在困难,本文通过逆向FART所提供的system.img镜像得到思路,同时修改源码适配android-9.0.0_r36,并公开脱壳源码。二、如何逆向...
  • 一、脱壳点简介、 二、修改系统源码进行脱壳
  • Android APK脱壳

    万次阅读 2019-06-26 15:09:45
    众所周知,Android应用开发完成后,除了使用Google官方的混淆外,还需要使用一些第三方的安全软件的加壳处理,比较出名的有腾讯乐固、360加固和爱加密等。我之前所在的公司,就是使用爱加密进行加壳处理的。 虽然...
  • Android脱壳 360专篇

    2021-06-04 06:58:10
    大家好最近360壳不太友好,老是出现在各种东西里所以我从github上找到了一个还行的工具...drizzleDumper下载链接 :https://www.lanzous.com/i2fft8j 解压密码:yxp1314…打开手机,连接电脑,用Android ...
  • Xposed插件 - Android一键脱壳工具

    千次阅读 2020-08-19 20:22:37
    Xposed插件 - Android一键脱壳工具 (必须获取root权限) 特性 支持Android4.0至7.1 支持模拟器及vmos 界面美观交互良好 一键脱全壳 并自动修复DexHeader magic 测试可脱(360加固)(爱加密),其余还未测试 ...
  • FortiGuard 实验室最近遇到了很多加壳 Android 恶意软件。这类恶意软件一个很有趣的点是,尽管使用的加壳工具是一样的,但生成的恶意软件却常常会发生变化。分析加壳工具通常令人望而生畏。因为不光分析流程很难理解...
  • Android App脱壳

    2020-10-29 15:56:16
    360脱壳 利用drizzleDumper去壳 工具下载链接 参看文章https://www.jianshu.com/p/e2850b03a1fd?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation 下载链接 ...
  • 上面就简单分析了爱加密的原理和流程,但是我们没有继续往下面分析了,...dump出内存的dex文件即可,那么下面我们就是用IDA开始脱壳操作了:第一步:启动设备中的android_server,然后进行端口转发adb forward tcp:2...
  • 93) at com.android.dx.ssa.ConstCollector.process(ConstCollector.java:75) at com.android.dx.ssa.Optimizer.runSsaFormSteps(Optimizer.java:181) at com.android.dx.ssa.Optimizer.optimize(Optimizer.java:99)...
  • Android通用脱壳机FUPK3

    千次阅读 2018-08-23 21:56:43
    Android代码是开源的,那么通过直接修改Android源码,把运行时的所有dex数据dump出来,不就可以实现一个通用的脱壳机了吗?FUPk3就是基于上面的思路来实现的。FUPK3需要修改Android源码,导出数据接口. 不过,最为...
  • Android类加载器: 类加载器在dex整体加壳与脱壳中起到了重要的作用。 网上有很多的文章介绍Java中的类加载器,因此我这里就不写了,这里主要说的是Android里边关于dex加载的"类"加载器。 类加载器可以在运行的时候...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,607
精华内容 1,042
关键字:

android脱壳