打开只有这句话,用dirsearch扫一下,发现了flag.php(空的)和index.php.bak
拿到备份文件打开
get传参key
但是key的要求是只能数字,仔细看下面进行了php的弱类型比较,这样一比变量str就会变成123
所以只要传值
?key=123
就可以了
拓:
参考:php 弱类型总结:https://www.cnblogs.com/Mrsm1th/p/6745532.html
== 在进行比较的时候,会先将字符串类型转化成相同,再比较
//如果比较一个数字和字符串或者比较涉及到数字内容的字符串,则字符串会被转换成数值并且比较按照数值来进行
1 <?php
2 var_dump("admin"==0); //true
//将admin转化成数值,强制转化,由于admin是字符串,转化的结果是0
3 var_dump("1admin"==1); //true
//该字符串的开始部分决定了它的值,如果该字符串以合法的数值开始,则使用该数值,否则其值为0
4 var_dump("admin1"==1) //false
//不是以数字开头所以为admin1为0
5 var_dump("admin1"==0) //true
6 var_dump("0e123456"=="0e4456789"); //true
//"0e123456"=="0e456789"相互比较的时候,会将0e这类字符串识别为科学技术法的数字,0的无论多少次方都是零,所以相等
7 ?>