首页
学习
活动
专区
工具
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.7K10

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.5K52
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    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下的内容对于问题的定位也十分地有帮助,本文只有简单举例,更多的使用也会在后续文章中不断应用。

    1.1K10

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

    proc 是一个虚拟文件系统,在Linux 系统中它被挂载于/proc 目录之上。...inode字段表示对应device的inode,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.8K11

    为什么ps中CPU占用率会有超出%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中的重定向

    标准输入输出 三种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

    5K10

    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

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

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

    26420

    漏洞分析|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 后的文件。 ?

    1.1K30

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

    该机制类似于Solaris中的zone或 FreeBSD中的jail。对该概念做一般概述之后,我将讨论命名空间框架所提供的基础设施。...全局ID使得内核可以有选择地允许或拒绝某些特权。虽然UID为0的root用户基本上允许做任何事,但其他用户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。

    93120

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

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

    1.7K00
    领券