web 任意文件下载漏洞

一. 漏洞产生原理

(1) 没有对用户下载的文件做限制,这就是文件下载漏洞

  • 解决办法:规定下载路径可以很好的规避这个漏洞

二. 下载利用方式

(1) 一般链接形式:

  • download.php?path=
  • down.php?file=
  • data.php?file=
  • download.php?filename=

(2) 或者包含参数:

  • &Src=
  • &Inputfile=
  • &Filepath=
    &Path=
  • &Data=

(3) 常见利用文件

  • /root/.ssh/authorized_keys
  • /root/.ssh/id_rsa
  • /root/.ssh/id_ras.keystore
  • /root/.ssh/known_hosts //记录每个访问计算机用户的公钥
  • /etc/passwd
  • /etc/shadow
  • /etc/my.cnf //mysql配置文件
  • /etc/httpd/conf/httpd.conf //apache配置文件
  • /root/.bash_history //用户历史命令记录文件
  • /root/.mysql_history //mysql历史命令记录文件
  • /proc/mounts //记录系统挂载设备
  • /porc/config.gz //内核配置文件
  • /var/lib/mlocate/mlocate.db //全文件路径
  • /porc/self/cmdline //当前进程的cmdline参数

三. 实战

(1) 鼠标放到科比.布莱恩特名字上–>右键复制链接地址

http://192.168.17.227:999/pikachu/vul/unsafedownload/execdownload.php?filename=kb.png

在这里插入图片描述

(2) 打开浏览器标签粘贴–>修改下载路径为…/down_nba.php点击回车,文件就会下载

http://192.168.17.227:999/pikachu/vul/unsafedownload/execdownload.php?filename=…/down_nba.php
在这里插入图片描述

(3) 查看下载好的文件

在这里插入图片描述

四. 漏洞修复

(1)过滤".",使用户在url中不能回溯上级目录

(2)正则严格判断用户输入参数的格式

(3)php.ini配置open_basedir限定文件访问范围

猜你喜欢

转载自blog.csdn.net/ChenTing_/article/details/109338364
今日推荐