吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4702|回复: 33
收起左侧

[Android 原创] IDA动态调试DEX之AliCrackme_1

  [复制链接]
dummersoul 发表于 2022-5-13 15:24
一直以来都在看别人发的调试贴,今天亲自尝试一下。

打开IDA,将apk直接拖进去,选择dex的格式打开

选择Debugger->Debugger options->Set specific options,在Package Name和Activity中填入主Activity的包名和类名
查看AndroidManifest.xml

看到了包名和主类名,填入

选择Debugger->Process options,将Port改为8700

在function中查找onCreate,点击主类存在的那一处,这就是app初始执行的函数。找到后下断点

在模拟器上开启android_server 监听


进行端口转发,打开要调试的应用

运行之后,能看到模拟器状态,点击RUN

这时准备工作均已就绪,就等着IDA来调试。
IDA选择Debugger->attach to process

进程ID是这个,后面的程序包名没显示完全,可能是这个版本IDA的问题

点击OK之后,就已经附加到了进程上,这时找到Onclick函数位置,进行下段

点击开始调试按钮

刚进入程序,会卡在Oncreat这个函数位置,点击f9跳到click函数的断点位置
这时会显示正在运行

它会一直处于这个状态,这时看我们的模拟器,输入123点击登陆

点击登陆后,ida会跳转到click函数位置,这时出现的弹窗点击取消

这时就可以f8单步调试,想要查看各个参数的状态,需要如下图所示,依次点击

点击后就会出现Local各个参数的值,f8依次调试,找出真正的密码

通过反编译可知 enPassword是我们输入的“123”经过处理得到的值,在调试中也看到了值为“么广亡”


经过pw与enPassword进行比较,如果相等则验证通过,而pw的值是通过getPwdFromPic()函数获取的,所以它是一个固定值,也就是 “义弓么丸广之”
我们只要想办法将enPassword的值改为“义弓么丸广之” 就大功告成了。
想到这一点,直接使用frida将 enPassword = MainActivity.bytesToAliSmsCode(table, password.getBytes("utf-8")); 中的获取方法bytesToAliSmsCode进行重载即可
[JavaScript] 纯文本查看 复制代码
Java.perform(function(){
    var Activity = Java.use('com.example.simpleencryption.MainActivity');
    Activity.bytesToAliSmsCode.overload("java.lang.String","[B").implementation = function(a, b) {
        console.log('Hello Frida!');
        send(arguments[0]);
        send(b);
        var res="义弓么丸广之";
        send(res);
        return res;
    };
});

输入任意值,均会提示破解成功!

hook打印的参数

到此结束破解
但是,在破解过程中,我想如果能从IDA直接修改enPassword的参数值不是更快吗,但是奈何没有找到相关修改方法,有没有大佬告知一下能否修改IDA动态参数,谢谢


AliCrackme_1.zip

1.16 MB, 下载次数: 35, 下载积分: 吾爱币 -1 CB

免费评分

参与人数 6吾爱币 +6 热心值 +6 收起 理由
yippee + 1 + 1 谢谢@Thanks!
blwwst + 1 + 1 我很赞同!
小菜鸟一枚 + 1 + 1 用心讨论,共获提升!
唐小样儿 + 1 + 1 我很赞同!
zhczf + 1 + 1 我很赞同!
Oct666 + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| dummersoul 发表于 2022-5-16 10:05
狄人3 发表于 2022-5-13 17:52
报了什么错?android版本与型号?还有就是调试Dalvik不建议ida就是了

之前可能是我操作姿势不对,所以报错了,刚刚测试了一下,没有问题,调试Dalvik是不是JEB最好啊,这篇的主要目的是想试试IDA调试
狄人3 发表于 2022-5-16 20:41
dummersoul 发表于 2022-5-16 10:05
之前可能是我操作姿势不对,所以报错了,刚刚测试了一下,没有问题,调试Dalvik是不是JEB最好啊,这篇的 ...

jeb遇到的问题会比较少,而且可以方便的看伪代码
taxuewuhen 发表于 2022-5-13 15:39
头像被屏蔽
白鱼啊 发表于 2022-5-13 16:52
提示: 作者被禁止或删除 内容自动屏蔽
 楼主| dummersoul 发表于 2022-5-13 17:06
白鱼啊 发表于 2022-5-13 16:52
感谢分享 大佬 希望能加个QQ更加深入的学习下OD破解

OD破解我还没学习过
头像被屏蔽
白鱼啊 发表于 2022-5-13 17:08
提示: 作者被禁止或删除 内容自动屏蔽
无闻无问 发表于 2022-5-13 17:18
在Locals窗口不是可直接改吗?
 楼主| dummersoul 发表于 2022-5-13 17:26
无闻无问 发表于 2022-5-13 17:18
在Locals窗口不是可直接改吗?

我有尝试改,但是有报错,你有改成功过吗
 楼主| dummersoul 发表于 2022-5-13 17:27
白鱼啊 发表于 2022-5-13 17:08
这个不是OD破解插件吗

我不知道什么插件?
狄人3 发表于 2022-5-13 17:52
dummersoul 发表于 2022-5-13 17:26
我有尝试改,但是有报错,你有改成功过吗

报了什么错?android版本与型号?还有就是调试Dalvik不建议ida就是了
homehome 发表于 2022-5-13 19:02
原来IDA也可以附加,学到了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 12:05

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表