当前位置: 首页 > article >正文

CTFSHOW-WEB入门-文件包含78-81

  1. 题目:web 78
    1. 题目:
    2. 解题思路:分析代码,发现没有过滤于是就先尝试一下flag.php,发现没有回显但是成功,于是说明给你文件包含成功,又因为是php文件,于是就用:file=php://filter/convert.base64-encode/resource=flag.php,base64加密方法获取:得到一串base64加密的文本:解谜可得:
    3. 知识点:php://filter/read=convert.base64-encode/resource=[文件名] 读取文件源码(针对php文件需要base64编码)
  2. 题目:web 79
    1. 题目:
    2. 解题思路:分析代码可以知道,这里过滤了php,文件包含中可以利用data:协议写入php文件,从而执行对应的php代码,过滤了php,那么就可以使用base64加密形式的密文,从而执行PHP代码:可以得到目录:进一步查看文件内容:得到flag:
    3. 知识点:
data协议使用条件:
allow_url_fopen:on
allow_url_include :on
12
2. 作用:
自PHP>=5.2.0起,可以使用data://数据流封装器,以传递相应格式的数据。通常可以用来执行PHP代码。
3. 用法:
data://text/plain,
data://text/plain;base64,
注意:php代码后面的?>不用写,否则会报错
  1. 题目:web 80
    1. 题目:
    2. 解题思路:分析代码可以知道过滤了php data,但是这种可以通过大小写绕过,于是可以使用
php://input + [POST DATA] 执行php代码
3. file=Php://input,然后抓包,在写入命令,执行命令就可以看到结果:<?php system('ls');?>:![](https://cdn.nlark.com/yuque/0/2025/png/39210681/1737615882155-8bf738aa-bed8-426e-9930-119330bd4e24.png)可以看到目录:![](https://cdn.nlark.com/yuque/0/2025/png/39210681/1737615896819-724ff0a8-ad78-4678-9302-7bf961a651ac.png)进一步查看文件内容:![](https://cdn.nlark.com/yuque/0/2025/png/39210681/1737615928451-edc7bc01-e6b3-410e-a4f4-4b732aff6855.png)
4. 知识点:str_replace()由于只匹配文本,可以通过大小写绕过,php的input协议使用,这里也可以通过hackbar写入命令执行。
  1. 题目:web 81
    1. 题目:
    2. 解题思路:看到题目中过滤了php data :于是input,data不再受用,之后再看一下消息头:发现服务器为nginx,查看其日志文件,一般在/var/log/nginx/access.log这个目录下,查看一下发现可以访问:于是就可以通过抓包,修改ua头,注入php代码,完成命令执行
当 Nginx 处理请求并记录日志时,注入的内容会被写入日志文件。攻击者可以利用这一点来:
伪造日志条目:通过注入特定内容,攻击者可以在日志中创建虚假的请求记录。
插入敏感信息:如果日志记录了敏感信息,攻击者可以通过注入来获取这些信息。
3. 抓包并修改UA头:![](https://cdn.nlark.com/yuque/0/2025/png/39210681/1737617235856-ab0fd62c-a144-4a5c-bcfb-e30753c16991.png)得到目录:fl0g.php  index.php
4. 进一步查看:![](https://cdn.nlark.com/yuque/0/2025/png/39210681/1737617311686-ea098fb3-2e44-409d-9794-aeda84e57823.png)得到flag
5. 知识点:nginx日志注入

http://www.kler.cn/a/516978.html

相关文章:

  • Spring WebFlux 和 Spring MVC 的主要区别是什么?
  • springboot使用ssl连接elasticsearch
  • 【开源免费】基于SpringBoot+Vue.JS校园失物招领系统(JAVA毕业设计)
  • FastExcel导入Excel详细步骤
  • MyBatis-Plus之常用注解
  • Java定时任务实现方案(二)——ScheduledExecutorService
  • C#通过SDK包与三菱PLC仿真通讯
  • Java数据结构方面的面试试题以及答案解析
  • 【Go面试】基础八股文篇 (持续整合)
  • 加州大学伯克利分校最新研究:通过语言融合视听触觉异构传感器实现机器人通用操作策略微调
  • Python识别处理验证码技术详解
  • C语言程序设计十大排序—计数排序
  • 基于STM32的AI物联网计算实现指南
  • vue3+vite+ts安装wangeditor富文本编辑器
  • 【含开题报告+文档+PPT+源码】基于Java Springboot的仓库管理系统设计与实现
  • 从 Facebook 的数据泄露事件看社交平台的隐私保护责任
  • Python基于Django的花卉商城系统的设计与实现(附源码,文档说明)
  • 图形化数据报文转换映射工具
  • HTTP 配置与应用(不同网段)
  • Lua语言的Web开发