admin 管理员组文章数量: 1184232
使用情况
if(isset($_GET['file'])){
$file = $_GET['file'];
$file = str_replace("php", "???", $file);
$file = str_replace("data", "???", $file);
$file = str_replace(":", "???", $file);
$file = str_replace(".", "???", $file);
include($file);
}else{
highlight_file(__FILE__);
}比如这题,禁用了php和data,显然打不了伪协议,
点也被禁了,正常的包含文件基本不可能了
那么这里就用到了session临时文件包含了
什么是session临时文件
当 PHP_SESSION_UPLOAD_PROGRESS 开启时,我们可以通过这个PHP_SESSION_UPLOAD_PROGRESS查看我们文件上传的进度,并且,他的值我们是可控的,在我们上传文件的过程中,PHP_SESSION_UPLOAD_PROGRESS的内容会以一个临时文件的方式保存,而这个临时文件的名称我们也是可控的,他存放在tmp目录下,路径为
/tmp/sess_???
其中???是我们的设置的PHPSESSID的值,因为cookie的值我们是可以自定义的,所以该临时文件的文件名也是我们可控的
该文件的内容的形式为
upload_progress_xxxxxx;|a:5{s:10:"start_time";i:1743699018;s:14:"content_length";i:406;s:15:"bytes_processed";i:406;s:4:"done";b:0;s:5:"files";a:1:{i:0;a:
版权声明:本文标题:Session临时文件之谜:_session在ActionScript中的角色 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1771417661a3544384.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论