简介arm vmp是传说中的第五代加固技术 它的表现形式是把二进制 解析成arm汇编 并且执行arm汇编 或者解析成arm变种指令

e.g

#define ARM_CODE "\x37\x00\xa0\xe3\x03\x10\x42\xe0" // mov r0, #0x37; sub r1, r2, r3

原理分析

http://blog.chinaunix.net/uid-23225855-id-3479492.html

1.根据 unicorn 可以在x86 上可以运行arm汇编 并且执行arm汇编指令 把unicorn 移植到android端或者ios端 就可以实现arm vmp技术

2.剔除unicorn 虚拟x86 mips 等等代码 让unicorn 只执行arm汇编指令集

3.解决trace code不能打印问题

参考:https://github.com/unicorn-engine/unicorn

最后于 2020-5-5 09:56

被liumengde编辑

,原因:

上传的附件:

app-debug.apk

(2.69MB,6次下载)

android vmp,[原创]arm vmp相关推荐

  1. DEX VMP与ARM VMP

    0x00: 目前各种加固都说是VMP了,简单分析市面上的加固,然后自己实现了一个类似原理的加固,大致流程图如下: 加固端: 解释器: https://www.cnblogs.com/2014asm/p ...

  2. 【Android 逆向】arm 汇编 ( 使用 IDA 解析 arm 架构的动态库文件 | 分析 malloc 函数的 arm 汇编语言 )

    文章目录 一.分析 malloc 函数的 arm 汇编语言 一.分析 malloc 函数的 arm 汇编语言 在上一篇博客 [Android 逆向]arm 汇编 ( 使用 IDA 解析 arm 架构的 ...

  3. Android开发原创教程

    qianqianlianmeng Android开发原创教程 活动帖子: http://www.apkbus.com/android-17709-1-1.html 安卓巴士ID 参赛帖子名称 巴士评分 ...

  4. Android x86的arm兼容库移植--初步分析及尝试手动移植houdini/ndk_translation

    适用于x86架构的安卓5.0以上需要root,或者离线改文件,但并非全部适用:本文仅为个人经验,未涵盖的地方需要自行探索. 手动移植Android x86的arm兼容库(houdini/ndk_tra ...

  5. android x86还是arm,Android x86是否模拟ARM?(Does Android x86 emulate ARM?)

    Android x86是否模拟ARM?(Does Android x86 emulate ARM?) 试图找出应用程序在为ARM编译时如何在VMWare上的Android x86上工作. GUI是否在 ...

  6. Testin—安卓巴士【Android开发原创教程大赛】

            Android开发原创教程大赛正式拉开序幕了,奖品是由安卓巴士的深度合作伙伴Testin(Testin移动App自动真机云测试平台)提供丰厚的奖品,为所有爱写教程的开发者提供的一份奖励 ...

  7. android vmp,[原创]某Android DEX vmp加固逆向分析

    0x00 背景 最近无意中看到某家厂商的免费Android DEX 虚拟机壳,一时兴起,就上传了一个简单样本加固之后进行分析.本文只是对该DEX虚拟机的执行过程进行了简单分析,并没有提供对其进行修复的 ...

  8. 【Android 逆向】arm 汇编 ( 使用 IDA 解析 arm 架构的动态库文件 | 使用 IDA 打开 arm 动态库文件 | 切换 IDA 中汇编代码显示样式 )

    文章目录 一.使用 IDA 打开 arm 动态库文件 二.切换 IDA 中汇编代码显示样式 一.使用 IDA 打开 arm 动态库文件 分析 Android SDK 中的 arm 架构的动态库 , 动 ...

  9. 【Android 逆向】ARM CPU 架构体系 ( ARM 处理器工作模式 | ARM 架构模型 )

    文章目录 一.ARM 处理器工作模式 二.ARM 架构模型 一.ARM 处理器工作模式 参考 [嵌入式开发]ARM 处理器工作模式 及 修改方法 ( 处理器模式 | 设置处理器模式 | 程序状态字寄存 ...

最新文章

  1. 古塔问题matlab,基于 Matlab 对古塔变形趋势探究的数学模型
  2. 安卓性能测试之 adb shell 常用命令
  3. C++深入理解虚函数
  4. 在brew开发中遇到的一些问题
  5. 问题解决:SqlParameterCollection只接受非空的SqlParameter类型对象,不接受SqlParameter[]对象
  6. 机房空调清理杨柳絮操作
  7. Scala项目启动方式:extends App和main的区别
  8. 基于 FPGA 的数字抢答器设计
  9. 老男孩Day1作业(一):编写登录接口
  10. usb2.0、usb3.0、usb3.1、type-c 接口含义与区别
  11. 最安全的浏览器?黑客大赛微软Edge被破解5次夺下“冠军”
  12. MS CRM如果在Tab页中有Iframe选项,原来速度不慢,突然速度变慢
  13. hiho一下第91周《Events Arrangement》(前半部分)
  14. LeetCode 106. Construct Binary Tree from Inorder and Postorder Traversal
  15. vue-awesome-swiper 的安装和使用
  16. 用计算机探索奥秘规律例题,计算器指法练习题.doc
  17. 【优化算法】哈里斯鹰算法(HHO)【含Matlab源码 1309期】
  18. Java 设置添加ckeditor图片上传功能
  19. 成都传智播客七月开班。你HOLD住了吗?
  20. “Sensor”的名词解释与概述

热门文章

  1. WPF版OxyPlot的FontWeight
  2. 计算机常见故障任务书,客车空调常见故障分析及处理设计毕业设计任务书
  3. Kylin框架基本介绍
  4. javascript 时间倒计时和正向计时
  5. 计算机所王颖简历,王颖-天津大学材料科学与工程学院
  6. 心态决定命运(别让心态毁了你自己)
  7. LatinIME学习——Manifest篇
  8. 惠普HP DeskJet Ink Advantage 5088 打印机驱动
  9. [由零开始]Guava Cache介绍和用法
  10. 解决 Ubuntu 无法播放 MP4 格式视频的问题的办法