首页 > 其他分享 >BJDCTF2020 ZJCTF,不过如此 1

BJDCTF2020 ZJCTF,不过如此 1

时间:2025-01-05 10:04:08浏览次数:9  
标签:php 不过如此 get ZJCTF text file input BJDCTF2020 contents

#php伪协议 #利用伪协议 #filegetcomtent用phpinput绕过 #PHP对于函数调用的语法问题

<?php

error_reporting(0);
$text = $_GET["text"];
$file = $_GET["file"];
if(isset($text)&&(file_get_contents($text,'r')==="I have a dream")){

    echo "<br><h1>".file_get_contents($text,'r')."</h1></br>";
    if(preg_match("/flag/",$file)){
        die("Not now!");
    }

  
    include($file);  //next.php

}
else{
    highlight_file(__FILE__);
}

?>

达成text的条件 (第一关)

方法一

我们要让text的内容为 I have a dream 它是用file_get_contents 读取的

  • ! 我们遇到file_get_contents()要想到用php://input绕过。

对于file_get_contents($text,'r')==="I have a dream")

利用[[PHP伪协议]] 中的php://input,格式如下

POST /..?参数=php://input 
...

php代码

php://input是个可以访问请求的原始数据的只读流,将post请求中的数据作为PHP代码执行。

我们去读取next.php
请添加图片描述

方法二

  • $ 我们利用data伪协议
    payload:
    ?text=data://text/pain,I have a dream

ne

标签:php,不过如此,get,ZJCTF,text,file,input,BJDCTF2020,contents
From: https://blog.csdn.net/hddi1/article/details/144940653

相关文章

  • [ZJCTF 2019]NiZhuanSiWei
    [ZJCTF2019]NiZhuanSiWei上面代码,使用get上传了三个参数,在text者用力恒等于,然后就输出,接着第二个参数中出现flag就输出notnow,接着第三个参数是反序了一下输出。?text=data://text/plain,welcometothezjctf发现有回显解码一下b64:去反序列化得到&password=O%3......
  • [BJDCTF2020]ZJCTF,不过如此 1
    [BJDCTF2020]ZJCTF,不过如此1打开实例发现代码审计需要GET传入text和file参数,然后执行文件包含text需要读取到Ihaveadream文本,这边采用data流进行绕过?text=data://,Ihaveadream&file=next.php成功绕过,接下来进行file文件包含这边提示读取next.php,访问后无有效数据......
  • [BJDCTF2020]The mystery of ip 1
    [BJDCTF2020]Themysteryofip1打开实例,发现flag.php路径,访问显示自己当前的内网iphackerbar添加xff请求头,尝试ip伪造,成功回显判断可能为xff注入,尝试sql的部分注入语句均无效,放弃sql注入,尝试SSTI模板注入X-Forwarded-For:{1+1}成功回显,存在XFF-SSTI模板注入漏洞尝试......
  • [BJDCTF2020]Cookie is so stable
    首先这题flag模块有个登录页面抓包可以看到user=123,最后会返回hello123,这里就很像ssti注入,输入user={{2*3}}最后也是返回成功了,而且处理器是php,常见模块有:twig,smarty,blade输入user={{_self.env.registerUndefinedFilterCallback("exec")}}{{_self.env.getFilter("id")}}......
  • [BJDCTF2020]Mark loves cat
    这题进去是一个网页,最后发现没有什么东西,最后查看源码发现,在源码的最后输出了一个dog这里就断定肯定存在一些隐藏的文件,最后通过kali扫描也是发现了一些.git文件,然后就想到了git源码泄露,但是不知道为什么我的扫描不出,就只好在网上找了大佬的代码了index.php<?phpinclude'......
  • 呵,老板不过如此,SQL还是得看我
    2018年7月,大三暑假进行时,时间过得飞快,我到这边实习都已经一个月了。我在没工作之前,我老是觉得生产项目的代码跟我平时自学练的会有很大的区别。以为生产项目代码啥的都会规范很多,比如在接口上会做很多安全性的工作(自学练的时候确实学到的类似的案例),代码设计上会有很多设计模式的应......
  • 呵,老板不过如此,SQL还是得看我
    2018年7月,大三暑假进行时,时间过得飞快,我到这边实习都已经一个月了。我在没工作之前,我老是觉得生产项目的代码跟我平时自学练的会有很大的区别。以为生产项目代码啥的都会规范很多,比如在接口上会做很多安全性的工作(自学练的时候确实学到的类似的案例),代码设计上会有很多设计模式的......
  • [BJDCTF2020]The mystery of ip
    [BJDCTF2020]Themysteryofip、参考:PHP的模板注入(Smarty模板)Step根据提示,尝试伪造ipX-Forwarded-For:1发现回显也是1所以可能是模板注入,尝试X-Forwarded-For:{config}回显::Uncaught-->SmartyCompiler:Syntaxerrorintemplate"string:{config}"online1"{c......
  • [ZJCTF 2019]NiZhuanSiWei
    [ZJCTF2019]NiZhuanSiWeiStep1开靶机,获得php源码<?php$text=$_GET["text"];$file=$_GET["file"];$password=$_GET["password"];if(isset($text)&&(file_get_contents($text,'r')==="welcometothezjctf......
  • [BJDCTF2020]EasySearch(ssi注入)
    看题目就知道藏的有东西挨个试试发现在index.php.swpvim缓存泄露,在使用vim进行编辑时,会产生缓存文件,操作正常,则会删除缓存文件,如果意外退出,缓存文件保留下来,这是时可以通过缓存文件来得到原文件,以index.php来说,第一次退出后,缓存文件名为index.php.swp,第二次退出后,缓存文件......