自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (1)
  • 收藏
  • 关注

原创 2015ali android挑战赛第二题之反调试技术解析

part 3 反调试原理分析承接上一篇博文,破解时遗留了两个问题,一个是静态密码什么时候被修改的,一个是反调试部分内容。个人觉得反调试部分内容比较关键,所以就来扒一扒其背后的秘密。这里主要以汇编代码分析为主,结合动态调试,我的目标是训练阅读arm代码,提高效率也是我们值得花时间的。还是从JNI_OnLoad入手分析,OnLoad函数主要做2件事情:1、动态解密dlsym、getpid、sprintf

2017-06-30 19:36:38 898 2

原创 2015ali android挑战赛第二题

工具 jeb + androidkiller + IDA6.8 + winhex + cmderpart1 前期侦察准备工作:静态分析 apk smali按照正常流程走,直接拖入到andriod killer中,发现其中只有两个activity程序,主程序中定义了一个native程序 public native boolean securityCheck(string){} 这个程序将用户输入的

2017-06-28 13:11:27 717

原创 2015ali android挑战赛第一题

准备环境工具:jeb + android killer + eclipse + cmder逆向分析apk拖入:jeb 1、找到入口代码: 题目很简单,v2 == v4的内容就算破解成功,分析v2 和v4数据来源,发现v4就是目标密码,只不过是加密后的密码。(此题是通过密文比较,判断 成功与否)突破点,有日志输出:1、发现有日志输出:Log.i ,第一个想到的就是查看日志输出(从后面的分析结

2017-06-28 12:20:49 377

原创 ARM除法逆向分析

背景介绍arm指令分析学习环境ndk build + IDA6.8 + android 6.0手机有符号除法模板 argc/2^nc代码 int main(int argc,char **argv){ printf("hello world"); //有符号除以2的幂 printf("\n%d",argc/2); printf("\n

2017-06-28 11:49:09 1729

翻译 ARM汇编基础

ARM体系平台手册笔记07ADC指令ADC指令格式 31 28 27 26 25 24 23 22 21 20 19 16 15 12 11 0 cond 0 0 I 0 1 0 1 S Rn Rd shifter_operand

2017-06-28 10:17:04 245

翻译 ARM汇编基础-存储和加载指令

存储和加载指令ARM架构支持两种广泛的指令,从内存加载或存储单个寄存器或一对寄存器的值: 第一种类型可以加载或存储32位字或8位无符号字节 第二种类型可以加载或存储16位无符号半字,并可以加载和有符号扩展16位半字或8位字节。

2017-05-11 23:18:31 1194

翻译 ARM汇编基础

ARM体系平台手册笔记05并行加减指令除了正常的数据处理和乘法指令之外,ARMv6还引入了一组并行加减指令下面介绍6种基本的指令 ADD16 添加两个寄存器的顶部半字形成结果的上半部分。 添加相同两个寄存器的底部半字形成结果的底部半字部分 ADDSUBX 交换第二个操作数寄存器的半字,加上半字,减半字。 为啥这样设计,

2017-04-25 08:50:13 932

翻译 ARM汇编基础

ARM体系平台手册笔记04字节序32位的大小端问题:大端是数据的高位,在内存的低地址,小端是数据的低位,在内存的低地址 以数据0x12345678举例: 大端模式下: 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 78 56 34 12

2017-04-23 22:10:55 1084

翻译 ARM汇编基础

ARM体系平台手册笔记03异常中断保存现场: SUB R14, R14, #4 STMFD SP!, {<other_registers>, R14}中断返回现场: LDMFD SP!, {<other_registers>, PC}^ 复位当cpu的Reset input is asserted,ARM processor立即停止当前指令的执行,从而转向下面的指令执行

2017-04-23 20:28:57 328

翻译 ARM汇编基础

ARM体系平台手册笔记02GE[3:0]标志位简介 在ARMv6中,SIMD指令使用位[19:16]作为结果的单个字节或半字的大于或等于(GE)标志。您可以使用这些标志来控制以后的SEL指令,有关详细信息,请参阅第A4-127页的SEL 设置规则有以下三种: 指令为半字操作: 根据上半字计算的结果,将GE [3:2]设置或清除

2017-04-23 19:53:44 598

翻译 ARM汇编基础

ARM体系平台手册笔记01PC 指针寄存器读 ARM 模式下,其值为指令地址+8,bit[1:0],始终为0 Thumb模式下,其值为指令地址+4,bit[0],始终为0 当ARM STR或STM指令存储R15时,会发生上述规则的例外。 这样的指令可以存储指令的地址加上8个字节,如读取R15的其他指令,或指令的地址加上12个字节。写 正常情况下最低的两位,必

2017-04-22 23:47:49 271

郝斌C语言视频教程

经典C语言视频教程!非115大众分享地址,你懂的! 从此刻起让C语言学习不再烦恼!

2012-10-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除