fileinclude

记录一道简单的fileinclude
问题描述:

image

查看网页源码

image

所以题目的关键在于达成这第15行的条件:

$lan = $_COOKIE['language'];

在cookie中的内容language 会被传到变量\(lan,继而在第23行@include(\)lan.".php");被调用与执行,因此cookie变量中很适合写入读取flag.php的payload

解决办法:

工具:hackbar

php://filter/read=执行文件读取功能

convert.base64-encode执行Base64编码功能

/resource=/var/www/html/flag填写flag.php所在的地址,本题在源码的第5行有提示地址为language in /var/www/html/index.php on line ;且需要注意注意源码第23行的内容(@include($lan.".php"); ),在上传参数时代码会附带后缀.php,所以此处不需要写为 '/var/www/html/flag.php'

image

image

得到一串base64编码的值,通过解码可得到flag

image

flag="cyberpeace{e557f1c6bf0e41cfbae313a72876e91b}"

posted @ 2023-11-26 17:43  巴黎_雨季  阅读(73)  评论(0)    收藏  举报