Android 逆向(四) - adb常用逆向命令-程序员宅基地

技术标签: android  逆向  adb  

Android 逆向(四) - adb常用逆向命令

本篇文章继续记录下adb 的一些常用逆向命令.

1: adb shell ps

该命令可以查看进程信息.

用法: adb shell ps |grep [pname]

zh@zh:~/workSpace$ adb shell ps
USER PID PPID VSZ RSS WCHAN ADDR S NAME
root 1 0 2189532 3660 0 0 S init
root 2 0 0 0 0 0 S [kthreadd]
root 3 2 0 0 0 0 I [rcu_gp]
root 4 2 0 0 0 0 I [rcu_par_gp]
root 8 2 0 0 0 0 I [mm_percpu_wq]
root 9 2 0 0 0 0 S [ksoftirqd/0]
root 10 2 0 0 0 0 I [rcu_preempt]
root 11 2 0 0 0 0 I [rcu_sched]
root 12 2 0 0 0 0 I [rcu_bh]
root 13 2 0 0 0 0 S [rcuop/0]
root 14 2 0 0 0 0 S [rcuos/0]
root 16 2 0 0 0 0 S [rcuob/0]
root 17 2 0 0 0 0 S [migration/0]
root 18 2 0 0 0 0 S [cpuhp/0]
root 19 2 0 0 0 0 S [cpuhp/1]
root 20 2 0 0 0 0 S [migration/1]
root 21 2 0 0 0 0 S [ksoftirqd/1]
root 23 2 0 0 0 0 I [kworker/1:0H-kblockd]
root 24 2 0 0 0 0 S [rcuop/1]
root 25 2 0 0 0 0 S [rcuos/1]
root 26 2 0 0 0 0 S [rcuob/1]
root 27 2 0 0 0 0 S [cpuhp/2]
root 28 2 0 0 0 0 S [migration/2]
root 29 2 0 0 0 0 S [ksoftirqd/2]
root 31 2 0 0 0 0 I [kworker/2:0H-kblockd]
root 32 2 0 0 0 0 S [rcuop/2]
root 33 2 0 0 0 0 S [rcuos/2]
root 34 2 0 0 0 0 S [rcuob/2]
root 35 2 0 0 0 0 S [cpuhp/3]

过滤进程名称:

zh@zh:~/workSpace$ adb shell ps |grep com.sohu.inputmethod.sogou
u0_a434 29729 733 6858060 173656 0 0 S com.sohu.inputmethod.sogou
u0_a434 29968 733 7345116 174220 0 0 S com.sohu.inputmethod.sogou:home

python 用法:

python 执行adb 命令的代码也很简单,如下:

import subprocess

subprocess.run([“adb”, “shell”, “ps |grep com.sohu.inputmethod.sogou”])

执行结果:

/usr/bin/python3 /home/zh/workSpace/python/Test1/venv/adb.py
u0_a434 29729 733 6858060 173656 0 0 S com.sohu.inputmethod.sogou
u0_a434 29968 733 7327680 174220 0 0 S com.sohu.inputmethod.sogou:home

Process finished with exit code 0

2: adb shell top

该命令可以实时查看资源占用情况

用法: adb shell top

Tasks: 744 total,   6 running, 737 sleeping,   0 stopped,   1 zombie
  Mem:  7823156K total,  7527928K used,   295228K free,   2592768 buffers
 Swap:  4194300K total,  1431156K used,  2763144K free,  3952064K cached
