app攻防-IDA动态调试

admin 2024年11月24日11:56:40评论18 views字数 855阅读2分51秒阅读模式

前言

在App攻防或CTF-Android中,App动态调式是必要学习技能之一,Java层的调试可以通过Frida快速获取到想要的数据,而Native层的数据通过Frida不太好获取,虽然Frida也可以,但是优先IDA调试更方便分析代码。接下来本文讲一下Native层的调试以及IDA&App的一些配置。
在IDA调试中最最最好使用真机,模拟器因为架构不同很难调试起来

无反调试

app攻防-IDA动态调试

在这个App的So文件中,这里是最后判断输入字符串经过加密后是否与预期值一致。
经过粗略分析得知该加密是SM4,密钥是A11223574689900Z,这里最担心的问题就是他有没有魔改这个加密,那么就需要我们直接拿到加密后的结果与标准的SM4加密结果对比一下就知道了。
首先把IDA调试服务文件推送到手机,该文件在IDA目录/dbgsrv下。
推送到手机后在终端启动该文件,使用root权限启动文件。

app攻防-IDA动态调试

在开启一个终端设置一下端口转发

app攻防-IDA动态调试

while这里下一个断点,设置IDA调试配置

app攻防-IDA动态调试

app攻防-IDA动态调试

app攻防-IDA动态调试

app攻防-IDA动态调试

app攻防-IDA动态调试

app同样也需要设置一下,在app的AndroidManifest配置文件中

app攻防-IDA动态调试

在这个标签下我们添加两条属性:

android:debuggable="true"android:extractNativeLibs="true

配置好之后在IDA中

app攻防-IDA动态调试

app攻防-IDA动态调试

此时就可以看到手机中运行的进程了,直接搜索我们需要调试的程序

app攻防-IDA动态调试

启动程序后按一下F9后在App输入字符串,提示会提示

app攻防-IDA动态调试

点Same就好,这个提示可能会在启动调试的时候弹出,反正不管在哪个时机弹出,点Same就好。

app攻防-IDA动态调试

输入的是`AAAAAAAAAAAAAAAA`,我们去在线SM4加密看一下加密结果  

app攻防-IDA动态调试

D99BB5C7E3DBCE3590D54DB4756B78C8

app攻防-IDA动态调试

D99BB5C7E3DBCE3590D54DB4756B78C8

显然是一个标准的SM4加密。那么直接对enc进行解密就好了

文末

下期会更新有反调试应该怎么做,如何绕过。

交流群

添加机器人wx,回复进群,即可获取进群链接。

app攻防-IDA动态调试

原文始发于微信公众号(琴音安全):app攻防-IDA动态调试

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月24日11:56:40
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   app攻防-IDA动态调试https://cn-sec.com/archives/3420104.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息