系统: Mac OSX

调试环境:IDA7.0,  adb

手机环境:红米手机 android 4.4.4

前提条件:

  红米手机root之路:https://www.cnblogs.com/dzqdzq/p/11100720.html

第一步:

先将 android_sever拷贝到手机:

1,具体执行步骤:

➜  dbgsrv adb push android_server /system/bin/
adb: error: failed to copy 'android_server' to '/system/bin/android_server': remote Read-only file system
android_server: files pushed. 60.8 MB/s ( bytes in .002s)
➜ dbgsrv adb push android_server /system/
android_server: file pushed. 5.0 MB/s ( bytes in .112s)

出现错误:remote Read-only file system

解决方案:

adb shell 进入手机控制台, 然后执行

|root@HM2014812:/system/bin # mount -o rw,remount /system
root@HM2014812:/system/bin #
adb push 完成之后,重新回到只读:mount -o ro,remount /system
第二步:
将待apk包安装包安装到手机上。
从网上下载apk包之后, 需要apktool d gongjianchuanshuo.apk
会得到一个目录,修改这个目录下的AndroidManifest.xml文件。 新增android:debuggable="true"
然后重新打包:apktool b gongjianchuanshuo -o gongjianchuanshuo-debug.apk
第三步:

➜  Downloads adb install gongjianchuanshuo-debug.apk

gongjianchuanshuo-debug.apk: 1 file pushed. 5.5 MB/s (131559208 bytes in 22.771s)

pkg: /data/local/tmp/gongjianchuanshuo-debug.apk

Failure [INSTALL_FAILED_OLDER_SDK]

出现了一个乌龙:INSTALL_FAILED_OLDER_SDK。   
待调试的安装包需要的SDK版本比本机要高,于是回到第二步,重新修改AndroidManifest.xml文件
新增: <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="28"/>
再重新打包。 然后重新执行第三步。

第四步:

➜  Downloads adb install gongjianchuanshuo-debug.apk

gongjianchuanshuo-debug.apk: 1 file pushed. 5.3 MB/s (131559929 bytes in 23.741s)

pkg: /data/local/tmp/gongjianchuanshuo-debug.apk

Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]

错误的意思是:没有签名。 得需要重新签名一下

第五步:重新签名
keytool -genkey -alias debug.keystore -keyalg RSA -validity  -keystore debug.keystore
jarsigner -verbose -keystore debug.keystore -signedjar gongjianchuanshuo-debug_signed.apk gongjianchuanshuo-debug.apk debug.keystore

ida 调试android之路的更多相关文章

  1. ida 调试 android fork

    在使用ida 调试android native代码时经常会碰见fork子进程的情况出现,而运行一个 android_server只能对一个进程进行调试或者attach,而ida 默认端口是23946, ...

  2. IDA 调试 Android 方法及简单的脱壳实现

    IDA 调试 Android 方法及简单的脱壳实现 标签: android原创逆向调试dalvik 2016-05-24 14:24 9286人阅读 评论(3) 收藏 举报 分类: 原创(25) An ...

  3. IDA 调试 Android

    最近都在学一些反编译安卓相关的东西,其实网上有很多教程关于用 IDA 调试 Android 的过程,主要记录一下我遇到的坑 首先 Android手机要是root过的 还要注意的一点是apk中的 And ...

  4. 【转】IDA 调试 Android

    最近都在学一些反编译安卓相关的东西,其实网上有很多教程关于用 IDA 调试 Android 的过程,主要记录一下我遇到的坑 首先 Android手机要是root过的 还要注意的一点是apk中的 And ...

  5. IDA调试android so文件.init_array和JNI_OnLoad

    我们知道so文件在被加载的时候会首先执行.init_array中的函数,然后再执行JNI_OnLoad()函数.JNI_Onload()函数因为有符号表所以非常容易找到,但是.init_array里的 ...

  6. IDA调试android so的.init_array数组

    参考: http://www.itdadao.com/articles/c15a190757p0.html 一. 为什么要调试init_array init_array的用途 1. 一些全局变量的初始 ...

  7. ida调试 android so

    C:\Documents and Settings\Administrator>adb shellshell@htc_v2_dtg:/ $ susushell@htc_v2_dtg:/ # cd ...

  8. IDA动态调试Android的DEX文件

    Android程序的dex文件的动态调试确实是个大问题,网上也有一些教程但是不是特别的详细,今天用到了IDA动态调试Android的DEX文件,特此记录一下. IDA 6.6新添加了对dex文件的调试 ...

  9. Android动态方式破解apk进阶篇(IDA调试so源码)

    一.前言 今天我们继续来看破解apk的相关知识,在前一篇:Eclipse动态调试smali源码破解apk 我们今天主要来看如何使用IDA来调试Android中的native源码,因为现在一些app,为 ...

随机推荐

  1. Kubernetes Dashborad 搭建

    需求 基于网页查看Kubernetes 用户管理界面 安装步骤 在控制面板节点部署dashborad kubectl apply -f https://raw.githubusercontent.co ...

  2. pytest之fixture使用详解

    简介: fixture区别于unnitest的传统单元测试(setup/teardown)有显著改进: 1.有独立的命名,并通过声明它们从测试函数.模块.类或整个项目中的使用来激活. 2.按模块化的方 ...

  3. meavn项目由打包方式jar改为war报Cannot install Dynamic Web Module 2.5 facet. It is incompatibile with already installed facets: Utility Module. Please modify project configuration.处理方式

    找到  \项目名\.setting\文件夹下的   org.eclipse.wst.common.project.facet.core.xml  xml文件. 添加或修改 <installed ...

  4. Rocket - debug - TLDebugModuleInner - innerCtrl

    https://mp.weixin.qq.com/s/7UY99gEJ8QpVBJIohdqKhA 简单介绍TLDebugModuleInner中innerCtrl相关的寄存器. 1. innerCt ...

  5. JavaWeb项目:旅游网站【涉及各种知识】

    JQuery异步请求(ajax) $.ajax({ // 请求方式为get或者post等 type: "GET", // 服务器响应的数据类型 dataType: "js ...

  6. WALT(Window Assisted Load Tracking)学习

    QCOM平台使用WALT(Window Assisted Load Tracking)作为CPU load tracking的方法:相对地,ARM使用的是PELT(Per-Entity Load Tr ...

  7. Java实现 蓝桥杯 算法提高 天天向上(DP)

    试题 算法提高 天天向上 问题描述 A同学的学习成绩十分不稳定,于是老师对他说:"只要你连续4天成绩有进步,那我就奖励给你一朵小红花."可是这对于A同学太困难了.于是,老师对他放宽 ...

  8. Java 第十一届 蓝桥杯 省模拟赛十六进制转换成十进制

    问题描述 请问十六进制数1949对应的十进制数是多少?请特别注意给定的是十六进制,求的是十进制. 答案提交 这是一道结果填空的题,你只需要算出结果后提交即可.本题的结果为一个整数,在提交答案时只填写这 ...

  9. (Java实现) 洛谷 P1071 潜伏者

    题目描述 R国和 S国正陷入战火之中,双方都互派间谍,潜入对方内部,伺机行动.历尽艰险后,潜伏于 S国的 R 国间谍小 C终于摸清了 S 国军用密码的编码规则: 1. S 国军方内部欲发送的原信息经过 ...

  10. 第四届蓝桥杯JavaC组省赛真题

    解题代码部分来自网友,如果有不对的地方,欢迎各位大佬评论 题目1.猜年龄 题目描述 美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学.他曾在1935~1936年应邀来中国清华大学讲学. 一 ...