文件包含漏洞
参考之前的博客: 漏洞之文件包含漏洞
实战
1. 读取网站文件
2. 本地包含执行文件(各种格式都会被当做php解析执行)
3. 远程文件包含
1. 读取网站文件
可以在此之前进行网站信息收集, 知道是什么操作系统(unix)等等。对于网站有了一个大概的了解之后, 再对filename参数一个个尝试(社工), 知道获取到myql的配置文件my.cnf:
2. 本地文件包含
先上传可执行文件的图片格式, 比如文件include_file.png, 内容如下:
<?php
phpinfo();
?>
然后通过 <Webug4.0 文件上传篇——前端拦截> 上传文件到upload目录下, 这里可以登录网站目录看看:
然后将文件路径作为参数传入filename, 使之被包含执行:
3. 远程文件包含
远程文件包含的话, 需要在php.ini中开启这两个:
同时注意所包含的远程文件后缀不能与目标服务器语言相同:
*坑1
由于某种原因(我技术太菜), 不明白为什么https的文件地址不能被远程包含
解决: 解决https链接无法打开