0x01 拿到题目第一件事是进行目录扫描,看看都有哪些目录,结果如下: 不少,首先有源码,我们直接下载下来,因为有源码去分析比什么都没有更容易分析出漏洞所在。 通过这个知道,它一共有这么几个页面,首页登录页面,注册页面,update更改信息页面,这几个页面是我们能够直接接触到的,那想必flag应该在另外几个页面中,稍后我们分析。先来看看网站页面都是什么样
攻防世界 ctf web进阶区 unserialize 进入到题目的界面,看到以下源码 构造payload=?code=O:4:"xctf":1:{s:4:"flag";s:3:"111";} 结合题目以及大佬的wp可以知道,这是一道unserialize的反序列化题。结合魔术方法 __wakeup() 可以知道,这一道题是要考察我们对于__wakeup()的绕过方法. 上网查阅资料可以知道,...
@忽略表达式可能产生的错误信息。 unserialize()可以用此字符串来重建原始的变量值。 题目的切入点,最后怎么拿到flag,就是通过这个ctf变量发送POST用来请求数据。 不过这道题涉及到了PHP序列化的概念,有点复杂。 第二步-学习知识: 所以说我们在解题之前,需要先了解点知识点: 序列化 (Serialization)是将对象的状态信...
PHP 提供了 serialize 和 unserialize 函数来支持这 2 种操作,当 unserialize 函数的参数被用户控制时就会形成反序列化漏洞。 下面来看看具体是什么操作,例如这是数组的序列化: $a=array('张三','李四','王五');$a_ser=serialize($a);echo"$a_ser";print_r(unserialize($a_ser)); 1. 2. 3. 4. 输...
64、Java Fastjson Unserialize 65、CaaS1 66、CBC 67、noteasytrick 最近刷了一下 Bugku-CTF-web 的61-70题(平台目前只有67),好难好难,全都是知识的盲区。各种代码审计,各种反序列化,各种反弹shell,各种模版注入,各种字符串绕过,可以说是Web安全的精髓。学到了几个奇技淫巧,比如PHP的passthru函数可以回显系统...
首先这里的unserialize函数是一个门槛,如图: 要求file_get_contents必须读出内容,再加上前面的md5判断,我们这里可以使用fastcoll生成md5的前20位为./././././/index.php,然后进行MD5强碰撞即可。 下面进行挖掘POP链路,如图: 源代码传送门: 链接:https://pan.baidu.com/s/1byWki_NV9yZNb34xuGEkBA 提取码...
正确答案:CTF{xiao_ping_guo} 四.WEB之天网管理系统 题目地址: http://www.shiyanbar.com/ctf/1810 解题链接: http://ctf5.shiyanbar.com/10/web1/index.php 题目描述: 题目显示如下图所示,需要输入正确的用户名和密码获取flag。 考点:PHP弱类型
首先这里的unserialize函数是一个门槛,如图: 要求file_get_contents必须读出内容,再加上前面的md5判断,我们这里可以使用fastcoll生成md5的前20位为./././././/index.php,然后进行MD5强碰撞即可。 下面进行挖掘POP链路,如图: 编写POC: <?php class Gema { protected $xbx = 'assert'; } // AAAAAAAAAAAAAA ...
Try this new Unserialize-Oriented Programming System a.k.a. L5D ! http://l5d.balsnctf.com:12345/index.php PHP Version: 7.0.33 Author: kaibro 题目提供了源码,阅读后发现以下可能作为关键点的地方: 变量覆盖: 任意命令执行: 修改全局变量cmd 但是题目给反序列化的数据加上了一个限制:不能出现*(prot...
and_unserialize} sql injection4 继续注入~ 题目地址 TIP反斜杠可以用来转义 查看相关函数的用法 nctf{sql_injection_is_interesting 页面源代码注释中有SQL构造: #GOAL: login as admin,thenget the flag; error_reporting(0); require'db.inc.php'; function clean($str{ (get_magic_...