800%cpu 179%user  31%nice 116%sys 451%idle   3%iow  14%irq   5%sirq   0%host
   PID USER         PR  NI VIRT  RES  SHR S[%CPU] %MEM     TIME+ ARGS           
 31951 u0_a170      10 -10 7.3G 216M 141M R  109   2.8   0:02.01 com.android.mms
 29729 u0_a434      20   0 6.5G 166M 150M S 67.0   2.1  59:40.47 com.sohu.input+
  1585 system       18  -2  12G 321M 321M S 38.6   4.1 1051:25.3 system_server
  1049 system       -2  -8 2.6G  17M  13M R 15.0   0.2 510:12.70 surfaceflinger
  3855 radio        20   0 6.7G  55M  55M S  9.6   0.7  61:15.16 com.android.ph+
   156 root         20   0    0    0    0 S  8.0   0.0   8:42.71 [kswapd0:0]
   533 logd         30  10 2.1G 5.8M 2.6M S  7.6   0.0 140:49.31 logd
   947 system       -3   0 2.2G 5.1M 4.3M S  4.6   0.0 135:51.76 vendor.qti.har+
 29120 shell        20   0 2.1G 5.7M 4.3M S  3.3   0.0   0:07.47 adbd --root_se+
 31581 root         20   0    0    0    0 I  3.0   0.0   0:00.44 [kworker/u16:1+
   549 system       20   0 2.0G 2.5M 2.3M S  3.0   0.0   0:56.66 android.hardwa+
 31938 shell        20   0 2.0G 4.4M 3.0M R  2.3   0.0   0:00.37 top
  2711 root         19  -1    0    0    0 S  2.3   0.0  91:36.77 [cds_ol_rx_thr+
   731 root         20   0 2.3G 3.8M 3.3M S  2.3   0.0  18:27.65 netd
  3396 u0_a116      20   0 7.9G 106M 106M S  2.0   1.3 201:44.89 com.android.sy+
 22626 u0_a185      20   0 6.1G 110M  94M S  1.6   1.4   0:07.73 com.oppo.userc+
  1501 mediacodec   20   0 2.6G 4.2M 4.2M S  1.6   0.0   0:27.59 media.swcodec +
  1410 root         30  10 2.0G 5.1M 3.1M S  1.6   0.0   3:56.47 storaged
 10841 u0_a179      20   0 5.4G  89M  89M S  1.3   1.1   0:31.45 com.nearme.sta+
^C 730 statsd       20   0 2.1G 2.0M 2.0M S  1.3   0.0   7:27.43 statsd

列含义:

  1. PID(Process ID):进程号
  2. USER:进程所属用户
  3. PR(Priority):优先级
  4. NI(Nice value): 进程优先级的调整值
  5. VIRT(Virtual Image (kb)):进程使用的虚拟内存大小
  6. RES(Resident size (kb)):进程使用的物理内存大小
  7. SHR(Shared memory (kb)):进程使用的共享内存大小
  8. S(Process Status): 进程状态 R:运行 S:睡眠
  9. %CPU:当前瞬间占用cpu的百分比
  10. %MEM:进程使用的内存百分比
  11. TIME+:进程运行的累计时间
  12. ARGS:进程的命令名称

3: 查询UID

用法: adb shell dumpsys package |grep userId

zh@zh:~$ adb shell dumpsys package com.sohu.inputmethod.sogou |grep userId
userId=10434

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_23025319/article/details/136875390

智能推荐

程序员实用算法.pdf免费下载_程序员算法pdf 网盘下载-程序员宅基地

文章浏览阅读1.5k次。《程序员实用算法》重点关注的是实用、立即可用的代码,并且广泛讨论了可移植性和特定于实现的细节。《程序员实用算法》作者介绍了一些有用但很少被讨论的算法,它们可用于语音查找、日期和时间例程(直到公元1年)、B树和索引文件、数据压缩、任意精度的算术、校验和与数据验证,并且还最全面地介绍了查找例程、排序算法和数据结构。译者序前言致谢第1章 绪论1.1 评估算法1.2 修改算法1_程序员算法pdf 网盘下载

Python做的一个精简版学生信息管理系统【简单】【实用】_学生信息管理系统开发(简单版)。 功能能点: 展示学生信息-程序员宅基地

文章浏览阅读4.5k次,点赞9次,收藏46次。因为最近打算开发一个信息管理系统,有点复杂。作为初学者的我不是很懂。所以从简单的开始,先练练手。一步一步来,踏踏实实的走。千里之行始于足下。所以参考网上的一片技术文章,稍微修改了一下,做了这个系统。截图:废话不多说,上代码!代码:student_information.py#!/usr/bin/python# -*- coding: UTF-8 -*-students = ..._学生信息管理系统开发(简单版)。 功能能点: 展示学生信息

Pandas DataFrame 根据不同列分组,分组后对不同列使用不同的聚合函数_dataframe按某列分组-程序员宅基地

文章浏览阅读5.8k次,点赞3次,收藏15次。1. groupBy基本操作:import pandas as pdimport numpy as npdf = pd.DataFrame({'A': ['a', 'b', 'a', 'c', 'a', 'c', 'b', 'c'], 'B': [2, 8, 1, 4, 3, 2, 5, 9], 'C': [102, 98, 107, 104, 115, 87, 92, 123]})df# 输出 A B C0_dataframe按某列分组

ubuntu oracle 12c,在Ubuntu上怎么装oracle12c-程序员宅基地

文章浏览阅读715次。安装开始前,确认你的系统符合oracle的最小安装要求:1gb内存(oracle 默认922m内存)1 gb 交换分区(估计你得自己增加,ubuntu默认的swap比较小,自己搜教程吧)非常重要的一点:sudo apt-get install libstdc++5,安装c++类库,不行的话安装6的类库1.1. 设置用户创建组#addgroup oinstall#addgroup dba#addgr..._ubuntu 20.04 oracle 12c

ubuntu14 apt-get 安装java8 ppa_webup8 java-程序员宅基地

文章浏览阅读3.6k次。echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu xenial main" | tee /etc/apt/sources.list.d/webupd8team-java.listecho "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu xenial mai_webup8 java

Sitecore 9 您应该了解的所有新功能和变化-程序员宅基地

文章浏览阅读194次。信不信由你,当我谈论Sitecore时,我感到非常兴奋。这是一个充满潜力和机遇的伟大平台如果你能想象一个刚刚进行过一次双重训练的人,一个特大号的星巴克,并且刚刚在创纪录的时间内完成了中国忍者勇士的障碍训练 - 那就是我在谈论Sitecore 9。以下是Sitecore 9中新功能的概述。这不是技术深入研究,而是高级概述。我希望在未来几周内添加更多图像和链接..._sitecore sxa

随便推点

[javascript]关于帧动画的操作_js逐帧动画-程序员宅基地

文章浏览阅读597次。使用css或者css+js实现帧动画。_js逐帧动画

【图像拼接】SIFT+RANSAC图像拼接与融合【含Matlab源码 3231期】-程序员宅基地

文章浏览阅读1.1k次,点赞27次,收藏12次。SIFT+RANSAC图像拼接与融合完整代码,直接运行,适合小白!可提供运行操作视频!

vmwareworkstation的linux虚拟机关闭屏保【自动锁屏】,掌门一对一java面试题_linux虚拟机如何取消锁屏-程序员宅基地

文章浏览阅读370次,点赞4次,收藏6次。给大家送一个小福利附高清脑图,高清知识点讲解教程,以及一些面试真题及答案解析。送给需要的提升技术、准备面试跳槽、自身职业规划迷茫的朋友们。跳槽、自身职业规划迷茫的朋友们。[外链图片转存中…(img-VzhL7L8l-1711087689878)]本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录。_linux虚拟机如何取消锁屏

【5G】PDSCH/PUSCH DMRS CDM(OCC)原理_occ和pusch-程序员宅基地

文章浏览阅读591次,点赞9次,收藏9次。5G协议解读与原理解析:DMRS CDM需求及码分权值生成原理_occ和pusch

QML ListView实现惰性加载_qlistview实现懒加载-程序员宅基地

文章浏览阅读2.9k次。移动开发中,经常会看到这样的需求,用户拖动列表至列表最下端时,软件自动加载新的内容。这就是惰性加载,也叫延时加载。实现的关键是监控当用户拖动列表至最下端时的事件。上拉加载原理:contentY为列表上拉后列表左上角点距显示框左上解点的高度,listView1.height为可显示部分的高度,假设列表单元的高度为listViewCellHeight,列表个数为li_qlistview实现懒加载

UE4中FString转char* ,控制台字符输出乱码(不是编译期乱码)-程序员宅基地

文章浏览阅读3.1k次。刚接触ue4,原本想着一个很简单的打印字符串,找找博客就没事了 ,但是找来找去 不是要什么安装字体,就是vs只安装英文,启用 utf-8bate版,我只是想简单输出下字符打印啊!!!刚用libuv网络库所以需要从editor就是FString拿到字符转换成char* ,内存中的数值是正常的中英文字符都是正常传输的,但是一到log就不行,谁有时间去一步步调试看内存中是什么啊,找来找去我觉得应该是ue4打印函数不支持utf-8,或者是gbk是这样测试的-> std::string ..._fstring转char*