首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【Android 逆向】Android 系统文件分析 ( procpid 进程号对应进程目录 | oom_adj | maps | smaps | mem | task | environ )

PID 就是上述 /proc/ 目录下所有整数对应文件 ; 在 /proc/ 目录下使用 ls -l | grep 31359 命令 , 查询 31359 进程号对应文件 , 该 /proc/31359...00:04:44 com.tencent.mobileqq 2、进程目录 进入 /proc/31359 目录 , 有如下文件 : walleye:/proc # cd 31359 walleye:/...查看 /proc/1/cmdline 文件内容 , 1 进程号对应进程 cmdline 文件 , 显示是 /init 可执行文件 , 这是个应用程序 , 这是 Android 系统启动时 ,...-7fcf451000 , 这些地址是进程内存偏移地址 ; 7fcf430000-7fcf451000 rw-p 00000000 00:00 0..., 可以读取对应地址内存数据 ; Android 逆向时 , 该文件很重要 ; 8、task 子线程 查看 /proc/31359/task 目录内容 : task 目录是该进程子线程 , 下面是腾讯

1.6K10

Linux用户态与内核态通信几种方式

它主要是被用来修改内核运行时参数,换句话说,它可以在内核运行过程,动态修改内核参数。 它本质上还是用到了文件读写操作,来完成用户态和内核态通信。...它使用是 /proc 一个子目录 /proc/sys。和 procfs 区别在于: procfs 主要是输出只读数据,而 sysctl 输出大部分信息是可写。...例如,我们比较常见是通过 cat /proc/sys/net/ipv4/ip_forward 来获取内核网络层是否允许转发 IP 数据包,通过 echo 1 > /proc/sys/net/ipv4/...和 procfs 不同是,sysfs 是将一些原本在 procfs ,关于设备和驱动部分,独立出来,以 “设备树” 形式呈现给用户。...更多关于这些文件解释大家可以自行了解,这里就不过多展开了。 netlink netlink 是 Linux 用户态与内核态通信最常用一种方式。

