文件包含之/proc/self/environ

在一次实践中,发现拥有文件包含漏洞,但是无法getshell,进而搜索到一个新的方法/proc/self/environ,
通常情况下文件包含可以包含日志文件getshell,这里新学习一个/proc/self/environ

Linux中/proc/目录下保存着本机所有进程号,每个进程号为一个目录,其中保存着该进程的相关信息,其中常见的有

  • cmdline: 启动当前进程的完整命令
  • exe : 当前进程可执行文件的完整路径
  • cwd: 当前进行运行的目录环境
  • fd: 当前进程打开的文件
  • environ: 当前进程运行的环境变量

/proc/self目录
self代表当前进程的意思,例如cat /proc/self/cmdline,的结果就是cat/proc/self/cmdline
self用于获取当前进程的信息

了解上述信息后,在php通过cgi运行的时候,/proc/self/environ会包含用户请求的信息,例如常见的User-Agent信息,我们可以通过包含该文件,将User-Agent修改为PHP代码就可以实现文件包含

例如:

实验场景为vulhubphpCVE-2012-1823漏洞场景

posted @ 2024-04-06 15:17  Junglezt  阅读(287)  评论(0编辑  收藏  举报