XCTF ics-05
一.进入实验环境 1.进入后,发现只有一处点了有反应: 进去后啥也没有,右键查看源码,发现给了我们一个提示: page?index, 感觉应该和文件包含漏洞有关 。 我们用php的伪协议 php://filter来读取目标文件内容, 构造 ?page=php: // filter/read=convert.base64-encode/resource=index.php 这是经过base64编码后的,我们要对他解码并输出, 2.打开之后,我们查看关键的源码: 通过分析源码,我们首先要伪造一个xff为 127.0.0.1 去发起请求,这里有一个 preg_replace函数。 语法:mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit]) 特别说明: /e 修正符使 preg_replace() 将 replacement 参数当作 PHP 代码(在适当的逆向引用替换完之后)。 提示:要确保 replacement 构成一个合法的 PHP 代码字符串,否则 PHP 会在报告在包含 preg_replace() 的行中出现语法解析错误。 安全威胁分析: 通常subject参数是由客户端产生的