CTFSHOW WEB 3
知识点补充:
“文件包含”漏洞。当代码中使用了如 include()
, require()
, file_get_contents()
等函数,并且其参数(文件名/路径)用户可控时,就可能存在此漏洞。
常用伪协议总结:
1. php://filter :用来
读取 PHP 文件的源代码。
2. php://input :
用于执行代码允许你访问原始的 HTTP 请求体(POST Data),<?php system('ls /'); ?>
(post请求内容构造需要执行的代码,列出根目录文件);
解题思路:
1.根据上述补充,看到题目可以知道考察伪协议
2.使用burp抓包,再利用上述伪协议使用可执行PHP的代码
?url=php://input? ---- GET请求的url中拼接伪协议
<?php sustem('ls')?> ---- post请求内容构造需要执行的代码
3.根据回显内容,知道flag就在ctf_go_go_go的文件里,直接在url里面拼接,得到flag
/?url=ctf_go_go_go