读取重要文件介绍
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 命令自己的启动参数

结果:你看到的是启动目标 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来获得源码

二、windows
web.config、my.ini、SAM、php.ini
本文来自博客园,作者:Doll_Marker,转载请注明原文链接:https://www.cnblogs.com/dollaikun/p/20627592

浙公网安备 33010602011771号