[SWPUCTF 2021 新生赛]PseudoProtocols
第三层的意思是:
(file_get_contents($a, 'r')) 是一个函数调用,它尝试以读取模式打开 $a 参数指定的文件,并返回文件的内容。 === 'I want flag' 是一个比较操作符,用于比较 file_get_contents($a, 'r') 的结果与字符串 "I want flag" 是否完全相等。如果相等,则条件成立。 因此,整个条件语句的意思是:如果变量 $a 存在且不为 null,并且通过读取文件路径 $a 所得到的文件内容与字符串 "I want flag" 完全相等,那么执行条件下的代码块,输出 "success" 和变量 $flag 的值。
利用data://协议
data://本身是数据流封装器,其原理和用法跟php://input类似,但是是发送GET请求参数。 如:http://1.14.71.254:28463/test2222222222222.php?a=data://text/plain,I want flag