6.3K52
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux不可错过信息宝库

    而数字本身就是该进程pid。也就是说,如果想要知道某个进程当前更多状态信息,只需要知道该进程pid(参考ps命令常见实用用法),然后读取/proc/pid下文件夹文件内容即可。...我们随意进入一个进程id进程信息文件夹,例如: cd /proc/7263 ls attr exe mounts projid_map status...这里我们可以查看/proc/pid下limits文件描述符限制数量: sed -n "/open/p" limits Max open files 1024...总结 proc文件系统相关内容过于丰富,本文仅仅做简单介绍。每一项具体内容含义,以及在实际应用,本文不做过多阐述,后面的文章将会继续介绍。.../proc/pid下内容对于问题定位也十分地有帮助,本文只有简单举例,更多使用也会在后续文章不断应用。

    1K10

    为什么psCPU占用率会有超出%100现象?

    在fs/proc/array.c定义了下面两个函数 int proc_tgid_stat(struct task_struct *task, char *buffer) {     return do_task_stat...(task, buffer, 0); } 在每次读取进程状态信息时,proc文件系统就是调用这两个函数来填充数据,它们区别只有调用do_task_stat时传递最后一个参数不同,看一下do_task_stat...1, 那么proc文件系统会把这个进程各个线程运行时间累加起来,其中next_thread这个函数就是获取这个进程下一个线程。...所在链表进行遍历,获取线程组每个线程。...这样就可以解释为什么%CPU字段有超过100%了,因为分子是这个进程(线程组)中所有线程运行时间,而在同一时刻,同一线程组两个不同线程可能在两个不同CPU上运行,这样总运行时间就有可能超过物理上真正过去时间

    2.2K20

    linux深入proc文件系统之pid目录(下)

    proc 是一个虚拟文件系统,在Linux 系统它被挂载于/proc 目录之上。...inode字段表示对应deviceinode,0表示内存映射区域没有关联inode,如未初始化BSS数据段就是这种情况。.../proc/[pid]/gid_map,文件,组ID映射信息,详见(man user_namespaces)。...=continue,以空格作为分隔符,从左到右各字段意思分别是唯一挂载ID、父挂载ID、文件系统设备主从号码、文件系统挂载根节点、相对于进程根节点挂载点、挂载权限等挂载配置、可选配置、短横线表示前面可选配置结束.../proc/[pid]/mountstats,文件,挂载信息,格式形如device /dev/sda7 mounted on /home with fstype ext3 [statistics]。

    3.7K11

    Linux重定向

    标准输入输出 三种I/O设备 处理数据需要输入输出,在linux中一切皆文件,所操作输入输出都认为是一个文件,而此文件表现为每打开一个文件系统会分配一个数字,这个数字代表一个文件,这个数字叫文件描述符...FileDescriptor Linux给程序提供三种I/O设备 标准输入STDIN 0 默认接受来自终端窗口输入 标准输出STDOUT 1 默认输出到终端窗口...std* lrwxrwxrwx. 1 root root 15 Dec 3 10:01 /dev/stderr -> /proc/self/fd/2 lrwxrwxrwx. 1 root root 15...Dec 3 10:01 /dev/stdin -> /proc/self/fd/0 lrwxrwxrwx. 1 root root 15 Dec 3 10:01 /dev/stdout -> /proc...说明: 将命令1 输出发送给命令2输入,然后再讲命令2输出发送至命令3输入 所有命令会在当前shell进程子shell进程执行 组合多种工具功能 注意:标准错误不能通过管道转发,需要通过2>&1

    2.6K00

    3.Prometheus监控入门之指标与标签使用说明

    答: 在Prometheus中指标是基础它标志着采集抓取监控项,并且指标的数值是有上升或者下降变化,从而使得监控某一个时间段某个监控项变化分布情况。...1) 测控标签: 表面意思来自测控设置标签,可以在应用程序或者库内部模块设置。例如收到HTTP请求类比、以及访问数据库。...2) 目标标签: 它是确定了特定监控目标即Prometheus抓取指标数据目标,其标签作为抓取指标过程一部分。...Linux logind 从 logind 收集会话统计信息 Linux meminfo_numa 从 /proc/meminfo_numa 收集内存统计信息 Linux mountstats 从.../proc/self/mountstat 收集文件系统统计信息,包括 NFS 客户端统计信息 Linux nfs 从 /proc/net/rpc/nfs 收集 NFS 统计信息,等同于 nfsstat

    4.7K10

    linux机制

    从Linux 2.4版本开始,操作系统底层提供了scatter/gather这种DMA方式来从内核空间缓冲区中将数据直接读取到协议引擎,而无需将内核空间缓冲区数据再拷贝一份到内核空间socket...driver queue数据长度,来防止driver queue数据过大造成Bufferbloat而产生延迟。...TSO, GSO, UFO和GRO可能会导致驱动队列数据增加,因此为了提高吞吐量延迟,可以关闭这些功能。...4) 当新数据被对方确认时,就增加cwnd,但增加方法依赖于我们是否正在进行慢启动拥塞避免。如果cwnd小于等于ssthresh,则正在进行慢启动,否则正在进行拥塞避免。...Linux 命名空间: mount命名空间:mount 命名空间通过隔离/proc/[pid]/mounts, /proc/[pid]/mountinfo, 和/proc/[pid]/mountstats

    2.6K40

    漏洞分析|RunC TOCTOU逃逸CVE-2021-30465分析

    但在产品安全视角恰恰相反,针对Caas(Container as a service)类产品,用户/租户拥有批量创建POD权限,利用挂载逃逸可打破租户间隔离,同时读取Host层面某些敏感数据,危害性极大...在Mount Namespace下,处在当前Namespace进程只对当前Namespace挂载点可见,通过 /proc/[pid]/mounts 、/proc/[pid]/mountinfo和.../proc/[pid]/mountstats 提供不同维度数据。...RunC通过命令runc create + runc start runc run启动一个容器,runc create主要分为两部分,一部分是准备容器进程启动参数,与真正实施容器runc init进程进行交互...WithProcfd 中使用/proc/self/fd/ ,确保打开文件是securejoin.SecureJoin 后文件。 ?

    98430

    产品能力|云原生能力知识体系构建-Docker学习笔记Part5

    镜像和程序角色是一样,只不过镜像要比程序更加丰富。程序只是按简单格式存储在文件系统,而镜像是按层,以联合文件系统方式存储。...为了更加直接感受一下容器是一种进程,我们可以看一下 /proc/ 这个目录。在 Linux ,每个进程信息都可以通过目录 /proc 下面查找到,进程号会作为目录名称。...Docker 命令,例如 docker-pid 可以获取某个容器 PID;而 docker-enter 可以进入容器直接在容器内执行命令。...容器核心为所执行应用程序,所需要资源都是应用程序运行所必需。除此之外,并没有其它资源。可以在伪终端利用 ps top 来查看进程信息。...此外,当Docker容器中指定应用终结时,容器也自动终止。 例如对于上一章节只启动了一个终端容器,用户通过 exit 命令 Ctrl+d 来退出终端时,所创建容器立刻终止。

    25620

    【重识云原生】第六章容器6.1.5节——Docker核心技术Namespace

    该机制类似于Solariszone FreeBSDjail。对该概念做一般概述之后,我将讨论命名空间框架所提供基础设施。...全局ID使得内核可以有选择地允许拒绝某些特权。虽然UID为0root用户基本上允许做任何事,但其他用户ID则会受到限制。例如UID为n 用户,不允许杀死属于用户m进程(m≠ n)。...此前每一项全局资源都必须包装到容器数据结构,只有资源和包含资源命名空间构成二元组仍然是全局唯一。虽然在给定容器内部资源是自足,但无法提供在容器外部具有唯一性ID。         ...每个进程在 mount namespace 描述可以在下面的文件视图中看到: /proc/[pid]/mounts /proc/[pid]/mountinfo /proc/[pid]/mountstats...需要注意是:在初始 time namespace ,/proc/self/timens_offsets 显示偏移量都为 0。

    80220

    100个Linux 命令(4)-管理文件系统

    /proc/mounts(是/proc/self/mounts 软链接),在/proc/self/mountstats和/proc/mountinfo 里则记录了更详细挂载信息。...mbr和gpt格式磁盘上这个ID可能不太一样,不过一般gpt格式是在mbr格式ID后加上两位数数值,如mbrswap类型ID为82,在gpt则是8200,在mbrlinux filesystem...类型ID为83,在gpt则为8300,在mbrlvmID为8e,在gpt为8e00。...它是以柱面为单位来划分,首先划分外圈柱面,然后不断向内划分。 由于读写越外圈磁道数据比越内圈更快,所以第一个分区在读写性能上比后面的分区更好。...733013-20170619142418132-168371863.png 在MBR磁盘上,分区和启动信息是保存在一起,如果这部分数据被覆盖破坏,只能重建MBR。

    1.6K00
    领券