目录

  • 源码
  • 思路
  • 题解
  • 总结

源码

<?php/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date:   2020-10-13 11:25:09
# @Last Modified by:   h1xa
# @Last Modified time: 2020-10-19 07:12:57*/
include("flag.php");
error_reporting(0);
highlight_file(__FILE__);class CTFSHOW{private $username;private $password;private $vip;private $secret;function __construct(){$this->vip = 0;$this->secret = $flag;}function __destruct(){echo $this->secret;}public function isVIP(){return $this->vip?TRUE:FALSE;}}function __autoload($class){if(isset($class)){$class();}
}#过滤字符
$key = $_SERVER['QUERY_STRING'];
if(preg_match('/\_| |\[|\]|\?/', $key)){die("error");
}
$ctf = $_POST['ctf'];
extract($_GET);
if(class_exists($__CTFSHOW__)){echo "class is exists!";
}if($isVIP && strrpos($ctf, ":")===FALSE && strrpos($ctf,"log")===FALSE){include($ctf);
}

思路

log不能用了,不过如果有足够权限的话包含/proc/self/environ也能getshell,可惜这题不行

仔细查看源码,会发现 class在

 public function isVIP(){return $this->vip?TRUE:FALSE;}

已经闭合了.

__autoload() //在代码中当调用不存在的类时会自动调用该方法。
class_exists也能触发,不过在于怎么给$__CTFSHOW__赋值,因为下划线被过滤了,只要能绕过下划线就可以了

之前的题遇见这个问题,记录下了


这里我们可以用.来转换

题解

?..CTFSHOW..=phpinfo成功显示phpinfo页面,

发现cleanup是开启的

下一步也没办法了,题库限制速率

看了一下wp,发现flag在phpinfo里,害


总结

以后看到phpinfo就找下有没有flag

CTFshow php特性 web150plus相关推荐

  1. ctfshow php特性 下

    目录 web113 web114 web115 web123(php解析特性) web125 web126 web127(php解析特性) web128 web129 web130 web131 we ...

  2. ctfshow php特性(89——150plus)

    web89 这题的逻辑是如果存在$_GET['num'],则用正则表达式匹配$num中的值,如果成功匹配则程序终止于"no no no",否则进行下一步,如果intval($num ...

  3. ctfshow php特性 web89-web115 web123-150wp

    php特性 参考博客仍然是南神博客 文章目录 php特性 web89 web90 web91 web92 web93 web94 web95 web96 web97 web98 web99 web10 ...

  4. CTFshow php特性 web150

    目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-10-13 11:25:09 # ...

  5. CTFshow php特性 web147

    目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-10-13 11:25:09 # ...

  6. CTFshow php特性 web140

    目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-10-13 11:25:09 # ...

  7. CTFshow php特性 web138

    目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-10-13 11:25:09 # ...

  8. CTFshow php特性 web137

    目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-10-13 11:25:09 # ...

  9. CTFshow php特性 web136

    目录 源码 思路 题解 解法1 解法2 解法3 总结 源码 <?php error_reporting(0); function check($x){if(preg_match('/\\$|\. ...

最新文章

  1. Gitee Pages 静态网页托管服务
  2. MVC强类型和弱类型的区别
  3. 截图识字工具下载使用
  4. 10 个令人惊喜的 jQuery 插件推荐
  5. 解决miner.start() 返回null
  6. eclipse报错: Unhandled event loop exception No more handles
  7. python检测excel是否打开_Python判断远程服务器上Excel文件是否被人打开的方法_学领未来...
  8. php 执行任务,php多进程执行任务的说明
  9. 通达OA2015 数据选择控件的使用随笔
  10. python线程执行完后释放内存_线程结束后释放内存
  11. 玩游戏学编程,寓教于乐:12个学习编程的游戏化平台
  12. ORACLE导入unl
  13. 从软件保护到软件授权
  14. acwing.回文质数
  15. Shaolin(map+iterator) HDU - 4585
  16. 爱快路由系统带PPPOE服务器吗,爱快路由+华为交换机 实现vlan下拨号到爱快pppoe服务器...
  17. 世界上最难的视觉图_看看世界上驾照最难考的国家,你还会觉得考驾照难吗?...
  18. 为你的WSL 2编译一个最新的Linux内核吧!
  19. SQL Server 2005的100范例程序及数据库下载
  20. Curator——Service Discovery

热门文章

  1. Facebook 对 Memcache 伸缩性的增强
  2. Entity Framework 学习结束语
  3. 面向对象理论(6)-Interface Programming-[A]
  4. 叔叔我要可乐,要冰冻的
  5. git revert 的问题
  6. springboot + profile(不同环境读取不同配置)
  7. ASP.NET Core MVC/WebAPi如何构建路由?
  8. Redhat Linux通过RPM安装搭建LAMP环境
  9. oracle数据误操作恢复【flashback闪回操作】
  10. 今天下午接到阔总编的电话