首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android APK脱壳--腾讯乐固、360加固一键脱壳

经过加固后的apk,通过dex2jar反编译: 腾讯乐固: legu.png 360加固: 360jiagu.png 从上面可以看出,经过加固后的apk,通过常规方法反编译无法获取到源码。...下载地址: https://vxposed.com/ 脱壳 Step1: 将VirtualXposed、FDex2和需要脱壳的应用都安装到手机上。...Step5: 启动VirtualXposed中的FDex2,并配置要脱壳的应用。 fdex2-config.png Step6: 在VirtualXposed中运行要脱壳的应用。...Step7: 脱壳后的dex文件: shelling-dex.png 导出脱壳的dex文件: root设备: adb root adb pull /data/user/0/iv.va.exposed/virtual...Step8: 通过dex2jar对 脱壳的dex进行反编译: shelling-dex2jar.png 从上图就可以看到脱壳后的dex文件被成功的反编译。

13.2K00
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Android 逆向】APK 加壳脱壳现状 | 判断 APK 是否加壳 | APK 逆向流程

    文章目录 一、APK 加壳脱壳现状 二、判断 APK 是否加壳 三、APK 逆向流程 一、APK 加壳脱壳现状 ---- 加壳覆盖率很高 : 当前的应用 , 基本上 90% 都会加壳 , 各大加固厂商..., 基本都 提供免费的加壳服务 ; 很难找到不加壳的应用 ; 脱壳场景 : 竞品分析 : 分析竞品 APK 时 , 如果对方加壳 , 需要 先脱壳 , 然后才能分析 ; 恶意操作分析 : 恶意应用一般都会加壳..., 并且加的壳都很特殊 , 需要 先进行脱壳 , 然后才能进行恶意代码分析 ; 二、判断 APK 是否加壳 ---- 如何判断一个 Android 应用是否加壳 : 直接解压观察 : 将应用 APK...; GDA 分析 : 使用 GDA 分析 APK 文件 , 将 APK 文件直接拖动到 GDA 中 , 就会进行自动分析 ; 三、APK 逆向流程 ---- 检测加壳 : 使用检测工具 如 GDA 等..., 判断 APK 文件是否加壳 ; 根据加壳的相关指纹信息 , 判断加的是哪种壳 ; 脱壳 : 针对 APK 加壳类型 , 进行 脱壳 ; 反编译 : 使用 反编译工具 如 ApkTool , JEB

    4K21

    APK加固之静态脱壳机编写入门

    0x00APK加固简介与静态脱壳机的编写思路 1.大家都知道Android中的程序反编译比较简单,辛苦开发出一个APK轻易被人反编译了,所以现在就有很多APK加固的第三方平台,比如爱加密和梆梆加固等。...0x01壳简单分析 1.整体来看一下加固前APK包和加固后的APK包结构相关变化,如图1所示。 ?       ...2.反编译加固后APK,APK中的AndroidManifest.xml文件的入口被修改,如图2所示。 ?       ...图9 将脱壳后的so放到IDA Pro中分析,代码正常,图10所示,SO脱壳完成。 ?       ...图18 2.以上就是简单实现一般APK加固静态脱壳机的编写步骤,由于该加固核心so文件使用UPX默认加壳并未做变形处理,导致so被轻松的静态脱卓,而so模块中的反调试手段比较初级且模块化,可以非常简单的手工

    2.1K00

    脱壳——UPX脱壳原理(脱壳helloworld)

    脱壳——UPX脱壳原理 脱壳步骤 1 找到OEP 2 dump(导出)内存文件 3 修复 1 找到OEP 1 程序运行先从壳代码运行,壳代码执行完之后会跳转到真正的OEP,也就是是说第一步,首先要找到真正的...dump内存文件 就是把得到的新的源文件给它保存下来,可以采用从头到最后一个区段的手动复制下来,也可以用工具 3 修复 对于手动扒拉下来的内存文件,肯定还有一些问题,这里需要对PE文件进行修复 第一次脱壳...首先先查看程序的信息,先了解敌人: 采用PEID来查看程序的信息: 将程序拖进PEID后: 这里很明显是一个UPX加壳后的程序,采用的是UPX壳代码 连接器版本6.0 也就是vc6.0的 开始脱壳...GetVersion,所以这里肯定就是真正的OEP了 2 dump(导出)内存文件 需要再刚进入OEP的第一条指令就dump出来,因为不知道后面的代码逻辑是什么,万一有什么修改呢 od中可以直接调用OllyDump脱壳调试进程...总结 UPX脱壳 首先采取找到OEP,然后呢对整个PE文件进行dump出来,然后再修复,修复需要修复PE的区段头和导入表 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn

    1.9K10

    使用upx脱壳工具脱壳

    使用upx脱壳工具脱壳(攻防世界新手第七题为例simple-unpack) 查壳工具链接:https://www.52pojie.cn/thread-437586-1-1.html 脱壳工具链接:https...type=reverse&number=4&grade=0) ida打开只有四个函数 丢入ExeinfoPe里面 发现有壳(最下面那行显示是upx壳) 脱壳 首先安装工具,解压完之后进入到最里层文件夹中复制下来此时的地址...,cmd打开命令行先cd把地址转换,之后直接输入upx.exe -h安装完成 会出现这样(一大串) 之后就可以脱壳了,还在这个窗口,因为刚刚已经把地址转到了upx脱壳工具这里了,所以这下不用再转...,(下次打开需要重新转) 先打操作指令 这些是指令,其中-d是这次要用到的脱壳指令 先打好指令upx -指令名 文件位置和名称 这样打 脱壳成功 好接下来再丢到ExeinfoPe

    5.6K31

    【Android 逆向】整体加固脱壳 ( 脱壳起点 : 整体加固脱壳 | Dalvik 脱壳机制 : 利用 DexClassLoader 加载过程进行脱壳 | 相关源码分析 )

    文章目录 一、脱壳起点 : 整体加固脱壳 二、Dalvik 脱壳机制 : 利用 DexClassLoader 加载过程进行脱壳 1、DexClassLoader 源码 2、DexClassLoader...加载 dex 字节码示例 一、脱壳起点 : 整体加固脱壳 ---- 一代壳 即 DEX 整体加固 , 所有类型的加固 , 都会在最外围加上一层 整体加固的 壳 , 即使进行了 VMP / Dex2C...: 如果拿到 DEX 文件后 , 发现是空函数 , 则说明在 整体加固 的基础上 还进行了 函数抽取 加壳 ; 下一步针对 函数抽取 脱壳 ; VMP 或 Dex2C 脱壳 : 如果拿到 DEX 文件后...BaseDexClassLoader 类 , 类中没有实现任何业务逻辑 , 只是提供了一个构造函数 ; DexClassLoader 源码 : /** * 从{@code.jar}和{@code.apk...BaseDexClassLoader { /** * 创建一个{@code-DexClassLoader}来查找解释的和本机的 * 密码解释类可以在包含的一组DEX文件中找到 * 在Jar或APK

    86720

    (6)脱壳

    利用特殊的算法,对可执行文件的编码进行改变(比如压缩、加密),以达到保护程序代码的目的 脱壳 什么是脱壳?...摘掉壳程序,将未加密的可执行文件还原出来(有些人也称为“砸壳”) 脱壳主要有2种方法:硬脱壳、动态脱壳 iOS中的脱壳工具 iOS中有很多好用的脱壳工具 Clutch:https://github.com...dumpdecrypted:https://github.com/stefanesser/dumpdecrypted/ AppCrackr、Crackulous(基本不用,常用前两种) 如何验证可执行文件是否已经脱壳...usr/bin目录 如果在iPhone上执行Clutch指令,权限不够,赋予“可执行的权限” Clutch – 使用 列出已安装的APP:Clutch -i 输入APP序号或者Bundle Id进行脱壳操作...:Clutch -d APP序号或BundleId 或者 脱壳成功后会生成一个ipa文件 dumdecrypted 下载源代码,然后在源代码目录执行make指令进行编译,获得dylib动态库文件 将

    1.2K60

    【Android 逆向】整体加固脱壳 ( 脱壳点简介 | 修改系统源码进行脱壳 )

    文章目录 一、脱壳点简介 二、修改系统源码进行脱壳 一、脱壳点简介 ---- 在上一篇博客 【Android 逆向】整体加固脱壳 ( DEX 优化流程分析 | DexPrepare.cpp 中 rewriteDex...函数分析 | 脱壳点 | 获取 dex 文件在内存中的首地址 ) 中 , 提到了 2 个脱壳点 : ① /dalvik/vm/DvmDex.cpp 的 dvmDexFileOpenPartial...方法 ② /dalvik/libdex/DexFile.cpp 的 dexFileParse 方法 可以脱壳的 HOOK 点函数 , 不止上面 2 个 , 凡是函数中有 DEX 文件首地址的函数都可以作为脱壳点...---- 这里对 Android 系统的源码进行简单的修改 , 然后进行脱壳操作 , 这里的脱壳其实就是将 dex 文件在 内存的起始地址 ; /* 记录当前 dex 文件索引 */ int dexCount...文件保存路径 char output[50]={0}; // 获取当前进程 ID , 这是为了区分准备的 int pid = getpid(); // 生成文件名称 , 由于单个 APK

    1.5K30

    upx脱壳日记

    Windows下内置对各UPX版本的第三方图形化界面UPXShell工具,可以方便的切换版本,通过go按钮,可以切换upx加壳版本与脱壳版本 二、动态方法(手脱) 虽然UPX本身可以脱壳,但是UPX...是基于加壳后可执行文件内存储的标识来查找并操作的,由于UPX是开源的,软件保护者可以随意修改这些标识,从而导致官方标准版本的UPX脱壳失败。...因为UPX中可以改动的地方太多,所以人们在这种情况下一般采用动态脱壳 x86的汇编指令pushad可以轻松将所有寄存器一次性压入栈,UPX使用了这样的方式,被形象的称为“保护现场”,所以将这里的下一步执行后...在OD中选择“插件”-“OllyDump”-“脱壳正在调试的进程”,然后单击获取EIP作为OEP,再单击脱壳,保存后可完成脱壳 此时IDA中和程序执行都已正常 发布者:全栈程序员栈长,转载请注明出处

    2.3K30

    二、应用脱壳

    目录 前言 一、检测是否脱壳 1.1 使用otool检测 1.2 使用MachOView检测 二、Clutch 2.1 安装Clutch 2.2 Clutch脱壳实战 三、dumpdecrypted 3.1...要对应用进行分析,就必须先解密(成为“脱壳”),从而得到原始未加密的二进制文件。本节将讨论各种各样的脱壳技术。 一、检测是否脱壳 如何检测应用是否加壳了呢?...值得一提的是,最终脱壳出的文件架构和使用的iOS设备有关,如笔者的设备脱壳出来的是ARM64架构,如果放到ARMv7架构的设备上是不能正常运行的。...3.2 dumpdecrypted脱壳实战 为了操作方便,笔者选择先进入tmp目录(如果脱壳失败,请进入沙盒的Documents再进行),脱壳后的文件就会保存与此。...至此,脱壳就很简单的完成了。

    1.4K10

    脱壳第二讲,手动脱壳PECompact 2.x

    脱壳第二讲,手动脱壳PECompact 2.x PS: 此博客涉及到PE格式.所以观看此博客你要熟悉PE格式 首先,逆向inc2l这个工具,汇编中可能会用的 inc头文件转换为...真正的入口点 8.使用OD插件,Dump内存,脱壳. 此时我们可以使用OD插件的dump内存的插件,在入口点位置脱壳了. ? 弹出界面: ? 点击脱壳,选择位置,存储你脱壳后的文件. ?...现在脱壳完毕,IAT表肯定让壳给抹掉了,而OD的dump工具修复的IAT表也不全,所以使用一个IAT表格修复工具修复. 我用的工具是 ImportREC1.7  具体下载可以去下载看雪大礼包....(当然我会上传,但是此工具比较老,会有Bug,一会修复完之后手工修复即可.) 9.1打开工具.并选择我们OD挂起的未脱壳的inc2l的程序. ?  ...9.3 点击 Fix Dump 给我们脱壳的程序修复 现在导入表已经有了,那么点击Fix Dump给我们刚才脱壳后的程序修复一下. ? 9.4运行我们的脱壳程序查看是否可以运行. ?

    1.8K50

    UPX 脱壳初见

    脱壳一般是指除掉程序的保护,用来修改程序资源. 病毒加壳技术与脱壳杀毒方法 : 壳是什么?脱壳又是什么?这是很多经常感到迷惑和经常提出的问题,其实这个问题一点也不幼稚。...软件脱壳有手动脱和自动脱壳之分,下面我们先介绍自动脱壳,因为手动脱壳需要运用汇编语言,要跟踪断点等,不适合初学者,但我们在后边将稍作介绍。...我们知道文件的加密方式,就可以使用不同的工具、不同的方法进行脱壳。下面是我们常常会碰到的加壳方式及简单的脱壳措施,供大家参考: 脱壳的基本原则就是单步跟踪,只能往前,不能往后。...一样其实有一部分的老版本可以用PEDUMP32直接脱壳,不过有时候资源无法修改,也就无法汉化,所以最好还是用SOFTICE配合 PEDUMP32脱壳 我们通常都会使用Procdump32这个通用脱壳软件...(四)procdump 万能脱壳但不精,一般不要用 使用方法:运行后,先指定壳的名称,再选定欲脱壳软件,确定即可脱壳后的文件大于原文件由于脱壳软件很成熟,手动脱壳一般用不到。

    1.6K20

    浅谈Android 混淆和加固

    用脱壳dex文件替换原始apk文件里的dex文件;脱壳dex文件的作用主要有两个,一个是解密加密后的dex文件;二是基于dexclassloader动态加载解密后的dex文件 4....因为原始apk文件已经被修改,所以需要删除原始apk的签名信息,即删除META-INF目录下的.RSA、.SF 和MANIFEST.MF文件 5. 生成加固后的apk文件 6....对加固后的apk文件进行签名,apk加固完成。 原理分析: 1.为什么要对原始dex进行加密,同时用脱壳dex文件替换原始dex文件?...用脱壳dex替换原始dex文件之后,用上面的反编译工具反编译apk文件,只能看到脱壳程序的class文件,看不到apk本身的class文件。...2.怎么确保apk功能正常运行?加固后的apk启动之后,脱壳dex文件会对加密后的dex文件进行解密,然后机遇dexclassload动态加载解密后的dex文件。

    5.8K40

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券