博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ctf常见php弱类型分析
阅读量:4842 次
发布时间:2019-06-11

本文共 676 字,大约阅读时间需要 2 分钟。

1. 布尔反序列化

1 $unserialize_str = $_POST[‘password‘]; 2 $data_unserialize = unserialize($unserialize_str); 3 if($data_unserialize[‘user‘]==‘???‘&&$data_unserialize[‘pass‘]==‘???‘)4 { print_r($flag); }

反序列化后得到的值的user和pass都为不知道的,但是这里是两个==,根据php弱类型,bool值和任何字符串都为相等,即可以构造user和pass的值为bool

2.php引用赋值

1 
secret = "*"; 18 if ($o->secret === $o->enter) 19 echo "Congratulation! Here is my secret: ".$o->secret; 20 else echo "Oh no... You can‘t fool me"; }21 else echo "are you trolling?"; } ?>

这道题虽然不涉及弱类型,但是涉及到语言中的引用赋值,也是一个点,要使解序列化后的 (secret===enter)

这里是三个等号,要使这两个变量相等,且secret已经被赋值,所以用引用赋值的方式,$a=&$b,则变量a和b指向同一个数据,两个值一定相等

 

转载于:https://www.cnblogs.com/wfzWebSecuity/p/7485153.html

你可能感兴趣的文章
python学习第三十三节(IO模型)
查看>>
linux pci 驱动小结
查看>>
BZOJ2744: [HEOI2012]朋友圈
查看>>
设计模式之抽象工厂模式
查看>>
大整数相关的几道题
查看>>
利用表格实现大图轮播
查看>>
SpringBoot集成jsp
查看>>
HTML+CSS 内容居中效果
查看>>
关于对话框
查看>>
Jmeter-元件的作用域和执行顺序
查看>>
ArrayList集合
查看>>
Redis集群搭建与简单使用
查看>>
VS2010连接SQLite数据库
查看>>
30分钟学会如何使用Apache Shiro
查看>>
asp.net部署时加密config文件
查看>>
想开个网店的。。学习一下vancl的分析
查看>>
DDD:在基于关系数据库的领域,聚合的边界等于并发管理的边界。
查看>>
poj 1961 Period
查看>>
BZOJ1560: [JSOI2009]火星藏宝图
查看>>
play framework 相关
查看>>