首页 > 其他分享 >Linu下/proc目录说明

Linu下/proc目录说明

时间:2022-08-30 14:48:04浏览次数:43  
标签:Linu al self ls 进程 proc 目录

Linux下/proc/self学习

>在复现一个靶场的时候用到了/proc/self/environ这个目录,之前只了解到porc/<PID>/cmdline可以通过爆破<PID>的方式读取进程的绝对路径,在此对该目录进行一个详细的分析

注:在实战中不可直接读取,需通过目录穿越的方式进行读取

/proc目录说明

Linux内核提供了一种通过/proc文件系统,在运行的时候访问内核内部数据结构、改变内核设置的机制。

Proc文件系统是一个伪文件系统,它只存在于内存当中,且不占用空间。它以文件系统的方式为访问系统内核数据的操作提供接口。

可以使用 ls -al /proc 直接列出 /proc下的进程信息等

/proc常见的文件介绍

1.cmdline

  cmdline文件存储着启动当前进程的完整命令,可以通过查看cmdline目录获取指定进程的完整命令

cat /proc/<PID>cmdline

2.cwd

  ced文件是一个指向当前进程运行目录的符号链接,可以通过查看cwd文件获取指定环境的运行目录

ls -al /proc/<PID>cwd

3.exe

  exe是一个指向启动当前进程的可执行文件的符合链接。通过exe文件可以获得指定进程的可执行文件的完成路径

ls -al /proc/<PID>/exe

4.environ

  environ文件存储当前进程的环境变量列表。彼此间用空字符(NULL)隔开。可以通过擦好看environ目录来获取指定进程的环境变量信息

cat /proc/<PID>/environ

5.fd

  fd是一个目录,里面包含当前进程打开的每一个文件的描述符(file descriptor),这些文件描述符是指实际文件的一个符合连接。通过fd目录的文件获取进程,从而可以打开每个文件的路径及内容

ls -al /proc/<PID>/fd
ls -al /proc/<PID>/fd/*

/proc/self目录说明

/proc/self目录比较独特,不同的进程访问该目录时获取到的信息是不同的,内容等价于/proc/本进程pid/

进程可以通过访问/proc/self目录来获取自己的系统信息,在进行文件包含的时候不需要通过爆破PID来获取进程信息

所以该目录的方式同/proc目录,直接把PID信息替换为self可以直接查看当前进程信息

1.获取当前启动进程
cat /proc/self/cmdline

2.获取当前进程运行目录
ls -al /proc/self/cwd

3.获取当前进程可执行文件路径
ls -al /proc/self/exe

4.获取当前进程环境变量
ls -al /proc/self/environ

5.获取当前进程打开的文件内容
ls -al /proc/self/fd/*

 

 

 

参考文章::https://blog.csdn.net/unexpectedthing/article/details/121338877

 

 

标签:Linu,al,self,ls,进程,proc,目录
From: https://www.cnblogs.com/a-01/p/16639029.html

相关文章

  • .NET 文件系统目录(持续更新中)
    新的.NET微服务系统,目前会用到的框架有:AceFx,Vol.Net,ABP有任何建议还请多多反馈文件系统用的框架是Vol.Net,手写Vol.Net使用的技术栈有:.NET:1.EfCore(反射生成DbSe......
  • Python 使用paramiko获取Linux远程端电脑挂载空间使用情况
    安装paramikopipinstallparamiko代码演示importjsonasJSONimportreimportparamikoimportsudsfromsuds.wsseimport*classLinuxMntListen():"""L......
  • redis(linux)
    官网下载安装包https://redis.io/download/安装gcc,命令yuminstallgcc进入安装目录make命令进行编译如果报错-jemalloc/jemalloc.h:没有哪个文件,首先看有没有gcc,然后......
  • linux磁盘初始化
    #新系统初始化注意:由于镜像已经做了初始化,所以拿到服务器后只许做以下操作即可使用1.磁盘挂载如果系统没有做逻辑卷的命令,需要自己安装yum-yinstalllvm2fdisk-lpvcr......
  • Linux系统的SSH优化
    在Linux系统中,我们想使用SSH命令登录到另一台服务器中,在第一次登录时,会提示我们验证指纹,如下所示同一网络下,为了确保你想SSH访问的Linux系统是无误的,可以在另一端确认指......
  • Linux是严格区分大小写的,这一点和 Windows不一样,所以操作时要注意区分大小写的不同,包
    linux下的文件夹名字区分大小写吗?_百度知道 https://zhidao.baidu.com/question/395925577.htmlLinux是严格区分大小写的,这一点和Windows不一样,所以操作时要注意区分......
  • 220830-linux磁盘系统初识
    linux中,每一个设备都会被当做一个文件来看待。在linux中,所有的硬件设备文件都会在/dev这个目录下。而SATA接口的硬盘文件名称会被命名为/dev/sd[a-d]。分区的命名:Windows......
  • Linux输出重定向>和>>的区别是什么?
    Linux输出重定向>和>>的区别是什么-百度经验 https://jingyan.baidu.com/article/358570f64345c4ce4724fcba.htmlLinux输出重定向有>和>>,如果不清楚他们的区别,混淆......
  • linux crw-rw-rw- 开头的c 是啥意思?
    linuxcrw-rw-rw-开头的c是啥意思?_百度知道 https://zhidao.baidu.com/question/436282328.htmlC代表这个文件对应的是字符设备,所谓字符设备就是鼠标、键盘等,可以简单......
  • Linux 驱动开发-简单的驱动框架编写
    编写一个简单的linux驱动代码栗子1、源文件xxx.c#include<linux/kernel.h>#include<linux/module.h>//模块入口函数staticint__initdemo_init(void){ pri......