当前位置:首页 » 《关注互联网》 » 正文

安卓逆向016之AS+smalidea插件动态调试(1)(注册机)_划水的小白白

25 人参与  2021年09月07日 13:03  分类 : 《关注互联网》  评论

点击全文阅读


文章目录

  • 前言
  • 使用AK导出完整的反编译包
  • 新版本(AS 4.1以上)
      • 导入smalidea0.6
      • 导入反编译包到AS
  • 老版本
      • 导入smalidea0.05到AS之中
      • 导入AS完整的反编译包
  • 配置AS
  • 使用AS分析反编译包
      • 第一种方法:
      • 第二种方法:

前言

本篇文章主要内容为:

通过导入反编译出的完整smali代码,设置好调试所需的条件、设置断点。

然后连接模拟器,运行代调试的APK程序

使用AK导出完整的反编译包


将要分析的程序拖入AK,选择“AndroidManifest.xml”,

先看看是否有这个标签,在看看这个debug是否为“true”,

假如是false就要改为true,在重新打包回编译一下,之后在反编译后的APK。

假设没有这个标签就要添加。

在这里插入图片描述

右击这个软件的名称,选择“打开文件路径”。

在这里插入图片描述

这个就是反编译的工程,可以复制到桌面。

在这里插入图片描述

新版本(AS 4.1以上)

导入smalidea0.6

smalidea的作用:

smalidea-0.05.zip用于androidstudio识别smali代码

下载地址:

https://bitbucket.org/JesusFreke/smalidea/downloads/

选择设置,

在这里插入图片描述

根据箭头指向选择,

在这里插入图片描述

导入刚刚下载的smalidea-0.06

在这里插入图片描述

选择OK,

在这里插入图片描述

导入反编译包到AS

直接选择Open,

在这里插入图片描述

选择上边AK导出的反编译包,之后点击“OK”。

在这里插入图片描述

选择“smali”文件夹,给权限。

在这里插入图片描述

之后“smali”文件夹会变为绿色,

在这里插入图片描述
使用新版本的可以直接跳到“ 配置AS ”处,

老版本

导入smalidea0.05到AS之中

打开下载的AS,

在这里插入图片描述

选择从本地导入,选择“smalidea”,

在这里插入图片描述

导入AS完整的反编译包

选择导入,

在这里插入图片描述

选中,点击OK即可,

在这里插入图片描述

记得选择这个“Project”,	//在AS上显示的是文件夹的形象。

在这里插入图片描述

选择“smali”,给权限。

在这里插入图片描述

给完权限后,这会出现一个“小白点”的文件夹,

在这里插入图片描述

配置AS

在打开设置界面,

在这里插入图片描述

选择一下,java的环境,不要忘记点击下面的“ OK ”,

在这里插入图片描述

选择“run”,

在这里插入图片描述

点击“ + ”,选择“Remote”				//(新版本是“ Remote JVM Debug ”)

在这里插入图片描述

名字可以随意改,这个端口建议是8700,不要忘记选择工程,最后点击OK,

在这里插入图片描述

这是新版本的,

在这里插入图片描述

以上就完成了准备工作,开始分析操作,

使用AS分析反编译包

第一种方法:


先打开模拟器,安装并运行“注册机”程序,

在打开CMD,输入“adb shell ps”,查看当前设备的进程信息。

在这里插入图片描述

找到“注册机”程序,

在这里插入图片描述


拿到其“PID”进程号“16703”。			//从左到右的第二列,

新开一个CMD窗口,输入“adb forward tcp:8700 jdwp:16703”

这个8700就是刚刚AS设置的端口,jdwp是转发端口的意思。

在这里插入图片描述


在第二行出现一个8700,说明转发成功,可以调试了,

选择刚刚新建的工程,点击“debug”

在这里插入图片描述


下边窗口出现 “socket”就说明我们可以去找断点了,

新版本为点击这个,

在这里插入图片描述

此时,找到之前我们熟悉的“checkSN”,在前面直接打个断点即可。

在这里插入图片描述

继续运行程序,点击注册,触发断点。

在这里插入图片描述

立马就断了下来,

在这里插入图片描述


按键盘快捷键“F8”向下走,

已经开始计算MD5了,

在这里插入图片描述

开始拼接sb,一般需要拼接32位,但是这么按太烦了,

在这里插入图片描述


在147行,在下一个断点,按“F9”直接掉到新下的断点处。

这个sb已经拼接完毕了,下边的“i”可以看到是32位。

在这里插入图片描述


先看看下边有没有出现“ userSN ”,

在这里插入图片描述


没有出现的话,在F8一下,运行到150行,

复制出现user SN的值,然后结束调试模式。

在这里插入图片描述

直接粘贴复制的值到程序激活码即可成功注册,

在这里插入图片描述

第二种方法:


先关闭之前的两个CMD窗口,以调试模式启动程序,CMD命令如下,

输入“adb shell am start -D -n com.qianyu.zhuceji/.MainActivity”回车,

在这里插入图片描述


这样我们可以直接看到PID的值,不用在ps寻找了,记的点一下上图中红框处,

接着进行转发,新开一个CMD窗口,

在这里插入图片描述

重新打开AS,下断点,运行“debug”,		

接下来的步骤都一致了,完结撒花。

点击全文阅读


本文链接:http://zhangshiyu.com/post/27245.html

选择  导入  反编译  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1