当前位置: 首页 > news >正文

Android逆向学习(五)app进行动态调试

Android逆向学习(五)app进行动态调试

一、写在前面

非常抱歉鸽了那么久,前一段时间一直在忙,现在终于结束了,可以继续更新android逆向系列的,这个系列我会尽力做下去,然后如果可以的话我看看能不能开其他的系列,当然这就要看我以后忙不忙了,废话少说我们开始今天的学习,动态调试

对了,关于之前smali2java插件的bug,已经和开发者联系后修复了这个bug,感谢开发者大大的重视

二、任务目标

进行动态调试,获得对应的密钥

三、动态调试

我们进行动态调试的话首先要添加上这个权限

20230925165800

添加上这个权限后我们才可以进行动态的调试

然后进行打包后得到apk,之后将apk移动到jeb中去(直接拖动就可以)

先开启开发者模式,就是对着版本号点击10下,就可以开启开发者模式了

20230926101637

之后使用adb进行调试

因为在上一期中我是改名成为了东北往事,所以命令是这样的

adb shell am start -D -n com.zj.dongbeiwangshi/.ui.MainActivity

但是!这样运行是有问题的,我改了好久才发现这个问题,就是通过adb启动的话是会连接失败的,所以我选择了更有效的办法,就是直接在模拟器中手动打开这个软件,这个方法是有效的

然后点击JEB的调试

在这里插入图片描述

之后应用就会启动

20230926101849

然后我们点击到第四关,然后看一下这个源代码,我们发现这个是需要flag{xxx}的格式,CTF是吧(笑),无所谓了,我们观察源代码,发现这里有个比较,观察方式就是先找程序入口,然后查看调用的函数,就可以找到这么一个代码

20231003215420

就在这个地方ctrl+b断点,然后开启debug,到时候就可以卡到这个地方

20231003215832

然后我们就发现了这个值,我们把这个值给输入进去,就可以看到这样了

20231003215950

关于log插桩我打算以后有时间再介绍,因为我一直想用另外的方式完成,不是简单的复现,这期就先这样

http://www.lryc.cn/news/181523.html

相关文章:

  • 音频编辑软件Steinberg SpectraLayers Pro mac中文软件介绍
  • 基于.Net Core实现自定义皮肤WidForm窗口
  • 【Rust】操作日期与时间
  • blender快捷键
  • java Spring Boot 自动启动热部署 (别再改点东西就要重启啦)
  • TouchGFX之后端通信
  • cesium gltf控制
  • Spring的依赖注入(DI)以及优缺点
  • 【强化学习】05 —— 基于无模型的强化学习(Prediction)
  • 【计算机组成原理】考研真题攻克与重点知识点剖析 - 第 1 篇:计算机系统概述
  • 【Java-LangChain:面向开发者的提示工程-8】聊天机器人
  • 利用t.ppft.interval分别计算T分布置信区间[实例]
  • 软件工程第三周
  • 动态链接那些事
  • 力扣:118. 杨辉三角(Python3)
  • QGIS文章二——DEM高程裁剪和3D地形图
  • 【kubernetes】kubernetes中的StatefulSet使用
  • 创建文件夹
  • 点击router-link时候会发生什么?
  • 【Spring】@Bean方法中存在继承如何分析
  • 【Vim 插件管理器】Vim-plug和Vim-vbundle的区别
  • 电子计算机核心发展(继电器-真空管-晶体管)
  • SDI-12协议与STM32 进行uart通信
  • JS中的强制类型转换
  • WebSocket实战之四WSS配置
  • veImageX 演进之路:Web 图片加载提速50%
  • WebSocket实战之五JSR356
  • flask-sqlalchemy结合Blueprint遇到循环引入问题的解决方案
  • 05_对象性能模式
  • 快速选择排序