Android逆向系列之ARM概述篇

Android逆向系列之ARM概述篇

ARM简介

ARM 即Advanced RISC Machines的缩写,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。

ARM处理器的三大特点是:耗电少功能强、16位/32位双指令集和众多合作伙伴。

继续阅读“Android逆向系列之ARM概述篇”

Android逆向系列之静态分析(四)–Native

基本方法

静态分析原生层程序基本的过程如下

  1. 直接解压提取 so 文件(/lib文件夹)
  2. ida 反编译 so 文件阅读Arm汇编or反汇编代码
  3. 根据 java 层的代码来分析 so 代码。
  4. 根据 so 代码的逻辑辅助整个程序的分析。

原生层静态分析例子

2015-福建海峡两岸CTF-APK逆向,逆向试试吧

继续阅读“Android逆向系列之静态分析(四)–Native”

Android逆向系列之静态分析(二)–JAVA层

实例分析

2014 ASIS Cyber Security Contest Finals Numdroid

判断文件类型

首先利用 file 命令判断一下文件类型,发现是个压缩包,解压缩一下,得到对应的文件,然后继续看一下,发现该文件是 apk 文件。

安装程序

继续阅读“Android逆向系列之静态分析(二)–JAVA层”

Apktool源码分析

                   Android-studio

一、编译

1.源码下载: https://github.com/iBotPeaches/Apktool

2.编译可以直接使用Apktool目录下的gradlew.bat命令,这里使用了Android Studio来编译源码,为后续调试做准备。

3.导入源码,步骤:File–>open–>源码路径,或者在导航页面直接选择import project

4.点击右边的Gradle(注意这里按钮可能贴边上,仔细找一下),点开找到一个类似刷新的按钮,点击一下即可

5.编译:Apktool的主要类在brut.apktool:apktool-cli模块里,运行”fatjar”任务生成项目的jar文件。

继续阅读“Apktool源码分析”

Android逆向系列之动态调试(七)–IDA调试so文件(下)

111111111

《Android逆向系列之动态调试(零)–入门篇》
《Android逆向系列之动态调试(一)–Smali注入》
《Android逆向系列之动态调试(二)–Eclipse调试apk》
《Android逆向系列之动态调试(三)–IDA调试dex》
《Android逆向系列之动态调试(四)–代码注入(JDB调试)》
《Android逆向系列之动态调试(五)–gdb调试》
《Android逆向系列之动态调试(六)–IDA调试so文件》
《Android逆向系列之动态调试(七)–IDA调试so文件(下)》

一、环境准备
工具详见< 工具篇>、破解的apk demo: Alictf2014_2.APK(反调试)、apktool

上一篇文章是讲解了IDA在无反调试的情况下调试so文件,这一篇文章自然就是解决在有反调试的情况下,如何使用IDA调试so文件,下一篇文章将会讲解dump dex的方法,敬请关注!
Read More