最新消息:

(三)DVWA文件上传漏洞源码审计

代码审计 Eternal 2876浏览 0评论

UPLOAD

(LOW)

这里我直接上传一个 PHP 文件,我们可以看到返回结果显示,文件已经成功上传!并给出了保存的路径信息。

20160729165304

 

我们直接打开低等级的源码进行分析。可以看到代码并未对上传的文件格式进行限制,而是将保存路径做了规定,将文件名保存为上传的文件名。

20160729170010

注:但是对文件上传的大小做了限制,但由于其是客户端的限制,所以我们可以通过 burp 来直接修改上传的大小字节,即可突破!

(MEDIUM)

接着我们将安全等级改为中级。我们再次选择刚才的 PHP 文件进行上传。可以看到页面的回显结果显示上传失败!

20160729172915

我们来打开中级代码看看。可以看到它对上传的文件的名字,类型,大小做了收集,并判断类型是否为 image/jpeg 类型,大小是否小于 100K 。否则直接返回上传失败!

20160729173331

注:这里同样我们可以使用 burp 进行抓包,将其中的 content-type 修改为?image/jpeg 即可突破上传限制!

(HIGH)

最后我们打开高等级代码查看源码怎么编写的。可以看到高等级代码对文件扩展名进行了过滤截取,并进行了扩展名的判断和大小的限制。但是这里做的判断依然不安全,通过修改上传的文件扩展名,我们可以轻松绕过限制。例如: 1.php 修改为 1.php.jpg 这样我们依然能上传PHP 格式的文件!

20160801065705

 

 

转载请注明:即刻安全 » (三)DVWA文件上传漏洞源码审计

您必须 登录 才能发表评论!



合作伙伴