读取重要文件介绍

Q:获得文件读取漏洞读什么

一、Linux

/etc/passwd、/etc/shadow、~/.bash_history、~/.ssh/id_rsa、Web配置文件、数据库配置、/proc/self/cmdline

【1】/proc/self/cmdline

/proc 是一个在 Linux 系统中用于访问内核内部数据结构、获取系统信息以及控制系统行为的虚拟文件系统。它提供了一种通过文件系统的方式查看和操作内核状态的机制。值得注意的是,/proc 是一个伪文件系统,其数据只存在于内存中,而不占用硬盘空间
(1)/proc/self:表示当前进程的目录。通过 /proc/self 可以方便地获取当前进程的信息。
(2)/proc/$pid/:表示进程号为 $pid 的进程目录。例如,/proc/1234/ 对应进程号为 1234 的进程(Docker 容器默认的 PID 为 1)

/proc/self/cmdline 是一个虚拟文件,它记录了启动当前正在访问它的进程时所用的完整命令行参数,简单来说,当你用 cat 命令去读它时,它显示的是 cat 命令自己的启动参数

image-20260519213541347

结果:你看到的是启动目标 Web 服务器(比如 Tomcat、Jetty)的完整命令,这个命令里通常会包含:

  • -classpath-jar 后面的路径,直接暴露了应用的部署目录。
  • 启动参数,比如 -Dcatalina.base=/usr/local/tomcat

有了这个路径,你就能进一步构造攻击。比如,你知道应用部署在 /usr/local/tomcat/webapps/ROOT/,你就可以尝试写入一个 Webshell 到这个目录下,从而控制服务器

【2】/proc/self/environ

在 /proc 目录下,通常以进程 ID(PID)作为目录名来存放对应进程的信息。而 self 是一个特殊的符号链接,它始终指向当前正在访问该目录的进程本身因此,访问 /proc/self/environ 等价于访问 /proc/<当前进程的PID>/environ,这使得程序或用户在获取自身环境变量时,无需提前知道具体的 PID
##/proc只存在于内存中

【3】/proc/self/cwd

/proc/slef/cwd是一个非常有用的符号链接,指向正在访问该链接的进程的当前工作目录

例如当你读取/proc/self/cmdline得到pythonserver.py

可以进一步读取/proc/self/cwd/server.py来获得源码

img

二、windows

web.config、my.ini、SAM、php.ini
posted @ 2026-06-18 13:06  Doll_Marker  阅读(11)  评论(0)    收藏  举报