0x00    前言

之前对于app反编译的smali汇编语言都是静态分析为主,加上一点ida6.6的动态调试,但是ida的调试smali真的像鸡肋一样,各种不爽,遇到混淆过的java代码就欲哭无泪了。后来知道IDEA用一款插件也可以实现smali的动态调试,但是只有14.1之后的版本才支持。idea是一款商业软件,懒得去找各种破解版,就想着用androidstudio来代替idea来达到动态调试的目的。

0x01    工具

①Android Studio 1.5Preview,不清除低版本的是否支持smali的调试

②apktool,尽量使用最新版的。

③ideasmali插件。https://bitbucket.org/JesusFreke/smali/downloads/

0x02     具体步骤

安装ideasmali插件,File->Settings->Plugins,安装之前下载的ideasmali插件。

以调试状态启动app,并转发8700端口  [app_pid]

记住这时候需要将DDMS关掉,不然会出现错误

使用AS导入之前反编译的目录,这里选择debugsmali文件夹就可以了。

然后选择Create project from existing sources,之后一直选择next

对之前反编译的debugsmali/src文件夹右键-->Make Directory As --->Source Root

配置远程调试的选项,选择Run-->Edit Configurations:

增加一个Remote调试的调试选项,端口选择:8700

之后选择File-->Project Structure 配置JDK

下好断点之后Run-->Debug'smali',这里的smali是我们之前配置好的调试选项。

运行起来之后就可以单步执行,查看寄存器的值,慢慢调试了。

原文  http://www.cnblogs.com/lanrenxinxin/p/4891424.html

AndroidStudio+ideasmali动态调试smali汇编相关推荐

  1. 安卓逆向_13 --- AndroidStudio + Smalidea 动态调试 smali 代码【APK可调试】、gradle 配置

    教我兄弟学Android逆向04 动态调试smali代码:https://www.52pojie.cn/thread-658865-1-1.html From:Android Studio 3.6 调 ...

  2. DDMS+AndroidStudio实现动态调试

    所需工具 AndroidStudio(用于调试smali代码) monitor.exe(DDMS工具连接手机后可查看进程端口,与AndroidStudio一起使用实现动态调试) AndroidKill ...

  3. 012 动态调试smali代码

    文章目录 前言 配置调试插件 调试插件的使用 总结 常见问题 前言 之前分析游戏进行破解的时候,都是通过字符串和日志的方式来对程序进行静态分析.但是在遇到算法类型的程序时,这种方法就显得效率特别低,所 ...

  4. 安卓逆向_12 --- jeb工具的使用 ( 动态调试 smali 代码 【 普通调试 和 debug调试 】)

    From:https://www.52pojie.cn/forum.php?mod=viewthread&tid=742250 jeb 动态调试 smali 代码:https://www.bi ...

  5. Android 逆向分析(三)之动态调试Smali

    2019独角兽企业重金招聘Python工程师标准>>> 动态调试smali 实战 反编译后修改AndroidMainfest.xml 在Application节点下添加 androi ...

  6. 安卓逆向_12 --- jeb工具的使用 ( 动态调试 smali 代码 【 普通调试 和 debug调试 】)...

    From:https://www.52pojie.cn/forum.php?mod=viewthread&tid=742250 jeb 动态调试 smali 代码:https://www.bi ...

  7. AndroidStudio动态调试smali

    本文部分参考至吾爱破解https://www.52pojie.cn/thread-658865-1-1.html 1.环境与工具 AndroidStudio V3.2beta1 smaliidea-- ...

  8. vc2010中开始执行不调试灰的_反编译动态调试smali全过程

    点击上方蓝字关注我,每天进步一点点 大家都知道我们在逆向分析的时候,很多时候主要在分析逻辑.网络抓包.数据来源流向分析.页面逻辑跳转分析.动态调试等.由于很多代码都会混淆,很多时候我们直接通过代码可能 ...

  9. Android Studio动态调试Smali

    网上的教程坑太多,记录一下 下载地址 https://bitbucket.org/JesusFreke/smali/downloads Android Studio安装smalidea插件 java ...

最新文章

  1. 【react开发】使用swiper插件,loop:true时产生的问题解决方案
  2. 机器学习笔记:auto encoder
  3. 小工具发布,QCountDown-语音倒计时
  4. 软件工程与项目管理的关系_软件工程:软件工程概述13个问题解答?
  5. Spark Java API:broadcast、accumulator
  6. 微服务的好处与弊端_在云原生时代,就一定要用微服务吗?
  7. eureka 集群失败的原因_eureka集群中的疑问?
  8. JavaScript循环:标签语句,继续语句和中断语句说明
  9. 方法覆盖(方法重写)
  10. 在UE中自由绘制基本图元的几种方法
  11. volatile深入
  12. 西门子1200如何与c语言通信,S7-1200PLC1214c dc/dc/dc通过profinet以太网和S7-200smartcpu通讯怎么设置?...
  13. [置顶]       JQUERY一些注意事项
  14. keil删除工程_RTT 是如何管理和构建工程的?
  15. 智能优化算法:头脑风暴优化算法-附代码
  16. 【毕业设计】基于STM32的智能药箱系统设计与实现 - 物联网 单片机
  17. 【python】43_用pygame制作乌龟吃鱼游戏
  18. win10c盘扩容_Win10中无损分区扩容调整大小
  19. 生活随记 - 尝试与师傅沟通争取自己的权益
  20. http://www.jb51.net/article/84149.htm

热门文章

  1. Lucene全文检索
  2. 【编程开发】Python---列表
  3. Centos 6.5部署nginx+uwsgi+django
  4. 【VS开发】CString 转为 char *方法大全
  5. 将XML解析成DOM文档
  6. java实现可有括号的android计算器
  7. linux的基础知识——UDP
  8. Leetcode--455. 分发饼干
  9. 训练过程acc_AI 深度学习训练tricks总结(均有实验支撑)
  10. spark sql合并小文件_Spark SQL小文件问题在OPPO的解决方案