精华内容
下载资源
问答
  • DDMS
    2020-04-08 10:50:43

    DDMS (Dalvik Debug Monitor Server) 是 Android SDK 中的一个 debug 工具,提供了 UI 窗口,可以在 eclipse 中打开,也可以单独使用。

    详情请参考下面的链接:

    http://developer.android.com/tools/debugging/ddms.html

    http://developer.android.com/tools/help/monitor.html

    更多相关内容
  • 开发人员可以通过DDMS看到目标机器上运行的进程/现成状态,可以 android的屏幕到开发机上,可以看进程的heap信息,可以查看logcat信息,可以查看进程分配内存情况,可以像目标机发送短信以及打电话,可 以像android...
  • Android studio中DDMS无法查看data数据 (真实解决获取Android Studio模拟器root权限问题) 文章目录Android studio中DDMS无法查看data数据原因解决办法一.获取root权限二. 修改data文件夹权限 原因 看一下/data/目录...
  • 从臃肿的sdk中单独提取,可用于逆向调试,非常好用的,有缺少ddms的可以直接下载,从臃肿的sdk中单独提取,可用于逆向调试,非常好用的,有缺少ddms的可以直接下载
  • ddms单文件提取版

    2019-04-20 11:00:26
    ddms单文件提取版,不用再安装sdk了,方便只用来做逆向调试安卓程序用
  • 在AS自带的命令行工具Terminal中输入monitor后回车即可。 如果还是没启动说明没配环境变量, 找到sdk安装目录,tools,复制monitor的全路径到terminal就可以了。 若此时报错:Java was started but returned exit ...
  • 开发android的时候,尽管手机已经root但是DDMS中还是没有data/data路径怎么办? 可以用cmd命令提示符为逐个文件夹设置权限: 打开cmd,输入 adb shell 回车—> su 回车—> chmod 777 /data 回车—> chmod 777...
  • 1、ddmlib.jar:更换此文件来解决Android studio中的Android Device Monitor(DDMS)的File Explorer不显示目录树的问题。 2、该文件的更换方法:Sdk\tools\lib\monitor-x86_64\configuration\org.eclipse.osgi\...
  • 源码参考,欢迎下载
  • DDMS 无法显示进程解决方案 mprop
  • mac下支持DDMS的jdk版本,更高版本将无法再使用mac下的DDMS
  • DDMS简洁版,适合做测试不想安装厚重版软件的同学。由于使用的是笔记本,性能有限,所以软件尽量选择轻量版。可满足日常的日志查看等需求
  • Android 调试工具ddms的devices栏目存在一个功能叫做start method profiling,此按钮顾名思义是启动method profiling的,而Android的Method Profiling功能,是可以在一段时间内记录所有运行过的函数,最后生成一个...
  • ddms_traceView.zip

    2019-12-11 13:50:15
    这是一个通过DDMS分析Android的CPU占用过高生成的TraceView文件,希望对使用TraceView有帮助。
  • DDMS不显示手机文件目录怎么办?-附件资源
  • DDMS加文件出错

    2019-04-19 01:36:40
    NULL 博文链接:https://fallingautumn.iteye.com/blog/1745407
  • 详细介绍了EcliPse安装配置环境 DDMS使用,个人总结教程!
  • 启动eclipse中的DDMS

    2013-05-16 23:17:39
    讲解如何在eclipse中启动DDMS,能够找到数据库文件等相关信息文件
  • Android DDMS 找不到手机设备的最佳辅助软件,几乎所有的DDMS能成功找到设备,都是靠它成功的!很实用,毕竟是大公司!不过里面的推荐可以不装!
  • DDMS工具使用

    千次阅读 2020-10-16 15:49:05
    往期推荐 快速定位关键代码 Smali文件详解 Java层逆向分析-Dalvik字节码 ...由于DDMS 工具存放在SDK工具中的tools路径下,所以呢,在使用DDMS工具之前,需要先下载SDK工具。下载完成后解压安装包,并

    往期推荐

    快速定位关键代码

    Smali文件详解

    Java层逆向分析-Dalvik字节码

    修改资源去广告

    1.DDMS工具的介绍

    DDMS的全称是Dalvik Debug Monitor Service,是Android开发环境中的Dalvik虚拟机调试监控服务。
    DDMS的作用是提供截屏,查看线程和堆的信息,查看logcat日志信息等等。

    2. 2DDMS工具的打开方式 :

    由于DDMS 工具存放在SDK工具中的tools路径下,所以呢,在使用DDMS工具之前,需要先下载SDK工具。下载完成后解压安装包,并配置SDK环境。
    环境配置完成后,我们可以通过两种方式打开DDMS工具:
    第一种,点击左下角“windows图标”,输入“cmd”命令,打开命令窗口,输入“ddms”命令打开DDMS工具,如下图所示。

    在这里插入图片描述

    第二种,直接打开刚刚下载好的SDK工具,找到tools 文件夹,双击打开,找“ddms.bat”文件,然后双击打开。
    打开的ddms工具界面,在具体分析之前,先了解一下ddms工具的一些常见功能。

    3.ddms工具的常见功能

    左上一栏中有三列:第一列是进程名称也就是应用程序的包名;第二列的数值是进程 PID ;第三列数值是端口。
    左下一栏中绿色的加号(+ )是添加过滤器,减号(—) 是删除过滤器。减号旁边的符号是修改过滤器。
    右下一栏是日志信息显示级别,点开有几项,均是日志信息的级别,根据需要进行选择。旁边红X图标是清理日志信息,如下图所示。

    在这里插入图片描述

    4.使用DDMS工具分析“车来了”APP广告

    打开雷电模拟器,安装“车来了.apk”文件,安装成功后如下图所示。

    在这里插入图片描述

    第一步:点击“+”按钮创建过滤器。弹出一个弹窗,依次有五项,过滤器名称、Tag标签,用来过滤日志信息、日志信息内容、进程PID和进程名称即包名,用来过滤日志信息,如下图所示。

    在这里插入图片描述

    添加过滤器名称为“yijindaxue”,选择“车来了”APP的包名“com.ygkj.
    chelaile.standard”作为过滤条件,如下图所示。,填写完成后点击“OK”。

    在这里插入图片描述

    第二步:浏览log日志信息,会发现它不断的发送这个请求,“http:
    //atrace.chelaile.net.cn/”,这个请求就是我们要寻找的突破口,如下图所示。

    在这里插入图片描述

    第三步:篡改“车来了”APP去除广告信息。
    将“车来了”APP拖入AndroidKiller里面进行反编译,反编译完成后,点击“工程搜索”选项,在搜索编辑框里输入“atrace.chelaile.net.cn”,点击“搜索”按钮进行搜索,如下图所示。

    在这里插入图片描述

    在替换编辑框里输入要替换的内容“127.0.0.1”,点击“全部替换”按钮进行替换,替换成功后,点击“编译”按钮进行编回译,如下图所示。

    在这里插入图片描述

    最后,将雷电模拟里面的原“车来了”APP卸载了,安装修改后的“车来了”APP程序。

    小结:

    DDMS来去除广告的步骤:
    第一步 点击“+”按钮创建过滤器;
    第二步 浏览“log”日志信息,找到“突破点”;
    第三步 篡改APP中的“突破点”实现去广告。

    如果你也对安卓逆向感兴趣。可以加下方的群,大家一起讨论问题,或者扫描下方二维码,关注回复 “安卓逆向” 获取免费教程

    安卓逆向交流学习:1139349849
    vx:Yjxiaox

    在这里插入图片描述

    展开全文
  • monitor.exe(DDMS工具连接手机后可查看进程端口,与AndroidStudio一起使用实现动态调试) AndroidKiller(反编译APK使用,可使用其他工具可替代) Magisk(用于修改default.prop内属性值,开启debug权限) adb...
    • 所需工具
    1. AndroidStudio(用于调试smali代码)
    2. monitor.exe(DDMS工具连接手机后可查看进程端口,与AndroidStudio一起使用实现动态调试)
    3. AndroidKiller(反编译APK使用,可使用其他工具可替代)
    4. Magisk(用于修改default.prop内属性值,开启debug权限)
    5. adb(连接手机,修改default.prop内属性值,开启debug权限)
    6. smalidea-0.06(AndroidStudio插件,安装后可识别smali文件,用于动态调试)

    动态调试应用场景

    我不是安卓开发,这个主要用来逆向apk抓数据用的。比如X宝,x手之类的apk单纯抓包是很难解决的,所以通过动态调试的方式找请求,破加密。

    具体实现流程

    1.安装AndroidStudio及插件

    此处省略,注意smalidea版本即可,我的Android Studio Arctic Fox,所以需要安装smalidea-0.06版本插件,低版本会报错,其他版本的Android Studio自行下载smalidea尝试即可。下面是安装后的效果。

    在这里插入图片描述

    2.DDMS工具monitor.exe

    monitor.exe这个工具是androidSDK自带工具,按下图找到Sdk安装位置,找到这个路径,在该路径下可以看到tools文件夹,进入tools可以看到monitor.bat,双击即可打开monitor.exe。也可以进入tools\lib\monitor-x86文件下直接打开monitor.exe
    在这里插入图片描述在这里插入图片描述这是打开后的monitor.exe,如果没有修改过default.prop,在左侧Devices面板上应该只能看见当前连接的手机,而看不见手机上的apk进程及端口号,所以咱们需要进行下一步操作。
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/b6d9f81455f44f9aa2ff2ebab132cc03.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5Lqs5Y2X5Zyf6IKl5ZyG,size_20,color_FFFFFF,t_70,g_se,x_16

    3.在Magisk上安装模块,修改default.prop文件

    在Magisk上安装下图红框内的两个插件
    在这里插入图片描述
    安装完成后通过adb连接手机,并通过su命令切换root用户。在root用户下运行props命令,会显示如下界面,我们先输入3选择‘Edit MagiskHide props’,之后输入1选择‘ro.debuggable’,然后根据提示‘y’即可。(图中是我已经修改后的状态,ro.debuggable默认值是0,表示不允许debug,通过上述模块我们需要将值改为1,这样就可以调试手机上的所有apk了)
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述

    4.反编译Apk获取smali代码

    动态调试需要使用smali代码,所以我们需要先将apk进行反编译。我是使用AndroidKiller做的反编译,主要是这个比较省事,这个软件还有许多其他功能,比如在apk内插入log,重新打包等,不过我暂时没有用到,具体的使用方法百度即可。
    反编译完成后AndroidKiller会在其projects文件夹内生成smali代码,具体看下图
    在这里插入图片描述
    Project文件夹就是全部的smali代码,我们只需将该文件夹作为一个project导入AndroidStudio即可。

    5.配置AndroidStudio连接DDMS工具

    首先我们先将手机连接电脑,打开DDMS后会自动识别到手机,并可查看手机上的apk进程及端口号,如图所示
    在这里插入图片描述选中我们要调试的APK进程,右侧是apk占用的端口号,像图上这种,我们选择使用后面的8700即可,选中进程后上排操作按钮会点亮(想要与AndroidStudio连接必须选中进程,否则AndroidStudio内会提示连接失败)
    之后我们打开AndroidStudio,并进行配置。首先导入我们反编译的smali项目,之后点击右侧红框内的‘Add Configurations’。
    在这里插入图片描述在弹出框内,我们点击左上角的‘+’,选择‘Remote JVM Debug’(AndroidStudio版本不同这个名称也会有区别,但都是Remote开头)。在新弹出的面板中将端口号修改为我们要调试的apk进程端口号,并定义个名称,然后点击确定即可
    在这里插入图片描述在这里插入图片描述

    6.开始调试apk

    到此为止我们已经完成了前期所有的准备操作,可以开始调试apk了。首先找到想要调试的方法打上断点,左上角选中咱们刚添加的玩意,然后点击debug按钮,看到如下图所示的数据信息就表示咱们已经连接成功了。
    在这里插入图片描述
    在这里插入图片描述连接成功后,咱们打开手机中要调试的apk,随着操作触发断点后就可在AndroidStudio中调试了,入下图所示。左侧面板显示的是跳转流程,右侧有具体的参数值。
    在这里插入图片描述
    到此整个调试流程结束。(备注:由于不懂smali语法所以看这些代码挺蒙圈的,现阶段我是结合jadx与动态调试一起使用,一边看java代码一边在smali搜索具体要设置断点的位置)

    附录:如何判断打断点的位置

    刚接触动态调试,还没了解到太好的方法。目前我用的方法是结合DDMS工具来判断断点位置。
    比如,我想查看点击apk内一个搜索按钮之后程序的运行流程,那我们可以打开DDMS工具,然后点击下图红框内的按钮,这个按钮的功能是记录一段时间内的apk内部的工作流程。所以我们可以先启动这个功能,然后操作apk,比如点击一下搜索按钮,然后在点一次DDMS内的按钮进行关闭,然后工具内会自动打开一个信息面板,我们直接在面板内搜索可能触发的onclick等一些监听请求,便能快速定位要断点的位置了。
    在这里插入图片描述在这里插入图片描述目前的心得就这些,如果大家有更好的调式方法希望能给我留言,感谢。

    展开全文
  • ddms工具使用以及案例

    2021-09-19 08:54:51
    ddms工具使用以及案例 ddms的主要用途,就是查看app的各种输出,尤其是日志的输出和方法剖析 工具准备 环境配置连接:https://blog.csdn.net/tianyi19/article/details/115335951 启动ddms ddms是在sdk中的,一般情况下...

    ddms工具使用以及案例

    ddms的主要用途,就是查看app的各种输出,尤其是日志的输出方法剖析

    工具准备

    环境配置连接:https://blog.csdn.net/tianyi19/article/details/115335951
    用到的apk

    链接:https://pan.baidu.com/s/1rAONbtafSYos-IKHddQw2w 
    提取码:emrc
    

    启动ddms

    ddms是在sdk中的,一般情况下我们已经将platform-toolstools目录添加到环境变量
    所以只需要在cmd中输入ddms即可
    在这里插入图片描述
    等待启动,启动完成界面如下
    空空如也
    在这里插入图片描述
    我们来启动一个模拟器试试,看看ddms有什么变化
    在这里插入图片描述

    车x了去广告

    先看第一个例子,现在app为了盈利,很多时候都会加入广告,但是好烦人的,怎么去掉呢?

    车x了广告如下

    在这里插入图片描述

    查看ddms输出

    模拟器上app打开,观察ddms输出
    在这里插入图片描述

    添加过滤器

    但是你发现好多输出啊,不知道哪个是车x了的输出,怎么搞?
    添加过滤器,只看车x了的输出
    在这里插入图片描述
    点击车x了过滤器,这样我们看到的,就只有车x了的输出了
    在这里插入图片描述

    发现广告

    清空日志,重新打开app,观察输出
    你发现了关键字,广告!!!
    在这里插入图片描述
    这说明啥,但是这个到底是不是车x了首页的广告呢?其实我也不知道,毕竟逆向就是这,一半是基础,一半是靠蒙

    提取一下url
    右击日志->filter similar messages
    在这里插入图片描述
    弹出框选择关键链接,因为后面的可能都是参数
    在这里插入图片描述

    替换广告链接

    然后该怎么做呢?将所有这个链接换成127.0.0.1试一下,假装还是正常访问,不过已经失效了
    换成127.0.0.1表示这还是个正常的链接,只不过是无响应而已,如果换成空字符串或者其他,可能就不是无响应,直接是大异常,app可能会直接崩溃
    在这里插入图片描述
    替换完成, 重新回编译
    再次安装app,然后运行,观察ddms,发现无法读取url,失效了!
    并且app也没广告了
    在这里插入图片描述

    好x小说插桩和栈跟踪

    什么是插桩

    插桩本质就是Java的输出日志,
    但是我们都知道,向jadx-gui等反编译工具,虽然可以将apk逆向成Java代码
    但是那都是伪Java代码,是根据smail翻译过来的,并且伪Java代码是不能修改的
    但是smail是可以修改的
    所以插桩就是用smial来完成log输出,来验证自己的猜想知否正确

    开始插桩

    必须使用上述链接配置的AK(Android Killer)和jadx-gui

    apk拖入AK中,找到入口函数,也就是onCreate方法
    在这里插入图片描述
    .prologue代码之后,进行插桩
    如果是安装上述链接配置的AK,右击会有插入代码->Log信息输出
    插入位置图如图所示
    在这里插入图片描述
    其实就是这两行,调用了Log而已
    在这里插入图片描述
    插桩内容尽量只能是英文或者中文转unicode码,可以利用AK快速完成转换在这里插入图片描述
    回编译在jadx中看看Java代码,插桩其实就是log而已
    在这里插入图片描述
    保存,回编译,安装到模拟器
    在ddms中添加一个过滤器,就可以看到自己插入的日志了
    在这里插入图片描述

    可能出现的问题

    插桩是会失败的
    比如,寄存器位0个
    在这里插入图片描述
    如果.locals为0,把.locals改为1即可,或者更多

    方法栈跟踪

    栈跟踪和插桩类似,插桩的本质是log,栈跟踪的本质就是报异常
    都知道,不管是什么语言,报异常的时候,都会有引发一系列提示,最终定位到某一个自己代码触发的异常
    所以栈跟踪理论来说可以更好的理清逻辑

    插入栈跟踪

    在入口函数插入栈跟踪,不过这次不是在onCreate,在loadData函数下插入
    在这里插入图片描述
    本质就是这几行代码,触发异常
    在这里插入图片描述
    回编译一下,在jadx中看一下
    在这里插入图片描述
    如果栈跟踪能触发,那就说明执行流程应该是onCreate()->loadData()->栈跟踪信息

    真的是这样子吗?
    ddms中看一下吧
    Tag为System.err的就是栈信息,如果没有,可能需要卸载重装
    在这里插入图片描述
    确实如此,不过逻辑是从下往上看的,跟jadx图调用关系一样

    方法剖析

    还是好x小说这个app,我们打开登录这个页面
    在我的里面
    在这里插入图片描述
    我点击了这个立即登录,究竟触发了哪些方法呢?
    在这里插入图片描述
    注意:玩方法剖析手要快!,因为打印的东西太多
    在这里插入图片描述
    点击ok后,去模拟器点击登录
    在这里插入图片描述
    然后还是去点击刚才那个按钮在这里插入图片描述
    然后等一会会自动弹出一个东西,如图所示
    在这里插入图片描述
    可以发现就那一会,就有2800个方法,所以一定快
    在这里插入图片描述
    还是上述的操作,再来一遍,发现有132个,所以操作一定要快
    在这里插入图片描述
    ps:子节点(Children)就是将要去调用的节点

    点击登录触发的是onclick方法,搜索一下
    在这里插入图片描述
    一般也是从下往上找

    根据分析,点击立即登录按钮,应该触发的是这个类的onClick
    在这里插入图片描述
    但是到底点击登录触发的是不是这个类呢?
    在jadx中找一下这个类
    在这里插入图片描述
    在AK中这个位置插桩
    在这里插入图片描述
    回编译app,在ddms中看一下,通过插桩来验证一下逻辑是否正确
    在这里插入图片描述
    点击立即登录按钮,触发日志,可以确定,位置没找错

    展开全文
  • Android DDMS如何使用

    千次阅读 2019-02-12 09:30:40
    Android DDMS如何使用
  • 图文并茂,实例说明的形式展示DDMS具体的使用方法
  • 研究安卓app性能测试,参考了网上部分优秀博客整理了一份文档,以供以后查询
  • DDMS 使用方法

    2018-07-10 10:37:00
    二、DDMS(DalvikDebugMonitorServer)四个主要窗口 Devices:当前电脑接入的android设备,及设备运行的进程,可以结束进程,设置程序为debug模式,截屏等。 LogCat:会打印系统运行过程中所有的日志信息 File ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 27,790
精华内容 11,116
关键字:

ddms