二、文件包含漏洞 低、中 、高三级别详解(一句话木马,图片木马) 您所在的位置:网站首页 木马用代码怎么写出来 二、文件包含漏洞 低、中 、高三级别详解(一句话木马,图片木马)

二、文件包含漏洞 低、中 、高三级别详解(一句话木马,图片木马)

2024-07-12 04:32| 来源: 网络整理| 查看: 265

文章目录 文件包含漏洞低安全级别中安全级别高安全级别

文件包含漏洞

项目实验环境

OWASP Broken Web Apps VM v1.2 靶场 burpsuite 代理服务器 Kali-Linux-2020.1-vmware-amd64 攻击机 中国菜刀 连接webshell edjpgcom 图片注入代码

原理与危害

文件包含漏洞:即File Inclusion ,意思是文件包含(漏洞)是,指当服务器开启allow. _url_include选项时 ,就可 以通过php的某些特性函数( include() , require()和include_ once() , require_ once() )利用url去动态包含文 件,此时如果没有对文件来源进行严格审查,就会导致任意文件读取或者任意命令执行。文件包含漏洞分为本地文件包含漏洞与远程文件包含漏洞,远程文件包含漏洞是因为开启了php配置中的allow_ url_fopen选项 (选项开启之后, 服务器允许包含一个远程的文件)。服务器通过php的特性(函数)去包含任意文件时,由于要包含的这个文件来源过滤不严,从而可以去包含一个恶意 文件,而我们可以构造这个恶意文件来达到自己的目的。 1.文件包含(File Inclusion )即程序通过[包含函数]调用本地或远程文件,以此来实现拓展功能 2.被包含的文件可以是各种文件格式,而当文件里面包含恶意代码,则会形成远程命令执行或文件上传漏洞 3.文件包含漏洞主要发生在有包含语句的环境中,例如PHP所具备include、require等包含函数 文件包含分为两类: 本地文件包含LFI ( Local File Inclusion )当被包含的文件在服务器本地时 ,就形成本地文件包含 远程文件包含RFI ( Remote File Inclusion )当被包含的文件在第三 方服务器时,叫做远程文件包含 vim /etc/php5/cli/php.ini php文件上传的规则

漏洞分析:

​ 网页开发者为了把网站需要的php程序用正则表达式包含进来的话,写成如下格式,而这样就会造成把恶意木马程序包含进来,下图展示的是一句话木马程序 在这里插入图片描述本地包含:所有包含文件都在本地 LFI local file include

外部包含:所包含的文件在外部的服务器上 RFI file include

简单的说,如果恶意的代码存在于本地上,就可使用LFI进行包含,从而使用一些工具进行数据挖掘,如果恶意的代码存在于外部服务器上,就可使用RFI进行包含,从而使用工具进行数据挖掘 在这里插入图片描述

** 注意:** 图片并不是单纯的一句话木马,那样的话中国菜刀是不能进爆破的,要将图片执行并生成webshell,从而执行恶意的木马

低安全级别

设计说明:网页没有限制文件的类型等,只要存在这个实例就可以进行包含 查看页面源代码

设计: 在本地主机上传一个带有一句话木马的图片,上传的级别采用高级(承接之前的文件上传的高级别的漏洞防护),由于上传的是图片,则后缀名就是网页要求的格式,则可以直接进行上传,上传后可以正常打开图片,但是shell代码将不会执行,需要执行图片包含的木马程序,生成后门。 详细分析图解: 在这里插入图片描述文件目录说明:

/var/www/dvwa/hackable/uploads #文件上传路径 var/www/dvwa/vulnerabilities/fi #文件包含路径

演示: 1.本地生成一个带有木马程序的图片文件,将其上传至系统中(因为下一步要执行的是LFI文件包含),其文件的绝对路径是

木马文件 /var/www/dvwa/hackable/uploads/yichen.jpg 绝对路径

在这里插入图片描述 2.将图片上产到本地系统中,但是图片的webshell并没有执行,要制作webshell,所以要执行图片包含的木马程序,生成后门,在文件包含的访问页面下,访问图片

http://192.168.211.143/dvwa/vulnerabilities/fi/?page=../../hackable/uploads/yichen.jpg 或者访问绝对路径 http://192.168.211.143/dvwa/vulnerabilities/fi/?page=/var/www/dvwa/hackable/uploads/yichen.jpg 注意: 因为用的是文件包含去执行的这个图片木马,又因为木马程序没有指定路径,则就被包含到了这个路径下 shell20.php被LFI上传至 /var/www/dvwa/vulnerabilities/fi

在这里插入图片描述通过文件上传可以正常打开图片,但是并没有执行图片的shell 在这里插入图片描述在这里插入图片描述 文件包含页面执行图片shell,并在当前目录下生成了一个shell文件 在这里插入图片描述在这里插入图片描述 3.通过菜刀连接webshell,可见与预期相符

http://192.168.211.143/dvwa/vulnerabilities/fi/shell20.php

在这里插入图片描述在这里插入图片描述

中安全级别

**分析:**通过查看后台的php代码 ,不难发现,其网页将http://与https://换成了空字符导致远程连接文件包含时不能识别远程服务器的IP地址

**解决:**写两个http://,即第一个被置换成 空字符,而第二个正常使用,这个函数只是将连续的http://字符来进行替换,还可以写成hhttp://ttp://

查看网页源代码:

高安全级别

查看网页的后台语言,可见,其限制了文件包含的名字,这当然也是可以进行注入木马程序的,直接将创建木马程序的文件名规定为页面限制的即可,这个对于页面来说,当然是不利的,这个是写死的代码,不利于后期的扩展与维护



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有