代码审计VAuditDemo 文件包含漏洞

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代码审计VAuditDemo 文件包含漏洞相关的知识,希望对你有一定的参考价值。

技术分享

在 index.php中先判断get过来的module是否设置了变量,如果已经设置,则包含module,并与字符串.inc拼接

inc格式一般是图标或者头像格式,因此我们可以初步判断,这个包含应该是基于图像上传

那么我们就应该搜索上传相关的函数 $_FILES

技术分享

技术分享

这里我们看到,图像上传的功能,上传图片的路径的格式为:u_ 当前时间戳_原来的文件名 (我们可以用PHP函数来解时间戳)

跟踪 is_pic

技术分享

is_inc只是单纯的验证后缀名,我们可以尝试用00截断或者为协议进行验证

--------------------------------------------------------------------------------------------------------------------------------------------------------------

我们首先先介绍一下phar伪协议

这是一个压缩包有关的协议,它可以打开一个压缩包,并可以打开其中一个文件,并读取压缩包里面的内容。

它的用法为:phar://path/file/所压缩的文件名。

--------------------------------------------------------------------------------------------------------------------------------------------------------------

漏洞验证

我们先创建inc的文件,在里面写入一句话木马,添加压缩文件后改名为png格式

技术分享

 

但是我们要去解密时间戳来获取图片地址

技术分享

解密时间戳用到的函数

1 <?php
2 date_default_timezone_set(‘UTC‘);
3 echo strtotime(‘Wed, 24 May 2017 03:03:14 GMT‘);
4 ?>

技术分享

 

技术分享

以上是关于代码审计VAuditDemo 文件包含漏洞的主要内容,如果未能解决你的问题,请参考以下文章

代码审计VAuditDemo 重装漏洞

代码审计VauditDemo程序到exp编写_巡安似海

代码审计VAuditDemo 后台登录功能验证码绕过

对VAuditDemo的一次审计

[代码审计]ThinkPHP5的文件包含漏洞

九漏洞挖掘与代码审计本地包含与远程包含