CTFshow php特性 web150plus
目录
- 源码
- 思路
- 题解
- 总结
源码
<?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相关推荐
- ctfshow php特性 下
目录 web113 web114 web115 web123(php解析特性) web125 web126 web127(php解析特性) web128 web129 web130 web131 we ...
- ctfshow php特性(89——150plus)
web89 这题的逻辑是如果存在$_GET['num'],则用正则表达式匹配$num中的值,如果成功匹配则程序终止于"no no no",否则进行下一步,如果intval($num ...
- ctfshow php特性 web89-web115 web123-150wp
php特性 参考博客仍然是南神博客 文章目录 php特性 web89 web90 web91 web92 web93 web94 web95 web96 web97 web98 web99 web10 ...
- CTFshow php特性 web150
目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-10-13 11:25:09 # ...
- CTFshow php特性 web147
目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-10-13 11:25:09 # ...
- CTFshow php特性 web140
目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-10-13 11:25:09 # ...
- CTFshow php特性 web138
目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-10-13 11:25:09 # ...
- CTFshow php特性 web137
目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-10-13 11:25:09 # ...
- CTFshow php特性 web136
目录 源码 思路 题解 解法1 解法2 解法3 总结 源码 <?php error_reporting(0); function check($x){if(preg_match('/\\$|\. ...
最新文章
- Gitee Pages 静态网页托管服务
- MVC强类型和弱类型的区别
- 截图识字工具下载使用
- 10 个令人惊喜的 jQuery 插件推荐
- 解决miner.start() 返回null
- eclipse报错: Unhandled event loop exception No more handles
- python检测excel是否打开_Python判断远程服务器上Excel文件是否被人打开的方法_学领未来...
- php 执行任务,php多进程执行任务的说明
- 通达OA2015 数据选择控件的使用随笔
- python线程执行完后释放内存_线程结束后释放内存
- 玩游戏学编程,寓教于乐:12个学习编程的游戏化平台
- ORACLE导入unl
- 从软件保护到软件授权
- acwing.回文质数
- Shaolin(map+iterator) HDU - 4585
- 爱快路由系统带PPPOE服务器吗,爱快路由+华为交换机 实现vlan下拨号到爱快pppoe服务器...
- 世界上最难的视觉图_看看世界上驾照最难考的国家,你还会觉得考驾照难吗?...
- 为你的WSL 2编译一个最新的Linux内核吧!
- SQL Server 2005的100范例程序及数据库下载
- Curator——Service Discovery