第八章——第三节--文件包含漏洞篇之本地文件和远程文件包含漏洞
1、本地文件包含(LFI)
)1、LFI本地文件包含漏洞主要是包含本地服务器上存储的一些文件,例如session文件、日志文件、临时文件等。同时借助此漏洞也可以查看服务器上的一些重要文件。但是,只有我们能够控制包含文件的存储我们恶意代码才能拿到服务器权限。
)2、windows常见的敏感文件路径:
C:\boot.ini //查看系统版本
C:\Windows\System32\inetsrv\MetaBase.xml //lIS配置文件
C:\Windows\repair\sam //存储系统初次安装的密码
C:\Program Files\mysql\my.ini //Mysql配置
C:\Program Files\mysqI\data\mysql\user.MYD //Mysql root
C:\Windows\phip.ini //php配置信息
C:\Windows\my.ini //Mysq|配置信息
C:\Windows\win.ini //Windows系统的一个基本系统配置文件
3、windows本地文件包含演示
代码如下:
<?php $file =$_ GET['file']; include $file; ?>
4、Linux常见的敏感文件路径:
/root/.ssh/authorized keys
/root/.ssh/id_ rsa
/root/.ssh/id_ ras.keystore
/root/ ssh/known hosts //记录每个访问计算机用户的公钥
/etc/passwd
/etc/shadow
/etc/my.cnf //mysqI配置文件
/etc/httpd/conf/httpd.conf //apache配置文件
/root/.bash_ history //用户历史命令记录文件
/root/.mysql history //mysql历史命令记录文件
/proc/mounts //记录系统挂载设备
/porc/config.g.//内核配置文件
/var/lib/mlocate/mlocate.db //全文件路径
/porc/self/cmdline //当前进程的cmdline参数
2、远程文件包含(RFI)
RFI(Remote File Inclusion)远程文件包含漏洞。是指能够包含远程服务器上的文件并执行。由于远程服务器的文件是我们可控的,因此漏洞一旦存在危害性会很大。但RFI的利用条件较为苛刻,需要php.ini中进行配置
1、 allow url fopen = On
该选项为on便是激活了URL形式的fopen封装协议使得可以访问URL对象文件等。
2、allow url_ jinclude: On
该选项为on便是允许包含URL对象文件等
小结
1、本地文件包含(LFI)
2、远程文件包含(RFL)